Dinamikus csomagolás a Media Services v3-ban
Figyelmeztetés
Az Azure Media Services 2024. június 30-án megszűnik. További információkért lásd az AMS kivezetési útmutatóját.
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átumban történő továbbításához. Az AMS-ben a streamvégpont a "forrás" 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 is 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 a HLS vagy DASH streamelési protokollokat támogatja és értelmezi. 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 (origin) egy dinamikus (igény szerinti) csomagolási és forrásszolgáltatást jelentenek, amely képes közvetlenül egy ügyféllejátszó alkalmazásnak kézbesíteni az élő és igény szerinti tartalmat. A következő szakaszban említett gyakori streamelési médiaprotokollok egyikét használja. A dinamikus csomagolás egy olyan funkció, amely minden streamvégponton szabványos.
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ányban tárolnia a statikus csomagolású HLS- és DASH-formátumokat 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ések és a specifikációk módosításainak előnyeit anélkül, hogy újra kellene csomagolnia a statikus tartalmat a katalógusban.
- A tartalmakat titkosítással és DRM-sel 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 kiemelési klipeket biztosítson ugyanabból az MP4-fájlból a tartalom újrakódolása vagy ismételt renderelése nélkül.
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 sávszélességű MP4 (ISO Base Media 14496-12) fájlok készletébe. 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ással továbbíthat videókat a streamelési média protokolljaival.
Ezt a tartalmat általában az Azure Media Services standard kódolójának használatával hozza létre a Tartalomérzékeny kódolási beállítások vagy az Adaptív sávszélesség beállításkészletek használatával. 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épein vagy kiszolgáló nélküli függvényalkalmazásokkal kódolja a kódokat. 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átumok kódolási követelményeinek. A .NET SDK-mintákban elérhető egy példaprojekt egy 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 kell kódolni olyan alternatív kodekek használatakor is, 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 streamelési lokátor 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 kézbesíti a megfelelő streamelési jegyzékfájlt (HLS, MPEG DASH).)
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, tekintse meg 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. Az örökölt eszközök esetében a v4- és v3-as formátumok is elérhetők 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 az volt, hogy 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. Ha meg szeretné akadályozni, hogy a lejátszó csak hangsávra legyen beállítva, javasoljuk, hogy használja a "csak 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-at. 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 a fragmentsPerHLSSegment metaadatcímkét az .ism fájlban állíthatja be a régebbi v3 és v4 HLS formátumú jegyzékfájlokból szállított TS-szegmensek alapértelmezett 3:1 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 az .ism kiszolgálójegyzékére , amelynek fragmentsPerHLSSegment értéke 1.
<?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 néhány játékos nem támogatja 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 Smooth Streaming használatához a hangnak és a videónak is szerepelnie kell a streamben.
Igény szerinti streamelési munkafolyamat
Az alábbi lépések egy gyakori Media Services-streamelési munkafolyamatot mutatnak be, amelyben dinamikus csomagolást használnak az Azure Media Services Standard Encoderével együtt.
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.
Kódolja a mezzanine fájlt egy H.264/AAC MP4 adaptív sávszélessé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 az adaptív sávszélességű streamelés megfelelő beállításaival van kódolva (ez általában 2 másodperces GOP-k, a kulcskocka távolsága 2s perc és max, valamint állandó sávszélességű (CBR) módú kódolás.)
A meglévő Mp4 .NET SDK-minta streameléséhez tekintse meg az .ism (kiszolgálói jegyzékfájl) és az .ismc (ügyféljegyzékek) meglévő, előre kódolt MP4-fájlból való streameléséhez való létrehozásának részleteit.
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.
Különböző formátumokat (HLS, MPEG-DASH és Smooth Streaming) célzó URL-címek létrehozása. A streamvégpont gondoskodik arról, hogy a megfelelő jegyzékfájlt és kéréseket szolgálja ki a különböző formátumokhoz.
A letöltési útvonal csak azért jelenik meg a fenti képen, hogy megmutassa, közvetlenül a streamvégponton (forráson) keresztül tölthet le egy MP4-fájlt (a letölthető streamelési szabályzatot a streamelési lokátoron adhatja meg).
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 progresszív 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:
- Használjon tartalomtudatos kódolást.
- Kódminták a standard kódolóval történő kódoláshoz a .NET 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ények beállíthatók átmenő (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:
- Hozzon létre egy élő eseményt.
- Szerezze be 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.
- Szerezze be az előnézeti URL-címet, és használja annak ellenőrzésére, hogy a kódoló bemenete megérkezett-e.
- Hozzon létre egy új objektumot.
- Hozzon létre egy élő kimenetet, és használja a létrehozott objektumnevet.
Az élő kimenet archiválja a streamet az objektumba. - 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. - Listázhatja a streamelési lokátor elérési útjait a használni kívánt URL-címek lekéréséhez.
- Kérje le annak a streamvégpontnak a gazdagépnevét, amelyről streamelni szeretne.
- 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.
A Media Services 3-ban történő élő streameléssel kapcsolatos információkért lásd: Élő streamelés áttekintése.
Dinamikus csomagolás által támogatott videokodekek
A dinamikus csomagolás támogatja az MP4 tárolófájlformátumú videofájlokat, és H.264 (MPEG-4 AVC vagy AVC1) vagy H.265 (HEVC, hev1 vagy hvc1) kódolású videót tartalmaz.
Megjegyzés
A dinamikus csomagolással akár 4K felbontást és akár 60 képkocka/másodperces képkockasebességet is teszteltek.
Dinamikus csomagolással támogatott hangkodekek
A dinamikus csomagolás támogatja az MP4 fájltároló formátumban tárolt hangfájlokat is, amelyek kódolt hangstreamet tartalmaznak az alábbi kodekek egyikében:
AAC (AAC-LC, HE-AAC v1 vagy HE-AAC v2).
Dolby Digital Plus (továbbfejlesztett 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én támogatott, mint a Common Streaming Format (CSF) vagy a Common Media Application Format (CMAF) töredezett MP4-et használó MPEG-DASH protokoll, valamint a CMAF HTTP Live Streaming (HLS) használatával.
DTS
A DASH-CSF, a DASH-CMAF, a HLS-M2TS és a 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 hangkodek 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ájlformátumokat a Blob Storage-ban (például az alábbiak nem támogatottak : .dts, .ac3.)
A hangcsomagolás csak az .mp4a kiterjesztés .mp4 rendelkező fájlokat támogatja.
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ásában a hls, MPEG-DASH és Smooth Streaming streamügyfél-jegyzékfájljai dinamikusan jönnek létre az URL-cím formátumlekérdezése 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őt, a bitrátát (minőségeket), a követés nyelveit, a bemutatóablakot (rögzített időtartamú csúszóablakot) é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 helyük. A töredékek (vagy szegmensek) a videótartalmak 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 Media Presentation Description (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ékben
Ha az .ism fájlban meg van adva egy hangsáv neve, a Media Services hozzáad egy Label
elemet az a AdaptationSet
fájlhoz, amely 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 lejátszó az elemet használhatja a Label
felhasználói felületen való megjelenítéshez.
Hangleírás-sávok jelzése
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övethesse a videófelvételt. A jegyzékben hanganyagként kell jegyzetelnie a hangsávot. Ehhez adja hozzá az "akadálymentesség" és a "szerepkör" paramétereket az .ism fájlhoz. Az Ön felelőssége, hogy ezeket a paramétereket helyesen állítsa be, hogy hangleírásként jelezzen egy hangsávot. Például adja hozzá <param name="accessibility" value="description" />
a és <param name="role" value="alternate"
a fájlt az .ism fájlhoz egy adott hangsávhoz.
Zökkenőmentes streamelési jegyzék
Ha smooth streaming streamet játszik le, a jegyzékfájl az adott hangsáv értékeit Accessibility
és Role
attribútumait hordozza. A rendszer például Role="alternate" Accessibility="description"
hozzáadja az StreamIndex
elemhez, hogy jelezze, hogy ez egy hangleírás.
DASH-jegyzék
A DASH-jegyzékben a következő két elem lesz hozzáadva a hang leírásának 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
HLS v7 és újabb (format=m3u8-cmaf)
verziók esetén a lejátszási lista akkor fog elvinni AUTOSELECT=YES,CHARACTERISTICS="public.accessibility.describes-video"
, ha a hangleírási sávot jelzi.
Dinamikus jegyzékfájl-szűrés
A lejátszóknak küldött zeneszámok, formátumok, bitsebességek és bemutatóidőablakok számának szabályozásához dinamikus szűrést használhat a Media Services dinamikus csomagolójával. További információ: Jegyzékjegyzékek előszűrése a dinamikus csomagolóval.
Dinamikus titkosítás DRM-hez
Dinamikus titkosítással dinamikusan titkosíthatja az élő vagy igény szerinti tartalmakat az AES-128-zal vagy a három fő digitális jogkezelési (DRM- ) rendszer bármelyikével: Microsoft PlayReady, Google Widevine és Apple FairPlay. A Media Services emellett AES-kulcsok és DRM-licencek kézbesítésére is kínál szolgáltatást 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éseket tehet fel a Media Serviceshez, vagy kövesse a frissítéseket az alábbi módszerek egyikével:
- Q & A
-
Stack Overflow. Kérdések címkézése a következővel:
azure-media-services
. - @MSFTAzureMediavagy @AzureSupport használatával kérjen támogatást.
- Nyisson meg egy támogatási jegyet a Azure Portal keresztül.