MPEG-DASH URL-адреса сегментов
У меня есть пример файла MPD, сгенерированного Wowza. Я хотел бы узнать, что такое URL медиа-сегментов. Спецификацию DASH нелегко расшифровать.
Пример такой
-<Period start="PT0.0S" id="0">
-<AdaptationSet id="0" subsegmentStartsWithSAP="1" subsegmentAlignment="true" startWithSAP="1" segmentAlignment="true" frameRate="30" par="16:9" height="720" width="1280" mimeType="video/mp4">
-<SegmentTemplate initialization="chunk_ctvideo_cfm4s_rid$RepresentationID$_cinit_w998693597_mpd.m4s" media="chunk_ctvideo_cfm4s_rid$RepresentationID$_cs$Time$_w998693597_mpd.m4s" timescale="90000">
-<SegmentTimeline>
<S d="720000" t="35576570970"/>
<S d="720000"/>
<S d="1440000"/>
<S d="720000"/>
<S d="720000"/>
</SegmentTimeline>
</SegmentTemplate>
<Representation id="p0a0r0" bandwidth="296000" sar="1:1" codecs="avc1.4d401f"/>
</AdaptationSet>
1 ответ
Формат указан в теге SegmentTemplate: initialization="chunk_ctvideo_cfm4s_rid$олевый идентификатор представления $_cinit_w998693597_mpd.m4s" media="chunk_ctvideo_cfm4s_rid$ идентификационный идентификатор $ _cs $ времени $_w998693597_mpd.m4s" timescale="
initialization = "chunk_ctvideo_cfm4s_rid $рещение_ID$_cinit_w998693597_mpd.m4s" Это говорит вам URL шаблона начального сегмента. Замените $ PresentationID$ на "ID представления" (p0a0r0 в вашем примере).
media = "chunk_ctvideo_cfm4s_rid $ PresentationID$ _cs $Time$ _w998693597_mpd.m4s" Здесь указывается URL-адрес шаблона сегментов мультимедиа. Замените $ PresentationID$ на "Идентификатор представления", как указано выше, и замените $Time$ значением, вычисленным из тега "SegmentTimeline".
Например, скажем, URL для mpd - это http:///XXX/manifest.mpd
URL для начального сегмента http:///XXX/chunk_ctvideo_cfm4s_ridp0a0r0_cinit_w998693597_mpd.m4s
и URL-адрес для сегмента мультимедиа может быть http:///XXX/chunk_ctvideo_cfm4s_ridp0a0r0_cs35576570970_w998693597_mpd.m4s
Если вы хотите получить разные медиа-сегменты в представлении, вы можете использовать другое значение $Time$ в URL.
Надеюсь это поможет.