Menu

How to make content with different components

Authoring
kylix999
2012-11-28
2013-06-05
  • kylix999

    kylix999 - 2012-11-28

    I have audio and video in separate mp4 files. I would like to generate one mpd that have 2 components (Adaptation Sets), one video and one audio. Is it possible to do with mp4Box in one call?

     
  • Jean Le Feuvre

    Jean Le Feuvre - 2012-11-28

    it is automatically done by MP4Box:

    MP4Box -dash 1000 -out pres.mpd audio.mp4 video1.mp4 video2.mp4

    will create the adaptationSets as needed

     
  • kylix999

    kylix999 - 2012-11-29

    when I have tried to make mpd with 3 components 1 video and 2 audio (these are different audios):

    MP4Box -dash 1000 -frag 1000 -out 720x576_25fps_HPL4_1v_2a.mpd -url-template -base-url http://example.com/media/DASH// -segment-name seg_%s  720x576_25fps_HPL4.mp4 audio_music_bitrate_64000.mp4 audio_guitar_44100.mp4 -dash-profile live

    I got 1 video component and 1 audio component with 2 representations. Maybe there is a way to instruct mp4Box to make 2 separate audio components,

    <?xml version="1.0"?>
    <!-- MPD file Generated with GPAC version 0.5.1-DEV-rev4224 -->
    <MPD xmlns="urn:mpeg:dash:schema:mpd:2011" minBufferTime="PT1.5S" type="static" mediaPresentationDuration="PT0H3M0.37S" profiles="urn:mpeg:dash:profile:isoff-live:2011">
     <ProgramInformation moreInformationURL="http://hbbtv.test/media/DASH/t720x576_25fps_HPL4_1v_2a/">
      <Title>720x576_25fps_HPL4_1v_2a.mpd generated by GPAC</Title>
     </ProgramInformation>
     <BaseURL>http://hbbtv.test/media/DASH//</BaseURL>
     <Period duration="PT0H3M0.37S">
      <AdaptationSet segmentAlignment="true" maxWidth="720" maxHeight="576" maxFrameRate="25" par="5:4">
       <Representation id="1" mimeType="video/mp4" codecs="avc1.640028" width="720" height="576" frameRate="25" sar="1:1" startWithSAP="1" bandwidth="1513665">
        <SegmentTemplate timescale="1000" duration="1000" media="seg_720x576_25fps_HPL4$Number$.m4s" startNumber="1" initialization="seg_720x576_25fps_HPL4init.mp4"/>
       </Representation>
      </AdaptationSet>
      
      <AdaptationSet segmentAlignment="true" bitstreamSwitching="true">
       <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
       <SegmentTemplate initialization="720x576_25fps_HPL4_1v_2a_set2_init.mp4"/>
       <Representation id="2" mimeType="audio/mp4" codecs="mp4a.40.02" audioSamplingRate="22050" startWithSAP="1" bandwidth="66468">
        <SegmentTemplate timescale="1000" duration="882" media="seg_audio_music_bitrate_64000$Number$.m4s" startNumber="1"/>
       </Representation>
       <Representation id="3" mimeType="audio/mp4" codecs="mp4a.40.02" audioSamplingRate="22050" startWithSAP="1" bandwidth="50542">
        <SegmentTemplate timescale="1000" duration="882" media="seg_audio_guitar_44100$Number$.m4s" startNumber="1"/>
       </Representation>
      </AdaptationSet>
     </Period>
    </MPD>
    
     
  • Jean Le Feuvre

    Jean Le Feuvre - 2012-11-29

    for now only the language code can be used - I can add another selector if needed

     
  • kylix999

    kylix999 - 2012-11-30

    Hello another selector would be very good.

     
  • Jean Le Feuvre

    Jean Le Feuvre - 2012-12-04

    now on svn using :role=VALUE for each input file. If VALUE is any of the value listed in the DASH spec, the Role descriptor is added to the MPD. In any case, representations with different role values will be in different adaptation sets

     
  • kylix999

    kylix999 - 2013-01-04

    is there any selector to specify video adaptation set?
    I tried with role but for 3 videos I got 2 Adaptation Sets

     
  • kylix999

    kylix999 - 2013-01-04

    sorry for double post, now it works I had to specify different roles for each video Adaptation Sets so i made : main alternate and commentary. When I had 2 alternate gpac made 1 Adaptation set with 2 representations.
    So in general works ok