Todos os produtos
Search
Central de documentação

ApsaraVideo Live:Transcodificação de transmissão ao vivo

Última atualização: Jul 04, 2026

A transcodificação de transmissão ao vivo resolve problemas de reprodução causados por taxas de bits de ingestão muito altas ou muito baixas. Este tópico descreve os cenários, limites, recursos, parâmetros de modelo, regras de transcodificação e largura adaptativa da transcodificação de transmissão ao vivo.

Cenários

  • Se a taxa de bits de ingestão for alta e a largura de banda do cliente for limitada, a reprodução do vídeo pode apresentar travamentos. Caso a taxa de bits de ingestão seja baixa, a qualidade da reprodução será ruim. A transcodificação de transmissão ao vivo ajuda a resolver rapidamente esses problemas.

  • Os plug-ins do player devem oferecer suporte à troca de múltiplas taxas de bits. Para ativar essa funcionalidade no player frontend, forneça várias URLs de streaming com diferentes taxas de bits para o mesmo fluxo de ingestão. O recurso de transcodificação em tempo real do ApsaraVideo Live oferece esse serviço.

    • Ingerir um fluxo com codificação H.264 e transcodificá-lo em uma transmissão ao vivo H.265 em tempo real reduz o uso de largura de banda.

    • Ingerir um fluxo com codificação H.265 e transcodificá-lo em uma transmissão ao vivo H.265 de baixa taxa de bits em tempo real também é possível.

    • Para resolver a incompatibilidade do H.265 em navegadores, transcodifique o fluxo em uma transmissão ao vivo H.264 em tempo real.

Importante

O recurso de transcodificação de transmissão ao vivo gera taxas de transcodificação. As cobranças são baseadas no padrão de transcodificação, na resolução e na duração total da transcodificação. Para obter mais informações sobre as regras de faturamento, consulte Taxas de transcodificação de transmissão ao vivo.

Limites

  • Ao configurar um modelo de transcodificação para um nome de domínio e um AppName, não defina o Template Type como Standard Template e Narrowband HDTM template simultaneamente no mesmo modelo.

  • Se você configurar um modelo de transcodificação por AppName, o modelo entrará em vigor quando o AppName na URL de ingestão corresponder ao AppName no modelo. Os subdomínios de streaming reutilizam os modelos de transcodificação do domínio de streaming principal. Configurações específicas para subdomínios de streaming são inválidas.

  • Nos centros de transmissão ao vivo de Pequim, Xangai e Shenzhen, cada nome de domínio suporta até 300 fluxos transcodificados simultâneos. Nos demais centros, o limite é de 50 fluxos transcodificados simultâneos por nome de domínio. Por exemplo, se um fluxo de transmissão ao vivo em alta definição (HD) for ingerido e transcodificado em fluxos de definição padrão (SD) e baixa definição (LD) para reprodução, isso conta como dois fluxos transcodificados. Quando o limite é atingido, as conexões de reprodução que excederem a cota reproduzirão o fluxo original. Acesse Basic Information nas configurações básicas do seu domínio de streaming para visualizar o uso atual e aumentar sua cota.

  • Caso o serviço de transmissão ao vivo fornecido não atenda aos seus requisitos de negócios, entre em contato com o gerente de conta da Alibaba Cloud ou consulte-nos por meio de outros canais.

Recursos

O recurso de transcodificação inclui Default Transcoding, Custom Transcoding, Multi-bitrate Transcoding e HTML5 Auto Transcoding.

Default Transcoding: Permite referenciar modelos predefinidos pelo sistema, que incluem o ID do modelo e a resolução de saída. A taxa de bits de saída é predefinida pelo sistema e não pode ser modificada.

Custom Transcoding: Possibilita definir o formato de codificação, resolução, taxa de bits, taxa de quadros, GOP de vídeo, gatilho de transcodificação e ID do modelo de transcodificação.

Multi-bitrate Transcoding: Um modelo de transcodificação pode conter várias configurações. Após configurar a transcodificação de múltiplas taxas de bits, o player reproduzirá automaticamente a transmissão ao vivo com a taxa de bits adequada, com base na largura de banda da rede do cliente, melhorando a experiência de reprodução.

HTML5 Auto Transcoding: Este recurso resolve problemas como a falta de suporte a B-frames de vídeo e codificação AAC em navegadores nativos para Real-Time Streaming (RTS) (artc://).

Modelos predefinidos pelo sistema

Detalhes dos modelos

  • Modelos padrão

Modelo de transcodificação

ID do modelo com prioridade de qualidade - H.264

ID do modelo com prioridade de qualidade - H.265

ID do modelo com prioridade de latência - H.264

ID do modelo com prioridade de latência - H.265

Resolução

Taxa de bits

LD (Paisagem)

lld

lld265

lld-ll

lld265-ll

Largura adaptativa, altura: 360

≤470

SD (Paisagem)

lsd

lsd265

lsd-ll

lsd265-ll

Largura adaptativa, altura: 432

≤680

HD (Paisagem)

lhd

lhd265

lhd-ll

lhd265-ll

Largura adaptativa, altura: 648

≤1500

UHD (Paisagem)

lud

lud265

lud-ll

lud265-ll

Largura adaptativa, altura: 1080

≤2500

SD (Paisagem)

lsd540

lsd265-540

lsd540-ll

lsd265-540-ll

Largura adaptativa, altura: 540

≤680

LD (Retrato)

lld-v

lld265-v

lld-v-ll

lld265-v-ll

Largura: 360, altura adaptativa

≤470

SD (Retrato)

lsd-v

lsd265-v

lsd-v-ll

lsd265-v-ll

Largura: 432, altura adaptativa

≤680

HD (Retrato)

lhd-v

lhd265-v

lhd-v-ll

lhd265-v-ll

Largura: 648, altura adaptativa

≤1500

UHD (Retrato)

lud-v

lud265-v

lud-v-ll

lud265-v-ll

Largura: 1080, altura adaptativa

≤2500

SD (Retrato)

lsd540-v

lsd265-540-v

lsd540-v-ll

lsd265-540-v-ll

Largura: 540, altura adaptativa

≤680

Qualidade original - Transcodificação apenas de áudio

oriopus

Qualidade original - Transcodificação apenas de áudio

oriaac

  • Modelos Narrowband HD

Modelo de transcodificação

ID do modelo com prioridade de qualidade - H.264

ID do modelo com prioridade de qualidade - H.265

ID do modelo com prioridade de latência - H.264

ID do modelo com prioridade de latência - H.265

Resolução

Taxa de bits

LD (Paisagem)

ld

ld265

ld-ll

ld265-ll

Largura adaptativa, altura: 360

≤450

SD (Paisagem)

sd

sd265

sd-ll

sd265-ll

Largura adaptativa, altura: 432

≤480

HD (Paisagem)

hd

hd265

hd-ll

hd265-ll

Largura adaptativa, altura: 648

≤1200

UHD (Paisagem)

ud

ud265

ud-ll

ud265-ll

Largura adaptativa, altura: 1080

≤1300

SD (Paisagem)

sd540

sd265-540

sd540-ll

sd265-540-ll

Largura adaptativa, altura: 540

≤480

LD (Retrato)

ld-v

ld265-v

ld-v-ll

ld265-v-ll

Largura: 360, altura adaptativa

≤450

SD (Retrato)

sd-v

sd265-v

sd-v-ll

sd265-v-ll

Largura: 432, altura adaptativa

≤480

HD (Retrato)

hd-v

hd265-v

hd-v-ll

hd265-v-ll

Largura: 648, altura adaptativa

≤1200

UHD (Retrato)

ud-v

ud265-v

ud-v-ll

ud265-v-ll

Largura: 1080, altura adaptativa

≤1300

SD (Retrato)

sd540-v

sd265-540-v

sd540-v-ll

sd265-540-v-ll

Largura: 540, altura adaptativa

≤480

Importante
  • O Template ID não corresponde necessariamente à especificação de transcodificação na sua fatura. A especificação real depende da resolução do vídeo transcodificado. Por exemplo, se você configurar a transcodificação LD (ld) e a resolução do vídeo transcodificado tiver um lado menor ≤ 480 e um lado maior ≤ 640, a fatura será gerada com base na especificação LD. Se você configurar a transcodificação LD (ld), mas a resolução do vídeo transcodificado for 700 × 360, a fatura será gerada com base na especificação SD. Para obter mais informações, consulte Taxas de transcodificação de transmissão ao vivo.

  • A transcodificação utiliza um algoritmo de resolução adaptativa. A resolução do vídeo transcodificado é ajustada com base na orientação paisagem ou retrato do vídeo. Para obter mais informações, consulte Resolução adaptativa.

Regras de transcodificação

  • O ApsaraVideo Live oferece suporte à transcodificação sob demanda por padrão. O sistema monitora os fluxos transcodificados ao vivo. Se ninguém estiver assistindo a um fluxo, a transcodificação não ocorre. Ela inicia quando o primeiro espectador começa a assistir ao fluxo. Caso ninguém assista ao fluxo por 5 minutos durante o processo, a transcodificação será interrompida.

  • Cada fluxo transcodificado passa pelo processo apenas uma vez.

  • A transcodificação é um serviço opcional configurável conforme necessário.

  • O recurso de transcodificação suporta os protocolos FLV, RTMP, HLS e RTS.

Resolução adaptativa

A transcodificação usa um algoritmo de resolução adaptativa com base na orientação paisagem ou retrato do vídeo.

  • Na transcodificação paisagem adaptativa, a largura do vídeo transcodificado é ajustada com base na altura do modelo.

  • Na transcodificação retrato adaptativo, a altura do vídeo transcodificado é ajustada com base na largura do modelo.

A fórmula a seguir descreve como a largura adaptativa é calculada:

高度自适应

Por exemplo, se você transcodificar um vídeo de 1920 × 1080 usando o modelo LD paisagem (ID do modelo: ld), a resolução terá uma largura adaptativa e uma altura de 360. A resolução do vídeo transcodificado será 640 × 360.

Como outro exemplo, se você transcodificar um vídeo de 1920 × 1080 usando o modelo LD retrato (ID do modelo: ld-v), a resolução terá uma largura de 360 e uma altura adaptativa. A resolução do vídeo transcodificado será 360 × 203.

Importante

Atualmente, apenas Default Transcoding e Custom Transcoding oferecem suporte à resolução adaptativa.

Configuração

Transcodificação padrão

Configure a transcodificação padrão no ApsaraVideo Live de duas maneiras:

Configurar transcodificação padrão no console

  1. Faça login no console do ApsaraVideo Live.

  2. No painel de navegação à esquerda, clique em Feature Management > Transcoding para acessar a página Live Stream Transcoding.

  3. Selecione o nome de domínio desejado, clique na aba Default Transcoding e, em seguida, clique em Add para configurar um modelo de transcodificação.

    image

    A tabela a seguir descreve os parâmetros do modelo de transcodificação.

    Parâmetro

    Descrição

    Application Name

    A correspondência de AppName tem prioridade. O sistema tenta primeiro corresponder a um modelo de transcodificação com o mesmo AppName da URL de ingestão. Se nenhum modelo existir, ele corresponderá a um modelo de transcodificação com o AppName definido como um asterisco único (*).

    Trigger Transcoding

    • Ativado: A transcodificação inicia somente quando o fluxo transcodificado é puxado pela primeira vez.

    • Desativado: A transcodificação inicia assim que houver ingestão de fluxo, independentemente de o fluxo estar sendo puxado.

    Template Type

    • Oferece Standard Transcoding e Narrowband HD™ Template. A qualidade, o desempenho e o preço dos modelos padrão e dos modelos Narrowband HD™ diferem. A Standard Transcoding fornece um modelo de Qualidade original - Transcodificação apenas de áudio. Selecione apenas um tipo de modelo por vez.

    • É possível selecionar vários modelos de transcodificação simultaneamente.

    • Ao usar um modelo de transcodificação, o Template ID é um parâmetro usado para construir a URL de transcodificação. Para obter mais informações sobre como construir a URL, consulte Gerar URLs de transmissão ao vivo. Para obter mais informações sobre IDs de modelo e outros detalhes, consulte Modelos predefinidos pelo sistema. Os modos de transcodificação incluem prioridade de qualidade e prioridade de latência. No modo de prioridade de latência, a latência do fluxo transcodificado é menor.

    • Para o mesmo nome de domínio, AppName e Template ID formam uma chave primária composta.

    Encryption

    Após ativar este recurso, configure Alibaba Cloud Proprietary Cryptography ou DRM Encryption.

    Nota

    A criptografia DRM é suportada apenas nos centros de transmissão ao vivo de Xangai e Singapura.

    • Alibaba Cloud Proprietary Cryptography

      • A criptografia de vídeo da Alibaba Cloud suporta apenas formatos de saída HLS e FLV.

      • KMS CMK ID: A região da chave KMS deve ser a mesma do centro de transmissão ao vivo do nome de domínio. Se você não tiver uma chave, acesse o serviço KMS para criar uma. Para obter mais informações, consulte Comprar e ativar uma instância KMS.

      • CMK Rotation Period: Um número inteiro de 60 a 3600.

      • Para obter mais informações sobre como usar a criptografia de vídeo da Alibaba Cloud, consulte Criptografia de vídeo da Alibaba Cloud.

    • DRM Encryption

      • Antes de ativar este recurso, configure uma chave DRM. Para obter mais informações, consulte Configurar criptografia DRM.

      • A criptografia DRM é suportada para Widevine e FairPlay através do protocolo HLS. Para FairPlay, faça upload do certificado obtido da Apple em DRM Certificate Management. Para obter mais informações, consulte Solicitar um certificado FairPlay.

  4. Após concluir a configuração, clique em OK.

Configurar transcodificação padrão usando uma 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.aliyun.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();
    }

}
Nota
  • O exemplo anterior configura a transcodificação para uma transmissão ao vivo com o AppName <AppName>. Os parâmetros de transcodificação usam o modelo predefinido pelo sistema <ld>. Para obter mais informações sobre modelos predefinidos pelo sistema, consulte Modelos predefinidos pelo sistema neste tópico.

  • setLazy("<true>") indica que a transcodificação é acionada apenas quando um fluxo é puxado. Para acionar a transcodificação durante a ingestão de fluxo, defina setLazy("false").

  • Para obter mais informações sobre a API, consulte AddLiveStreamTranscode.

Faça login no console do ApsaraVideo Live, escolha Stream Management, localize o registro de ingestão correspondente e clique em Ingest/Streaming URLs na coluna Actions para visualizar a URL do fluxo transcodificado.

Nota
  • A URL de streaming inclui a URL de qualidade original (Original) e a URL do fluxo transcodificado.

  • Adicione _Template ID após o StreamName na URL de streaming original para criar uma URL de fluxo transcodificado personalizada. Para obter mais informações, consulte Gerar URLs de transmissão ao vivo.

Transcodificação personalizada

Se os modelos de transcodificação padrão não atenderem aos seus requisitos, utilize a Custom Transcoding. A Custom Transcoding permite definir o formato de codificação, resolução, taxa de bits, taxa de quadros, GOP de vídeo, gatilho de transcodificação e ID do modelo de transcodificação.

Configure a Custom Transcoding para o ApsaraVideo Live de duas maneiras:

Configurar transcodificação personalizada no console

  1. Faça login no console do ApsaraVideo Live.

  2. No painel de navegação à esquerda, clique em Feature Management > Transcoding para acessar a página Live Stream Transcoding.

  3. Selecione o nome de domínio desejado, clique na aba Custom Transcoding e, em seguida, clique em Add para configurar um modelo de transcodificação.image.png

    A tabela a seguir descreve os parâmetros do modelo de transcodificação.

    Parâmetro

    Descrição

    Application Name

    A correspondência de AppName tem prioridade. O sistema tenta primeiro corresponder a um modelo de transcodificação com o mesmo AppName da URL de ingestão. Se nenhum modelo existir, ele corresponderá a um modelo de transcodificação com o AppName definido como um asterisco único (*).

    Template ID

    • Ao usar um modelo de transcodificação, o Template ID é um parâmetro usado para construir a URL de transcodificação. Para obter mais informações sobre como construir a URL, consulte Gerar URLs de transmissão ao vivo.

    • Não defina um ID de modelo igual ao de um modelo predefinido pelo sistema. Para obter mais informações sobre IDs de modelos predefinidos pelo sistema, consulte Modelos predefinidos pelo sistema.

    • Para o mesmo nome de domínio, AppName e Template ID formam uma Chave Primária Composta.

    Template Type

    • As opções são Standard Transcoding, Narrowband HD™ Template e Audio-only Transcoding. A qualidade, o desempenho e o preço dos modelos padrão e dos modelos Narrowband HD™ diferem.

    • A Audio-only Transcoding remove o vídeo e gera apenas o fluxo de áudio.

    Encoding Format

    H.264 e H.265 são suportados.

    Recommend Parameter Settings

    Quatro conjuntos de parâmetros recomendados estão disponíveis: LD, SD, UHD e HD. Ao selecionar um nível, a taxa de quadros, a taxa de bits e a resolução correspondentes são preenchidas com valores padrão do sistema. Ajuste esses valores conforme necessário.

    Resolution

    A resolução de saída do vídeo em pixels. Selecione uma resolução fixa ou faça com que a resolução siga a origem.

    Seguir a origem: Se a largura e a altura da resolução do fluxo de origem forem menores que as dimensões adaptativas, a resolução de saída será igual à da origem. Se a largura e a altura da resolução do fluxo de origem forem maiores que as dimensões adaptativas, a resolução de saída será igual às dimensões adaptativas. Selecione diferentes métodos de adaptação:

    • Lado menor adaptativo

    • Lado maior adaptativo

    • Paisagem/retrato adaptativo

    Resolução fixa: A saída possui uma resolução especificada. Diferentes níveis de resolução correspondem a preços diferentes. Os níveis de resolução são os seguintes:

    • LD: (640 × 480) e abaixo.

    • SD: (1280 × 720) e abaixo.

    • HD: (1920 × 1080) e abaixo.

    • 2K: (2560 × 1440) e abaixo.

    • 4K: (3840 × 2160) e abaixo.

    Observação

    • A transcodificação é faturada com base no nível de resolução (LD, SD, HD, 2K, 4K). O nível de resolução é independente dos IDs de modelo dos modelos padrão (incluindo lld, lsd, lhd e lud) e dos modelos Narrowband HD™ (incluindo ld, sd, hd e ud) nos modelos de transcodificação padrão. Os IDs de modelo servem apenas como identificadores para chamadas de negócios. Não os confunda.

    • O console não suporta configurações personalizadas para resoluções superiores a 1080p. Se o seu cenário exigir resolução 2K ou 4K, abra um ticket para solicitá-la.

      Para obter mais informações sobre como abrir um ticket, consulte Fale conosco.

    Regra de determinação do nível de resolução: A especificação de saída é determinada verificando se os lados maior e menor da resolução do vídeo de saída estão dentro do intervalo definido pela especificação de saída.

    Tome como exemplo a especificação de saída SD (1280 × 720):

    • Se o lado maior da resolução do vídeo de saída for menor ou igual a 1280 e o lado menor for menor ou igual a 720, o vídeo pertence a esta especificação de saída.

    • Se o lado maior do vídeo de saída for maior que 1280 ou o lado menor for maior que 720, o vídeo de saída pertence a uma especificação de saída superior.

    Video Frame Rate

    Seguir a origem: Se a taxa de quadros estiver dentro do limite, a taxa de quadros de saída será igual à da origem. Se exceder o limite superior, o limite superior será usado. Se estiver abaixo do limite inferior, o limite inferior será usado.

    Taxa de quadros fixa: A saída possui uma taxa de quadros de vídeo especificada em FPS. O valor é menor ou igual à taxa de quadros de entrada.

    Video Bitrate

    Seguir a origem: Se a taxa de bits estiver dentro do limite, a taxa de bits de saída será igual à da origem. Se exceder o limite superior, o limite superior será usado. Se estiver abaixo do limite inferior, o limite inferior será usado. A saída por proporção também é suportada.

    Taxa de bits fixa: Use a taxa de bits especificada em kbps. As taxas de bits especificadas para cada nível de resolução são as seguintes:

    • LD: 100 a 800.

    • SD: 200 a 1500.

    • HD: 500 a 4000.

    • 2K: 2000 a 8000.

    • 4K: 4000 a 30000.

    Video GOP (frames)

    O Group of Pictures (GOP) do vídeo de saída, que é o intervalo entre dois I-frames. O valor deve ser menor ou igual ao valor de entrada. Para garantir baixa latência, não pode ser maior que 3 segundos.

    Audio Bitrate (transcodificação apenas de áudio)

    Exibido quando você define o Template Type como Audio-only Transcoding Template. A unidade é kbps. O valor varia de 8 a 1000.

    Profile (transcodificação apenas de áudio)

    Exibido quando você define o Template Type como Audio-only Transcoding Template.

    • LC-AAC: Low Complexity Advanced Audio Coding. Alta eficiência de transcodificação.

    • HE-AAC: High-Efficiency Advanced Audio Coding. Melhor efeito sonoro que LC-AAC em taxas de bits de áudio baixas (geralmente abaixo de 128 kbps).

    Sampling Rate (transcodificação apenas de áudio)

    Exibido quando você define o Template Type como Audio-only Transcoding Template. Valores válidos: 22050, 32000, 44100, 48000 e 96000.

    Sound Channels (transcodificação apenas de áudio)

    Exibido quando você define o Template Type como Audio-only Transcoding Template. O número de faixas de som. Valores válidos: 1 ou 2.

    Transcoding Mode (Configuração Avançada)

    Suporta prioridade de qualidade e prioridade de latência. No modo de prioridade de latência, a latência do fluxo transcodificado é menor.

    Trigger Transcoding (Configuração Avançada)

    • Ativado: A transcodificação inicia somente quando o fluxo é puxado pela primeira vez.

    • Desativado: A transcodificação inicia assim que houver ingestão de fluxo, independentemente de o fluxo estar sendo puxado.

    Video Encryption (Configuração Avançada)

    Após ativar este recurso, configure Alibaba Cloud Proprietary Cryptography ou DRM Encryption.

    Nota

    A criptografia DRM é suportada apenas nos centros de transmissão ao vivo de Xangai e Singapura.

    • Alibaba Cloud Proprietary Cryptography

      • A criptografia de vídeo da Alibaba Cloud suporta apenas formatos de saída HLS e FLV.

      • KMS Master Key: A região da chave KMS deve ser a mesma do centro de transmissão ao vivo do nome de domínio. Se você não tiver uma chave, acesse o serviço KMS para criar uma. Para obter mais informações, consulte Comprar e ativar uma instância KMS.

      • Key Rotation Period: Um número inteiro de 60 a 3600.

      • Para obter mais informações sobre como usar a criptografia de vídeo da Alibaba Cloud, consulte Criptografia de vídeo da Alibaba Cloud.

    • DRM Encryption

      • Antes de ativar este recurso, configure uma chave DRM. Para obter mais informações, consulte Configurar criptografia DRM.

      • A criptografia DRM é suportada para Widevine e FairPlay através do protocolo HLS. Para FairPlay, faça upload do certificado obtido da Apple em DRM Certificate Management. Para obter mais informações, consulte Solicitar um certificado FairPlay.

    All SEI Passed-through (Configuração Avançada)

    Se ativado, todos os tipos de SEI são repassados. Se desativado, o SEI não é repassado.

    Source-based Keyframe (Configuração Avançada)

    Se ativado, os keyframes do fluxo de saída transcodificado serão consistentes com os keyframes do fluxo original.

    Source-based PTS (Configuração Avançada)

    Se ativado, o PTS do fluxo de saída transcodificado será consistente com o PTS do fluxo original.

  4. Clique em OK.

Configurar transcodificação personalizada usando uma API

Chame a API AddCustomLiveStreamTranscode para adicionar informações de configuração de Custom Transcoding para um nome de domínio e AppName.

Como as configurações de parâmetros para Custom Transcoding são complexas, recomendamos usar o console em conjunto com a API para configurar a Custom Transcoding.

Primeiro, adicione uma configuração de Custom Transcoding no console.

Nota

O console fornece uma prévia do efeito de resolução e permite preencher rapidamente os parâmetros do modelo para LD, SD, HD e UHD.

Após ajustar os parâmetros, chame a API DescribeLiveStreamTranscodeInfo para consultar as informações de configuração de transcodificação.

Transcodificação de múltiplas taxas de bits

A Multi-bitrate Transcoding permite configurar vários modos de transcodificação em um único modelo. Em algumas regiões, os ambientes de rede variam muito, e as flutuações podem afetar a experiência de reprodução nos clientes. Portanto, configure múltiplas taxas de bits para corresponder a diferentes condições de largura de banda. Após configurar a Multi-bitrate Transcoding, o player poderá reproduzir automaticamente a transmissão ao vivo com a taxa de bits adequada, com base na largura de banda da rede do cliente, melhorando a experiência de reprodução.

Atualmente, a Multi-bitrate Transcoding só pode ser configurada no console do ApsaraVideo Live.

Configurar transcodificação de múltiplas taxas de bits no console

  1. Faça login no console do ApsaraVideo Live.

  2. No painel de navegação à esquerda, clique em Feature Management > Transcoding para acessar a página Live Stream Transcoding.

  3. Selecione o nome de domínio desejado, clique na aba Multi-bitrate Transcoding e, em seguida, clique em Add para adicionar um grupo de modelos de Multi-bitrate Transcoding.

    1. Clique em Basic Information para editar as informações básicas do grupo de modelos de Multi-bitrate Transcoding.

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

      A tabela a seguir descreve os parâmetros:

      Parâmetro

      Descrição

      Application Name

      O AppName deve corresponder ao AppName na URL de ingestão para que o modelo de transcodificação entre em vigor. Para o mesmo nome de domínio, AppName e Template Group ID formam uma Composite Primary Key.

      Template Group ID

      O ID do grupo de modelos de transcodificação. O ID do grupo de modelos é um parâmetro usado para construir a URL de Multi-bitrate Transcoding. Pode conter até 10 caracteres, incluindo dígitos, letras maiúsculas e minúsculas e hifens.

      Container Format

      Atualmente, apenas HLS é suportado.

      Trigger Transcoding

      Atualmente, a transcodificação só pode ser acionada pela ingestão de fluxo. Isso gera taxas de transcodificação. O acionamento da transcodificação pelo pull de fluxo não é suportado.

      Timestamp Alignment

      Se ativado, a configuração de GOP para cada modelo é desativada e o GOP do vídeo de origem é utilizado.

    2. Clique em + Add para adicionar um modelo.image

      Clique no modelo adicionado para editar seus parâmetros. Os parâmetros necessários podem variar dependendo do tipo de modelo. A tabela a seguir descreve os parâmetros:

      Parâmetro

      Descrição

      Template ID

      O ID de um único modelo dentro do grupo de modelos de transcodificação. Os IDs de modelo dentro do mesmo grupo devem ser exclusivos.

      Template Type

      Standard Transcoding, Narrowband HD™ Template e Audio-only Transcoding.

      A Audio-only Transcoding remove o vídeo e gera apenas o fluxo de áudio.

      Resolution

      A resolução de saída do vídeo em pixels. Diferentes níveis de resolução correspondem a preços diferentes. Os níveis de resolução são os seguintes:

      • LD: (640 × 480) e abaixo.

      • SD: (1280 × 720) e abaixo.

      • HD: (1920 × 1080) e abaixo.

      • 2K: (2560 × 1440) e abaixo.

      • 4K: (3840 × 2160) e abaixo.

      Nota

      A transcodificação é faturada com base no nível de resolução (LD, SD, HD, 2K, 4K). Isso é independente dos IDs de modelo dos modelos padrão (incluindo lld, lsd, lhd e lud) e dos IDs de modelo Narrowband HD™ (incluindo ld, sd, hd e ud) nos modelos de transcodificação padrão. Não os confunda.

      Regra de determinação do nível de resolução: A especificação de saída é determinada verificando se os lados maior e menor da resolução do vídeo de saída estão dentro do intervalo definido pela especificação de saída.

      Tome como exemplo a especificação de saída SD (1280 × 720):

      • Se o lado maior da resolução do vídeo de saída for menor ou igual a 1280 e o lado menor for menor ou igual a 720, o vídeo pertence a esta especificação de saída.

      • Se o lado maior do vídeo de saída for maior que 1280 ou o lado menor for maior que 720, o vídeo de saída pertence a uma especificação de saída superior.

      Video Bitrate

      A taxa de bits usada para a Resolução especificada, em kbps. As taxas de bits especificadas para cada nível de resolução são as seguintes:

      • LD: 100 a 800.

      • SD: 200 a 1500.

      • HD: 500 a 4000.

      • 2K: 2000 a 8000.

      • 4K: 4000 a 30000.

      Video Frame Rate

      A taxa de quadros do vídeo de saída em FPS. O valor é menor ou igual à taxa de quadros de entrada.

      Video GOP (frames)

      O Group of Pictures (GOP) do vídeo de saída, que é o intervalo entre dois I-frames. O valor deve ser menor ou igual ao valor de entrada. Para garantir baixa latência, não pode ser maior que 3 segundos.

      Encoding Format

      Atualmente, apenas o formato de codificação AAC é suportado.

      Profile (transcodificação apenas de áudio)

      • LC-AAC: Low-Complexity Advanced Audio Coding. Oferece alta eficiência de transcodificação.

      • HE-AAC: High-Efficiency Advanced Audio Coding. Oferece melhor qualidade de áudio que LC-AAC em taxas de bits de áudio baixas (normalmente abaixo de 128 kbps).

      Bitrate (transcodificação apenas de áudio)

      A taxa de bits de áudio. O valor varia de 8 a 1000.

      Sound Channels (transcodificação apenas de áudio)

      O número de faixas de som. Valores válidos: 1 ou 2.

      Maximum Bandwidth

      Um número inteiro ou decimal de 100 Kbps a 100 Mbps, com até duas casas decimais. Recomendamos definir isso como 1,2 a 1,5 vezes a taxa de bits de vídeo.

  4. Após concluir a configuração, clique em OK.

Importante
  • Atualmente, os fluxos de Multi-bitrate Transcoding podem fornecer apenas URLs de fluxo transcodificado HLS.

  • Para reproduzir um fluxo de Multi-bitrate Transcoding, adicione o parâmetro aliyunols=on. aliyunols=on é um campo fixo obrigatório.

Veja a seguir um exemplo de URL:

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

O exemplo a seguir mostra como usar a Multi-bitrate Transcoding em um cenário real:

Por exemplo, adicione uma configuração de Multi-bitrate Transcoding conforme mostrado na figura a seguir.

image

Nota

Neste grupo de modelos, quatro níveis de configurações de transcodificação são personalizados. Para obter informações sobre os valores de parâmetros para diferentes níveis, consulte Modelos predefinidos pelo sistema neste tópico.

Em seguida, ingira o fluxo e use o ApsaraVideo Player baseado na web para reprodução. Durante a depuração, você verá que o player reproduz automaticamente o fluxo transcodificado com a taxa de bits adequada, com base na largura de banda da rede do cliente.

image

Nota

Para obter mais informações sobre como usar o ApsaraVideo Player, consulte SDK do Player.

Transcodificação automática H5

O Real-Time Streaming (RTS) é baseado na sinalização Web Real-Time Communication (WebRTC). O WebRTC de navegador nativo não suporta B-frames de vídeo ou codificação AAC. A transcodificação automática H5 fornece transcodificação adaptativa para garantir uma reprodução suave.

Ative a transcodificação automática H5 ao ativar o RTS. Para obter mais informações, consulte Etapa 5: Ativar o recurso RTS.

Nota
  • A transcodificação automática H5 serve para lidar com problemas como B-frames de vídeo e codificação AAC no RTS de navegador nativo (artc://). Para transcodificar conteúdo de vídeo, como ajustar a taxa de bits, taxa de quadros ou resolução, configure-o através da Transcodificação padrão ou da Custom Transcoding.

  • A transcodificação automática H5 pode ser usada em conjunto com a Transcodificação padrão ou a Custom Transcoding.

  • Ao usar a transcodificação automática H5, taxas de transcodificação apenas de áudio são geradas. Para obter mais informações, consulte Taxas de transcodificação de transmissão ao vivo.

Criptografia de vídeo

Ao configurar a Transcodificação padrão ou a Custom Transcoding, você pode notar campos relacionados à criptografia de vídeo. Implemente o recurso Alibaba Cloud Proprietary Cryptography através da configuração de transcodificação. Para obter mais informações sobre o recurso de criptografia de vídeo da Alibaba Cloud e como implementá-lo, consulte Criptografia de vídeo da Alibaba Cloud.

Referências

Para obter mais informações sobre APIs relacionadas à transcodificação, consulte Transcodificação de transmissão ao vivo.

Para obter mais informações sobre como usar o SDK Java, consulte Guia do SDK Java.