Dinamikus csomagolás a Media Services v3-ban

Media Services embléma v3


AMS-webhely | Kódminták | Hibaelhárítási útmutató

Az Azure Media Services beépített forráskiszolgálói és csomagolási képességeket biztosít a tartalmak HLS- és MPEG DASH streamelési protokollformátumokban való továbbításához. Az AMS-ben a streamvégpont az "origin" kiszolgálóként működik, amely formázott HLS- és DASH-tartalmat küld az ügyféllejátszóknak, amelyek támogatják az adaptív sávszélességű streamelést ezen népszerű formátumok használatával. A streamvégpont számos funkciót támogat, például az igény szerinti, dinamikus csomagolást tartalomvédelemmel vagy anélkül, hogy az összes fő eszközt elérhesse (például iOS- és Android-eszközöket).

A legtöbb böngésző és mobileszköz jelenleg támogatja és érti a HLS- vagy DASH-streamelési protokollokat. Például az iOS megköveteli, hogy a streamek HTTP Live Streaming (HLS) formátumban legyenek kézbesítve, és az Android-eszközök támogatják a HLS-t és az MPEG DASH-t bizonyos modelleken (vagy az alkalmazásszintű lejátszó Exoplayer androidos eszközökön való használatával).

A Media Servicesben a streamvégpontok (forrás) egy dinamikus (igény szerinti) csomagolási és forrásszolgáltatást jelentenek, amely közvetlenül egy ügyféllejátszó alkalmazásba képes eljuttatni az élő és igény szerinti tartalmakat. A következő szakaszban említett egyik gyakori streamelési médiaprotokollt használja. A dinamikus csomagolás olyan funkció, amely minden streamvégponton szabványos.

dinamikus csomagolás

Az igény szerint történő csomagolás előnyei a következők:

  • Az összes fájlt szabványos MP4 fájlformátumban tárolhatja.
  • Nem kell több példányt tárolnia a statikus csomagolású HLS- és DASH-formátumokról a Blob Storage-ban, ami csökkenti a tárolt videotartalmak mennyiségét, és csökkenti a tárolási költségeket.
  • Azonnal kihasználhatja az új protokollfrissítéseket és a specifikációk módosítását anélkül, hogy újra kellene csomagolnia a statikus tartalmat a katalógusban.
  • A tartalmakat titkosítással és DRM nélkül is kézbesítheti ugyanazokkal az MP4-fájlokkal a tárolóban.
  • A jegyzékfájlokat dinamikusan szűrheti vagy módosíthatja egyszerű eszközszintű vagy globális szűrőkkel, hogy eltávolítson bizonyos számokat, felbontásokat, nyelveket, vagy rövidebb kiemelt klipeket biztosítson ugyanabból az MP4-fájlból anélkül, hogy újrakódolná vagy újra renderelné a tartalmat.

A forrásfájlok előkészítése kézbesítésre

A dinamikus csomagolás előnyeinek kihasználásához kódolja a mezzanine (forrás) fájlt egy vagy több bitsebességű MP4 (ISO Base Media 14496-12) fájlokba. A kódolt videofájlok és a streamelési konfigurációs fájlok egy kimeneti objektumban lesznek elhelyezve. Ebből a fájlkészletből dinamikus csomagolást használhat a videók streamelési média protokollon keresztüli továbbítására.

Általában az Azure Media Services standard kódolóját fogja használni a tartalomtudatos kódolási készletek vagy az adaptív bitráta-készletek használatával történő létrehozásához. Mindkettő létrehoz egy MP4-fájlkészletet, amely készen áll a streamelésre és a dinamikus csomagolásra.

Másik lehetőségként dönthet úgy is, hogy külső szolgáltatással, helyszíni vagy saját virtuális gépekkel vagy kiszolgáló nélküli függvényalkalmazásokkal kódol. A külső kódolású tartalmak feltölthetők streamelési objektumokba, feltéve, hogy megfelelnek az adaptív sávszélességű streamelési formátumokra vonatkozó kódolási követelményeknek. A .NET SDK-mintákban elérhető egy példaprojekt az előre kódolt MP4 feltöltésére a streameléshez – lásd: Meglévő MP4-fájlok streamelése.

Az Azure Media Services dinamikus csomagolása csak MP4 tárolóformátumban támogatja a video- és hangfájlokat. A hangfájlokat mp4-tárolóba is kódolni kell, ha olyan alternatív kodekeket használ, mint a Dolby.

Videók elérhetővé tétele streameléshez

Ha a kódolt objektumban lévő videókat elérhetővé szeretné tenni az ügyfelek számára lejátszás céljából, tegye közzé az objektumot egy Streaming Locator használatával, és hozza létre a megfelelő HLS- és DASH-streamelési URL-címeket. Az URL-formátumú lekérdezésben használt protokoll módosításával a szolgáltatás a megfelelő streamelési jegyzékfájlt (HLS, MPEG DASH) kézbesíti.

Ennek eredményeképpen csak egyetlen tárolási formátumban (MP4) kell tárolnia és fizetnie a fájlokért, és a Media Services létrehozza és kiszolgálja a megfelelő HLS- vagy DASH-jegyzékfájlokat az ügyfél lejátszóinak kérései alapján.

Ha dinamikus Media Services-titkosítással szeretné védeni a tartalmakat, olvassa el a Streamelési protokollok és titkosítási típusok című témakört.

HLS kézbesítése

HLS dinamikus csomagolás

A streamelési ügyfél a következő HLS-formátumokat adhatja meg. Javasoljuk, hogy a CMAF formátumot használja a legújabb lejátszókkal és iOS-eszközökkel való kompatibilitás érdekében. Örökölt eszközök esetén a v4 és a v3 formátum is elérhető a lekérdezési sztring formázásának egyszerű módosításával.

Protokoll Sztring formátuma Példa
HLS CMAF format=m3u8-cmaf https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=m3u8-cmaf)
HLS V4 format=m3u8-aapl https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=m3u8-aapl)
HLS V3 format=m3u8-aapl-v3 https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=m3u8-aapl-v3)

Megjegyzés

Az Apple korábbi irányelvei azt javasolták, hogy az alacsony sávszélességű hálózatok esetében a tartalék szolgáltatás csak hangalapú streamet biztosítson. Jelenleg a Media Services kódolója automatikusan létrehoz egy csak hangsávot. Az Apple irányelvei szerint a csak hangsávot nem szabad belefoglalni, különösen az Apple TV-disztribúció esetében. Annak érdekében, hogy a lejátszó ne állítson be csak hangsávot, javasoljuk, hogy használja a "audio-only=false" címkét az URL-címben, amely eltávolítja a csak hangalapú megjelenítést a HLS-ben, vagy egyszerűen használja a HLS-V3-t. Például: http://host/locator/asset.ism/manifest(format=m3u8-aapl,audio-only=false).

HLS csomagolási arány VOD-hoz

A VOD-tartalom régebbi HLS-formátumokhoz való csomagolási arányának szabályozásához állítsa be a fragmentsPerHLSSegment metaadatcímkét az .ism fájlban a régebbi v3 és v4 HLS formátumú jegyzékekből szállított TS-szegmensek alapértelmezett 3:1-s csomagolási arányának szabályozásához. Ehhez a beállításhoz közvetlenül módosítania kell a tárolóban lévő .ism fájlt a csomagolási arány módosításához.

Példa .ism-kiszolgáló jegyzékfájlja fragmentsPerHLSSegment 1 értékre állítva.

   <?xml version="1.0" encoding="utf-8" standalone="yes"?>
   <smil xmlns="http://www.w3.org/2001/SMIL20/Language">
      <head>
         <meta name="formats" content="mp4" />
         <meta name="fragmentsPerHLSSegment" content="1"/>
      </head>
      <body>
         <switch>
         ...
         </switch>
      </body>
   </smil>

DASH kézbesítése

DASH dinamikus csomagolás

A streamelési ügyfél a következő MPEG-DASH formátumokat adhatja meg:

Protokoll Sztring formátuma Példa
MPEG-DASH CMAF format=mpd-time-cmaf https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=mpd-time-cmaf)
MPEG-DASH CSF (örökölt) format=mpd-time-csf https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=mpd-time-csf)

Smooth Streaming-jegyzékfájlok kézbesítése

Smooth Streaming dinamikus csomagolás

A streamelési ügyfél a következő Smooth Streaming-formátumokat adhatja meg:

Protokoll Megjegyzések/példák
Smooth Streaming https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest
Smooth Streaming 2.0 (örökölt jegyzék) Alapértelmezés szerint a Smooth Streaming jegyzékformátuma tartalmazza az ismétlődő címkét (r-tag). Azonban egyes játékosok nem támogatják a r-tag. Az ilyen játékosokkal rendelkező ügyfelek olyan formátumot használhatnak, amely letiltja az r-címkét:

https://amsv3account-usw22.streaming.media.azure.net/21b17732-0112-4d76-b526-763dcd843449/ignite.ism/manifest(format=fmp4-v20)

Megjegyzés

A zökkenőmentes streameléshez hang- és videofájlnak is jelen kell lennie a streamben.

Igény szerinti streamelési munkafolyamat

Az alábbi lépések egy gyakori Media Services-streamelési munkafolyamatot mutatnak be, ahol dinamikus csomagolást használnak az Azure Media Services standard kódolójával együtt.

  1. Töltsön fel egy bemeneti fájlt, például MP4-et, QuickTime/MOV-t vagy más támogatott fájlformátumot. Ezt a fájlt mezzanine-nek vagy forrásfájlnak is nevezik. A támogatott formátumok listáját a Standard Kódoló által támogatott formátumok című témakörben találja.

  2. Kódolja a mezzanine-fájlt egy H.264/AAC MP4 adaptív bitsebesség-készletbe.

    Ha már rendelkezik kódolt fájlokkal, és csak át szeretné másolni és streamelni a fájlokat, használja a következőt: CopyVideo és CopyAudio API-k. Ennek eredményeként létrejön egy streamelési jegyzékfájllal (.ism fájl) rendelkező új MP4-fájl.

    Emellett létrehozhatja az .ism és az .ismc fájlt egy előre kódolt fájlon, feltéve, hogy a megfelelő beállításokkal van kódolva az adaptív sávszélességű streameléshez (ez általában 2 másodperces GOP-k, kulcskeretek távolsága 2s perc és max, valamint állandó bitsebesség (CBR) mód kódolása.)

    A meglévő Mp4 .NET SDK-minta streameléséhez tekintse meg az .ism (kiszolgálójegyzék) és az .ismc (ügyféljegyzékek) meglévő, előre kódolt MP4-fájlból való streameléséhez szükséges adatait.

  3. Tegye közzé az adaptív sávszélességű MP4-készletet tartalmazó kimeneti objektumot. A közzétételhez létre kell hoznia egy streamelési lokátort.

  4. Különböző formátumokat (HLS, MPEG-DASH és Smooth Streaming) célzó URL-címek létrehozása. A streamvégpont gondoskodik a megfelelő jegyzékfájl és kérések kiszolgálásáról a különböző formátumok esetében.

A letöltési útvonal csak azért jelenik meg a fenti képen, hogy bemutassa, hogy közvetlenül a streamvégponton (forráson) keresztül tölthet le egy MP4-fájlt (megadhatja a letölthető streamelési szabályzatot a streamelési lokátorban).
A dinamikus csomagoló nem módosítja a fájlt. Ha meg szeretné kerülni a streamvégpont (forrás) funkcióit, igény szerint használhatja az Azure Blob Storage API-kat az MP4-hez való közvetlen hozzáféréshez a fokozatos letöltéshez.

Kódolás adaptív sávszélességű MP4-ek számára

Az alábbi cikkek példákat mutatnak be arra, hogyan kódolhat egy videót a Media Services használatával:

Tekintse meg a támogatott Standard Encoder bemeneti formátumok és kodekek listáját.

Élő streamelési munkafolyamat

Az élő eseményeket átengedheti (egy helyszíni élő kódoló több sávszélességű streamet küld), vagy élő kódolásra (egy helyszíni élő kódoló egyetlen sávszélességű streamet küld).

Íme egy gyakori munkafolyamat az élő streameléshez dinamikus csomagolással:

  1. Hozzon létre egy élő eseményt.
  2. Kérje le a betöltési URL-címet, és konfigurálja a helyszíni kódolót, hogy az URL-címmel küldje el a hozzájárulási hírcsatornát.
  3. Kérje le az előnézeti URL-címet, és annak ellenőrzéséhez, hogy a kódoló bemenete megérkezett-e.
  4. Hozzon létre egy új objektumot.
  5. Hozzon létre egy élő kimenetet, és használja a létrehozott objektumnevet.
    Az élő kimenet archiválja a streamet az objektumba.
  6. Hozzon létre egy streamelési lokátort a beépített streamelési szabályzattípusokkal.
    Ha titkosítani szeretné a tartalmat, tekintse át a Tartalomvédelem áttekintését.
  7. Listázhatja a streamelési lokátor elérési útjait a használni kívánt URL-címek lekéréséhez.
  8. Kérje le annak a streamvégpontnak a gazdagépnevét, amelyről streamelni szeretne.
  9. Különböző formátumokat (HLS, MPEG-DASH és Smooth Streaming) célzó URL-címek létrehozása. A streamvégpont gondoskodik a megfelelő jegyzékfájl és a különböző formátumokra vonatkozó kérések kiszolgálásáról.

További információ a Media Services v3-ban történő élő streamelésről: Élő streamelés áttekintése.

A dinamikus csomagolás által támogatott videokodekek

A dinamikus csomagolás támogatja az MP4 tárolófájlformátumú videofájlokat, amelyek H.264 (MPEG-4 AVC vagy AVC1) vagy H.265 (HEVC, hev1 vagy hvc1) kódolású videókat tartalmaznak.

Megjegyzés

A legfeljebb 4K felbontást és a legfeljebb 60 képkocka/másodperc képkockasebességet dinamikus csomagolással teszteltük.

Dinamikus csomagolással támogatott hangkodekek

A dinamikus csomagolás az MP4-fájltároló formátumban tárolt hangfájlokat is támogatja, amelyek kódolt hangstreamet tartalmaznak az alábbi kodekek egyikében:

  • AAC (AAC-LC, HE-AAC v1 vagy HE-AAC v2).

  • Dolby Digital Plus (Enhanced AC-3 vagy E-AC3). A dinamikus csomagolás használatához a kódolt hangot MP4 tárolóformátumban kell tárolni.

  • Dolby Atmos

    A Dolby Atmos-tartalmak streamelése olyan szabványok esetében támogatott, mint a Common Streaming Format (CSF) vagy a Common Media Application Format (CMAF) töredezett MP4 protokollal rendelkező MPEG-DASH protokoll, valamint HTTP Live Streaming (HLS) és CMAF használatával.

  • DTS
    A DASH-CSF, DASH-CMAF, HLS-M2TS és HLS-CMAF csomagolási formátumok által támogatott DTS-kodekek a következők:

    • DTS Digital Surround (dtsc)
    • DTS-HD nagy felbontású és DTS-HD master audio (dtsh)
    • DTS Express (dtse)
    • DTS-HD veszteségmentes (mag nélkül) (dtsl)

A dinamikus csomagolás több hangsávot támogat a DASH vagy HLS (4-es vagy újabb verzió) használatával olyan streamelési eszközökhöz, amelyek több hangsávot és több kodeket és nyelvet használnak.

A fenti hangkodekek mindegyikéhez a kódolt hangot MP4 tárolóformátumban kell tárolni a dinamikus csomagolás használatához. A szolgáltatás nem támogatja a nyers elemi streamfájl-formátumokat a Blob Storage-ban (például az alábbiak nem támogatottak : .dts, .ac3).)

Csak az .mp4a kiterjesztésű .mp4 fájlokat támogatja a hangcsomagolás.

Korlátozások

iOS-korlátozások az AAC 5.1-hangra

Az Apple iOS-eszközök nem támogatják az 5.1 AAC hangkodek használatát. A többcsatornás hangot Dolby Digital vagy Dolby Digital Plus kodekekkel kell kódolni.

Részletes információkért lásd: HLS szerzői specifikáció apple-eszközökhöz.

Megjegyzés

A Media Services nem támogatja a Dolby Digital, a Dolby Digital Plus vagy a Dolby Digital Plus kódolását Dolby Atmos többcsatornás hangformátumokkal.

Dolby Digital audio

A Media Services dinamikus csomagolása jelenleg nem támogatja a Dolby Digital (AC3) hangfájlokat tartalmazó fájlokat (mivel ezt a Dolby örökölt kodeknek tekinti).

Rakományjegyzék

A Media Services dinamikus csomagolásban a HLS, AZ MPEG-DASH és a Smooth Streaming streamelési ügyféljegyzéke dinamikusan jön létre az URL-címben található formátumlekérdezés alapján.

A jegyzékfájl tartalmazza a streamelési metaadatokat, például a követés típusát (hang, videó vagy szöveg), a követés nevét, a kezdési és befejezési időpontot, a sávszélességet (minőségeket), a követés nyelveit, a bemutatóablakot (rögzített időtartamú csúszóablak) és a videokodeket (FourCC). Arra is utasítja a lejátszót, hogy kérje le a következő töredéket azáltal, hogy információkat ad meg a következő lejátszható videótöredékekről, amelyek elérhetők, és azok helyét. A töredékek (vagy szegmensek) a videótartalom tényleges "darabjai".

Példák

HLS

Íme egy példa egy HLS-jegyzékfájlra, más néven HLS-fő lejátszási listára:

#EXTM3U
#EXT-X-VERSION:4
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",NAME="aac_eng_2_128041_2_1",LANGUAGE="eng",DEFAULT=YES,AUTOSELECT=YES,URI="QualityLevels(128041)/Manifest(aac_eng_2_128041_2_1,format=m3u8-aapl)"
#EXT-X-STREAM-INF:BANDWIDTH=536608,RESOLUTION=320x180,CODECS="avc1.64000d,mp4a.40.2",AUDIO="audio"
QualityLevels(381048)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=536608,RESOLUTION=320x180,CODECS="avc1.64000d",URI="QualityLevels(381048)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=884544,RESOLUTION=480x270,CODECS="avc1.640015,mp4a.40.2",AUDIO="audio"
QualityLevels(721495)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=884544,RESOLUTION=480x270,CODECS="avc1.640015",URI="QualityLevels(721495)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=1327398,RESOLUTION=640x360,CODECS="avc1.64001e,mp4a.40.2",AUDIO="audio"
QualityLevels(1154816)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=1327398,RESOLUTION=640x360,CODECS="avc1.64001e",URI="QualityLevels(1154816)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=2413312,RESOLUTION=960x540,CODECS="avc1.64001f,mp4a.40.2",AUDIO="audio"
QualityLevels(2217354)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=2413312,RESOLUTION=960x540,CODECS="avc1.64001f",URI="QualityLevels(2217354)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=3805760,RESOLUTION=1280x720,CODECS="avc1.640020,mp4a.40.2",AUDIO="audio"
QualityLevels(3579827)/Manifest(video,format=m3u8-aapl)
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=3805760,RESOLUTION=1280x720,CODECS="avc1.640020",URI="QualityLevels(3579827)/Manifest(video,format=m3u8-aapl,type=keyframes)"
#EXT-X-STREAM-INF:BANDWIDTH=139017,CODECS="mp4a.40.2",AUDIO="audio"
QualityLevels(128041)/Manifest(aac_eng_2_128041_2_1,format=m3u8-aapl)

MPEG-DASH

Íme egy példa egy MPEG-DASH jegyzékfájlra, más néven MPEG-DASH médiamegjelenítéses leírásra (MPD):

<?xml version="1.0" encoding="UTF-8"?>
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" mediaPresentationDuration="PT1M10.315S" minBufferTime="PT7S">
   <Period>
      <AdaptationSet id="1" group="5" profiles="ccff" bitstreamSwitching="false" segmentAlignment="true" contentType="audio" mimeType="audio/mp4" codecs="mp4a.40.2" lang="en">
         <SegmentTemplate timescale="10000000" media="QualityLevels($Bandwidth$)/Fragments(aac_eng_2_128041_2_1=$Time$,format=mpd-time-csf)" initialization="QualityLevels($Bandwidth$)/Fragments(aac_eng_2_128041_2_1=i,format=mpd-time-csf)">
            <SegmentTimeline>
               <S d="60160000" r="10" />
               <S d="41386666" />
            </SegmentTimeline>
         </SegmentTemplate>
         <Representation id="5_A_aac_eng_2_128041_2_1_1" bandwidth="128041" audioSamplingRate="48000" />
      </AdaptationSet>
      <AdaptationSet id="2" group="1" profiles="ccff" bitstreamSwitching="false" segmentAlignment="true" contentType="video" mimeType="video/mp4" codecs="avc1.640020" maxWidth="1280" maxHeight="720" startWithSAP="1">
         <SegmentTemplate timescale="10000000" media="QualityLevels($Bandwidth$)/Fragments(video=$Time$,format=mpd-time-csf)" initialization="QualityLevels($Bandwidth$)/Fragments(video=i,format=mpd-time-csf)">
            <SegmentTimeline>
               <S d="60060000" r="10" />
               <S d="42375666" />
            </SegmentTimeline>
         </SegmentTemplate>
         <Representation id="1_V_video_1" bandwidth="3579827" width="1280" height="720" />
         <Representation id="1_V_video_2" bandwidth="2217354" codecs="avc1.64001F" width="960" height="540" />
         <Representation id="1_V_video_3" bandwidth="1154816" codecs="avc1.64001E" width="640" height="360" />
         <Representation id="1_V_video_4" bandwidth="721495" codecs="avc1.640015" width="480" height="270" />
         <Representation id="1_V_video_5" bandwidth="381048" codecs="avc1.64000D" width="320" height="180" />
      </AdaptationSet>
   </Period>
</MPD>

Smooth Streaming

Íme egy példa egy Smooth Streaming-jegyzékfájlra:

<?xml version="1.0" encoding="UTF-8"?>
<SmoothStreamingMedia MajorVersion="2" MinorVersion="2" Duration="703146666" TimeScale="10000000">
   <StreamIndex Chunks="12" Type="audio" Url="QualityLevels({bitrate})/Fragments(aac_eng_2_128041_2_1={start time})" QualityLevels="1" Language="eng" Name="aac_eng_2_128041_2_1">
      <QualityLevel AudioTag="255" Index="0" BitsPerSample="16" Bitrate="128041" FourCC="AACL" CodecPrivateData="1190" Channels="2" PacketSize="4" SamplingRate="48000" />
      <c t="0" d="60160000" r="11" />
      <c d="41386666" />
   </StreamIndex>
   <StreamIndex Chunks="12" Type="video" Url="QualityLevels({bitrate})/Fragments(video={start time})" QualityLevels="5">
      <QualityLevel Index="0" Bitrate="3579827" FourCC="H264" MaxWidth="1280" MaxHeight="720" CodecPrivateData="0000000167640020ACD9405005BB011000003E90000EA600F18319600000000168EBECB22C" />
      <QualityLevel Index="1" Bitrate="2217354" FourCC="H264" MaxWidth="960" MaxHeight="540" CodecPrivateData="000000016764001FACD940F0117EF01100000303E90000EA600F1831960000000168EBECB22C" />
      <QualityLevel Index="2" Bitrate="1154816" FourCC="H264" MaxWidth="640" MaxHeight="360" CodecPrivateData="000000016764001EACD940A02FF9701100000303E90000EA600F162D960000000168EBECB22C" />
      <QualityLevel Index="3" Bitrate="721495" FourCC="H264" MaxWidth="480" MaxHeight="270" CodecPrivateData="0000000167640015ACD941E08FEB011000003E90000EA600F162D9600000000168EBECB22C" />
      <QualityLevel Index="4" Bitrate="381048" FourCC="H264" MaxWidth="320" MaxHeight="180" CodecPrivateData="000000016764000DACD941419F9F011000003E90000EA600F14299600000000168EBECB22C" />
      <c t="0" d="60060000" r="11" />
      <c d="42375666" />
   </StreamIndex>
</SmoothStreamingMedia>

Sávok elnevezése a jegyzékfájlban

Ha az .ism fájlban meg van adva egy hangsáv neve, a Media Services hozzáad egy Label elemet AdaptationSet a fájlhoz, hogy megadja az adott hangsáv szöveges adatait. Példa a kimeneti DASH-jegyzékre:

<AdaptationSet codecs="mp4a.40.2" contentType="audio" lang="en" mimeType="audio/mp4" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
  <Label>audio_track_name</Label>
  <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
  <Representation audioSamplingRate="48000" bandwidth="131152" id="German_Forest_Short_Poem_english-en-68s-2-lc-128000bps_seg">
    <BaseURL>German_Forest_Short_Poem_english-en-68s-2-lc-128000bps_seg.mp4</BaseURL>
  </Representation>
</AdaptationSet>

A játékos az elemet használhatja a Label felhasználói felületen való megjelenítéshez.

Jelátviteli hang leírása sávok

Kísérőszöveget is hozzáadhat a videóhoz, hogy a látássérült ügyfelek a kísérőszöveg meghallgatásával kövessék a videófelvételt. A jegyzékfájlban hangleírásként kell megjegyzést fűznie a hangsávhoz. Ehhez adja hozzá az "accessibility" és a "role" paramétereket az .ism fájlhoz. Az Ön felelőssége, hogy helyesen állítsa be ezeket a paramétereket, hogy hangleírásként jelezzen egy hangsávot. Adja hozzá <param name="accessibility" value="description" /> például a és <param name="role" value="alternate" a fájlt az .ism fájlhoz egy adott hangsávhoz.

Smooth Streaming jegyzékfájl

Ha smooth streaming streamet játszik le, a jegyzékfájl értékeket Accessibility és Role attribútumokat hordoz a hangsávhoz. Például a Role="alternate" Accessibility="description" rendszer hozzáadja az StreamIndex elemhez, hogy jelezze, hogy ez egy hangleírás.

DASH-jegyzékfájl

A DASH-jegyzékfájlhoz a következő két elem lesz hozzáadva a hangleírás jelzéséhez:

<Accessibility schemeIdUri="urn:mpeg:dash:role:2011" value="description"/>
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="alternate"/>

HLS-lejátszási lista

A HLS v7 és újabb (format=m3u8-cmaf)verziók esetében a lejátszási lista akkor lesz elhozva AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video" , ha a hangleírási sáv jelzést ad.

Dinamikus jegyzékfájl-szűrés

A lejátszóknak küldött zeneszámok, formátumok, sávszélességek és megjelenítési időablakok számának szabályozásához használhat dinamikus szűrést a Media Services dinamikus csomagkezelőjével. További információ: Jegyzékfájlok előszűrése a dinamikus csomagolóval.

Dinamikus titkosítás DRM-hez

Dinamikus titkosítással dinamikusan titkosíthatja élő vagy igény szerinti tartalmait az AES-128 vagy a három fő digitálisjog-kezelési (DRM) rendszer bármelyikével: Microsoft PlayReady, Google Widevine és Apple FairPlay. A Media Services egy olyan szolgáltatást is biztosít, amely AES-kulcsokat és DRM-licenceket biztosít a jogosult ügyfeleknek. További információ: Dinamikus titkosítás.

Megjegyzés

A Widevine a Google Inc. által nyújtott szolgáltatás, amelyre a Google, Inc. szolgáltatási feltételei és adatvédelmi irányelvei vonatkoznak.

Súgó és támogatás

Kérdéseivel kapcsolatba léphet a Media Services szolgáltatással, vagy követheti a frissítéseket az alábbi módszerek egyikével: