Liveuppspelning med Azure Media Services v3

media services-logotyp v3


Letar du efter Media Services v2-dokumentation?

Azure Media Services kan du leverera livehändelser till dina kunder i Azure-molnet. För att strömma livehändelser med Media Services behöver du följande:

  • En kamera som används för att fånga livehändelsen.
    Information om konfigurationsidéer finns i Enkel och portabel händelsevideokonfiguration.

    Om du inte har åtkomst till en kamera kan verktyg som Telestream Wirecast användas för att generera en live-feed från en videofil.

  • En videokodare i direktsändning som konverterar signaler från en kamera (eller en annan enhet, till exempel en bärbar dator) till ett bidragsflöde som skickas till Media Services. Bidragsflödet kan innehålla signaler relaterade till reklam, till exempel SCTE-35-markörer.
    En lista över rekommenderade kodare för liveuppspelning finns i kodare för liveuppspelning. Kolla även in den här bloggen: Liveuppspelningsproduktion med OBS.

  • Komponenter i Media Services som gör att du kan mata in, förhandsgranska, paketera, registrera, kryptera och sända livehändelsen till dina kunder eller till en CDN för vidare distribution.

För kunder som vill leverera innehåll till stora Internet-målgrupper rekommenderar vi att du aktiverar CDN på slutpunkten för direktuppspelning.

Den här artikeln ger en översikt över och vägledning för liveuppspelning med Media Services länkar till andra relevanta artiklar.

Anteckning

Du kan använda Azure Portal för att hantera v3-livehändelser,visa v3-tillgångar, få information om åtkomst till API:er. För alla andra hanteringsuppgifter (till exempel transformeringar och jobb) använder du REST API, CLIeller någon av DEDK:er som stöds.

Dynamisk paketering och leverans

Med Media Services kan du dra nytta av dynamisk paketering, vilket gör att du kan förhandsgranska och sända dina liveströmmar i MPEG DASH-, HLS- och Smooth Streaming-format från bidragsflödet som skickas till tjänsten. Användarna kan spela upp liveuppspelningen med valfri HLS, DASH eller Smooth Streaming kompatibla spelare. Du kan använda Azure Media Player i dina webb- eller mobilprogram för att leverera din dataström i något av dessa protokoll.

Dynamisk kryptering

Med dynamisk kryptering kan du dynamiskt kryptera ditt live- eller på-begäran-innehåll med AES-128 eller något av de tre större DRM-systemen (Digital Rights Management): Microsoft PlayReady, Google Widevine och Apple FairPlay. Media Services också en tjänst för att leverera AES-nycklar och DRM-licenser (PlayReady, Widevine och FairPlay) till auktoriserade klienter. Mer information finns i dynamisk kryptering.

Anteckning

Widevine är en tjänst som tillhandahålls av Google Inc. och omfattas av användningsvillkoren och sekretesspolicyn för Google, Inc.

Dynamisk filtrering

Dynamisk filtrering används för att styra antalet spår, format, bithastigheter och presentationstidsfönster som skickas ut till spelarna. Mer information finns i filter och dynamiska manifest.

Livehändelsetyper

Livehändelser ansvarar för att mata in och bearbeta livevideofeeds. En livehändelse kan ställas in på antingen en genomströmning (en lokal livekodare skickar en dataström med flera bithastigheter) eller livekodning (en lokal livekodare skickar en dataström med enkel bithastighet). Mer information om liveuppspelning i Media Services v3 finns i Livehändelser och liveutdata.

Direkt

Diagram som visar hur video- och ljudfeeds från en direktsänd händelse matas in och bearbetas.

När du använder direktsändningen (grundläggande eller standard) förlitar du dig på din lokala livekodare för att generera en videoström med flera bithastigheter och skicka den som bidragsflöde till livehändelsen (med RTMP eller fragmenterat MP4-indataprotokoll). Livehändelsen passerar sedan igenom inkommande videoströmmar till den dynamiska paketeraren (slutpunkt för direktuppspelning) utan ytterligare omkodning. En sådan direktsändning är optimerad för långvariga livehändelser eller linjär 24x365-liveuppspelning.

Live Encoding

livekodning

När du använder molnkodning med Media Services konfigurerar du din lokala livekodare så att den skickar en video med enkel bithastighet som bidragsflöde (upp till 32 Mbit/s aggregering) till livehändelsen (med RTMP eller fragmenterat MP4-indataprotokoll). Livehändelsen omkodar den inkommande strömmen med enkel bithastighet till videoströmmar med flera bithastigheter med olika upplösningar för att förbättra leveransen och gör den tillgänglig för leverans till uppspelningsenheter via branschstandardprotokoll som MPEG-DASH, Apple HTTP Live Streaming (HLS) och Microsoft Smooth Streaming.

Live-transkription (förhandsversion)

Live-transkription är en funktion som du kan använda med livehändelser som är antingen direktsänd eller livekodning. Mer information finns i live-transkription. När den här funktionen är aktiverad använder tjänsten tal till text-funktionen i Cognitive Services transkribera talade ord i det inkommande ljudet till text. Den här texten görs sedan tillgänglig för leverans tillsammans med video och ljud i MPEG-DASH- och HLS-protokoll.

Anteckning

För närvarande är live-transkription tillgänglig som en förhandsgranskningsfunktion i USA, västra 2.

Arbetsflöde för liveuppspelning

För att förstå arbetsflödet för direktsänd strömning i Media Services v3 måste du först granska och förstå följande begrepp:

Allmänna steg

  1. I ditt Media Services konto kontrollerar du att slutpunkten för direktuppspelning (ursprung) körs.

  2. Skapa en livehändelse.
    När du skapar händelsen kan du ange att den ska starta den automatiskt. Du kan också starta händelsen när du är redo att börja strömma.
    När autostart är inställt på true (sant) startas livehändelsen direkt efter att den har skapats. Faktureringen startar så fort livehändelsen börjar köras. Du måste uttryckligen anropa Stop på livehändelseresursen för att stoppa ytterligare fakturering. Mer information finns i livehändelse tillstånd och fakturering.

  3. Hämta inmatnings-URL:erna och konfigurera din lokala kodare så att den använder URL:en för att skicka bidragsflödet.
    Se rekommenderade livekodare.

  4. Hämta förhandsgransknings-URL:en och använd den för att verifiera att indata från kodaren faktiskt tas emot.

  5. Skapa ett nytt tillgångsobjekt.

    Varje liveutdata är associerad med en tillgång som används för att spela in videon i den associerade Azure Blob Storage-containern.

  6. Skapa liveutdata och använd tillgångsnamnet som du skapade så att dataströmmen kan arkiveras i tillgången.

    Liveutdata startar när de skapas och avbryts när de tas bort. När du tar bort liveutdata tar du inte bort den underliggande tillgången och innehållet i tillgången.

  7. Skapa en positionerare för direktuppspelning med de inbyggda strömningsprinciptyperna.

    Om du vill publicera liveutdata måste du skapa en positionerare för direktuppspelning för den associerade tillgången.

  8. Lista sökvägarna på strömningslokaliseraren för att få tillbaka url:erna som ska användas (dessa är deterministiska).

  9. Hämta värdnamnet för den slutpunkt för direktuppspelning (Ursprung) som du vill strömma från.

  10. Kombinera URL:en från steg 8 med värdnamnet i steg 9 för att hämta den fullständiga URL:en.

  11. Om du vill sluta göra livehändelsen visningsbar måste du sluta strömma händelsen och ta bort positioneraren för direktuppspelning.

  12. Följ stegen nedan om du är klar med strömningen av händelser och vill rensa de resurser som etablerades tidigare.

    • Stoppa sändningen av dataströmmen från kodaren.
    • Stoppa livehändelsen. När direktsändningen har stoppats medför den inga avgifter. När du vill starta den igen har den samma infognings-URL så att du inte behöver konfigurera om din kodare.
    • Du kan stoppa slutpunkten för direktuppspelning om du inte vill fortsätta att tillhandahålla arkivet för livehändelsen som en ström på begäran. Om livehändelsen är i stoppat tillstånd medför den inga avgifter.

Den tillgång som liveutdata arkiveras till blir automatiskt en tillgång på begäran när liveutdata tas bort. Du måste ta bort alla liveutdata innan en livehändelse kan stoppas. Du kan använda en valfri flagga removeOutputsOnStop för att automatiskt ta bort liveutdata vid stopp.

Tips

I självstudien omdirektsänd strömning undersöker artikeln koden som implementerar stegen som beskrivs ovan.

Andra viktiga artiklar

Vanliga frågor och svar om liveuppspelning

Se liveuppspelningsfrågorna i Vanliga frågor och svar.