All Products
Search
Document Center

ApsaraVideo Live:Transkoding streaming langsung

Last Updated:Aug 25, 2026
A["Live stream pushed to ApsaraVideo Live"]-->B["ApsaraVideo Live transcodes stream based on template"]; B-->C["Output streams with different bitrates and resolutions"]; C-->D("End users play the most suitable stream");

Transkoding streaming langsung mencegah masalah pemutaran akibat bitrate ingest yang terlalu tinggi atau terlalu rendah. Topik ini mencakup skenario penggunaan, batasan, fitur, parameter templat, aturan transkoding, dan resolusi adaptif.

Kasus penggunaan

  • Jika bitrate ingest tinggi tetapi bandwidth klien terbatas, pemutaran video dapat tersendat. Sebaliknya, bitrate ingest yang rendah menghasilkan kualitas pemutaran buruk. Transkoding streaming langsung menyelesaikan masalah ini.

  • Plugin pemutar harus mendukung pergantian multi-bitrate. Untuk mengaktifkan fitur ini, berikan pemutar beberapa URL streaming untuk aliran ingest yang sama, masing-masing dengan bitrate berbeda. Fitur transkoding real-time ApsaraVideo Live menghasilkan URL tersebut.

    • Anda dapat mengingest aliran dengan encoding H.264 dan mentranskode menjadi aliran langsung H.265 secara real-time untuk mengurangi bandwidth.

    • Anda dapat mengingest aliran dengan encoding H.265 dan mentranskode menjadi aliran langsung H.265 ber-bitrate rendah secara real-time.

    • Untuk mengatasi ketidakcocokan browser dengan H.265, Anda dapat mentranskode aliran menjadi aliran langsung H.264 secara real-time.

Penting

Fitur transkoding streaming langsung dikenai biaya transkoding berdasarkan standar transkoding, resolusi, dan total durasi transkoding. Untuk informasi lebih lanjut tentang aturan penagihan, lihat Biaya transkoding streaming langsung.

Batasan

  • Saat mengonfigurasi templat transkoding untuk nama domain dan AppName, Anda tidak dapat menetapkan Template Type satu templat menjadi Standard Transcoding dan Narrowband HDTM template sekaligus.

  • Saat mengonfigurasi templat transkoding untuk AppName tertentu, templat tersebut hanya diterapkan jika AppName dalam URL ingest sesuai dengan AppName dalam templat. Domain sub-streaming mewarisi templat transkoding dari domain streaming utama, sehingga konfigurasi khusus untuk domain sub-streaming diabaikan.

  • Untuk pusat siaran langsung di Tiongkok (Beijing), Tiongkok (Shanghai), dan Tiongkok (Shenzhen), setiap nama domain mendukung hingga 300 aliran transkoding bersamaan. Untuk pusat siaran langsung lainnya, setiap nama domain mendukung hingga 50 aliran transkoding bersamaan. Misalnya, jika aliran langsung definisi tinggi diingest dan ditranskode menjadi aliran definisi standar dan definisi rendah untuk pemutaran, ini dihitung sebagai dua aliran transkoding bersamaan. Saat batas tercapai, koneksi yang melebihi batas akan memutar aliran asli. Untuk melihat penggunaan saat ini dan meminta peningkatan kuota, buka Konfigurasi Dasar > Informasi Dasar untuk domain streaming Anda.

  • Jika layanan streaming langsung tidak memenuhi kebutuhan bisnis Anda, silakan hubungi manajer akun Alibaba Cloud atau hubungi kami melalui saluran lain.

Fitur

Fitur transkoding mencakup Default Transcoding, Custom Transcoding, Multi-bitrate Transcoding, dan HTML5 Auto Transcoding.

Default Transcoding: Anda dapat menggunakan templat preset sistem, yang mencakup ID templat dan resolusi output. Sistem menetapkan bitrate output, dan nilai tersebut tidak dapat diubah.

Custom Transcoding: Anda dapat mengonfigurasi format encoding, resolusi, bitrate, frame rate, GOP video, pemicu transkoding, dan ID templat.

Multi-bitrate Transcoding: Satu templat transkoding dapat berisi beberapa konfigurasi transkoding. Setelah Anda mengonfigurasi transkoding multi-bitrate, pemutar dapat secara otomatis memutar aliran langsung dengan bitrate yang sesuai berdasarkan bandwidth jaringan klien, sehingga meningkatkan pengalaman pemutaran.

HTML5 Auto Transcoding: Fitur ini menyelesaikan masalah seperti kurangnya dukungan untuk B-frame video dan encoding AAC di native browsers untuk Real-Time Streaming (RTS) (artc://).

Templat preset sistem

Rincian templat>>

  • Templat standar

Templat

ID Kualitas (H.264)

ID Kualitas (H.265)

ID Latensi (H.264)

ID Latensi (H.265)

Resolusi

Bitrate

LD (Landscape)

lld

lld265

lld-ll

lld265-ll

Lebar adaptif, tinggi: 360

≤470

SD (Landscape)

lsd

lsd265

lsd-ll

lsd265-ll

Lebar adaptif, tinggi: 432

≤680

HD (Landscape)

lhd

lhd265

lhd-ll

lhd265-ll

Lebar adaptif, tinggi: 648

≤1500

UHD (Landscape)

lud

lud265

lud-ll

lud265-ll

Lebar adaptif, tinggi: 1080

≤2500

SD (Landscape)

lsd540

lsd265-540

lsd540-ll

lsd265-540-ll

Lebar adaptif, tinggi: 540

≤680

LD (Portrait)

lld-v

lld265-v

lld-v-ll

lld265-v-ll

Lebar: 360, tinggi adaptif

≤470

SD (Portrait)

lsd-v

lsd265-v

lsd-v-ll

lsd265-v-ll

Lebar: 432, tinggi adaptif

≤680

HD (Portrait)

lhd-v

lhd265-v

lhd-v-ll

lhd265-v-ll

Lebar: 648, tinggi adaptif

≤1500

UHD (Portrait)

lud-v

lud265-v

lud-v-ll

lud265-v-ll

Lebar: 1080, tinggi adaptif

≤2500

SD (Portrait)

lsd540-v

lsd265-540-v

lsd540-v-ll

lsd265-540-v-ll

Lebar: 540, tinggi adaptif

≤680

Kualitas asli - Transkoding hanya audio

oriopus

Kualitas asli - Transkoding hanya audio

oriaac

  • Templat Narrowband HD

Templat

ID Kualitas (H.264)

ID Kualitas (H.265)

ID Latensi (H.264)

ID Latensi (H.265)

Resolusi

Bitrate

LD (Landscape)

ld

ld265

ld-ll

ld265-ll

Lebar adaptif, tinggi: 360

≤450

SD (Landscape)

sd

sd265

sd-ll

sd265-ll

Lebar adaptif, tinggi: 432

≤480

HD (Landscape)

hd

hd265

hd-ll

hd265-ll

Lebar adaptif, tinggi: 648

≤1200

UHD (Landscape)

ud

ud265

ud-ll

ud265-ll

Lebar adaptif, tinggi: 1080

≤1300

SD (Landscape)

sd540

sd265-540

sd540-ll

sd265-540-ll

Lebar adaptif, tinggi: 540

≤480

LD (Portrait)

ld-v

ld265-v

ld-v-ll

ld265-v-ll

Lebar: 360, tinggi adaptif

≤450

SD (Portrait)

sd-v

sd265-v

sd-v-ll

sd265-v-ll

Lebar: 432, tinggi adaptif

≤480

HD (Portrait)

hd-v

hd265-v

hd-v-ll

hd265-v-ll

Lebar: 648, tinggi adaptif

≤1200

UHD (Portrait)

ud-v

ud265-v

ud-v-ll

ud265-v-ll

Lebar: 1080, tinggi adaptif

≤1300

SD (Portrait)

sd540-v

sd265-540-v

sd540-v-ll

sd265-540-v-ll

Lebar: 540, tinggi adaptif

≤480

Penting
  • Template ID tidak selalu sesuai dengan spesifikasi transkoding pada tagihan Anda. Spesifikasi transkoding aktual pada tagihan bergantung pada resolusi video yang telah dikodekan ulang. Misalnya, jika Anda mengonfigurasi transkoding LD (ld) dan video yang telah dikodekan ulang memiliki sisi pendek ≤ 480 dan sisi panjang ≤ 640, Anda ditagih berdasarkan spesifikasi LD. Jika Anda mengonfigurasi transkoding LD (ld) tetapi resolusi video yang telah dikodekan ulang adalah 700 × 360, Anda ditagih berdasarkan spesifikasi SD. Untuk informasi lebih lanjut, lihat Biaya transkoding streaming langsung.

  • Sistem menyesuaikan resolusi video yang telah dikodekan ulang berdasarkan apakah video dalam mode landscape atau portrait. Untuk informasi lebih lanjut, lihat Resolusi adaptif.

Aturan transkoding

  • ApsaraVideo Live mendukung transkoding on-demand secara default. Sistem memantau aliran langsung yang telah dikodekan ulang. Jika aliran tidak memiliki penonton, sistem tidak melakukan transkoding. Transkoding dimulai ketika penonton pertama mulai menonton aliran. Selama proses transkoding, sistem menentukan apakah akan menghentikan transkoding berdasarkan status pemutaran dan status tugas backend. Aturan berikut berlaku:

    • Jika tugas backend seperti perekaman, pergeseran waktu, snapshot, atau moderasi konten masih berjalan, sistem tetap menghubungkan aliran dan melanjutkan transkoding meskipun tidak ada yang menonton.

    • Jika tidak ada tugas backend yang berjalan dan sistem mendeteksi tidak ada penonton selama lima menit, sistem secara otomatis menghentikan transkoding.

    • Jika Anda ingin sistem menghentikan transkoding kapan pun tidak ada yang menonton, terlepas dari status tugas backend, kirim tiket untuk meminta konfigurasi backend. Untuk informasi lebih lanjut tentang cara mengirim tiket, lihat Hubungi kami.

  • Sistem hanya mentranskode setiap aliran satu kali.

  • Transkoding adalah layanan opsional yang dapat Anda konfigurasi sesuai kebutuhan.

  • Fitur transkoding mendukung protokol FLV, RTMP, HLS, dan RTS.

Resolusi adaptif

Transkoding menggunakan algoritma resolusi adaptif berdasarkan orientasi video—landscape atau portrait.

  • Untuk transkoding landscape adaptif, sistem menyesuaikan lebar video yang telah dikodekan ulang berdasarkan tinggi templat.

  • Untuk transkoding portrait adaptif, sistem menyesuaikan tinggi video yang telah dikodekan ulang berdasarkan lebar templat.

Sistem menghitung lebar adaptif sebagai berikut:

高度自适应

Misalnya, jika Anda mentranskode video 1920 × 1080 menggunakan templat LD (Landscape) (ID templat: ld), templat menetapkan tinggi menjadi 360, dan lebar adaptif menghasilkan resolusi akhir 640 × 360.

Misalnya, jika Anda mentranskode video 1920 × 1080 menggunakan templat LD (Portrait) (ID templat: ld-v), templat menetapkan lebar menjadi 360, dan tinggi adaptif menghasilkan resolusi akhir 360 × 203.

Penting

Saat ini, hanya Default Transcoding dan Custom Transcoding yang mendukung resolusi adaptif.

Konfigurasi

Transkoding Bawaan

Anda dapat mengonfigurasi Transkoding default di ApsaraVideo Live dengan dua cara:

Mengonfigurasi Transkoding Default di Konsol

  1. Login ke Konsol ApsaraVideo Live.

  2. Di panel navigasi sebelah kiri, klik Feature Management > Transcoding.

  3. Pilih nama domain yang ingin Anda konfigurasi, klik tab Default Transcoding, lalu klik Add untuk mengonfigurasi templat transkoding.

    image

    Tabel berikut menjelaskan parameter untuk templat transkoding.

    Parameter

    Deskripsi

    Application Name

    Sistem pertama-tama mencoba mencocokkan templat transkoding dengan AppName yang sama seperti URL ingest. Jika tidak ditemukan kecocokan, sistem menggunakan templat dengan AppName yang diatur ke tanda bintang (*).

    Trigger Transcoding

    • Diaktifkan: Transkoding dimulai hanya ketika aliran yang telah dikodekan ulang ditarik untuk pertama kalinya.

    • Dinonaktifkan: Transkoding dimulai saat ingest aliran, meskipun aliran tidak sedang ditarik.

    Template Type

    • Menawarkan dua jenis templat: Standard Transcoding dan Narrowband HD™ Transcoding. Jenis-jenis ini berbeda dalam kualitas, kinerja, dan harga. Standard Transcoding mencakup opsi Kualitas asli - Transkoding hanya audio.

    • Anda dapat memilih beberapa templat transkoding.

    • Saat Anda menggunakan templat transkoding, Template ID adalah parameter yang digunakan untuk membuat URL transkoding. Untuk petunjuk cara membuat URL, lihat Hasilkan URL streaming langsung. Untuk informasi lebih lanjut tentang ID templat, lihat Templat preset sistem. Mode transkoding mencakup prioritas kualitas dan prioritas latensi. Dalam mode prioritas latensi, latensi aliran yang telah dikodekan ulang lebih rendah.

    • Untuk nama domain yang sama, kombinasi AppName dan Template ID berfungsi sebagai kunci primer komposit.

    Encryption

    Setelah Anda mengaktifkan fitur ini, Anda dapat mengonfigurasi Alibaba Cloud Proprietary Cryptography atau DRM Encryption.

    Catatan

    Enkripsi DRM hanya didukung di pusat siaran langsung Shanghai dan Singapura.

    • Alibaba Cloud Proprietary Cryptography

      • Enkripsi video Alibaba Cloud hanya mendukung format output HLS dan FLV.

      • KMS CMK ID: Wilayah kunci Key Management Service (KMS) harus sama dengan pusat siaran langsung nama domain. Jika Anda tidak memiliki kunci, buka konsol KMS untuk membuatnya. Untuk informasi lebih lanjut, lihat Beli dan aktifkan instans KMS.

      • CMK Rotation Period: Bilangan bulat dari 60 hingga 3600.

      • Untuk informasi lebih lanjut tentang penggunaan enkripsi video Alibaba Cloud, lihat Enkripsi video Alibaba Cloud.

    • DRM Encryption

      • Sebelum mengaktifkan fitur ini, Anda harus mengonfigurasi kunci DRM. Untuk informasi lebih lanjut, lihat Konfigurasi enkripsi DRM.

      • Enkripsi DRM didukung untuk Widevine dan FairPlay melalui HLS. Untuk FairPlay, Anda harus mengunggah sertifikat yang Anda peroleh dari Apple di Manajemen Sertifikat DRM. Untuk informasi lebih lanjut, lihat Minta sertifikat FairPlay.

  4. Klik OK.

Konfigurasi Transkoding Default Menggunakan 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();
    }

}
Catatan
  • Contoh di atas menunjukkan cara mengonfigurasi transkoding untuk aliran langsung dengan AppName <AppName>. Parameter transkoding menggunakan templat preset sistem <ld>. Untuk informasi lebih lanjut tentang templat preset sistem, lihat Templat preset sistem dalam topik ini.

  • setLazy("<true>") menunjukkan bahwa transkoding dipicu hanya selama penarikan aliran. Untuk memicu transkoding selama pengambilan aliran, Anda dapat mengatur setLazy("false").

  • Untuk informasi lebih lanjut tentang API, lihat AddLiveStreamTranscode.

Anda dapat login ke Konsol ApsaraVideo Live, pilih Stream Management, temukan catatan ingest yang sesuai, lalu klik Ingest/Streaming URLs di kolom Tindakan untuk melihat URL aliran yang telah dikodekan ulang.

Catatan
  • URL streaming mencakup URL streaming asli dan URL aliran yang telah dikodekan ulang.

  • Anda dapat membuat URL aliran yang telah dikodekan ulang secara kustom dengan mengambil StreamName dari URL streaming asli dan menambahkan _<Template ID>. Untuk informasi lebih lanjut, lihat Hasilkan URL streaming langsung.

Transkoding kustom

Jika templat Transkoding default tidak memenuhi kebutuhan Anda, Anda dapat menggunakan konfigurasi Custom Transcoding. Konfigurasi Custom Transcoding memungkinkan Anda mengatur format encoding, resolusi, bitrate, frame rate, GOP video, pemicu transkoding, dan ID templat transkoding.

Anda dapat mengonfigurasi Custom Transcoding di ApsaraVideo Live dengan dua cara:

Konfigurasi Transkoding Kustom di Konsol

  1. Login ke Konsol ApsaraVideo Live.

  2. Di panel navigasi sebelah kiri, klik Feature Management > Transcoding.

  3. Pilih nama domain yang ingin Anda konfigurasi, klik tab Custom Transcoding, lalu klik Add untuk mengonfigurasi templat transkoding.image.png

    Tabel berikut menjelaskan parameter untuk templat transkoding.

    Parameter

    Deskripsi

    Application Name

    Sistem pertama-tama mencoba mencocokkan templat transkoding dengan AppName yang sama seperti URL ingest. Jika tidak ditemukan kecocokan, sistem menggunakan templat dengan AppName yang diatur ke tanda bintang (*).

    Template ID

    • Saat Anda menggunakan templat transkoding, Template ID adalah parameter yang digunakan untuk membuat URL transkoding. Untuk petunjuk cara membuat URL, lihat Hasilkan URL streaming langsung.

    • Jangan mengatur ID templat yang identik dengan ID templat preset sistem. Untuk informasi lebih lanjut tentang ID templat preset sistem, lihat Templat preset sistem.

    • Untuk nama domain yang sama, kombinasi AppName dan ID Templat berfungsi sebagai kunci primer komposit.

    Template Type

    • Opsi yang tersedia adalah Standard Transcoding, Narrowband HD™ Transcoding, dan Audio-only Transcoding. Kualitas, kinerja, dan harga templat standar dan Narrowband HD™ berbeda.

    • Audio-only Transcoding menghapus video dan hanya menghasilkan aliran audio.

    Encoding Format

    H.264 dan H.265 didukung.

    Recommend Parameter Settings

    Tersedia empat set parameter rekomendasi: LD, SD, HD, dan UHD. Saat Anda memilih preset, frame rate, bitrate, dan resolusi yang sesuai akan diisi otomatis dengan nilai sistem default. Anda kemudian dapat menyesuaikan nilai-nilai tersebut sesuai kebutuhan.

    Resolution

    Resolusi output video dalam piksel. Anda dapat memilih resolusi tetap atau mengikuti sumber.

    Ikuti sumber: Jika lebar dan tinggi aliran sumber lebih kecil dari dimensi adaptif, resolusi output sesuai dengan sumber. Jika lebar dan tinggi lebih besar, resolusi output menggunakan dimensi adaptif. Anda dapat memilih salah satu metode adaptasi berikut:

    • Sisi pendek adaptif

    • Sisi panjang adaptif

    • Landscape/portrait adaptif

    Resolusi tetap: Output memiliki resolusi tertentu. Tingkat resolusi yang berbeda memiliki harga yang berbeda. Tingkat resolusi adalah sebagai berikut:

    • LD: (640 × 480) dan di bawahnya.

    • SD: (1280 × 720) dan di bawahnya.

    • HD: (1920 × 1080) dan di bawahnya.

    • 2K: (2560 × 1440) dan di bawahnya.

    • 4K: (3840 × 2160) dan di bawahnya.

    Catatan

    • Transkoding ditagih berdasarkan tingkat resolusi (LD, SD, HD, 2K, atau 4K). Tingkat resolusi ini independen dari ID templat untuk templat standar (termasuk lld, lsd, lhd, dan lud) dan templat Narrowband HD™ (termasuk ld, sd, hd, dan ud). ID templat hanya digunakan sebagai pengenal dalam panggilan API dan tidak boleh disamakan dengan tingkat penagihan.

    • Konsol tidak mendukung pengaturan kustom untuk resolusi di atas 1080p. Jika skenario Anda memerlukan resolusi 2K atau 4K, Anda dapat mengirim tiket untuk memintanya.

      Untuk informasi tentang cara mengirim tiket, lihat Hubungi Kami.

    Aturan penentuan tingkat resolusi: Spesifikasi output ditentukan berdasarkan apakah sisi panjang dan pendek resolusi video output berada dalam rentang yang ditentukan untuk tingkat tersebut.

    Misalnya, untuk tingkat SD (1280 × 720):

    • Jika sisi panjang resolusi video output kurang dari atau sama dengan 1280 dan sisi pendek kurang dari atau sama dengan 720, video termasuk dalam spesifikasi output ini.

    • Jika sisi panjang video output lebih dari 1280 atau sisi pendek lebih dari 720, video output termasuk dalam spesifikasi output yang lebih tinggi.

    Video Frame Rate

    Ikuti sumber: Jika frame rate sumber berada dalam rentang yang diizinkan, frame rate output sesuai dengan sumber. Jika melebihi batas atas, batas atas yang digunakan. Jika di bawah batas bawah, batas bawah yang digunakan.

    Frame rate tetap: Output memiliki frame rate video tertentu dalam FPS. Nilai harus kurang dari atau sama dengan frame rate input.

    Video Bitrate

    Ikuti sumber: Jika bitrate sumber berada dalam rentang yang diizinkan, bitrate output sesuai dengan sumber. Jika melebihi batas atas, batas atas yang digunakan. Jika di bawah batas bawah, batas bawah yang digunakan. Output berdasarkan rasio juga didukung.

    Bitrate tetap: Gunakan bitrate tertentu dalam kbps. Bitrate yang ditentukan untuk setiap tingkat resolusi adalah sebagai berikut:

    • LD: 100 hingga 800.

    • SD: 200 hingga 1500.

    • HD: 500 hingga 4000.

    • 2K: 2000 hingga 8000.

    • 4K: 4000 hingga 30000.

    Video GOP (frames)

    Menentukan Group of Pictures (GOP), interval antara dua Frame-I. Nilai harus kurang dari atau sama dengan GOP aliran sumber dan tidak boleh melebihi 3 detik untuk memastikan latensi rendah.

    Audio Bitrate (transkoding hanya audio)

    Parameter ini ditampilkan saat Anda mengatur Template Type ke Audio Only. Satuan adalah kbps. Nilai berkisar dari 8 hingga 1.000.

    Profile (transkoding hanya audio)

    Parameter ini ditampilkan saat Anda mengatur Template Type ke Audio Only.

    • LC-AAC: Low Complexity-Advanced Audio Coding. Menawarkan efisiensi transkoding tinggi.

    • HE-AAC: High-Efficiency Advanced Audio Coding. Menawarkan kualitas audio lebih baik daripada LC-AAC pada bitrate audio rendah, biasanya di bawah 128 kbps.

    Sampling Rate (transkoding hanya audio)

    Parameter ini menentukan laju pengambilan sampel audio dan ditampilkan saat Anda mengatur Template Type ke Audio Only. Nilai yang valid: 22050, 32000, 44100, 48000, dan 96000.

    Sound Channels (transkoding hanya audio)

    Parameter ini menentukan jumlah trek audio dan ditampilkan saat Anda mengatur Template Type ke Audio Only. Nilai yang valid: 1 atau 2.

    Transcoding Mode (Konfigurasi Lanjutan)

    Mendukung prioritas kualitas dan prioritas latensi. Dalam mode prioritas latensi, latensi aliran yang telah dikodekan ulang lebih rendah.

    Trigger Transcoding (Konfigurasi Lanjutan)

    • Diaktifkan: Transkoding dimulai hanya ketika aliran ditarik untuk pertama kalinya.

    • Dinonaktifkan: Transkoding dimulai saat ingest aliran, meskipun aliran tidak sedang ditarik.

    Video Encryption (Konfigurasi Lanjutan)

    Setelah Anda mengaktifkan fitur ini, Anda dapat mengonfigurasi Alibaba Cloud Proprietary Cryptography atau DRM Encryption.

    Catatan

    Enkripsi DRM hanya didukung di pusat siaran langsung Shanghai dan Singapura.

    • Alibaba Cloud Proprietary Cryptography

      • Enkripsi video Alibaba Cloud hanya mendukung format output HLS dan FLV.

      • ID CMK KMS: Wilayah kunci KMS harus sama dengan pusat siaran langsung nama domain. Jika Anda tidak memiliki kunci, buka konsol KMS untuk membuatnya. Untuk informasi lebih lanjut, lihat Beli dan aktifkan instans KMS.

      • periode rotasi kunci: Bilangan bulat dari 60 hingga 3600.

      • Untuk informasi lebih lanjut tentang penggunaan enkripsi video Alibaba Cloud, lihat Enkripsi video Alibaba Cloud.

    • DRM Encryption

      • Sebelum mengaktifkan fitur ini, Anda harus mengonfigurasi kunci DRM. Untuk informasi lebih lanjut, lihat Konfigurasi enkripsi DRM.

      • Enkripsi DRM didukung untuk Widevine dan FairPlay melalui HLS. Untuk FairPlay, Anda harus mengunggah sertifikat yang Anda peroleh dari Apple di Manajemen Sertifikat DRM. Untuk informasi lebih lanjut, lihat Minta sertifikat FairPlay.

    All SEI Passed-through (Konfigurasi Lanjutan)

    Jika diaktifkan, semua jenis pesan SEI dilewatkan. Jika dinonaktifkan, pesan SEI tidak dilewatkan.

    Source-based Keyframe (Konfigurasi Lanjutan)

    Jika diaktifkan, keyframe aliran output yang telah dikodekan ulang disejajarkan dengan keyframe aliran sumber.

    Source-based PTS (Konfigurasi Lanjutan)

    Jika diaktifkan, Presentation Timestamp (PTS) aliran output yang telah dikodekan ulang disejajarkan dengan PTS aliran sumber.

  4. Klik OK.

Konfigurasi Transkoding Kustom Menggunakan API

Panggil API AddCustomLiveStreamTranscode untuk menambahkan informasi konfigurasi Custom Transcoding untuk nama domain dan AppName tertentu.

Karena pengaturan parameter untuk Custom Transcoding kompleks, kami menyarankan Anda menggunakan konsol bersama dengan API untuk mengonfigurasi Custom Transcoding.

Pertama, tambahkan konfigurasi Custom Transcoding di konsol.

Catatan

Konsol menyediakan pratinjau efek resolusi dan memungkinkan Anda mengisi parameter templat dengan cepat untuk LD, SD, HD, dan UHD.

Setelah Anda menyesuaikan parameter, panggil API DescribeLiveStreamTranscodeInfo untuk menanyakan informasi konfigurasi transkoding.

Transkoding multi-bitrate

Anda dapat menggunakan Multi-bitrate Transcoding untuk mengonfigurasi beberapa profil transkoding dalam satu kelompok templat. Di wilayah dengan variasi kondisi jaringan yang signifikan, fluktuasi jaringan dapat memengaruhi pengalaman pemutaran. Dengan mengonfigurasi beberapa bitrate, Anda memungkinkan pemutar beradaptasi dengan bandwidth pengguna. Setelah Anda mengonfigurasi Multi-bitrate Transcoding, pemutar dapat secara otomatis memilih bitrate yang paling sesuai untuk jaringan klien, sehingga meningkatkan pengalaman pemutaran.

Anda hanya dapat mengonfigurasi Multi-bitrate Transcoding di konsol ApsaraVideo Live.

Konfigurasi Transkoding Multi-bitrate di Konsol

  1. Login ke Konsol ApsaraVideo Live.

  2. Di panel navigasi sebelah kiri, klik Feature Management > Transcoding.

  3. Pilih nama domain yang ingin Anda konfigurasi, klik tab Multi-bitrate Transcoding, lalu klik Add untuk menambahkan kelompok templat Multi-bitrate Transcoding.

    1. Klik Basic Information untuk mengedit informasi dasar kelompok templat Multi-bitrate Transcoding.

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

      Tabel berikut menjelaskan parameter:

      Parameter

      Deskripsi

      Application Name

      Templat transkoding hanya berlaku jika AppName ini sesuai dengan AppName dalam URL ingest. Untuk nama domain yang sama, kombinasi AppName dan ID Kelompok Templat berfungsi sebagai kunci primer komposit.

      Template Group ID

      ID kelompok templat transkoding. ID ini adalah parameter yang digunakan untuk membuat URL Multi-bitrate Transcoding. ID ini dapat berisi hingga 10 karakter, termasuk angka, huruf besar, huruf kecil, dan tanda hubung (-).

      Container Format

      Saat ini, hanya HLS yang didukung.

      Trigger Transcoding

      Saat ini, transkoding hanya dapat dipicu oleh ingest aliran. Tindakan ini dikenai biaya transkoding. Memicu transkoding dengan penarikan aliran tidak didukung.

      Timestamp Alignment

      Jika diaktifkan, pengaturan ini menggantikan pengaturan GOP dalam templat individual dan menggunakan GOP video sumber.

    2. Klik + Add untuk menambahkan templat.image

      Klik templat yang ditambahkan untuk mengedit parameternya. Parameter yang diperlukan dapat berbeda tergantung pada jenis templat. Tabel berikut menjelaskan parameter:

      Parameter

      Deskripsi

      Template ID

      ID templat individual dalam kelompok templat transkoding. ID templat dalam kelompok templat yang sama harus unik.

      Template Type

      Standard Transcoding, Narrowband HD™ Transcoding, dan Audio-only Transcoding.

      Audio-only Transcoding menghapus video dan hanya menghasilkan aliran audio.

      Resolution

      Resolusi output video dalam piksel. Tingkat resolusi yang berbeda memiliki harga yang berbeda. Tingkat resolusi adalah sebagai berikut:

      • LD: (640 × 480) dan di bawahnya.

      • SD: (1280 × 720) dan di bawahnya.

      • HD: (1920 × 1080) dan di bawahnya.

      • 2K: (2560 × 1440) dan di bawahnya.

      • 4K: (3840 × 2160) dan di bawahnya.

      Catatan

      Transkoding ditagih berdasarkan tingkat resolusi (LD, SD, HD, 2K, atau 4K). Tingkat penagihan ini berbeda dari ID templat templat standar (seperti lld, lsd, lhd, dan lud) dan ID templat Narrowband HD™ (seperti ld, sd, hd, dan ud), yang hanya digunakan sebagai pengenal. Jangan menyamakan keduanya.

      Aturan penentuan tingkat resolusi: Spesifikasi output ditentukan berdasarkan apakah sisi panjang dan pendek resolusi video output berada dalam rentang yang ditentukan untuk tingkat tersebut.

      Ambil spesifikasi output SD (1280 × 720) sebagai contoh:

      • Jika sisi panjang resolusi video output kurang dari atau sama dengan 1280 dan sisi pendek kurang dari atau sama dengan 720, video termasuk dalam spesifikasi output ini.

      • Jika sisi panjang video output lebih dari 1280 atau sisi pendek lebih dari 720, video output termasuk dalam spesifikasi output yang lebih tinggi.

      Video Bitrate

      Bitrate yang digunakan untuk Resolusi tertentu, dalam kbps. Bitrate yang ditentukan untuk setiap tingkat resolusi adalah sebagai berikut:

      • LD: 100 hingga 800.

      • SD: 200 hingga 1500.

      • HD: 500 hingga 4000.

      • 2K: 2000 hingga 8000.

      • 4K: 4000 hingga 30000.

      Video Frame Rate

      Frame rate video output dalam FPS. Nilai harus kurang dari atau sama dengan frame rate input.

      Video GOP (frames)

      Menentukan Group of Pictures (GOP), interval antara dua Frame-I. Nilai harus kurang dari atau sama dengan GOP aliran sumber dan tidak boleh melebihi 3 detik untuk memastikan latensi rendah.

      Encoding Format

      Saat ini, hanya format encoding AAC yang didukung.

      Profile (transkoding hanya audio)

      • LC-AAC: Low-Complexity Advanced Audio Coding. Menawarkan efisiensi transkoding tinggi.

      • HE-AAC: High-Efficiency Advanced Audio Coding. Menawarkan kualitas audio lebih baik daripada LC-AAC pada bitrate audio rendah, biasanya di bawah 128 kbps.

      Bitrate (transkoding hanya audio)

      Bitrate audio. Nilai berkisar dari 8 hingga 1.000.

      Sound Channels (transkoding hanya audio)

      Jumlah trek audio. Nilai yang valid: 1 atau 2.

      Maximum Bandwidth

      Bilangan bulat atau desimal dari 100 Kbps hingga 100 Mbps, dengan maksimal dua tempat desimal. Kami menyarankan mengatur nilai ini menjadi 1,2 hingga 1,5 kali bitrate video.

  4. Klik OK.

Penting
  • Saat ini, aliran Multi-bitrate Transcoding hanya tersedia sebagai URL aliran transkoding HLS.

  • Untuk memutar aliran Multi-bitrate Transcoding, Anda harus menambahkan parameter aliyunols=on. Parameter aliyunols=on wajib dan memiliki nilai tetap.

Berikut adalah contoh URL:

http://<NamaDomain>/<NamaAplikasi>/<StreamName>_<ID Kelompok Templat>.m3u8?aliyunols=on&auth_key=1234****

Contoh berikut menunjukkan cara menggunakan Multi-bitrate Transcoding dalam skenario dunia nyata:

Misalnya, tambahkan konfigurasi Multi-bitrate Transcoding seperti yang ditunjukkan pada gambar berikut.

image

Catatan

Dalam kelompok templat ini, empat tingkat konfigurasi transkoding dikustomisasi. Untuk informasi tentang nilai parameter untuk tingkat yang berbeda, lihat Templat preset sistem dalam topik ini.

Kemudian, mulai ingest aliran dan gunakan SDK Pemutar Alibaba Cloud berbasis web untuk pemutaran. Selama debugging, Anda akan menemukan bahwa pemutar secara otomatis memilih aliran yang telah dikodekan ulang dengan bitrate yang sesuai berdasarkan bandwidth jaringan klien.

image

Catatan

Untuk menggunakan pemutar Alibaba Cloud, lihat SDK Pemutar.

Transkoding otomatis H5

Real-Time Streaming (RTS) menggunakan protokol WebRTC. Karena browser native sering kali tidak mendukung B-frame video atau encoding AAC untuk WebRTC, transkoding otomatis H5 menangani ketidakcocokan ini untuk memastikan pemutaran yang lancar.

Anda dapat mengaktifkan transkoding otomatis H5 saat mengaktifkan RTS. Untuk informasi lebih lanjut, lihat Langkah 5: Aktifkan fitur RTS.

Catatan
  • Transkoding otomatis H5 menyelesaikan masalah kompatibilitas, seperti B-frame dan encoding AAC, untuk pemutaran Real-Time Streaming (RTS) di browser native. Untuk mentranskode konten video—misalnya, menyesuaikan bitrate, frame rate, atau resolusi—Anda tetap perlu menggunakan Transkoding default atau Custom Transcoding.

  • Transkoding otomatis H5 dapat digunakan bersama dengan Transkoding default atau Custom Transcoding.

  • Saat menggunakan Transkoding otomatis H5, biaya dikenakan untuk transkoding hanya audio. Untuk informasi lebih lanjut, lihat Biaya transkoding streaming langsung.

Enkripsi video

Pengaturan Transkoding default dan Custom Transcoding mencakup opsi untuk enkripsi video. Anda dapat mengonfigurasi Alibaba Cloud Proprietary Cryptography langsung dalam pengaturan ini. Untuk detail dan petunjuk pengaturan, lihat Enkripsi video Alibaba Cloud.

Referensi

Untuk mempelajari lebih lanjut tentang API konfigurasi transkoding, lihat transkoding streaming langsung.

Untuk menggunakan SDK Java, lihat panduan SDK Java.