Tous les produits
Search
Centre de documentation

ApsaraVideo Live:Transcodage de flux en direct

Dernière mise à jour :Sep 22, 2026

Le transcodage de flux en direct évite les problèmes de lecture causés par des débits d'ingestion trop élevés ou trop faibles. Cette rubrique présente les cas d'utilisation, les limites, les fonctionnalités, les paramètres des modèles, les règles de transcodage et la largeur adaptative.

Cas d'utilisation

  • Lorsque le débit d'ingestion est élevé mais que la bande passante du client est limitée, la lecture vidéo peut saccader. À l'inverse, un débit d'ingestion faible entraîne une mauvaise qualité de lecture. Le transcodage de flux en direct résout ces problèmes.

  • Les plugins du lecteur doivent prendre en charge le basculement multi-débit. Pour activer cette fonctionnalité, fournissez au lecteur plusieurs URL de streaming pour le même flux d'ingestion, chacune avec un débit différent. La fonctionnalité de transcodage en temps réel d'ApsaraVideo Live génère ces URL.

    • Vous pouvez ingérer un flux encodé en H.264 et le transcoder en temps réel en un flux en direct H.265 pour réduire la bande passante.

    • Vous pouvez ingérer un flux encodé en H.265 et le transcoder en temps réel en un flux en direct H.265 à faible débit.

    • Pour résoudre l'incompatibilité des navigateurs avec le format H.265, vous pouvez transcoder le flux en temps réel en un flux en direct H.264.

Important

La fonctionnalité de transcodage de flux en direct engendre des frais de transcodage. Les frais sont calculés en fonction de la norme de transcodage, de la résolution et de la durée totale du transcodage. Pour plus d'informations sur les règles de facturation, consultez Frais de transcodage de flux en direct.

Limites

  • Lorsque vous configurez des modèles de transcodage pour un nom de domaine et un AppName, vous ne pouvez pas définir le Template Type d'un seul modèle à la fois sur Standard Transcoding et Narrowband HDTM template.

  • Lorsque vous configurez un modèle de transcodage pour un AppName spécifique, il n'est appliqué que si l'AppName dans l'URL d'ingestion correspond à celui du modèle. Les domaines de sous-streaming héritent des modèles de transcodage du domaine de streaming principal ; par conséquent, toute configuration spécifique aux domaines de sous-streaming est ignorée.

  • Pour les centres de diffusion en direct en Chine (Pékin), Chine (Shanghai) et Chine (Shenzhen), chaque nom de domaine prend en charge jusqu'à 300 flux transcodés simultanés. Pour les autres centres de diffusion, chaque nom de domaine prend en charge jusqu'à 50 flux transcodés simultanés. Par exemple, si un flux en direct haute définition est ingéré et transcodé en flux de définition standard et de basse définition pour la lecture, cela compte comme deux flux transcodés simultanés. Lorsque la limite est atteinte, les connexions dépassant la limite liront le flux d'origine. Pour afficher votre utilisation actuelle et demander une augmentation du quota, accédez à basic configuration > Basic Information pour votre domaine de streaming.

  • Si le service de streaming en direct ne répond pas à vos besoins métier, contactez votre gestionnaire de compte Alibaba Cloud ou communiquez avec nous via d'autres canaux.

Fonctionnalités

La fonctionnalité de transcodage inclut Default Transcoding, Custom Transcoding, Multi-bitrate Transcoding et HTML5 Auto Transcoding.

Default Transcoding : vous pouvez utiliser des modèles prédéfinis par le système, qui incluent l'ID du modèle et la résolution de sortie. Le système définit le débit de sortie et celui-ci ne peut pas être modifié.

Custom Transcoding : vous pouvez configurer le format d'encodage, la résolution, le débit, la fréquence d'images, le GOP vidéo, le déclencheur de transcodage et l'ID du modèle.

Multi-bitrate Transcoding : un modèle de transcodage peut contenir plusieurs configurations de transcodage. Après avoir configuré le transcodage multi-débit, le lecteur peut lire automatiquement le flux en direct avec le débit approprié en fonction de la bande passante réseau du client. Cela améliore l'expérience de lecture.

HTML5 Auto Transcoding : cette fonctionnalité résout les problèmes tels que l'absence de prise en charge des images B vidéo et de l'encodage AAC dans les navigateurs natifs pour le streaming en temps réel (RTS) (artc://).

Modèles prédéfinis par le système

Détails des modèles

  • Modèles standard

Modèle

ID de qualité (H.264)

ID de qualité (H.265)

ID de latence (H.264)

ID de latence (H.265)

Résolution

Débit

LD (Paysage)

lld

lld265

lld-ll

lld265-ll

Largeur adaptative, hauteur : 360

≤470

SD (Paysage)

lsd

lsd265

lsd-ll

lsd265-ll

Largeur adaptative, hauteur : 432

≤680

HD (Paysage)

lhd

lhd265

lhd-ll

lhd265-ll

Largeur adaptative, hauteur : 648

≤1500

UHD (Paysage)

lud

lud265

lud-ll

lud265-ll

Largeur adaptative, hauteur : 1080

≤2500

SD (Paysage)

lsd540

lsd265-540

lsd540-ll

lsd265-540-ll

Largeur adaptative, hauteur : 540

≤680

LD (Portrait)

lld-v

lld265-v

lld-v-ll

lld265-v-ll

Largeur : 360, hauteur adaptative

≤470

SD (Portrait)

lsd-v

lsd265-v

lsd-v-ll

lsd265-v-ll

Largeur : 432, hauteur adaptative

≤680

HD (Portrait)

lhd-v

lhd265-v

lhd-v-ll

lhd265-v-ll

Largeur : 648, hauteur adaptative

≤1500

UHD (Portrait)

lud-v

lud265-v

lud-v-ll

lud265-v-ll

Largeur : 1080, hauteur adaptative

≤2500

SD (Portrait)

lsd540-v

lsd265-540-v

lsd540-v-ll

lsd265-540-v-ll

Largeur : 540, hauteur adaptative

≤680

Qualité d'origine - Transcodage audio uniquement

oriopus

Qualité d'origine - Transcodage audio uniquement

oriaac

  • Modèles Narrowband HD

Modèle

ID de qualité (H.264)

ID de qualité (H.265)

ID de latence (H.264)

ID de latence (H.265)

Résolution

Débit

LD (Paysage)

ld

ld265

ld-ll

ld265-ll

Largeur adaptative, hauteur : 360

≤450

SD (Paysage)

sd

sd265

sd-ll

sd265-ll

Largeur adaptative, hauteur : 432

≤480

HD (Paysage)

hd

hd265

hd-ll

hd265-ll

Largeur adaptative, hauteur : 648

≤1200

UHD (Paysage)

ud

ud265

ud-ll

ud265-ll

Largeur adaptative, hauteur : 1080

≤1300

SD (Paysage)

sd540

sd265-540

sd540-ll

sd265-540-ll

Largeur adaptative, hauteur : 540

≤480

LD (Portrait)

ld-v

ld265-v

ld-v-ll

ld265-v-ll

Largeur : 360, hauteur adaptative

≤450

SD (Portrait)

sd-v

sd265-v

sd-v-ll

sd265-v-ll

Largeur : 432, hauteur adaptative

≤480

HD (Portrait)

hd-v

hd265-v

hd-v-ll

hd265-v-ll

Largeur : 648, hauteur adaptative

≤1200

UHD (Portrait)

ud-v

ud265-v

ud-v-ll

ud265-v-ll

Largeur : 1080, hauteur adaptative

≤1300

SD (Portrait)

sd540-v

sd265-540-v

sd540-v-ll

sd265-540-v-ll

Largeur : 540, hauteur adaptative

≤480

Important
  • L'Template ID ne correspond pas nécessairement à la spécification de transcodage indiquée sur votre facture. La spécification de transcodage réelle sur votre facture dépend de la résolution de la vidéo transcodée. Par exemple, si vous configurez un transcodage LD (ld) et que la vidéo transcodée a un côté court ≤ 480 et un côté long ≤ 640, vous êtes facturé selon la spécification LD. Si vous configurez un transcodage LD (ld) mais que la résolution de la vidéo transcodée est de 700 × 360, vous êtes facturé selon la spécification SD. Pour plus d'informations, consultez Frais de transcodage de flux en direct.

  • Le système adapte la résolution de la vidéo transcodée en fonction de l'orientation paysage ou portrait de la vidéo. Pour plus d'informations, consultez Résolution adaptative.

Règles de transcodage

  • ApsaraVideo Live prend en charge le transcodage à la demande par défaut. Le système surveille les flux en direct transcodés. Si un flux n'a aucun spectateur, le système n'effectue pas de transcodage. Le transcodage commence lorsque le premier spectateur commence à regarder le flux. Pendant le processus de transcodage, le système détermine s'il faut arrêter le transcodage en fonction à la fois de l'état de lecture et de l'état des tâches backend. Les règles suivantes s'appliquent :

    • Si des tâches backend telles que l'enregistrement, le décalage temporel, les snapshots ou la modération de contenu sont toujours en cours d'exécution, le système maintient la connexion du flux et continue le transcodage même si personne ne regarde.

    • Si aucune tâche backend n'est en cours d'exécution et que le système ne détecte aucun spectateur pendant cinq minutes, le système arrête automatiquement le transcodage.

    • Si vous souhaitez que le système arrête le transcodage chaque fois que personne ne regarde, quel que soit l'état des tâches backend, soumettez un ticket pour demander une configuration backend. Pour plus d'informations sur la soumission d'un ticket, consultez @xref node="3932214" baseUrl="t2019529_v1_12_0.dita" Nous contacter @/xref .

  • Le système transcode chaque flux une seule fois.

  • Le transcodage est un service facultatif que vous pouvez configurer selon vos besoins.

  • La fonctionnalité de transcodage prend en charge les protocoles FLV, RTMP, HLS et RTS.

Résolution adaptative

Le transcodage utilise un algorithme de résolution adaptative basé sur l'orientation paysage ou portrait de la vidéo.

  • Pour le transcodage adaptatif paysage, le système adapte la largeur de la vidéo transcodée en fonction de la hauteur du modèle.

  • Pour le transcodage adaptatif portrait, le système adapte la hauteur de la vidéo transcodée en fonction de la largeur du modèle.

Le système calcule la largeur adaptative comme suit.

Hauteur adaptative

Par exemple, si vous transcodez une vidéo 1920 × 1080 en utilisant le modèle LD (Paysage) (ID de modèle : ld), le modèle définit la hauteur sur 360 et la largeur adaptative aboutit à une résolution finale de 640 × 360.

Par exemple, si vous transcodez une vidéo 1920 × 1080 en utilisant le modèle LD (Portrait) (ID de modèle : ld-v), le modèle définit la largeur sur 360 et la hauteur adaptative aboutit à une résolution finale de 360 × 203.

Important

Actuellement, seuls Default Transcoding et Custom Transcoding prennent en charge la résolution adaptative.

Configuration

Important

La modification ou la suppression d'une configuration de modèle de transcodage n'affecte pas une tâche d'ingestion de flux en cours. Pour que la nouvelle configuration prenne effet ou pour arrêter la facturation du transcodage, vous devez déconnecter le flux en direct actuel et redémarrer l'ingestion du flux.

Transcodage par défaut

Vous pouvez configurer le Default transcoding dans ApsaraVideo Live de deux manières.

Configurer le transcodage par défaut sur la console

  1. Connectez-vous à la console ApsaraVideo Live.

  2. Dans le volet de navigation de gauche, cliquez sur Feature Management > Transcoding.

  3. Sélectionnez le nom de domaine que vous souhaitez configurer, cliquez sur l'onglet Default Transcoding, puis cliquez sur Add pour configurer un modèle de transcodage.

    image

    Le tableau suivant décrit les paramètres du modèle de transcodage.

    Paramètre

    Description

    Application Name

    Le système tente d'abord de faire correspondre un modèle de transcodage avec le même AppName que l'URL d'ingestion. Si aucune correspondance n'est trouvée, le système utilise un modèle où AppName est défini sur un astérisque (*).

    Trigger Transcoding

    • Activé : le transcodage ne démarre que lorsque le flux transcodé est extrait pour la première fois.

    • Désactivé : le transcodage démarre lors de l'ingestion du flux, même si le flux n'est pas extrait.

    Template Type

    • Propose deux types de modèles : Standard Transcoding et Narrowband HD™ Transcoding. Ces types diffèrent en termes de qualité, de performances et de prix. Le Standard Transcoding inclut une option Original quality - Audio-only transcoding.

    • Vous pouvez sélectionner plusieurs modèles de transcodage.

    • Lorsque vous utilisez un modèle de transcodage, l'Template ID est un paramètre utilisé pour construire l'URL de transcodage. Pour obtenir des instructions sur la construction de l'URL, consultez Générer des URL de streaming en direct. Pour plus d'informations sur les identifiants de modèle, consultez Modèles prédéfinis par le système. Les modes de transcodage incluent la priorité à la qualité et la priorité à la latence. En mode priorité à la latence, la latence du flux transcodé est plus faible.

    • Pour le même nom de domaine, la combinaison de AppName et de Template ID sert de clé primaire composite.

    Encryption

    Après avoir activé cette fonctionnalité, vous pouvez configurer le Alibaba Cloud Proprietary Cryptography ou le DRM Encryption.

    Remarque

    Le DRM Encryption n'est pris en charge que dans les centres de diffusion en direct de Shanghai et de Singapour.

    • Alibaba Cloud Proprietary Cryptography

      • Le chiffrement vidéo Alibaba Cloud prend uniquement en charge les formats de sortie HLS et FLV.

      • KMS CMK ID : la région de la clé Key Management Service (KMS) doit être la même que celle du centre de diffusion en direct du nom de domaine. Si vous ne disposez pas de clé, accédez à la console KMS pour en créer une. Pour plus d'informations, consultez Acheter et activer une instance KMS.

      • CMK Rotation Period : un entier compris entre 60 et 3600.

      • Pour plus d'informations sur l'utilisation du chiffrement vidéo Alibaba Cloud, consultez Chiffrement vidéo Alibaba Cloud.

    • DRM Encryption

      • Avant d'activer cette fonctionnalité, vous devez configurer une clé DRM. Pour plus d'informations, consultez Configurer le chiffrement DRM.

      • Le DRM Encryption est pris en charge pour Widevine et FairPlay via HLS. Pour FairPlay, vous devez télécharger le certificat obtenu auprès d'Apple dans la gestion des certificats DRM. Pour plus d'informations, consultez Demander un certificat FairPlay.

  4. Cliquez sur OK.

Configurer le transcodage par défaut à l'aide d'une API

// This file is auto-generated, don't edit it. Thanks.
package demo;

import com.aliyun.auth.credentials.Credential;
import com.aliyun.auth.credentials.provider.StaticCredentialProvider;
import com.aliyun.core.http.HttpClient;
import com.aliyun.core.http.HttpMethod;
import com.aliyun.core.http.ProxyOptions;
import com.aliyun.httpcomponent.httpclient.ApacheAsyncHttpClientBuilder;
import com.aliyun.sdk.service.live20161101.models.*;
import com.aliyun.sdk.service.live20161101.*;
import com.google.gson.Gson;
import darabonba.core.RequestConfiguration;
import darabonba.core.client.ClientOverrideConfiguration;
import darabonba.core.utils.CommonUtil;
import darabonba.core.TeaPair;

//import javax.net.ssl.KeyManager;
//import javax.net.ssl.X509TrustManager;
import java.net.InetSocketAddress;
import java.time.Duration;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.io.*;

public class AddLiveStreamTranscode {
    public static void main(String[] args) throws Exception {

        // HttpClient Configuration
        /*HttpClient httpClient = new ApacheAsyncHttpClientBuilder()
                .connectionTimeout(Duration.ofSeconds(10)) // Set the connection timeout time, the default is 10 seconds
                .responseTimeout(Duration.ofSeconds(10)) // Set the response timeout time, the default is 20 seconds
                .maxConnections(128) // Set the connection pool size
                .maxIdleTimeOut(Duration.ofSeconds(50)) // Set the connection pool timeout, the default is 30 seconds
                // Configure the proxy
                .proxy(new ProxyOptions(ProxyOptions.Type.HTTP, new InetSocketAddress("<YOUR-PROXY-HOSTNAME>", 9001))
                        .setCredentials("<YOUR-PROXY-USERNAME>", "<YOUR-PROXY-PASSWORD>"))
                // If it is an https connection, you need to configure the certificate, or ignore the certificate(.ignoreSSL(true))
                .x509TrustManagers(new X509TrustManager[]{})
                .keyManagers(new KeyManager[]{})
                .ignoreSSL(false)
                .build();*/

        // Configure Credentials authentication information, including ak, secret, token
        StaticCredentialProvider provider = StaticCredentialProvider.create(Credential.builder()
                // Please ensure that the environment variables ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET are set.
                .accessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                .accessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
                //.securityToken(System.getenv("ALIBABA_CLOUD_SECURITY_TOKEN")) // use STS token
                .build());

        // Configure the Client
        AsyncClient client = AsyncClient.builder()
                .region("<Your RegionId>") // Region ID
                //.httpClient(httpClient) // Use the configured HttpClient, otherwise use the default HttpClient (Apache HttpClient)
                .credentialsProvider(provider)
                //.serviceConfiguration(Configuration.create()) // Service-level configuration
                // Client-level configuration rewrite, can set Endpoint, Http request parameters, etc.
                .overrideConfiguration(
                        ClientOverrideConfiguration.create()
                                  // For more information about endpoints, see https://api.alibabacloud.com/product/live.
                                .setEndpointOverride("live.aliyuncs.com")
                        //.setConnectTimeout(Duration.ofSeconds(30))
                )
                .build();

        // Parameter settings for API request
        AddLiveStreamTranscodeRequest addLiveStreamTranscodeRequest = AddLiveStreamTranscodeRequest.builder()
                .regionId("<Your RegionId>")
                .domain("<Your Domain>")
                .app("<Your App Name>")
                .template("<Your Template>")
                .encryptParameters("<Your EncryptParameters>")
                // Request-level configuration rewrite, can set Http request parameters, etc.
                // .requestConfiguration(RequestConfiguration.create().setHttpHeaders(new HttpHeaders()))
                .build();

        // Asynchronously get the return value of the API request
        CompletableFuture<AddLiveStreamTranscodeResponse> response = client.addLiveStreamTranscode(addLiveStreamTranscodeRequest);
        // Synchronously get the return value of the API request
        AddLiveStreamTranscodeResponse resp = response.get();
        System.out.println(new Gson().toJson(resp));
        // Asynchronous processing of return values
        /*response.thenAccept(resp -> {
            System.out.println(new Gson().toJson(resp));
        }).exceptionally(throwable -> { // Handling exceptions
            System.out.println(throwable.getMessage());
            return null;
        });*/

        // Finally, close the client
        client.close();
    }

}
Remarque
  • L'exemple précédent montre comment configurer le transcodage pour un flux en direct avec l'AppName <AppName>. Les paramètres de transcodage utilisent le modèle prédéfini par le système <ld>. Pour plus d'informations sur les modèles prédéfinis par le système, consultez Modèles prédéfinis par le système dans cette rubrique.

  • setLazy("<true>") indique que le transcodage est déclenché uniquement lors de l'extraction du flux. Pour déclencher le transcodage lors de l'ingestion du flux, vous pouvez spécifier setLazy("false").

  • Pour plus d'informations sur l'API, consultez AddLiveStreamTranscode.

Vous pouvez vous connecter à la console ApsaraVideo Live, choisir Stream Management, trouver l'enregistrement d'ingestion correspondant et cliquer sur Ingest/Streaming URLs dans la colonne Actions pour afficher l'URL du flux transcodé.

Remarque
  • Les URL de streaming incluent l'URL de streaming d'origine et les URL de flux transcodés.

  • Vous pouvez créer une URL de flux transcodé personnalisée en prenant le StreamName de l'URL de streaming d'origine et en ajoutant _<Template ID>. Pour plus d'informations, consultez Generate live streaming URLs.

Transcodage personnalisé

Si les modèles de Default transcoding ne répondent pas à vos besoins, vous pouvez utiliser les configurations de Custom Transcoding. Les configurations de Custom Transcoding vous permettent de définir le format d'encodage, la résolution, le débit binaire, la fréquence d'images, le GOP vidéo, le déclencheur de transcodage et l'identifiant du modèle de transcodage.

Vous pouvez configurer le Custom Transcoding dans ApsaraVideo Live de deux manières.

Configurer le transcodage personnalisé sur la console

  1. Connectez-vous à la console ApsaraVideo Live.

  2. Dans le volet de navigation de gauche, cliquez sur Feature Management > Transcoding.

  3. Sélectionnez le nom de domaine que vous souhaitez configurer, cliquez sur l'onglet Custom Transcoding, puis cliquez sur Add pour configurer un modèle de transcodage.image.png

    Le tableau suivant décrit les paramètres du modèle de transcodage.

    Paramètre

    Description

    Application Name

    Le système tente d'abord de faire correspondre un modèle de transcodage avec le même AppName que l'URL d'ingestion. Si aucune correspondance n'est trouvée, le système utilise un modèle où AppName est défini sur un astérisque (*).

    Template ID

    • Lorsque vous utilisez un modèle de transcodage, le Template ID est un paramètre utilisé pour construire l'URL de transcodage. Pour obtenir des instructions sur la construction de l'URL, consultez Générer des URL de streaming en direct.

    • Ne définissez pas un identifiant de modèle identique à celui d'un modèle prédéfini par le système. Pour plus d'informations sur les identifiants de modèles prédéfinis par le système, consultez Modèles prédéfinis par le système.

    • Pour le même nom de domaine, la combinaison de AppName et de Template ID sert de clé primaire composite.

    Template Type

    • Les options sont Standard Transcoding, Narrowband HD™ Transcoding et Audio-only Transcoding. La qualité, les performances et le prix des modèles standard et Narrowband HD™ diffèrent.

    • Le Audio-only Transcoding supprime la vidéo et ne produit que le flux audio.

    Encoding Format

    H.264 et H.265 sont pris en charge.

    Recommend Parameter Settings

    Quatre ensembles de paramètres recommandés sont disponibles : LD, SD, HD et UHD. Lorsque vous sélectionnez un préréglage, la fréquence d'images, le débit binaire et la résolution correspondants sont automatiquement remplis avec les valeurs par défaut du système. Vous pouvez ensuite ajuster ces valeurs selon vos besoins.

    Resolution

    La résolution de sortie de la vidéo en pixels. Vous pouvez sélectionner une résolution fixe ou faire en sorte que la résolution suive la source.

    Suivre la source : si la largeur et la hauteur du flux source sont inférieures aux dimensions adaptatives, la résolution de sortie correspond à la source. Si la largeur et la hauteur sont supérieures, la résolution de sortie utilise les dimensions adaptatives. Vous pouvez sélectionner l'une des méthodes d'adaptation suivantes :

    • Côté court adaptatif

    • Côté long adaptatif

    • Paysage/portrait adaptatif

    Résolution fixe : la sortie a une résolution spécifiée. Différents niveaux de résolution ont des prix différents. Les niveaux de résolution sont les suivants :

    • LD : (640 × 480) et inférieur.

    • SD : (1280 × 720) et inférieur.

    • HD : (1920 × 1080) et inférieur.

    • 2K : (2560 × 1440) et inférieur.

    • 4K : (3840 × 2160) et inférieur.

    Remarque

    • La facturation du transcodage est basée sur le niveau de résolution (LD, SD, HD, 2K ou 4K). Le niveau de résolution est indépendant des identifiants de modèle pour les modèles standard (y compris lld, lsd, lhd et lud) et les modèles Narrowband HD™ (y compris ld, sd, hd et ud). Les identifiants de modèle sont utilisés uniquement comme identifiants dans les appels API et ne doivent pas être confondus avec les niveaux de facturation.

    • La console ne prend pas en charge les paramètres personnalisés pour les résolutions supérieures à 1080p. Si votre scénario nécessite une résolution 2K ou 4K, vous pouvez soumettre un ticket pour en faire la demande.

      Pour savoir comment soumettre un ticket, consultez Nous contacter.

    Règle de détermination du niveau de résolution : la spécification de sortie est déterminée par le fait que les côtés long et court de la résolution vidéo de sortie se situent dans la plage définie pour ce niveau.

    Par exemple, pour le niveau SD (1280 × 720) :

    • Si le côté long de la résolution vidéo de sortie est inférieur ou égal à 1280 et que le côté court est inférieur ou égal à 720, la vidéo appartient à cette spécification de sortie.

    • Si le côté long de la vidéo de sortie est supérieur à 1280 ou si le côté court est supérieur à 720, la vidéo de sortie appartient à une spécification de sortie supérieure.

    Video Frame Rate

    Suivre la source : si la fréquence d'images de la source se situe dans la plage autorisée, la fréquence d'images de sortie correspond à la source. Si elle dépasse la limite supérieure, la limite supérieure est utilisée. Si elle est inférieure à la limite inférieure, la limite inférieure est utilisée.

    Fréquence d'images fixe : la sortie a une fréquence d'images vidéo spécifiée en FPS. La valeur doit être inférieure ou égale à la fréquence d'images d'entrée.

    Video Bitrate

    Suivre la source : si le débit binaire de la source se situe dans la plage autorisée, le débit binaire de sortie correspond à la source. Si elle dépasse la limite supérieure, la limite supérieure est utilisée. Si elle est inférieure à la limite inférieure, la limite inférieure est utilisée. La sortie par ratio est également prise en charge.

    Débit binaire fixe : utilisez le débit binaire spécifié en kbps. Les débits binaires spécifiés pour chaque niveau de résolution sont les suivants :

    • LD : 100 à 800.

    • SD : 200 à 1500.

    • HD : 500 à 4000.

    • 2K : 2000 à 8000.

    • 4K : 4000 à 30000.

    Video GOP (frames)

    Spécifie le Group of Pictures (GOP), l'intervalle entre deux images I. La valeur doit être inférieure ou égale au GOP du flux source et ne peut pas dépasser 3 secondes pour garantir une faible latence.

    Audio Bitrate (transcodage audio uniquement)

    Ce paramètre s'affiche lorsque vous définissez le Template Type sur Audio Only. L'unité est le kbps. La valeur varie de 8 à 1 000.

    Profile (transcodage audio uniquement)

    Ce paramètre s'affiche lorsque vous définissez le Template Type sur Audio Only.

    • LC-AAC : Low Complexity-Advanced Audio Coding. Offre une efficacité de transcodage élevée.

    • HE-AAC : High-Efficiency Advanced Audio Coding. Offre une meilleure qualité audio que le LC-AAC à de faibles débits binaires audio, généralement inférieurs à 128 kbps.

    Sampling Rate (transcodage audio uniquement)

    Ce paramètre spécifie la fréquence d'échantillonnage audio et s'affiche lorsque vous définissez le Template Type sur Audio Only. Valeurs valides : 22050, 32000, 44100, 48000 et 96000.

    Sound Channels (transcodage audio uniquement)

    Ce paramètre spécifie le nombre de pistes audio et s'affiche lorsque vous définissez le Template Type sur Audio Only. Valeurs valides : 1 ou 2.

    Transcoding Mode (Configuration avancée)

    Prend en charge la priorité à la qualité et la priorité à la latence. En mode priorité à la latence, la latence du flux transcodé est plus faible.

    Trigger Transcoding (Configuration avancée)

    • Activé : le transcodage ne démarre que lorsque le flux est extrait pour la première fois.

    • Désactivé : le transcodage démarre lors de l'ingestion du flux, même si le flux n'est pas extrait.

    Video Encryption (Configuration avancée)

    Après avoir activé cette fonctionnalité, vous pouvez configurer le Alibaba Cloud Proprietary Cryptography ou le DRM Encryption.

    Remarque

    Le DRM Encryption n'est pris en charge que dans les centres de diffusion en direct de Shanghai et de Singapour.

    • Alibaba Cloud Proprietary Cryptography

      • Le chiffrement vidéo Alibaba Cloud prend uniquement en charge les formats de sortie HLS et FLV.

      • KMS CMK ID : la région de la clé KMS doit être la même que celle du centre de diffusion en direct du nom de domaine. Si vous ne disposez pas de clé, accédez à la console KMS pour en créer une. Pour plus d'informations, consultez Acheter et activer une instance KMS.

      • période de rotation des clés : un entier compris entre 60 et 3600.

      • Pour plus d'informations sur l'utilisation du chiffrement vidéo Alibaba Cloud, consultez Chiffrement vidéo Alibaba Cloud.

    • DRM Encryption

      • Avant d'activer cette fonctionnalité, vous devez configurer une clé DRM. Pour plus d'informations, consultez Configurer le chiffrement DRM.

      • Le DRM Encryption est pris en charge pour Widevine et FairPlay via HLS. Pour FairPlay, vous devez télécharger le certificat obtenu auprès d'Apple dans la gestion des certificats DRM. Pour plus d'informations, consultez Demander un certificat FairPlay.

    All SEI Passed-through (Configuration avancée)

    Si activé, tous les types de messages SEI sont transmis. Si désactivé, les messages SEI ne sont pas transmis.

    Source-based Keyframe (Configuration avancée)

    Si activé, les images clés du flux de sortie transcodé sont alignées sur les images clés du flux source.

    Source-based PTS (Configuration avancée)

    Si activé, l'horodatage de présentation (PTS) du flux de sortie transcodé est aligné sur le PTS du flux source.

  4. Cliquez sur OK.

Configurer le transcodage personnalisé à l'aide d'une API

Appelez l'API AddCustomLiveStreamTranscode pour ajouter les informations de configuration de Custom Transcoding pour un nom de domaine et un AppName spécifiques.

Étant donné que les paramètres de configuration du Custom Transcoding sont complexes, nous vous recommandons d'utiliser la console en combinaison avec l'API pour configurer le Custom Transcoding.

Commencez par ajouter une configuration de Custom Transcoding sur la console.

Remarque

La console fournit un aperçu de l'effet de résolution et vous permet de remplir rapidement les paramètres du modèle pour LD, SD, HD et UHD.

Après avoir ajusté les paramètres, appelez l'API DescribeLiveStreamTranscodeInfo pour interroger les informations de configuration de transcodage.

Transcodage multi-débit

Vous pouvez utiliser le Multi-bitrate Transcoding pour configurer plusieurs profils de transcodage au sein d'un seul groupe de modèles. Dans les régions où les conditions réseau varient considérablement, les fluctuations du réseau peuvent affecter l'expérience de lecture. En configurant plusieurs débits binaires, vous permettez au lecteur de s'adapter à la bande passante de l'utilisateur. Après avoir configuré le Multi-bitrate Transcoding, le lecteur peut sélectionner automatiquement le débit binaire le plus approprié pour le réseau du client, améliorant ainsi l'expérience de lecture.

Vous pouvez configurer le Multi-bitrate Transcoding uniquement sur la console ApsaraVideo Live.

Configurer le transcodage multi-débit sur la console

  1. Connectez-vous à la console ApsaraVideo Live.

  2. Dans le volet de navigation de gauche, cliquez sur Feature Management > Transcoding.

  3. Sélectionnez le nom de domaine que vous souhaitez configurer, cliquez sur l'onglet Multi-bitrate Transcoding, puis cliquez sur Add pour ajouter un groupe de modèles de Multi-bitrate Transcoding.

    1. Cliquez sur Basic Information pour modifier les informations de base du groupe de modèles de Multi-bitrate Transcoding.

      多码率转码模板组-基本信息

      Le tableau suivant décrit les paramètres :

      Paramètre

      Description

      Application Name

      Le modèle de transcodage s'applique uniquement si cet AppName correspond à l'AppName dans l'URL d'ingestion. Pour le même nom de domaine, la combinaison de AppName et de Template Group ID sert de clé primaire composite.

      Template Group ID

      L'identifiant du groupe de modèles de transcodage. Cet identifiant est un paramètre utilisé pour construire l'URL de Multi-bitrate Transcoding. Il peut contenir jusqu'à 10 caractères, y compris des chiffres, des lettres majuscules, des lettres minuscules et des traits d'union (-).

      Container Format

      Actuellement, seul le format HLS est pris en charge.

      Trigger Transcoding

      Actuellement, le transcodage ne peut être déclenché que par l'ingestion du flux. Cette action entraîne des frais de transcodage. Le déclenchement du transcodage par extraction du flux n'est pas pris en charge.

      Timestamp Alignment

      Si activé, ce paramètre remplace le paramètre GOP dans les modèles individuels et utilise le GOP de la vidéo source.

    2. Cliquez sur + Add pour ajouter un modèle.image

      Cliquez sur le modèle ajouté pour modifier ses paramètres. Les paramètres requis peuvent varier en fonction du type de modèle. Le tableau suivant décrit les paramètres :

      Paramètre

      Description

      Template ID

      L'identifiant d'un modèle individuel au sein du groupe de modèles de transcodage. Les ID de modèle au sein d'un même groupe doivent être uniques.

      Template Type

      Valeurs valides : Standard Transcoding, Narrowband HD™ Transcoding et Audio-only Transcoding.

      L'option Audio-only Transcoding supprime la vidéo et ne conserve que le flux audio.

      Encoding Format

      La résolution de sortie de la vidéo, exprimée en pixels. Les différentes catégories de résolution ont des tarifs distincts. Voici les catégories de résolution :

      • LD : (640 × 480) et inférieur.

      • SD : (1280 × 720) et inférieur.

      • HD : (1920 × 1080) et inférieur.

      • 2K : (2560 × 1440) et inférieur.

      • 4K : (3840 × 2160) et inférieur.

      Remarque

      Le transcodage est facturé selon la catégorie de résolution (LD, SD, HD, 2K ou 4K). Ces catégories de facturation sont distinctes des ID de modèle des modèles standard (tels que lld, lsd, lhd et lud) et des ID de modèle Narrowband HD™ (tels que ld, sd, hd et ud), qui servent uniquement d'identifiants. Ne les confondez pas.

      Règle de détermination de la catégorie de résolution : la spécification de sortie est déterminée par le fait que les côtés long et court de la résolution vidéo de sortie se situent dans la plage définie pour cette catégorie.

      Prenons l'exemple de la spécification de sortie SD (1280 × 720) :

      • Si le côté long de la résolution vidéo de sortie est inférieur ou égal à 1280 et que le côté court est inférieur ou égal à 720, la vidéo appartient à cette spécification de sortie.

      • Si le côté long de la vidéo de sortie est supérieur à 1280 ou si le côté court est supérieur à 720, la vidéo de sortie appartient à une spécification de sortie supérieure.

      Resolution

      Le débit binaire utilisé pour la Résolution spécifiée, en kbps. Les débits binaires spécifiés pour chaque catégorie de résolution sont les suivants :

      • LD : 100 à 800.

      • SD : 200 à 1500.

      • HD : 500 à 4000.

      • 2K : 2000 à 8000.

      • 4K : 4000 à 30000.

      Video Bitrate

      La fréquence d'images de la vidéo de sortie, en FPS. La valeur doit être inférieure ou égale à la fréquence d'images d'entrée.

      Video Frame Rate

      Spécifie le Group of Pictures (GOP), c'est-à-dire l'intervalle entre deux images I. La valeur doit être inférieure ou égale au GOP du flux source et ne peut pas dépasser 3 secondes afin de garantir une faible latence.

      Video GOP (frames)

      Actuellement, seul le format d'encodage AAC est pris en charge.

      Encoding Format (transcodage audio uniquement)

      • LC-AAC : Advanced Audio Coding à faible complexité. Offre une efficacité de transcodage élevée.

      • HE-AAC : Advanced Audio Coding à haute efficacité. Offre une meilleure qualité audio que le LC-AAC à des débits binaires audio faibles, généralement inférieurs à 128 kbps.

      Profile (transcodage audio uniquement)

      Le débit binaire audio. La valeur varie de 8 à 1 000.

      Bitrate (transcodage audio uniquement)

      Le nombre de pistes audio. Valeurs valides : 1 ou 2.

      Sound Channels

      Un entier ou un décimal compris entre 100 Kbps et 100 Mbps, avec jusqu'à deux décimales. Nous vous recommandons de définir cette valeur entre 1,2 et 1,5 fois le débit binaire vidéo.

  4. Cliquez sur Maximum Bandwidth.

Important
  • Actuellement, les flux OK sont disponibles uniquement sous forme d'URL de flux transcodé HLS.

  • Pour lire les flux Multi-bitrate Transcoding, vous devez ajouter le paramètre aliyunols=on. Le paramètre aliyunols=on est obligatoire et sa valeur est fixe.

Voici un exemple d'URL :

http://<DomainName>/<AppName>/<StreamName>_<Template Group ID>.m3u8?aliyunols=on&auth_key=1234****

L'exemple suivant illustre l'utilisation de l'option Multi-bitrate Transcoding dans un scénario réel.

Par exemple, ajoutez une configuration Multi-bitrate Transcoding comme indiqué dans la figure suivante.

image

Remarque

Dans ce groupe de modèles, quatre niveaux de configurations de transcodage sont personnalisés. Pour plus d'informations sur les valeurs des paramètres pour les différents niveaux, consultez la section Modèles prédéfinis par le système de cette rubrique.

Ensuite, démarrez l'ingestion du flux et utilisez le SDK Alibaba Cloud Player basé sur le web pour la lecture. Lors du débogage, vous constaterez que le lecteur sélectionne automatiquement le flux transcodé avec le débit binaire approprié en fonction de la bande passante réseau du client.

stream_transcode-lld.m3u8?aliyunols=on&auth_key=17260391...  200
stream_transcode-lsd.m3u8?aliyunols=on&auth_key=17260391...  200
stream_transcode-lld.m3u8?aliyunols=on&auth_key=17260391...  200
stream_transcode-lsd.m3u8?aliyunols=on&auth_key=17260391...  200
stream_transcode-lld.m3u8?aliyunols=on&auth_key=17260391...  200
stream_transcode-lsd.m3u8?aliyunols=on&auth_key=17260391...  200
stream_transcode-lsd.m3u8?aliyunols=on&auth_key=17260391...  200
stream_transcode-lhd.m3u8?aliyunols=on&auth_key=1726039...   200
stream_transcode-lsd.m3u8?aliyunols=on&auth_key=1726039...   200
stream_transcode-lhd.m3u8?aliyunols=on&auth_key=1726039...   200
stream_transcode-lhd.m3u8?aliyunols=on&auth_key=1726039...   200
stream_transcode-lhd.m3u8?aliyunols=on&auth_key=1726039...   200
Remarque

Pour utiliser le lecteur Alibaba Cloud, consultez la section SDK Player.

Transcodage automatique H5

Real-Time Streaming (RTS) utilise le protocole WebRTC. Étant donné que les navigateurs natifs ne prennent souvent pas en charge les images B vidéo ou l'encodage AAC pour WebRTC, le transcodage automatique H5 gère ces incompatibilités afin de garantir une lecture fluide.

Vous pouvez activer le transcodage automatique H5 lors de l'activation de RTS. Pour plus d'informations, consultez la rubrique Étape 5 : Activer la fonctionnalité RTS.

Remarque
  • Le transcodage automatique H5 résout les problèmes de compatibilité, tels que les images B et l'encodage AAC, pour la lecture Real-Time Streaming (RTS) dans les navigateurs natifs. Pour transcoder du contenu vidéo, par exemple en ajustant le débit binaire, la fréquence d'images ou la résolution, vous devez toujours utiliser le transcodage par défaut ou Multi-bitrate Transcoding.

  • Le transcodage automatique H5 peut être utilisé conjointement avec le transcodage par défaut ou Custom Transcoding.

  • L'utilisation du transcodage automatique H5 entraîne des frais de transcodage audio uniquement. Pour plus d'informations, consultez la rubrique Frais de transcodage de flux en direct.

Important
  • Pour désactiver le transcodage audio uniquement, connectez-vous à la console ApsaraVideo Live et choisissez Custom Transcoding > Feature Management dans le volet de navigation de gauche. Vérifiez si un modèle Transcoding est configuré pour le nom de domaine. Le cas échéant, supprimez ou modifiez le modèle.

  • Si la lecture à l'aide d'un SDK Web déclenche automatiquement Audio-only Transcoding, comme le transcodage AAC vers Opus, nous vous recommandons d'utiliser plutôt un SDK natif Alibaba Cloud. Les SDK natifs prennent en charge nativement des formats tels que l'AAC et ne déclenchent donc pas ce transcodage automatique, ce qui permet d'éviter des frais de transcodage supplémentaires.

Chiffrement vidéo

Les paramètres de transcodage par défaut et de HTML5 Auto Transcoding incluent des options de chiffrement vidéo. Vous pouvez configurer directement Custom Transcoding au sein de ces paramètres. Pour obtenir des détails et des instructions de configuration, consultez la rubrique Chiffrement vidéo Alibaba Cloud.

Références

Pour en savoir plus sur les API de configuration de transcodage, consultez la rubrique transcodage de flux en direct.

Pour utiliser le SDK Java, consultez le Guide du SDK Java.