Videó és hang kódolása a Media Services használatával

Media Services embléma v3


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.

Tipp

Miniatűröket szeretne létrehozni, összefűzni két videót, alkonyatolni vagy elforgatni (többek között)? A Media Services mintakódját a Minták lapon találja.

A Media Services kódolási kifejezése a digitális videót és/vagy hangot tartalmazó fájlok szabványos formátumból egy másikba való konvertálásának folyamatára vonatkozik, azzal a céllal, hogy (a) csökkentse a fájlok méretét, és/vagy (b) olyan formátumot hozzon létre, amely kompatibilis az eszközök és alkalmazások széles körével. Ezt a folyamatot videotömörítésnek vagy átkódolásnak is nevezik. A fogalmakról további információt az Adattömörítés és a Mi az kódolás és átkódolás? című témakörben talál.

A videókat általában progresszív letöltéssel vagy adaptív sávszélességű streameléssel kézbesítik az eszközöknek és alkalmazásoknak.

átalakítások és feladatok

Fontos

A Media Services nem számláz a megszakított vagy a hibákat eredményező feladatokért. Például az 50%-os előrehaladást elérő és megszakított feladatok számlázása nem történik meg a feladat perceinek 50%-ában. Csak a befejezett feladatokért kell fizetnie.

  • A progresszív letöltéssel történő kézbesítéshez az Azure Media Services használatával átalakíthat egy digitális médiafájlt (mezzanine) MP4-fájllá , amely a H.264 kodekkel kódolt videót és az AAC-kodekkel kódolt hangot tartalmaz. Ez az MP4-fájl a tárfiók egyik objektumára lesz írva. A fájl közvetlen letöltéséhez használhatja az Azure Storage API-kat vagy SDK-kat (például Storage REST API vagy .NET SDK). Ha a kimeneti objektumot egy adott tárolónévvel hozta létre a tárolóban, használja ezt a helyet. Ellenkező esetben a Media Services használatával listázhatja az objektumtároló URL-címeit.
  • Ahhoz, hogy a tartalmat adaptív sávszélességű streameléssel készítse elő, a mezzanine fájlt több (magastól alacsonyig) sávszélességűre kell kódolni. A minőség szabályos átmenetének biztosítása érdekében a videó felbontása a sávszélesség csökkentésekor csökken. Ez egy úgynevezett kódolási létrát eredményez , amely felbontások és sávszélességek táblázata (lásd az automatikusan létrehozott adaptív sávszélesség-létrátát , vagy használja a tartalomtudatos kódolási készletet). A Media Services használatával több sávszélességű kódolhatja a mezzanine fájlokat. Ebben az esetben mp4-fájlokat és a kapcsolódó streamelési konfigurációs fájlokat fog kapni, amelyek a tárfiók egy objektumára íródnak. Ezt követően a Media Services dinamikus csomagolási funkciójának használatával streamelési protokollok, például MPEG-DASH és HLS használatával továbbíthatja a videót. Ehhez létre kell hoznia egy streamelési lokátort , és létre kell hoznia a támogatott protokollnak megfelelő streamelési URL-címeket, amelyeket aztán a képességeik alapján átadhat az eszközöknek/alkalmazásoknak.

Átalakítások és feladatok

A Media Services v3 kódolásához létre kell hoznia egy átalakítást és egy feladatot. Az átalakítás definiálja a kódolási beállítások és kimenetek receptét; A feladat a recept egy példánya. További információt az átalakításokkal és feladatokkal kapcsolatos cikkben olvashat.

A Media Services használatával történő kódoláskor előre beállított beállításokkal tájékoztathatja a kódolót a bemeneti médiafájlok feldolgozásának módjáról. A Media Services v3-ban a Standard Encoder használatával kódolhatja a fájlokat. Megadhatja például a videó felbontását és/vagy a hangcsatornák számát a kódolt tartalomban.

Gyorsan használatba vehet egy beépített készletet az iparági ajánlott eljárások alapján, vagy létrehozhat egy egyéni készletet az adott forgatókönyv vagy eszközkövetelmények megcélzásához.

2019 januárjától kezdve, amikor a Standard Encoderrel kódol az MP4-fájlok előállításához, a rendszer létrehoz egy új .mpi fájlt, és hozzáadja a kimeneti objektumhoz. Ez az MPI-fájl a dinamikus csomagolási és streamelési forgatókönyvek teljesítményének javítására szolgál.

Megjegyzés

Ne módosítsa vagy távolítsa el az MPI-fájlt, és ne függjön a szolgáltatásban az ilyen fájlok létezéséről (vagy nem).

Beépített előzetes beállítások

A Media Services a következő beépített kódolási beállításokat támogatja:

BuiltInStandardEncoderPreset

A BuiltInStandardEncoderPreset a bemeneti videó Standard Encoderrel való kódolására szolgáló beépített készlet beállítására szolgál.

Jelenleg az alábbi beépített előzetes beállítások támogatottak:

  • EncoderNamedPreset.AACGoodQualityAudio: Egyetlen MP4-fájlt hoz létre, amely csak 192 kbps sebességgel kódolt sztereó hangot tartalmaz.

  • EncoderNamedPreset.AdaptiveStreaming: Ez támogatja a H.264 adaptív sávszélességű kódolást. További információ: Bitrátalétra automatikus létrehozása.

  • EncoderNamedPreset.H265AdaptiveStreaming : Hasonló az AdaptiveStreaming előzetes verziójához, de a HEVC (H.265) kodeket használja. GoP-hez igazított MP4-fájlokat hoz létre H.265 videóval és sztereó AAC-hanggal. Automatikusan létrehoz egy bitsebesség-létrátát a bemeneti felbontás, a sávszélesség és a képkockasebesség alapján. Az automatikusan létrehozott előre beállított beállítás soha nem lépi túl a bemeneti felbontást. Ha például a bemenet 720p, a kimenet a legjobb esetben is 720p marad.

  • EncoderNamedPreset.ContentAwareEncoding: A H.264 tartalomérzékeny kódolás előzetes beállítását teszi elérhetővé. GoP-hez igazított MP4-ek készletét állítja elő tartalomérzékeny kódolással. Bármilyen bemeneti tartalom esetén a szolgáltatás kezdeti egyszerű elemzést végez a bemeneti tartalomról, és az eredmények alapján határozza meg az optimális számú réteget, a megfelelő sávszélességet és felbontásbeállításokat az adaptív streameléssel történő teljesítéshez. Ez az előzetes beállítás különösen hatékony az alacsony és közepes összetettségű videók esetében, ahol a kimeneti fájlok kisebb sávszélességűek lesznek, de olyan minőségben, amely továbbra is jó élményt nyújt a nézőknek. A kimenet mp4-fájlokat tartalmaz, amelyekben a videó és a hang össze van osztva. Ez az előre beállított beállítás csak 1080P HD-ig állítja elő a kimenetet. Ha 4K kimenetre van szükség, a készletet a "maxHeight" tulajdonság használatával konfigurálhatja a PresetConfigurations beállítással. További információ: tartalomérzékeny kódolás.

  • EncoderNamedPreset.H265ContentAwareEncoding: A HEVC (H.265) tartalomtudatos kódolás előzetes beállítását teszi elérhetővé. GoP-hez igazított MP4-ek készletét állítja elő tartalomérzékeny kódolással. Bármilyen bemeneti tartalom esetén a szolgáltatás kezdeti egyszerű elemzést végez a bemeneti tartalomról, és az eredmények alapján határozza meg az optimális számú réteget, a megfelelő sávszélességet és felbontásbeállításokat az adaptív streameléssel történő teljesítéshez. Ez az előzetes beállítás különösen hatékony az alacsony és közepes összetettségű videók esetében, ahol a kimeneti fájlok kisebb sávszélességűek lesznek, de olyan minőségben, amely továbbra is jó élményt nyújt a nézőknek. A kimenet mp4-fájlokat tartalmaz, amelyekben a videó és a hang össze van osztva. Ez az előre beállított beállítás legfeljebb 4K HD-kimenetet hoz létre. Ha 8K kimenetre van szükség, a készletet a "maxHeight" tulajdonság használatával konfigurálhatja a PresetConfigurations beállítással.

  • EncoderNamedPreset.H264MultipleBitrate1080p: nyolc GOP-hez igazított MP4-fájlt hoz létre, 6000 kbps és 400 kbps között, valamint sztereó AAC-hangot. A felbontás 1080p-vel kezdődik, és 360p-ra csökken.

  • EncoderNamedPreset.H264MultipleBitrate720p: hat GOP-hoz igazított MP4-fájlt hoz létre, 3400 kbps és 400 kbps között, valamint sztereó AAC-hangot. A felbontás 720p-vel kezdődik, és 360p-ra csökken.

  • EncoderNamedPreset.H264MultipleBitrateSD: öt GOP-hez igazított MP4-fájlt hoz létre 1600 kbps és 400 kbps között, valamint sztereó AAC-hangot. A felbontás 480p-vel kezdődik, és 360p-ra csökken.

  • EncoderNamedPreset.H264SingleBitrate1080p: létrehoz egy MP4-fájlt, amelyben a videó H.264 kodekkel van kódolva 6750 kbps sebességgel és 1080 képpontos képmagassággal, a sztereó hang pedig AAC-LC kodekkel van kódolva 128 kbps sebességgel. Ha alacsonyabb sávszélességre van szüksége a hanghoz, létrehozhat egy egyéni kódolási készletet az átalakításban, és beállíthatja a mintavételezési sebességet vagy a csatornák számát, hogy alacsonyabb értékeket kapjon az AAC-LC-hez.

  • EncoderNamedPreset.H264SingleBitrate720p: létrehoz egy MP4-fájlt, amelyben a videó H.264 kodekkel van kódolva 4500 kbps sebességgel és 720 képpontos képmagassággal, a sztereó hang pedig AAC-LC kodekkel van kódolva 128 kbps sebességgel. Ha alacsonyabb sávszélességre van szüksége a hanghoz, létrehozhat egy egyéni kódolási készletet az átalakításban, és beállíthatja a mintavételezési sebességet vagy a csatornák számát, hogy alacsonyabb értékeket kapjon az AAC-LC-hez.

  • EncoderNamedPreset.H264SingleBitrateSD: létrehoz egy MP4-fájlt, amelyben a videó H.264 kodekkel van kódolva 2200 kbps sebességgel és 480 képpontos képmagassággal, a sztereó hang pedig AAC-LC kodekkel van kódolva 128 kbps sebességgel. Ha alacsonyabb sávszélességre van szüksége a hanghoz, létrehozhat egy egyéni kódolási készletet az átalakításban, és beállíthatja a mintavételezési sebességet vagy a csatornák számát, hogy alacsonyabb értékeket kapjon az AAC-LC-hez.

  • EncoderNamedPreset.H265SingleBitrate720P: létrehoz egy MP4-fájlt, amelyben a videó HEVC (H.265) kodekkel van kódolva 1800 kbps sebességgel és 720 képpontos képmagassággal, a sztereó hang pedig AAC-LC kodekkel van kódolva 128 kbps sebességgel.

  • EncoderNamedPreset.H265SingleBitrate1080p: létrehoz egy MP4-fájlt, amelyben a videó HEVC (H.265) kodekkel van kódolva 3500 kbps sebességgel és 1080 képpontos képmagassággal, a sztereó hang pedig AAC-LC kodekkel van kódolva 128 kbps sebességgel.

  • EncoderNamedPreset.H265SingleBitrate4K: létrehoz egy MP4-fájlt, amelyben a videó HEVC (H.265) kodekkel van kódolva 9500 kbps sebességgel és 2160 képpontos képmagassággal, a sztereó hang pedig AAC-LC kodekkel van kódolva 128 kbps sebességgel.

A legfrissebb előre beállított beállítások listájának megtekintéséhez tekintse meg a videók kódolásához használandó beépített készleteket.

Egyéni készletek

A Media Services teljes mértékben támogatja az előre beállított értékek testreszabását az adott kódolási igényeknek és követelményeknek megfelelően.

StandardEncoderPreset

A StandardEncoderPreset a bemeneti videó Standard Encoderrel való kódolásához használandó beállításokat ismerteti. Ezt a beállításkészletet az Átalakítási beállítások testreszabásakor használhatja.

Megfontolandó szempontok

Egyéni készletek létrehozásakor a következő szempontokat kell figyelembe venni:

  • Az AVC-tartalom magasságának és szélességének minden értékének négyből többnek kell lennie.
  • Az Azure Media Services v3-ban az összes kódolási sávszélesség bit/másodpercben van megadva. Ez eltér a v2 API-k előzetes beállításaitól, amelyek kilobit/másodpercet használtak egységként. Ha például a v2-ben a sávszélesség 128 (kilobit/másodperc) értékre van állítva, akkor a v3-ban 128000 (bit/másodperc) értékre van állítva.

Előre beállított séma

A Media Services v3-ban az előzetes beállítások erősen begépelt entitások magukban az API-ban. Ezekhez az objektumokhoz a "séma" definícióját az Open API Specification (vagy Swagger) területen találja. Az előre beállított definíciókat (például a StandardEncoderPresetet) a REST API-ban, a .NET SDK-ban (vagy más Media Services v3 SDK-referenciadokumentációban) is megtekintheti.

Kódolás skálázása a v3-ban

Az API 2020-05-01-es vagy újabb verziójával vagy a Azure Portal keresztül létrehozott fiókok esetében a skálázás és a média számára fenntartott egységek már nem szükségesek. A skálázás automatikus lesz, és a szolgáltatás belsőleg kezeli.

Számlázás

A Media Services nem számláz a megszakított vagy hibás feladatokért. Például az 50%-os előrehaladást elérő és megszakított feladatok számlázása nem történik meg a feladat perceinek 50%-ában. Csak a befejezett feladatokért kell fizetnie.

További információkért lásd a díjszabást.

Kódolási minták

Tekintse meg a kódolási minták széles listáját.

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: