全部产品
Search
文档中心

ApsaraVideo Live:Transkoding streaming langsung

更新时间:Nov 22, 2025

Transkoding streaming langsung mengatasi masalah pemutaran yang disebabkan oleh bitrate ingest yang terlalu tinggi atau terlalu rendah. Topik ini menjelaskan skenario, batasan, fitur, parameter templat, aturan transkoding, dan resolusi adaptif pada transkoding streaming langsung.

Skenario

  • Jika bitrate ingest tinggi dan bandwidth klien terbatas, pemutaran video mungkin tersendat. Jika bitrate ingest rendah, kualitas pemutaran menjadi buruk. Transkoding streaming langsung membantu Anda menyelesaikan masalah ini dengan cepat.

  • Plugin pemutar harus mendukung pengalihan multi-bitrate. Untuk mengaktifkan pengalihan bitrate pada pemutar antarmuka depan, Anda harus menyediakan beberapa URL streaming dengan bitrate berbeda untuk aliran ingest yang sama. Fitur transkoding real-time dari ApsaraVideo Live menyediakan layanan ini.

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

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

    • Untuk mengatasi ketidakcocokan H.265 di browser, Anda dapat mengkodekan ulang aliran tersebut menjadi aliran langsung H.264 secara real-time.

Penting

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

Batasan

  • Saat Anda mengonfigurasi templat transkoding untuk nama domain dan AppName, Anda tidak dapat mengatur Template Type menjadi Standard Template dan templat Narrowband HDTM dalam templat yang sama.

  • Jika Anda mengonfigurasi templat transkoding berdasarkan AppName, templat tersebut akan berlaku ketika AppName dalam URL ingest cocok dengan AppName dalam templat. Domain streaming subdomain menggunakan kembali templat transkoding dari domain streaming utama. Konfigurasi untuk subdomain streaming tidak berlaku.

  • Untuk pusat siaran langsung di Beijing, Shanghai, dan 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 (HD) diingest dan dikodekan ulang menjadi aliran definisi standar (SD) dan definisi rendah (LD) untuk pemutaran, ini dihitung sebagai dua aliran transkoding. Saat batas tercapai, koneksi pemutaran yang melebihi batas akan memutar aliran asli. Anda dapat melihat penggunaan saat ini dan menambah kuota Anda di Informasi Dasar dalam konfigurasi dasar domain streaming Anda.

  • Jika layanan streaming langsung yang disediakan tidak memenuhi kebutuhan bisnis Anda, Anda dapat menghubungi manajer akun Alibaba Cloud Anda atau berkonsultasi melalui saluran lain.

Fitur

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

Default Transcoding: Anda dapat mereferensikan templat preset sistem, yang mencakup ID templat dan resolusi keluaran. Bitrate keluaran telah ditentukan oleh sistem dan tidak dapat dimodifikasi.

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

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. Hal ini meningkatkan pengalaman pemutaran.

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

Templat preset sistem

Rincian templat

  • Templat standar

Templat transkoding

ID templat prioritas kualitas - H.264

ID templat prioritas kualitas - H.265

ID templat prioritas latensi - H.264

ID templat prioritas latensi - H.265

Resolusi

Bitrate

LD (Lanskap)

lld

lld265

lld-ll

lld265-ll

Lebar adaptif, tinggi: 360

≤470

SD (Lanskap)

lsd

lsd265

lsd-ll

lsd265-ll

Lebar adaptif, tinggi: 432

≤680

HD (Lanskap)

lhd

lhd265

lhd-ll

lhd265-ll

Lebar adaptif, tinggi: 648

≤1500

UHD (Lanskap)

lud

lud265

lud-ll

lud265-ll

Lebar adaptif, tinggi: 1080

≤2500

SD (Lanskap)

lsd540

lsd265-540

lsd540-ll

lsd265-540-ll

Lebar adaptif, tinggi: 540

≤680

LD (Potret)

lld-v

lld265-v

lld-v-ll

lld265-v-ll

Lebar: 360, tinggi adaptif

≤470

SD (Potret)

lsd-v

lsd265-v

lsd-v-ll

lsd265-v-ll

Lebar: 432, tinggi adaptif

≤680

HD (Potret)

lhd-v

lhd265-v

lhd-v-ll

lhd265-v-ll

Lebar: 648, tinggi adaptif

≤1500

UHD (Potret)

lud-v

lud265-v

lud-v-ll

lud265-v-ll

Lebar: 1080, tinggi adaptif

≤2500

SD (Potret)

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 transkoding

ID templat prioritas kualitas - H.264

ID templat prioritas kualitas - H.265

ID templat prioritas latensi - H.264

ID templat prioritas latensi - H.265

Resolusi

Bitrate

LD (Lanskap)

ld

ld265

ld-ll

ld265-ll

Lebar adaptif, tinggi: 360

≤450

SD (Lanskap)

sd

sd265

sd-ll

sd265-ll

Lebar adaptif, tinggi: 432

≤480

HD (Lanskap)

hd

hd265

hd-ll

hd265-ll

Lebar adaptif, tinggi: 648

≤1200

UHD (Lanskap)

ud

ud265

ud-ll

ud265-ll

Lebar adaptif, tinggi: 1080

≤1300

SD (Lanskap)

sd540

sd265-540

sd540-ll

sd265-540-ll

Lebar adaptif, tinggi: 540

≤480

LD (Potret)

ld-v

ld265-v

ld-v-ll

ld265-v-ll

Lebar: 360, tinggi adaptif

≤450

SD (Potret)

sd-v

sd265-v

sd-v-ll

sd265-v-ll

Lebar: 432, tinggi adaptif

≤480

HD (Potret)

hd-v

hd265-v

hd-v-ll

hd265-v-ll

Lebar: 648, tinggi adaptif

≤1200

UHD (Potret)

ud-v

ud265-v

ud-v-ll

ud265-v-ll

Lebar: 1080, tinggi adaptif

≤1300

SD (Potret)

sd540-v

sd265-540-v

sd540-v-ll

sd265-540-v-ll

Lebar: 540, tinggi adaptif

≤480

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

  • Transkoding menggunakan algoritma resolusi adaptif. Resolusi video yang telah dikodekan ulang disesuaikan berdasarkan apakah video dalam mode lanskap atau potret. Untuk informasi lebih lanjut, lihat Resolusi adaptif.

Aturan transkoding

  • ApsaraVideo Live mendukung transkoding on-demand secara default. Sistem memantau aliran transkoding langsung. Jika tidak ada yang menonton aliran tersebut, transkoding tidak dilakukan. Transkoding dimulai ketika penonton pertama mulai menonton aliran tersebut. Jika tidak ada yang menonton aliran tersebut selama 5 menit dalam proses transkoding, transkoding akan berhenti.

  • Setiap aliran yang telah dikodekan ulang hanya dikodekan ulang 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 apakah video dalam mode lanskap atau potret.

  • Untuk transkoding lanskap adaptif, lebar video yang telah dikodekan ulang disesuaikan berdasarkan tinggi templat.

  • Untuk transkoding potret adaptif, tinggi video yang telah dikodekan ulang disesuaikan berdasarkan lebar templat.

Rumus berikut menjelaskan cara menghitung lebar adaptif:

高度自适应

Sebagai contoh, jika Anda mengkodekan ulang video 1920 × 1080 menggunakan templat LD lanskap (ID templat: ld), resolusinya memiliki lebar adaptif dan tinggi 360. Resolusi video yang telah dikodekan ulang adalah 640 × 360.

Sebagai contoh, jika Anda mengkodekan ulang video 1920 × 1080 menggunakan templat LD potret (ID templat: ld-v), resolusinya memiliki lebar 360 dan tinggi adaptif. Resolusi video yang telah dikodekan ulang adalah 360 × 203.

Penting

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

Konfigurasi

Transkoding Bawaan

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

Konfigurasikan transcoding default di konsol

  1. Masuk ke Konsol ApsaraVideo Live.

  2. Di panel navigasi sebelah kiri, klik Feature Management > Transcoding untuk membuka halaman Transcoding Streaming Langsung.

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

    image

    Tabel berikut menjelaskan parameter templat transkoding.

    Parameter

    Deskripsi

    Application Name

    Pencocokan AppName memiliki prioritas. Sistem pertama-tama mencoba mencocokkan templat transkoding dengan AppName yang sama seperti pada URL ingest. Jika tidak ada templat seperti itu, sistem akan mencocokkan templat transkoding dengan AppName yang diatur menjadi tanda bintang tunggal (*).

    Trigger Transcoding

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

    • Nonaktif: Transcoding dimulai selama ada ingest aliran, terlepas dari apakah aliran tersebut sedang ditarik atau tidak.

    Template Type

    • Menyediakan Standard Transcoding dan Narrowband HD™ Template. Kualitas, kinerja, dan harga templat standar serta templat Narrowband HD™ berbeda. Standard Transcoding menyediakan templat Kualitas asli - Transkoding hanya audio. Anda hanya dapat memilih satu jenis templat dalam satu waktu.

    • Anda dapat memilih beberapa templat transkoding sekaligus.

    • Saat menggunakan templat transkoding, ID Templat merupakan parameter yang digunakan untuk membuat URL transkoding. Untuk informasi lebih lanjut tentang cara membuat URL, lihat Membuat URL streaming langsung. Untuk informasi lebih lanjut mengenai ID templat dan detail lainnya, 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, AppName dan ID Templat membentuk kunci utama 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 keluaran HLS dan FLV.

      • KMS CMK ID: Wilayah kunci KMS harus sama dengan pusat siaran langsung nama domain. Jika Anda belum memiliki kunci, buatlah di layanan KMS. 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 protokol HLS. Untuk FairPlay, Anda harus mengunggah sertifikat yang diperoleh dari Apple di Manajemen Sertifikat DRM. Untuk informasi lebih lanjut, lihat Minta sertifikat FairPlay.

  4. Setelah konfigurasi selesai, klik OK.

Konfigurasikan transcoding default menggunakan API

// File ini dibuat secara otomatis, jangan mengeditnya. Terima kasih.
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 {

        // Konfigurasi HttpClient
        /*HttpClient httpClient = new ApacheAsyncHttpClientBuilder()
                .connectionTimeout(Duration.ofSeconds(10)) // Atur waktu timeout koneksi, default adalah 10 detik
                .responseTimeout(Duration.ofSeconds(10)) // Atur waktu timeout respons, default adalah 20 detik
                .maxConnections(128) // Atur ukuran kolam koneksi
                .maxIdleTimeOut(Duration.ofSeconds(50)) // Atur timeout kolam koneksi, default adalah 30 detik
                // Konfigurasi proxy
                .proxy(new ProxyOptions(ProxyOptions.Type.HTTP, new InetSocketAddress("<YOUR-PROXY-HOSTNAME>", 9001))
                        .setCredentials("<YOUR-PROXY-USERNAME>", "<YOUR-PROXY-PASSWORD>"))
                // Jika koneksi https, Anda perlu mengonfigurasi sertifikat, atau abaikan sertifikat (.ignoreSSL(true))
                .x509TrustManagers(new X509TrustManager[]{})
                .keyManagers(new KeyManager[]{})
                .ignoreSSL(false)
                .build();*/

        // Konfigurasi informasi autentikasi Kredensial, termasuk ak, secret, token
        StaticCredentialProvider provider = StaticCredentialProvider.create(Credential.builder()
                // Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET telah diatur.
                .accessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                .accessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
                //.securityToken(System.getenv("ALIBABA_CLOUD_SECURITY_TOKEN")) // gunakan token STS
                .build());

        // Konfigurasi Klien
        AsyncClient client = AsyncClient.builder()
                .region("<Your RegionId>") // ID Wilayah
                //.httpClient(httpClient) // Gunakan HttpClient yang dikonfigurasi, jika tidak gunakan HttpClient default (Apache HttpClient)
                .credentialsProvider(provider)
                //.serviceConfiguration(Configuration.create()) // Konfigurasi tingkat layanan
                // Penimpaan konfigurasi tingkat klien, dapat mengatur Titik akhir, parameter permintaan Http, dll.
                .overrideConfiguration(
                        ClientOverrideConfiguration.create()
                                  // Untuk informasi lebih lanjut tentang titik akhir, lihat https://api.aliyun.com/product/live
                                .setEndpointOverride("live.aliyuncs.com")
                        //.setConnectTimeout(Duration.ofSeconds(30))
                )
                .build();

        // Pengaturan parameter untuk permintaan API
        AddLiveStreamTranscodeRequest addLiveStreamTranscodeRequest = AddLiveStreamTranscodeRequest.builder()
                .regionId("<Your RegionId>")
                .domain("<Your Domain>")
                .app("<Your App Name>")
                .template("<Your Template>")
                .encryptParameters("<Your EncryptParameters>")
                // Penimpaan konfigurasi tingkat permintaan, dapat mengatur parameter permintaan Http, dll.
                // .requestConfiguration(RequestConfiguration.create().setHttpHeaders(new HttpHeaders()))
                .build();

        // Secara asinkron mendapatkan nilai kembali dari permintaan API
        CompletableFuture<AddLiveStreamTranscodeResponse> response = client.addLiveStreamTranscode(addLiveStreamTranscodeRequest);
        // Secara sinkron mendapatkan nilai kembali dari permintaan API
        AddLiveStreamTranscodeResponse resp = response.get();
        System.out.println(new Gson().toJson(resp));
        // Pemrosesan nilai kembali secara asinkron
        /*response.thenAccept(resp -> {
            System.out.println(new Gson().toJson(resp));
        }).exceptionally(throwable -> { // Menangani pengecualian
            System.out.println(throwable.getMessage());
            return null;
        });*/

        // Terakhir, tutup klien
        client.close();
    }

}
Catatan
  • Contoh di atas 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 hanya dipicu ketika aliran ditarik. Untuk memicu transkoding selama ingest aliran, Anda dapat mengatur setLazy("false").

  • Untuk informasi lebih lanjut tentang API, lihat AddLiveStreamTranscode.

Anda dapat masuk 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 kualitas asli (Original) dan URL aliran yang telah dikodekan ulang.

  • Anda dapat menambahkan _ID Templat setelah NamaStream dalam URL streaming asli untuk membuat URL aliran transkoding kustom. Untuk informasi lebih lanjut, lihat Membuat URL streaming langsung.

Transcoding kustom

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

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

Konfigurasikan transcoding kustom di konsol

  1. Masuk ke Konsol ApsaraVideo Live.

  2. Di panel navigasi sebelah kiri, klik Feature Management > Transcoding untuk membuka halaman Transcoding Streaming Langsung.

  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 templat transkoding.

    Parameter

    Deskripsi

    Application Name

    Pencocokan AppName memiliki prioritas. Sistem pertama-tama mencoba mencocokkan templat transkoding dengan AppName yang sama seperti pada URL ingest. Jika tidak ada templat seperti itu, sistem akan mencocokkan templat transkoding dengan AppName yang diatur menjadi tanda bintang tunggal (*).

    Template ID

    • Saat menggunakan templat transkoding, Template ID merupakan parameter yang digunakan untuk membuat URL transkoding. Untuk informasi lebih lanjut tentang cara membuat URL, lihat Membuat URL streaming langsung.

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

    • Untuk nama domain yang sama, AppName dan ID Templat membentuk Composite Primary Key.

    Template Type

    • Opsi yang tersedia adalah Standard Transcoding, Narrowband HD™ Template, dan Audio-only Transcoding. Kualitas, kinerja, dan harga templat standar serta templat 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 yang direkomendasikan: LD, SD, UHD, dan HD. Saat Anda memilih tingkatan, laju frame, bitrate, dan resolusi yang sesuai akan diisi dengan nilai sistem default. Anda dapat menyesuaikan nilai-nilai ini sesuai kebutuhan.

    Resolution

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

    Mengikuti sumber: Jika lebar dan tinggi resolusi aliran sumber lebih kecil dari dimensi adaptif, resolusi keluaran sama dengan sumber. Jika lebar dan tinggi resolusi aliran sumber lebih besar dari dimensi adaptif, resolusi keluaran adalah dimensi adaptif. Anda dapat memilih metode adaptasi berbeda:

    • Sisi pendek adaptif

    • Sisi panjang adaptif

    • Lanskap/potret adaptif

    Resolusi tetap: Keluaran memiliki resolusi tertentu. Tingkatan resolusi berbeda sesuai dengan harga berbeda. Tingkatan resolusi 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 tingkatan resolusi (LD, SD, HD, 2K, 4K). Tingkatan resolusi ini terpisah dari ID templat templat standar (termasuk lld, lsd, lhd, dan lud) dan templat Narrowband HD™ (termasuk ld, sd, hd, dan ud) dalam templat transcoding default. ID templat hanya digunakan sebagai pengenal untuk panggilan bisnis. Jangan sampai tertukar.

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

      Untuk informasi lebih lanjut tentang cara mengajukan tiket, lihat Hubungi kami.

    Aturan penentuan tingkatan resolusi: Spesifikasi keluaran ditentukan berdasarkan apakah sisi panjang dan pendek resolusi video keluaran berada dalam rentang yang ditentukan oleh spesifikasi keluaran.

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

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

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

    Video Frame Rate

    Mengikuti sumber: Jika laju frame berada dalam batas, laju frame keluaran sama dengan sumber. Jika melebihi batas atas, batas atas yang digunakan. Jika di bawah batas bawah, batas bawah yang digunakan.

    Laju frame tetap: Keluaran memiliki laju frame video tertentu dalam FPS. Nilainya kurang dari atau sama dengan laju frame input.

    Video Bitrate

    Mengikuti sumber: Jika bitrate berada dalam batas, bitrate keluaran sama 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 tingkatan resolusi 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)

    Group of Pictures (GOP) video keluaran, yaitu interval antara dua Frame-I. Nilainya harus kurang dari atau sama dengan nilai input. Untuk memastikan latensi rendah, nilainya tidak boleh lebih dari 3 detik.

    Audio Bitrate (transcoding hanya audio)

    Ini ditampilkan saat Anda mengatur Template Type ke Audio-only Transcoding Template. Satuannya kbps. Nilainya berkisar antara 8 hingga 1000.

    Profile (Transcoding hanya audio)

    Ini ditampilkan saat Anda mengatur Template Type ke Audio-only Transcoding Template.

    • LC-AAC: Low Complexity Advanced Audio Coding. Efisiensi transcoding tinggi.

    • HE-AAC: High-Efficiency Advanced Audio Coding. Efek suara lebih baik daripada LC-AAC pada bitrate audio rendah (biasanya di bawah 128 kbps).

    Sampling Rate (Transcoding hanya audio)

    Ini ditampilkan saat Anda mengatur Template Type ke Audio-only Transcoding Template. Nilai yang valid: 22050, 32000, 44100, 48000, dan 96000.

    Sound Channels (Transcoding hanya audio)

    Ini ditampilkan saat Anda mengatur Template Type ke Audio-only Transcoding Template. Jumlah trek suara. 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: Transcoding hanya dimulai ketika aliran ditarik untuk pertama kalinya.

    • Nonaktif: Transcoding dimulai selama ada ingest aliran, terlepas dari apakah aliran tersebut sedang ditarik atau tidak.

    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 keluaran HLS dan FLV.

      • Kunci Utama KMS: Wilayah kunci KMS harus sama dengan pusat siaran langsung nama domain. Jika Anda belum memiliki kunci, buatlah di layanan KMS. 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 protokol HLS. Untuk FairPlay, Anda harus mengunggah sertifikat yang diperoleh dari Apple di Manajemen Sertifikat DRM. Untuk informasi lebih lanjut, lihat Minta sertifikat FairPlay.

    All SEI Passed-through (Konfigurasi Lanjutan)

    Jika diaktifkan, semua jenis SEI dilewati. Jika dinonaktifkan, SEI tidak dilewati.

    Source-based Keyframe (Konfigurasi Lanjutan)

    Jika diaktifkan, keyframe aliran keluaran yang telah dikodekan ulang konsisten dengan keyframe aliran asli.

    Source-based PTS (Konfigurasi Lanjutan)

    Jika diaktifkan, PTS aliran keluaran yang telah dikodekan ulang konsisten dengan PTS aliran asli.

  4. Klik OK.

Konfigurasikan transcoding kustom menggunakan API

Anda dapat memanggil API AddCustomLiveStreamTranscode untuk menambahkan informasi konfigurasi Custom Transcoding untuk nama domain dan AppName.

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

Pertama, Anda dapat menambahkan 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 menyesuaikan parameter, Anda dapat memanggil API DescribeLiveStreamTranscodeInfo untuk menanyakan informasi konfigurasi transkoding.

Transkoding multi-bitrate

Multi-bitrate Transcoding memungkinkan Anda mengonfigurasi beberapa mode transkoding dalam satu templat transkoding. Di beberapa wilayah, lingkungan jaringan sangat bervariasi, dan fluktuasi jaringan dapat memengaruhi pengalaman pemutaran di klien. Oleh karena itu, Anda perlu mengonfigurasi beberapa bitrate untuk mencocokkan kondisi bandwidth berbeda. Setelah Anda mengonfigurasi Multi-bitrate Transcoding, pemutar dapat secara otomatis memutar aliran langsung dengan bitrate yang sesuai berdasarkan bandwidth jaringan klien. Hal ini meningkatkan pengalaman pemutaran.

Saat ini, Multi-bitrate Transcoding hanya dapat dikonfigurasi di konsol ApsaraVideo Live.

Konfigurasikan transcoding multi-bitrate di konsol

  1. Masuk ke Konsol ApsaraVideo Live.

  2. Di panel navigasi sebelah kiri, klik Feature Management > Transcoding untuk membuka halaman Transcoding Streaming Langsung.

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

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

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

      Tabel berikut menjelaskan parameter:

      Parameter

      Deskripsi

      Application Name

      AppName harus cocok dengan AppName dalam URL ingest agar templat transkoding berlaku. Untuk nama domain yang sama, AppName dan ID Grup Templat membentuk Composite Primary Key.

      Template Group ID

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

      Container Format

      Saat ini, hanya HLS yang didukung.

      Trigger Transcoding

      Saat ini, transkoding hanya dapat dipicu oleh ingest aliran. Hal ini menimbulkan biaya transkoding. Memunculkan transkoding dengan menarik aliran tidak didukung.

      Timestamp Alignment

      Jika diaktifkan, pengaturan GOP untuk setiap templat dinonaktifkan, dan GOP video sumber digunakan.

    2. Klik + Add untuk menambahkan templat.image

      Klik templat yang ditambahkan untuk mengedit parameternya. Parameter yang perlu Anda isi mungkin berbeda-beda tergantung jenis templatnya. Tabel berikut menjelaskan parameter:

      Parameter

      Deskripsi

      Template ID

      ID templat tunggal dalam grup templat transkoding. ID templat dalam grup templat yang sama harus unik.

      Template Type

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

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

      Resolution

      Resolusi keluaran video dalam piksel. Tingkatan resolusi berbeda sesuai dengan harga berbeda. Tingkatan resolusi 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 tingkatan resolusi (LD, SD, HD, 2K, 4K). Ini terpisah dari ID templat templat standar (termasuk lld, lsd, lhd, dan lud) dan ID templat Narrowband HD™ (termasuk ld, sd, hd, dan ud) dalam templat transcoding default. Jangan sampai tertukar.

      Aturan penentuan tingkatan resolusi: Spesifikasi keluaran ditentukan berdasarkan apakah sisi panjang dan pendek resolusi video keluaran berada dalam rentang yang ditentukan oleh spesifikasi keluaran.

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

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

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

      Video Bitrate

      Bitrate yang digunakan untuk Resolusi tertentu, dalam kbps. Bitrate yang ditentukan untuk setiap tingkatan resolusi 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

      Laju frame video keluaran dalam FPS. Nilainya kurang dari atau sama dengan laju frame input.

      Video GOP (frames)

      Group of Pictures (GOP) video keluaran, yaitu interval antara dua Frame-I. Nilainya harus kurang dari atau sama dengan nilai input. Untuk memastikan latensi rendah, nilainya tidak boleh lebih dari 3 detik.

      Encoding Format

      Saat ini, hanya format encoding AAC yang didukung.

      Profile (Transcoding hanya audio)

      • LC-AAC: Low-Complexity Advanced Audio Coding. Menawarkan efisiensi transcoding 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 (Transcoding hanya audio)

      Bitrate audio. Nilainya berkisar antara 8 hingga 1000.

      Sound Channels (Transcoding hanya audio)

      Jumlah trek suara. 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. Setelah konfigurasi selesai, klik OK.

Penting
  • Saat ini, aliran Multi-bitrate Transcoding hanya dapat menyediakan URL aliran transkoding HLS.

  • Untuk memutar aliran Multi-bitrate Transcoding, Anda harus menambahkan parameter aliyunols=on. aliyunols=on adalah bidang tetap yang wajib.

Berikut adalah contoh URL:

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

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

Sebagai contoh, Anda dapat menambahkan konfigurasi Multi-bitrate Transcoding seperti yang ditunjukkan pada gambar berikut.

image

Catatan

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

Kemudian, Anda dapat mengingest aliran dan menggunakan Pemutar Video Apsara berbasis web untuk pemutaran. Selama debugging, Anda dapat melihat bahwa pemutar secara otomatis memutar aliran yang telah dikodekan ulang dengan bitrate yang sesuai berdasarkan bandwidth jaringan klien.

image

Catatan

Untuk informasi lebih lanjut tentang penggunaan Pemutar Video Apsara, lihat SDK Pemutar.

Transcoding otomatis H5

Streaming Real-Time (RTS) didasarkan pada sinyal Komunikasi Web Real-Time (WebRTC). WebRTC browser native tidak mendukung B-frame video atau encoding AAC. Transcoding otomatis H5 menyediakan transkoding adaptif untuk memastikan pemutaran lancar.

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

Catatan
  • Transcoding otomatis H5 digunakan untuk menangani masalah seperti B-frame video dan encoding AAC di RTS browser native (artc://). Untuk mengkodekan ulang konten video, seperti dengan menyesuaikan bitrate, laju frame, atau resolusi, Anda tetap perlu mengonfigurasinya melalui Transcoding default atau Custom Transcoding.

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

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

Enkripsi video

Saat Anda mengonfigurasi Transcoding default atau Custom Transcoding, Anda mungkin melihat bidang terkait enkripsi video. Anda dapat menerapkan fitur Alibaba Cloud Proprietary Cryptography melalui konfigurasi transkoding. Untuk informasi lebih lanjut tentang fitur enkripsi video Alibaba Cloud dan cara menerapkannya, lihat Enkripsi video Alibaba Cloud.

Referensi

Untuk informasi lebih lanjut tentang API terkait transkoding, lihat Transkoding streaming langsung.

Untuk informasi lebih lanjut tentang penggunaan SDK Java, lihat Panduan SDK Java.