Transmisja strumieniowa na żywo z Azure Media Services v3

logo usługi Media Services w wersji 3


Szukasz dokumentacji Media Services wersji 2?

Azure Media Services umożliwia dostarczanie wydarzeń na żywo do klientów w chmurze platformy Azure. Aby przesyłać strumieniowo wydarzenia na żywo Media Services, potrzebne są następujące elementy:

W przypadku klientów, którzy chcą dostarczać zawartość do dużych odbiorców internetowych, zalecamy włączenie usługi CDN punkcie końcowym przesyłania strumieniowego.

Ten artykuł zawiera omówienie transmisji strumieniowej na żywo oraz wskazówki dotyczące transmisji Media Services linki do innych odpowiednich artykułów.

Uwaga

Za pomocą interfejsu Azure Portal do zarządzania wydarzeniami na żywo w wersji 3,wyświetlania zasobów w wersji 3i uzyskiwania informacji o uzyskiwaniu dostępu do interfejsów API. W przypadku wszystkich innych zadań zarządzania (na przykład przekształceń i zadań) użyj interfejsu API REST,interfejsu wiersza polecenia lub jednego z obsługiwanych zestawów SDK.

Dynamiczne pakowanie i dostarczanie

Dzięki Media Services można korzystać z dynamicznego pakowania ,które umożliwia wyświetlanie podglądu i emitowanie transmisji strumieniowych na żywo w formatach MPEG DASH, HLS i Smooth Streaming ze źródła danych udziału wysyłanego do usługi. Podglądy mogą odtwarzać strumieniowo na żywo za pomocą dowolnych odtwarzaczy HLS, DASH Smooth Streaming zgodnych. Możesz użyć Azure Media Player aplikacji internetowych lub mobilnych, aby dostarczać strumień za pomocą dowolnego z tych protokołów.

Szyfrowanie dynamiczne

Szyfrowanie dynamiczne umożliwia dynamiczne szyfrowanie zawartości na żywo lub na żądanie przy użyciu algorytmu AES-128 lub dowolnego z trzech głównych systemów zarządzania prawami cyfrowymi (DRM): Technologia PlayReady firmy Microsoft, Google Widevine i Apple FairPlay. Media Services udostępnia również usługę dostarczania kluczy AES i licencji DRM (PlayReady, Widevine i FairPlay) autoryzowanym klientom. Aby uzyskać więcej informacji, zobacz szyfrowanie dynamiczne.

Uwaga

Widevine to usługa dostarczana przez firmę Google Inc. podlegając warunkiom świadczenia usług i zasadom ochrony prywatności firmy Google, Inc.

Filtrowanie dynamiczne

Filtrowanie dynamiczne służy do kontrolowania liczby ścieżek, formatów, prędkości transmisji bitów i okien czasu prezentacji wysyłanych do odtwarzaczy. Aby uzyskać więcej informacji, zobacz filtry i manifesty dynamiczne.

Typy wydarzeń na żywo

Wydarzenia na żywo są odpowiedzialne za pozysłanie i przetwarzanie kanałów informacyjnych wideo na żywo. Wydarzenie na żywo można ustawić na pass-through (lokalne koder na żywo wysyła strumień o wielokrotnej transmisji bitów) lub kodowanie na żywo (koder na żywo w środowisku lokalnym wysyła strumień o pojedynczej transmisji bitów). Aby uzyskać szczegółowe informacje o transmisji strumieniowej na żywo w Media Services w wersji 3, zobacz Wydarzenia na żywo i dane wyjściowe na żywo.

Przekazywanie

Diagram przedstawiający sposób, w jaki kanały informacyjne wideo i audio z wydarzenia na żywo typu pass-through są pozyskane i przetwarzane.

W przypadku korzystania z pass-through Live Event polegasz na lokalnym koderze na żywo w celu wygenerowania strumienia wideo o wielokrotnej transmisji bitów i wysłania go jako kanału informacyjnego do wydarzenia na żywo (przy użyciu protokołu RTMP lub pofragmentowanych danych wejściowych MP4). Wydarzenie na żywo przenosi następnie przychodzące strumienie wideo do dynamicznego programu packager (punktu końcowego przesyłania strumieniowego) bez dalszego transkodowania. Takie pass-throughowe wydarzenie na żywo jest zoptymalizowane pod kątem długotrwałych wydarzeń na żywo lub liniowego przesyłania strumieniowego na żywo 24x365.

Kodowanie na żywo

Kodowanie na żywo

W przypadku używania kodowania w chmurze z usługą Media Services należy skonfigurować lokalnego kodera na żywo do wysyłania wideo o pojedynczej transmisji bitów jako kanału informacyjnego udziału (do agregacji 32 Mb/s) na wydarzenie na żywo (przy użyciu protokołu wejściowego RTMP lub pliku MP4 podzielonego na fragmenty). Wydarzenie na żywo transkoduje przychodzący strumień o pojedynczej prędkości transmisji bitów na wiele strumieni wideo o różnych rozdzielczościach, aby ulepszyć dostarczanie, i udostępnia go do dostarczania na urządzenia odtwarzania za pośrednictwem standardowych protokołów branżowych, takich jak MPEG-DASH, Apple HTTP Live Streaming (HLS) i Microsoft Smooth Streaming.

Transkrypcja na żywo (wersja zapoznawcza)

Transkrypcja na żywo to funkcja, która może być używane ze wydarzeniami na żywo, które są kodowanie na żywo lub pass-through. Aby uzyskać więcej informacji, zobacz Transkrypcja na żywo. Gdy ta funkcja jest włączona, usługa używa funkcji mowy na tekst Cognitive Services do transkrypcji wypowiadanych słów w przychodzącym dźwięku na tekst. Ten tekst jest następnie dostępny do dostarczenia wraz z wideo i dźwiękami w protokołach MPEG-DASH i HLS.

Uwaga

Obecnie transkrypcja na żywo jest dostępna jako funkcja w wersji zapoznawczej w wersji Zachodnie stany USA 2.

Przepływ pracy transmisji strumieniowej na żywo

Aby zrozumieć przepływ pracy transmisji strumieniowej na żywo Media Services wersji 3, należy najpierw przejrzeć i zrozumieć następujące pojęcia:

Ogólne kroki

  1. Na koncie Media Services upewnij się, że punkt końcowy przesyłania strumieniowego (źródło) jest uruchomiony.

  2. Utwórz wydarzenie na żywo.
    Podczas tworzenia zdarzenia możesz określić, aby było ono automatycznie rozpoczynane. Możesz też uruchomić zdarzenie, gdy wszystko będzie gotowe do rozpoczęcia przesyłania strumieniowego.
    Jeśli autostart ma wartość true, wydarzenie na żywo zostanie uruchomione bezpośrednio po utworzeniu. Rozliczanie rozpoczyna się natychmiast po uruchomieniu wydarzenia na żywo. Aby zatrzymać dalsze rozliczenia, musisz jawnie wywołać wywołanie zatrzymać dla zasobu wydarzenia na żywo. Aby uzyskać więcej informacji, zobacz Stany wydarzeń na żywo i rozliczenia.

  3. Pobierz adresy URL pozysłania i skonfiguruj koder w środowisku lokalnym, aby używać adresu URL do wysyłania kanału informacyjnego udziału.
    Zobacz zalecane kodery na żywo.

  4. Pobierz adres URL podglądu i użyj go do sprawdzenia, czy dane wejściowe z kodera są faktycznie odbierane.

  5. Utwórz nowy obiekt zasobu.

    Każde dane wyjściowe na żywo są skojarzone z elementem zawartości używanym do nagrywania wideo w skojarzonym kontenerze usługi Azure Blob Storage.

  6. Utwórz dane wyjściowe na żywo i użyj nazwy utworzonego zasobu, aby strumień można było zarchiwizować w zasobie.

    Dane wyjściowe na żywo są uruchamiane w momencie utworzenia i zatrzymywane podczas usuwania. Usunięcie danych wyjściowych na żywo nie powoduje usunięcia bazowego zasobu i zawartości w zasobie.

  7. Utwórz lokalizator przesyłania strumieniowego z wbudowanymi typami zasad przesyłania strumieniowego.

    Aby opublikować dane wyjściowe na żywo, należy utworzyć lokalizator przesyłania strumieniowego dla skojarzonego zasobu.

  8. Wymień ścieżki w lokalizatorze przesyłania strumieniowego, aby uzyskać adresy URL do użycia (są one deterministyczne).

  9. Pobierz nazwę hosta punktu końcowego przesyłania strumieniowego (origin), z których chcesz przesyłać strumieniowo.

  10. Połącz adres URL z kroku 8 z nazwą hosta w kroku 9, aby uzyskać pełny adres URL.

  11. Jeśli chcesz przestać wyświetlać wydarzenie na żywo, musisz zatrzymać przesyłanie strumieniowe zdarzenia i usunąć lokalizator przesyłania strumieniowego.

  12. Aby po zakończeniu strumieniowego przesyłania zdarzeń, wyczyścić udostępnione wcześniej zasoby, postępuj zgodnie z poniższą procedurą.

    • Zatrzymaj wypychanie strumienia z kodera.
    • Zatrzymaj wydarzenie na żywo. Po zatrzymaniu wydarzenia na żywo opłaty nie będą naliczane. W razie potrzeby ponownego uruchomienia kanał będzie miał ten sam adres URL pozyskiwania, więc nie trzeba będzie ponownie konfigurować kodera.
    • Możesz zatrzymać punkt końcowy przesyłania strumieniowego, chyba że chcesz nadal dostarczać archiwum wydarzenia na żywo jako strumień na żądanie. Jeśli wydarzenie na żywo jest w stanie zatrzymania, opłaty nie będą naliczane.

Zasób, do którym są archiwizowane dane wyjściowe na żywo, automatycznie staje się zasobem na żądanie po usunięciu danych wyjściowych na żywo. Aby można było zatrzymać wydarzenie na żywo, należy usunąć wszystkie dane wyjściowe na żywo. Możesz użyć opcjonalnej flagi removeOutputsOnStop, aby automatycznie usuwać dane wyjściowe na żywo po zatrzymaniu.

Porada

Zobacz samouczek transmisji strumieniowejna żywo , w artykule opisano kod, który implementuje opisane powyżej kroki.

Inne ważne artykuły

Transmisja strumieniowa na żywo — często zadawane pytania

Zobacz pytania dotyczące transmisji strumieniowej na żywo w często zadawanych pytaniach.