[vlc-devel] [PATCH 3/3] demux/mp4: Add fragmented MP4 support

Frederic YHUEL fyhuel at viotech.net
Tue May 22 17:27:32 CEST 2012


On Wed, Apr 25, 2012 at 5:18 PM, Frederic YHUEL <fyhuel at viotech.net> wrote:
>
> 2012/4/24 Frédéric Yhuel <fyhuel at viotech.net>:
> > TODO:
> > - add support for (DASH) multiplexed content (only video track is played
> >  for now).
> > - add support for resolution switches for DASH (needs modification in
> >  DASH client)
> >
>
> PS: I already did the second task (see attached patch). It works well,
> as long as DASH put a new initialization segment in its pipeline
> whenever segment N+1 has a resolution different than segment N 's one.
>
> Chris (or I) will patch DASH module, but in the meantime you can test
> with a fake MPD like below, where URLs to appropriate init segments
> are put in the middle of a "Representation".
>
> <?xml version="1.0" encoding="UTF-8"?>
> <MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>     xmlns="urn:mpeg:DASH:schema:MPD:2011"
>     xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011"
>     profiles="urn:mpeg:dash:profile:isoff-main:2011"
>     type="static"
>     mediaPresentationDuration="PT0H10M53.79S"
>     minBufferTime="PT15.0S">
>
> <BaseURL>http://www-itec.uni-klu.ac.at/ftp/datasets/mmsys12/ElephantsDream/ed_15s/</BaseURL>
>     <Period start="PT0S">
>          <AdaptationSet bitstreamSwitching="true">
> <Representation id="0" codecs="avc1" mimeType="video/mp4" width="320"
> height="240" startWithSAP="1" bandwidth="89324">
> <SegmentBase>
>    <Initialization
> sourceURL="ed_15sec_100kbit/ed_1080p24_100kbit_dash.mp4"/>
> </SegmentBase>
> <SegmentList duration="15">
>    <SegmentURL media="ed_15sec_100kbit/ed_15sec1.m4s"/>
>    <SegmentURL media="ed_15sec_100kbit/ed_15sec2.m4s"/>
>    <SegmentURL media="ed_15sec_400kbit/ed_1080p24_400kbit_dash.mp4"/>
>    <SegmentURL media="ed_15sec_400kbit/ed_15sec3.m4s"/>
>    <SegmentURL media="ed_15sec_400kbit/ed_15sec4.m4s"/>
>    <SegmentURL media="ed_15sec_600kbit/ed_1080p24_600kbit_dash.mp4"/>
>    <SegmentURL media="ed_15sec_600kbit/ed_15sec5.m4s"/>
>    <SegmentURL media="ed_15sec_600kbit/ed_15sec6.m4s"/>
>    <SegmentURL media="ed_15sec_900kbit/ed_1080p24_900kbit_dash.mp4"/>
>    <SegmentURL media="ed_15sec_900kbit/ed_15sec7.m4s"/>
>    <SegmentURL media="ed_15sec_900kbit/ed_15sec8.m4s"/>
>   </SegmentList>
> </Representation>
>          </AdaptationSet>
>    </Period>
> </MPD>
>
>

Hello,

I resubmitted the patch, but the method to test it with DASH is still
the same (use a "fake" MPD like above).


Best regards
Frédéric



More information about the vlc-devel mailing list