Page 1 of 1

Media freeze when playing "live TV" from HLS

Posted: 11 Mar 2013 19:27
by jlo
The Swedish public service company SVT recently started to publish their regular channels on the web: http://www.svtplay.se/kanaler/
These are accessible with HTTP Live Streams or F4M.

F4M is a nasty format, and as VLC supports HLS I tried the HLS-stream in VLC, and it worked, but it froze after a few seconds.

I don't think that the streams are accessible from outside Sweden, but the data can be retreived from here:

Code: Select all

http://www.svtplay.se/kanaler/svt1?output=json
Which serves the HLS stream ("playerType":"ios"), for example: http://svt10hls-lh.akamaihd.net/i/svt10 ... ?__b__=563

The m3u8 looks like this:

Code: Select all

#EXTM3U #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=563000,RESOLUTION=512x288,CODECS="avc1.66.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_3_av-p.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=563000,RESOLUTION=512x288,CODECS="avc1.66.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_3_av-b.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=240000,RESOLUTION=512x288,CODECS="avc1.66.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_1_av-p.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=240000,RESOLUTION=512x288,CODECS="avc1.66.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_1_av-b.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=347000,RESOLUTION=512x288,CODECS="avc1.66.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_2_av-p.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=347000,RESOLUTION=512x288,CODECS="avc1.66.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_2_av-b.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=986000,RESOLUTION=768x432,CODECS="avc1.77.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_4_av-p.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=986000,RESOLUTION=768x432,CODECS="avc1.77.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_4_av-b.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1680000,RESOLUTION=1024x576,CODECS="avc1.77.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_5_av-p.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1680000,RESOLUTION=1024x576,CODECS="avc1.77.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_5_av-b.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2795000,RESOLUTION=1280x720,CODECS="avc1.77.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_6_av-p.m3u8?sd=10&rebase=on&e=1 #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2795000,RESOLUTION=1280x720,CODECS="avc1.77.30, mp4a.40.2" http://svt10hls-lh.akamaihd.net/i/svt10hls_0@78142/index_6_av-b.m3u8?sd=10&rebase=on&e=1
The index_6_av-b.m3u8, for a "random" quality looks like this:

Code: Select all

#EXTM3U #EXT-X-TARGETDURATION:10 #EXT-X-ALLOW-CACHE:YES #EXT-X-VERSION:3 #EXT-X-MEDIA-SEQUENCE:136291158 #EXTINF:10.000, http://svt12hls-lh.akamaihd.net/i/svt12hls_0@78144/segment136291158_6_av-p.ts?sd=10&rebase=on&e=1 #EXTINF:10.000, http://svt12hls-lh.akamaihd.net/i/svt12hls_0@78144/segment136291159_6_av-p.ts?sd=10&rebase=on&e=1 #EXTINF:10.000, http://svt12hls-lh.akamaihd.net/i/svt12hls_0@78144/segment136291160_6_av-p.ts?sd=10&rebase=on&e=1
and a few seconds later

Code: Select all

#EXTM3U #EXT-X-TARGETDURATION:10 #EXT-X-ALLOW-CACHE:YES #EXT-X-VERSION:3 #EXT-X-MEDIA-SEQUENCE:136291160 #EXTINF:10.000, http://svt12hls-lh.akamaihd.net/i/svt12hls_0@78144/segment136291160_6_av-p.ts?sd=10&rebase=on&e=1 #EXTINF:10.000, http://svt12hls-lh.akamaihd.net/i/svt12hls_0@78144/segment136291161_6_av-p.ts?sd=10&rebase=on&e=1 #EXTINF:10.000, http://svt12hls-lh.akamaihd.net/i/svt12hls_0@78144/segment136291162_6_av-p.ts?sd=10&rebase=on&e=1
I think it may be a result of continuously updated M3U8-playlists, as the stream is "live"..

I have not found any references in VLC sources if this should be supported or not, but wikipedia states the VLC is supporting both live and on-demand: http://en.wikipedia.org/wiki/HTTP_Live_Streaming for HLS. I'm not sure if SVTPlay is some kind of "corner case" for live HLS, but it would be nice if this was supported..