Koda och strömma videofiler med Node.js

media services-logotyp v3


Letar du efter Media Services v2-dokumentation?

Den här snabbstarten visar hur lätt det är att koda och börja strömma video på en mängd olika webbläsare och enheter med Azure Media Services. En indatavideofil kan anges med HTTPS-URL:er, SAS-URL:er eller sökvägar till filer som finns i Azure Blob Storage.

I slutet av den här snabbstarten vet du:

  • Koda med Node.js
  • Strömma med Node.js
  • Ladda upp en fil från en HTTPS-URL med Node.js
  • Använda en HLS- eller DASH-klientspelare med Node.js

Exemplet i den här artikeln kodar innehåll som du gör tillgängligt via en HTTPS-URL. Observera att AMS v3 för närvarande inte stöder segmentvis överföringskodning över HTTPS-URL:er.

Spela upp videon

Om du inte har en Azure-prenumerationkan du skapa ett kostnads fritt konto innan du börjar.

Förutsättningar

Ladda ned och konfigurera exemplet

Klona GitHub lagringsplats som innehåller Node.js till datorn med följande kommando:

git clone https://github.com/Azure-Samples/media-services-v3-node-tutorials.git

Exemplet finns i mappen StreamFilesSample.

Öppna index.ts i det nedladdade projektet. Uppdatera filen sample.env i rotmappen med de värden och autentiseringsuppgifter som du fick från åtkomst till API:er. Byt namn på filen sample.env till .env (Ja, bara tillägget).

Exemplet utför följande åtgärder:

  1. Skapar en transformering med en förinställning för Innehållsmedveten kodning. Den kontrollerar först om den angivna transformeringen finns.
  2. Skapar en utdatatillgång som används av kodningsjobbet för att innehålla utdata
  3. Du kan också ladda upp en lokal fil med hjälp Storage Blob SDK
  4. Skapar jobbindata som baseras på en HTTPS-URL eller uppladdad fil
  5. Skickar kodningsjobbet med hjälp av de indata och utdata som skapades tidigare
  6. Kontrollerar jobbets status
  7. Laddar ned utdata från kodningsjobbet till en lokal mapp
  8. Skapar en positionerare för direktuppspelning som ska användas i spelaren
  9. Skapar strömnings-URL:er för HLS och DASH
  10. Spelar upp innehållet i ett spelarprogram – Azure Media Player

Kör exemplet

  1. Programmet laddar ned kodade filer. Skapa en mapp där du vill att utdatafilerna ska gå och uppdatera värdet för variabeln outputFolder i filen index.ts. Den är inställd på "Temp" som standard.

  2. Öppna en kommandotolk och bläddra till exempelkatalogen.

  3. Ändra katalogen till mappen AMSv3Samples.

    cd AMSv3Samples
    
  4. Installera de paket som används i packages.json-filen.

    npm install 
    
  5. Ändra katalogen till mappen StreamFilesSample.

    cd StreamFilesSample
    
  6. Starta Visual Studio kod från mappen AMSv3Samples. (Detta krävs för att starta från mappen där .vscode-mappen och tsconfig.json-filerna finns.)

    cd ..
    code .
    

Öppna mappen för StreamFilesSample och öppna filen index.ts i Visual Studio Code-redigeraren. I filen index.ts trycker du på F5 för att starta felsökningsprogrammet.

Testa med Azure Media Player

Använd Azure Media Player för att testa dataströmmen. Du kan också använda valfri HLS- eller DASH-kompatibel spelare som Shaka-spelare, HLS.js, Dash.js eller andra.

Du bör kunna klicka på länken som genererades i exemplet och starta AMP-spelaren med DASH-manifestet redan inläst.

Anteckning

Om en spelare finns på en HTTPS-webbplats uppdaterar du URL:en till ”HTTPS”.

  1. Öppna en webbläsare och gå till https://aka.ms/azuremediaplayer/ .
  2. I rutan URL: klistrar du in ett av de strömnings-URL-värden som du fick när du körde programmet. Du kan klistra in URL:en i formatet HLS, Dash eller Smooth så Azure Media Player växlar till ett lämpligt strömningsprotokoll för uppspelning på enheten automatiskt.
  3. Tryck på Uppdatera spelare.

Azure Media Player kan användas vid testning, men bör inte användas i en produktionsmiljö.

Rensa resurser

Om du inte längre behöver någon av resurserna i resursgruppen, inklusive de Media Services- och lagringskonton som du skapade för den här självstudien, tar du bort resursgruppen.

Kör följande CLI-kommando:

az group delete --name amsResourceGroup

Mer utvecklardokumentation för Node.js på Azure

Se även

Nästa steg

Media Services begrepp