[vlc-devel] Live HTTP Streaming (iPhone) for VLC
Keary Griffin
keary.griffin at unwiredappeal.com
Fri Mar 26 16:28:23 CET 2010
Apologies if this hit's the list twice. I think my first response went
directly to just David.
David Glaude wrote:
> I assume your code only produce one video bitrate and do not generate
> multiple TS files with various bitrate from the same time period.
>
> Do you think that at least running multiple instance of VLC
> transcoding and splitting the same input stream we could get the real
> benefit from the X-style HTTP streaming (X come from Quicktime X wich
> is the other place where the new streaming is supported appart from
> iPhone)?
>
> Thanks.
>
> David Glaude
That is correct, it only produces an index/segments for a single
bitrate. Since multiple bitrate streaming simply involves creating a
"master" index file containing the bandwidth and url's to the regular
index files, it can be a static file and created ahead of time. From an
example in the spec, an index file master.m3u8 could be created ahead of
time:
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1280000
http://example.com/low.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2560000
http://example.com/mid.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=65000,CODECS="mp4a.40.5"
http://example.com/audio-only.m3u8
And then run multiple instances of VLC to create each of the
bandwidth/codec options (low.m3u8, mid.m3u8 and audio-only.m3u8)
I'm not really familiar enough yet with the capabilities and command
line format of VLC, but it may be possible to create the multiple
bitrate segments/indexes using a single instance of VLC by using
"duplicate" and multiple "transcode" in the output chain, but it's a
little advanced for me at the moment. (But you would still be required
to hand-craft the static master index file)
Keary
More information about the vlc-devel
mailing list