All Products
Search
Document Center

ApsaraVideo Media Processing:Detail parameter

Last Updated:Nov 11, 2025

Topik ini menjelaskan parameter API untuk fitur ApsaraVideo Media Processing, seperti transkoding, alur kerja, dan pipeline, mencakup tipe parameter, tujuan, serta contoh nilainya.

Detail Input

Parameter ini dirujuk oleh SubmitJobs.

Parameter

Tipe

Diperlukan

Deskripsi

Bucket

String

Ya

Bucket OSS tempat file input berada.

Nilainya harus berupa bucket OSS yang valid. Untuk informasi selengkapnya, lihat Istilah.

Location

String

Ya

Pusat data tempat bucket OSS input berada. Ini adalah wilayah OSS.

  • Bucket OSS harus berada di wilayah yang sama dengan layanan ApsaraVideo Media Processing.

  • Nilainya harus berupa wilayah OSS yang valid. Untuk informasi selengkapnya, lihat Istilah.

Object

String

Ya

Jalur OSS (ObjectKey) dari file input. Ini adalah jalur lengkap yang mencakup nama file.

  • Nilainya harus berupa ObjectKey OSS yang valid. Untuk informasi selengkapnya, lihat Istilah.

  • Dalam API ApsaraVideo Media Processing, nilai Object harus dikodekan URL berdasarkan UTF-8. Untuk informasi selengkapnya, lihat Pengkodean URL.

  • Contoh: Jika jalur Anda adalah AlibabaCloud/mts HD+.mp4, Anda harus mengkodekannya sebagai %E9%98%BF%E9%87%8C%E4%BA%91/mts%20HD%2B.mp4.

Referer

String

Tidak

Tentukan Referer jika Anda mengaktifkan perlindungan hotlink untuk bucket OSS agar hanya memungkinkan unduhan dari referer yang ada dalam daftar putih. Jika Anda tidak mengaktifkan perlindungan hotlink, Anda tidak perlu menentukan parameter ini. Untuk informasi selengkapnya tentang cara mengaktifkan perlindungan hotlink, lihat Perlindungan hotlink.

  • Jika Anda menggunakan alur kerja untuk transkoding, Anda harus mengatur Referer di konsol. Untuk informasi selengkapnya, lihat Mengaktifkan perlindungan hotlink.

  • Jika Anda mengirimkan pekerjaan transkoding tunggal, Anda harus menentukan Referer dalam panggilan API.

Detail Output

Parameter ini dirujuk oleh SubmitJobs, AddMediaWorkflow, dan UpdateMediaWorkflow.

Parameter

Tipe

Diperlukan

Deskripsi

OutputObject

String

Ya

Jalur OSS (ObjectKey) dari file output. Ini adalah jalur lengkap yang mencakup nama file dan ekstensi.

  • Nilainya harus berupa ObjectKey OSS yang valid. Untuk informasi selengkapnya, lihat Istilah.

  • Placeholder didukung. Untuk informasi selengkapnya, lihat Aturan substitusi placeholder di bawah.

  • Aturan ekstensi nama file

    • Alur kerja: Anda tidak perlu menentukan ekstensi. MPS secara otomatis menambahkan ekstensi nama file ke OutputObject berdasarkan format kontainer templat.

    • Pekerjaan transkoding tunggal: Anda harus menentukan ekstensi nama file secara manual. Ekstensi harus sesuai dengan format kontainer templat. Namun, jika tipe kontainer adalah M3U8, MPS secara otomatis menambahkan ekstensi .m3u8 ke daftar putar. Nama file segmen dihasilkan dengan menambahkan tanda hubung (-) dan nomor seri 5 digit yang dimulai dari 00001 ke nama daftar putar. Ekstensi nama file adalah .ts. Misalnya, jika nama file daftar putar adalah filename.m3u8, file segmen TS output pertama adalah filename-00001.ts.

  • Dalam API ApsaraVideo Media Processing, nilai Object harus dikodekan URL berdasarkan UTF-8. Untuk informasi selengkapnya, lihat Pengkodean URL.

  • Contoh: Jalur file input adalah a/b/example.flv. Untuk mengatur jalur file output menjadi a/b/c/example+test.mp4, Anda dapat mengatur OutputObject menjadi {ObjectPrefix}/c/{FileName}+test.mp4 menggunakan placeholder. Setelah pengkodean URL, nilai akhirnya adalah %7BObjectPrefix%7D/c/%7BFileName%7D%2Btest.mp4.

TemplateId

String

Ya

ID dari template transkoding.

Container

Objek

Tidak

Format kontainer. Untuk informasi selengkapnya, lihat Detail Container di bawah.

  • Jika parameter ini diatur, parameter ini akan menimpa parameter yang sesuai dalam templat transkoding yang ditentukan.

Video

Objek

Tidak

Parameter transkoding video. Untuk informasi selengkapnya, lihat Detail Video di bawah.

  • Jika parameter ini diatur, parameter ini akan menimpa parameter yang sesuai dalam templat transkoding yang ditentukan.

Audio

Objek

Tidak

Parameter transkoding audio. Untuk informasi selengkapnya, lihat Detail Audio di bawah.

  • Jika parameter ini diatur, parameter ini akan menimpa parameter yang sesuai dalam templat transkoding yang ditentukan.

TransConfig

Objek

Tidak

Parameter proses transkoding. Untuk informasi selengkapnya, lihat Detail TransConfig di bawah.

  • Jika parameter ini diatur, parameter ini akan menimpa parameter yang sesuai dalam templat transkoding yang ditentukan.

  • Contoh: {"TransMode":"onepass","AdjDarMethod":"none","IsCheckVideoBitrateFail":"true","IsCheckAudioBitrateFail":"true"}.

VideoStreamMap

String

Tidak

Pengidentifikasi aliran video yang akan dipertahankan dari file input. Nilai yang valid:

  • Tidak ditentukan: MPS memilih satu aliran video default.

  • 0:v:{index}: Indeks aliran video dalam daftar aliran video. Indeks dimulai dari 0. Misalnya, 0:v:1 menunjukkan bahwa aliran video kedua dipilih untuk transkoding.

  • 0:v: Semua aliran video dipilih.

AudioStreamMap

String

Tidak

Pengidentifikasi aliran audio yang akan dipertahankan dari file input. Nilai yang valid:

  • Tidak ditentukan: MPS memilih satu aliran audio default. MPS biasanya memprioritaskan aliran audio yang berbahasa Tiongkok, memiliki banyak saluran, dan berkualitas tinggi.

  • 0:a:{index}: Indeks aliran audio dalam daftar aliran audio. Indeks dimulai dari 0. Misalnya, 0:a:1 menunjukkan bahwa aliran audio kedua dipilih untuk transkoding.

  • 0:a: Semua aliran audio dipilih. Ini cocok untuk skenario dengan trek audio multi-bahasa.

Rotate

String

Tidak

Sudut untuk memutar video searah jarum jam.

  • Kisaran nilai: 0, 90, 180, dan 270.

  • Nilai default: 0. Ini menunjukkan bahwa video tidak diputar.

WaterMarks

Object[]

Tidak

Daftar watermark. Ini menyematkan gambar atau teks ke dalam video. Jika parameter ini diatur, parameter ini akan menimpa parameter yang sesuai dalam templat watermark yang ditentukan. Untuk informasi selengkapnya, lihat Detail parameter watermark transkoding.

  • Anda dapat menambahkan maksimal empat watermark ke pekerjaan transkoding.

  • Contoh watermark gambar tunggal: [{"WaterMarkTemplateId":"88c6ca184c0e47098a5b665e2a12****","InputFile":{"Bucket":"example-bucket","Location":"oss-cn-hangzhou","Object":"example-logo.png"},"Timeline":{"Start":"0","Duration":"ToEND"}}].

  • Contoh watermark teks tunggal: [{"Type":"Text","TextWaterMark":{"Content":"5rWL6K+V5paH5a2X5rC05Y2w","FontName":"SimSun","FontSize":"16","Top":2,"Left":10}}].

DeWatermark

Objek

Tidak

Efek buram. Untuk informasi selengkapnya, lihat Detail efek buram.

  • Contoh: {"0": [{"l":10,"t":10,"w":10,"h":10},{"l":100,"t":0.1,"w":10,"h":10}],"128000": [],"250000": [{"l":0.2,"t":0.1,"w":0.01,"h":0.05}]}.

SubtitleConfig

Objek

Tidak

Pengaturan subtitle keras. Ini menyematkan file subtitle eksternal ke dalam video. Untuk informasi selengkapnya, lihat Detail SubtitleConfig.

  • Anda dapat menyematkan maksimal empat file subtitle dalam pekerjaan transkoding.

  • Contoh: {"ExtSubtitleList":[{"Input":{"Bucket":"example-bucket-****","Location":"oss-cn-hangzhou","Object":"example.srt"},"CharEnc":"UTF-8"}]}.

Clip

Objek

Tidak

Pengeditan video. Untuk informasi selengkapnya, lihat Detail Clip di bawah.

  • Contoh: {"TimeSpan": {"Seek":"00:01:59.999","End":"18000.30"},"ConfigToClipFirstPart":false}. Ini menunjukkan bahwa file pertama kali digabungkan lalu diedit secara keseluruhan. Pengeditan dimulai pada 1 menit, 59 detik, dan 999 milidetik, dan berakhir 5 menit dan 30 milidetik sebelum akhir video.

MergeList

Object[]

Tidak

Daftar file untuk digabungkan. Ini menggabungkan file input dan segmen yang ditentukan menjadi satu video. Untuk informasi selengkapnya, lihat Detail parameter penggabungan MergeList di bawah.

  • Anda dapat menentukan MergeList atau MergeConfigUrl. MergeConfigUrl memiliki prioritas lebih tinggi.

  • Anda dapat menambahkan maksimal empat MergeURL ke pekerjaan transkoding. Untuk menggabungkan lebih banyak segmen, gunakan MergeConfigUrl.

  • Contoh segmen gabungan tunggal: [{"MergeURL":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/tail_comm_01.mp4"}]

  • Contoh dua segmen gabungan: [{"MergeURL":"http://exampleBucket****m.oss-cn-hangzhou.aliyuncs.com/tail_comm_01.mp4","Start":"1","Duration":"20"},{"MergeURL":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/tail_comm_02.mp4","Start":"5.4","Duration":"10.2"}].

MergeConfigUrl

String

Tidak

Alamat penyimpanan OSS dari file konfigurasi penggabungan.

  • Anda dapat menentukan MergeList atau MergeConfigUrl. MergeConfigUrl memiliki prioritas lebih tinggi.

  • File harus disimpan di OSS. Contoh alamat penyimpanan: http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/mergeConfigfile.

  • File berisi beberapa MergeURL. Tentukan dalam urutan penggabungan. Anda dapat menggabungkan maksimal 50 segmen. Untuk informasi selengkapnya tentang formatnya, lihat Detail parameter penggabungan MergeList. Contoh isi file: {"MergeList":[{"MergeURL":"http://exampleBucket****m.oss-cn-hangzhou.aliyuncs.com/tail_comm_01.mp4","Start":"1","Duration":"20"},{"MergeURL":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/tail_comm_02.mp4","Start":"5.4","Duration":"10.2"}]}.

OpeningList

Object[]

Tidak

Daftar segmen pembuka. Pembuka adalah efek khusus yang menyematkan video pembuka di awal video input sebagai Gambar-dalam-Gambar (PiP). Untuk informasi selengkapnya, lihat Detail OpeningList.

  • Anda dapat menambahkan maksimal dua video pembuka ke pekerjaan transkoding. Tentukan dalam urutan penggabungan.

  • Contoh: [{"OpenUrl":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/opening_01.flv","Start":"1","Width":"1920","Height":"1080"},{"OpenUrl":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/opening_02.flv","Start":"1","Width":"-1","Height":"full"}].

TailSlateList

Object[]

Tidak

Daftar segmen penutup. Penutup adalah efek khusus yang menambahkan video penutup ke video input dengan transisi fade-in dan fade-out. Untuk informasi selengkapnya, lihat Detail TailSlateList.

  • Anda dapat menambahkan maksimal dua video penutup ke pekerjaan transkoding. Tentukan dalam urutan penggabungan.

  • Contoh: [{"TailUrl":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/tail_01.flv","Start":"1","BlendDuration":"2","Width":"1920","Height":"1080","IsMergeAudio":false,"BgColor":"White"}].

Amix

Object[]

Tidak

Pengaturan pencampuran audio. Ini digunakan untuk menggabungkan beberapa trek audio dari video yang sama atau menambahkan musik latar. Untuk informasi selengkapnya, lihat Detail pencampuran audio Amix.

  • Anda dapat menambahkan maksimal empat file Amix ke pekerjaan transkoding.

  • Contoh pencampuran dua aliran audio dari file input: [{"AmixURL":"input","MixDurMode":"longest","Start":"1","Duration":"2"}].

  • Contoh pencampuran file eksternal dengan file input: [{"AmixURL":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/tail.flv","Map":"0:a:1","MixDurMode":"longest","Start":"1","Duration":"2"}].

MuxConfig

Objek

Tidak

Pengaturan pengemasan. Untuk informasi selengkapnya, lihat Detail MuxConfig di bawah.

  • Jika parameter ini diatur, parameter ini akan menimpa parameter yang sesuai dalam templat transkoding yang ditentukan.

  • Contoh: {"Segment":{"Duration":"10","ForceSegTime":"1,2,4,6,10,14,18"}. Ini memaksa sharding pada 1, 2, 4, 6, 10, 14, 18, 20, 30, 40, 50, ... detik.

M3U8NonStandardSupport

Objek

Tidak

Dukungan M3U8 non-standar. Untuk informasi selengkapnya, lihat Detail dukungan parameter non-standar M3U8.

  • Contoh: {"TS":{"Md5Support":true,"SizeSupport":true}}. Ini menunjukkan bahwa output nilai MD5 dan ukuran file TS didukung.

Encryption

String

Tidak

Pengaturan enkripsi. Parameter ini hanya berlaku ketika Container diatur ke m3u8. Untuk informasi selengkapnya, lihat Detail parameter enkripsi.

  • Contoh: {"Type":"hls-aes-128","Key":"ZW5jcnlwdGlvbmtleTEyMw","KeyType":"Base64","KeyUri":"aHR0cDovL2FsaXl1bi5jb20vZG9jdW1lbnQvaGxzMTI4LmtleQ=="}.

UserData

String

Tidak

Data yang ditentukan pengguna. Panjang maksimum adalah 1024 byte.

Priority

String

Tidak

Prioritas transkoding pekerjaan dalam antrian MPS-nya.

  • Kisaran nilai: [1, 10]. Nilai 1 menunjukkan prioritas terendah, dan 10 menunjukkan prioritas tertinggi.

  • Nilai default: 6.

  • Praktik terbaik: Antrian MPS memiliki batas konkurensi. Jika Anda mengirimkan banyak pekerjaan yang mungkin masuk antrian, atur prioritas lebih tinggi untuk konten yang sensitif terhadap waktu atau penting.

Metata

Map

Tidak

metadata dari format kontainer video output. Nilainya harus berupa objek JSON dari pasangan kunci-nilai. Contoh: {"key1":"value1","key2":"value2"}.

  • Panjang maksimum kunci adalah 64 karakter.

  • Panjang maksimum nilai adalah 512 karakter.

  • Anda dapat menambahkan maksimal empat pasangan kunci-nilai metadata.

Detail Container

Parameter ini dirujuk oleh Output.Container.

Parameter

Tipe

Diperlukan

Deskripsi

Format

String

Tidak

Format kontainer.

  • Format yang didukung: Untuk informasi selengkapnya tentang format yang didukung dan kompatibilitasnya dengan kodek, lihat Format yang didukung.

    • Video: 3gp, avi, flv, f4v, fmp4, mkv, mov, mp4, ts, mxf, webm, m3u8, hls-fmp4, mpd, cmaf-hls, dan cmaf-dash.

    • Audio: aac, m4a, mp2, mp3, mp4, ogg, flac, m3u8, hls-fmp4, mpd, cmaf-hls, dan cmaf-dash.

    • Gambar animasi: gif dan webp.

  • Nilai default: mp4.

Detail TransConfig

Parameter ini dirujuk oleh Output.TransConfig.

Parameter

Tipe

Diperlukan

Deskripsi

TransMode

String

Tidak

Mode transkoding video. Parameter ini hanya berlaku ketika Codec diatur ke H.264, H.265, atau AV1. Anda juga harus mengatur parameter Bitrate dan Crf dengan benar dalam objek Video untuk mode yang berbeda. Untuk informasi selengkapnya, lihat Mode kontrol bitrate video di bawah. Nilai yang valid:

  • CBR: Mode Bitrate Konstan.

  • onepass: Biasanya digunakan untuk Bitrate Rata-rata (ABR). Kecepatan pengkodean lebih cepat daripada twopass.

  • twopass: Biasanya digunakan untuk Bitrate Variabel (VBR). Kecepatan pengkodean lebih lambat daripada onepass.

  • fixCRF: Mode kontrol kualitas Faktor Laju Konstan (CRF).

  • Nilai default: onepass jika Bitrate ditentukan. fixCRF jika Bitrate tidak ditentukan. Nilai CRF default digunakan.

AdjDarMethod

String

Tidak

Metode untuk menyesuaikan resolusi. Parameter ini hanya berlaku ketika Width dan Height keduanya ditentukan. Anda dapat menggunakannya dengan LongShortMode.

  • Nilai yang valid: rescale, crop, pad, dan none.

  • Nilai default: none.

  • Untuk contoh, lihat Mengatur resolusi.

IsCheckReso

String

Tidak

Menentukan apakah akan memeriksa resolusi video. Anda dapat menentukan IsCheckReso atau IsCheckResoFail. IsCheckResoFail memiliki prioritas lebih tinggi.

  • true: Periksa resolusi. Jika lebar atau tinggi video input lebih kecil dari pengaturan output, resolusi video input digunakan untuk transkoding.

  • false: Jangan periksa resolusi.

  • Nilai default: false.

IsCheckResoFail

String

Tidak

Menentukan apakah akan memeriksa resolusi video. Anda dapat menentukan IsCheckReso atau IsCheckResoFail. Parameter ini memiliki prioritas lebih tinggi.

  • true: Periksa resolusi. Jika lebar atau tinggi video input lebih kecil dari pengaturan output, pekerjaan transkoding gagal.

  • false: Jangan periksa resolusi.

  • Nilai default: false.

IsCheckVideoBitrate

String

Tidak

Menentukan apakah akan memeriksa bitrate video. Anda dapat menentukan IsCheckVideoBitrate atau IsCheckVideoBitrateFail. IsCheckVideoBitrateFail memiliki prioritas lebih tinggi.

  • true: Periksa bitrate. Jika bitrate video input lebih rendah dari pengaturan output, bitrate video input digunakan untuk transkoding.

  • false: Tidak melakukan pemeriksaan.

  • Nilai default: false.

IsCheckVideoBitrateFail

String

Tidak

Menentukan apakah akan memeriksa bitrate video. Anda dapat menentukan IsCheckVideoBitrate atau IsCheckVideoBitrateFail. Parameter ini memiliki prioritas lebih tinggi.

  • true: Periksa bitrate. Jika bitrate video input lebih rendah dari pengaturan output, pekerjaan transkoding gagal.

  • false: Jangan periksa bitrate.

  • Nilai default: false.

IsCheckAudioBitrate

String

Tidak

Menentukan apakah akan memeriksa bitrate audio. Anda dapat menentukan IsCheckAudioBitrate atau IsCheckAudioBitrateFail. IsCheckAudioBitrateFail memiliki prioritas lebih tinggi.

  • true: Periksa bitrate. Jika bitrate audio input lebih rendah dari pengaturan output, bitrate audio input digunakan untuk transkoding.

  • false: Tidak ada pemeriksaan yang terjadi.

  • Nilai default:

    • Jika parameter ini tidak ditentukan dan kodek berbeda dari sumber: false.

    • Jika parameter ini tidak ditentukan dan kodek sama dengan sumber: true.

IsCheckAudioBitrateFail

String

Tidak

Menentukan apakah akan memeriksa bitrate audio. Anda dapat menentukan IsCheckAudioBitrate atau IsCheckAudioBitrateFail. Parameter ini memiliki prioritas lebih tinggi.

  • true: Periksa bitrate. Jika bitrate audio input lebih rendah dari pengaturan output, pekerjaan transkoding gagal.

  • false: Jangan periksa bitrate.

  • Nilai default: false.

Mode kontrol bitrate video

Anda dapat mengatur parameter TransMode, Bitrate, vbv (Maxrate, Bufsize), dan Crf sesuai dengan mode kontrol bitrate video.

Mode kontrol bitrate video

Pengaturan TransMode

Pengaturan parameter terkait Bitrate

CBR (Mode Bitrate Konstan)

CBR

Nilai Bitrate, Maxrate, dan Bufsize harus sama.

ABR (Mode Bitrate Rata-rata)

onepass atau tidak ditentukan

Tentukan Bitrate.

Anda juga dapat menentukan Maxrate dan Bufsize untuk mengontrol kisaran fluktuasi bitrate puncak.

VBR (Mode Bitrate Variabel)

twopass

Tentukan parameter Bitrate, Maxrate, dan Bufsize.

CRF (Mode Faktor Laju Konstan)

fixCRF

Tentukan Crf. Jika tidak ditentukan, nilai Crf default untuk kodek yang sesuai berlaku.

Anda juga dapat menentukan Maxrate dan Bufsize untuk mengontrol kisaran fluktuasi bitrate puncak.

Tidak ditentukan

Jangan tentukan Bitrate. Nilai Crf default untuk kodek yang sesuai berlaku.

Detail Video

Parameter ini dirujuk oleh Output.Video.

Parameter

Tipe

Diperlukan

Deskripsi

Remove

String

Tidak

Menentukan apakah akan menghapus aliran video.

  • true: Hapus aliran. Semua parameter Video lainnya di bagian ini menjadi tidak valid.

  • false: Pertahankan sumber daya.

  • Nilai default: false.

Codec

String

Tidak

Format penyandian video.

  • Nilai yang valid: H.264, H.265, AV1, GIF, dan WEBP. Untuk informasi selengkapnya tentang format yang didukung dan kompatibilitasnya dengan kontainer, lihat Format yang didukung.

  • Nilai default: H.264.

Width

String

Tidak

Lebar atau sisi panjang. Jika LongShortMode adalah false atau tidak diatur, parameter ini menentukan lebar. Jika LongShortMode adalah true, parameter ini menentukan sisi panjang video.

  • Unit: px.

  • Kisaran nilai: [128, 4096]. Nilainya harus bilangan genap.

  • Nilai default:

    • Jika Width dan Height keduanya tidak diatur, lebar asli (atau sisi panjang) video input digunakan.

    • Jika hanya Height yang diatur, lebar dihitung berdasarkan rasio aspek video input.

Height

String

Tidak

Tinggi atau sisi pendek. Jika LongShortMode adalah false atau tidak diatur, parameter ini menentukan tinggi. Jika LongShortMode adalah true, parameter ini menentukan sisi pendek video.

  • Unit: px.

  • Kisaran nilai: [128, 4096]. Nilainya harus bilangan genap.

  • Nilai default:

    • Jika Width dan Height keduanya tidak diatur, tinggi asli (atau sisi pendek) video input digunakan.

    • Jika hanya Width yang diatur, tinggi dihitung berdasarkan rasio aspek video input.

LongShortMode

String

Tidak

Menentukan apakah akan mengaktifkan rotasi otomatis untuk video lanskap dan potret. Ini juga dikenal sebagai adaptasi sisi panjang dan pendek. Parameter ini hanya berlaku ketika setidaknya Width atau Height ditentukan.

  • true: Aktifkan.

  • false: Nonaktifkan.

  • Nilai default: false.

  • Praktik terbaik: Jika video input Anda mencakup video horizontal dan vertikal, aktifkan sakelar rotasi otomatis dan konfigurasikan penskalaan proporsional menggunakan parameter resolusi untuk mencegah peregangan dan distorsi video. Untuk contoh, lihat Mengatur rotasi otomatis.

Fps

String

Tidak

Laju frame.

  • Unit: frame per detik (fps).

  • Kisaran nilai: (0, 60].

  • Nilai default: Laju frame asli video input. Jika laju frame asli lebih besar dari 60, nilai 60 digunakan.

  • Nilai umum: 24, 25, dan 30.

MaxFps

String

Tidak

Laju frame maksimum.

Gop

String

Tidak

Interval antara dua Frame-I berturut-turut dalam waktu atau jumlah frame.

Catatan

Nilai Group of Pictures (GOP) yang lebih besar menghasilkan rasio kompresi yang lebih tinggi tetapi kecepatan pengkodean yang lebih rendah, durasi yang lebih lama untuk setiap segmen media streaming, dan waktu respons pencarian yang lebih lama untuk pemutar. Untuk informasi selengkapnya, lihat Istilah.

  • Interval waktu maksimum antara keyframe: {time}s. Kisaran waktu adalah [1, 100000].

  • Interval frame maksimum antara keyframe: {frames}. Kisaran frame adalah [1, 100000].

  • Nilai default: 10s. Ini menunjukkan satu keyframe setiap 10 detik.

  • Praktik terbaik: Untuk pemutaran media streaming, atur parameter ini ke nilai dalam kisaran [2, 7]s untuk meningkatkan kecepatan startup dan waktu respons pencarian pemutar.

Bitrate

String

Tidak

Bitrate rata-rata video output. Anda harus mengatur Bitrate untuk mode CBR, ABR, dan VBR, dan mengonfigurasi TransMode dengan benar. Untuk informasi selengkapnya, lihat Mode kontrol bitrate video.

  • Unit: Kbps.

  • Kisaran nilai: -1 atau [10, 50000]. Nilai -1 menunjukkan bahwa bitrate asli video input digunakan.

  • Praktik terbaik:

    • Mode CBR: Atur TransMode ke CBR, dan atur Bitrate, Maxrate, dan Bufsize ke nilai yang sama.

    • Mode ABR: Atur TransMode ke onepass dan tentukan Bitrate. Anda juga dapat menentukan Maxrate dan Bufsize untuk mengontrol kisaran fluktuasi bitrate.

    • Mode VBR: Atur TransMode ke twopass dan tentukan parameter Maxrate (atau BitrateBnd) dan Bufsize.

BitrateBnd

String

Tidak

Rentang bitrate rata-rata video keluaran.

  • Parameter ini hanya berlaku ketika Codec diatur ke H.264.

  • Contoh: {"Max":"5000","Min":"1000"}.

Maxrate

String

Tidak

Bitrate puncak video dari file output. Untuk informasi selengkapnya, lihat Mode kontrol bitrate video.

  • Unit: Kbps.

  • Kisaran nilai: [10, 50000].

Bufsize

String

Tidak

Ukuran buffer kontrol bitrate. Ini mengontrol fluktuasi bitrate. Untuk informasi selengkapnya, lihat Mode kontrol bitrate video.

Catatan

Nilai Bufsize yang lebih besar menghasilkan fluktuasi bitrate yang lebih besar dan kualitas video yang lebih tinggi.

  • Unit: Kb.

  • Kisaran nilai: [1000, 128000].

  • Nilai default: 6000.

Crf

String

Tidak

Faktor Laju Konstan (CRF). Anda harus mengatur Crf untuk mode CRF dan mengatur TransMode ke fixCRF. Untuk informasi selengkapnya, lihat Mode kontrol bitrate video.

Catatan

Nilai CRF yang lebih besar menghasilkan kualitas video yang lebih rendah dan rasio kompresi yang lebih tinggi.

  • Kisaran nilai: [20, 51].

  • Nilai default: 23 jika Codec adalah H.264. 26 jika Codec adalah H.265. 32 jika Codec adalah AV1.

  • Praktik terbaik:

    • Nilai 0 menunjukkan lossless, dan 51 menunjukkan kualitas terburuk. Kami merekomendasikan nilai dalam kisaran [23, 29]. Anda dapat menyesuaikan nilai berdasarkan kompleksitas video. Meningkatkan atau mengurangi nilai sebesar 6 akan mengurangi separuh atau menggandakan bitrate. Untuk definisi yang sama, Anda dapat mengatur nilai yang lebih tinggi untuk animasi daripada untuk video aksi langsung.

    • CRF menargetkan tingkat kualitas tertentu, sehingga bitrate video output tidak dapat diprediksi. Anda dapat menggunakan Maxrate dan Bufsize untuk mengontrol kisaran fluktuasi bitrate.

Qscale

String

Tidak

Nilai kontrol kualitas video. Ini tersedia untuk mode VBR.

Catatan

Nilai Qscale yang lebih besar menghasilkan kualitas video yang lebih rendah dan rasio kompresi yang lebih tinggi.

  • Parameter ini hanya berlaku ketika Codec diatur ke H.264.

  • Kisaran nilai: [0, 51].

Profile

String

Tidak

Profil pengkodean. Untuk informasi selengkapnya, lihat Istilah.

  • Parameter ini hanya berlaku ketika Codec diatur ke H.264.

  • Nilai yang valid: baseline, main, dan high.

  • Nilai default: high.

  • Praktik terbaik: Saat menghasilkan beberapa definisi untuk video, atur definisi terendah ke baseline untuk memastikan pemutaran di perangkat low-end. Atur definisi lainnya ke main atau high.

Preset

String

Tidak

Mode preset untuk penyandi H.264.

Catatan

Preset yang lebih cepat menghasilkan kualitas video yang lebih rendah.

  • Parameter ini hanya berlaku ketika Codec diatur ke H.264.

  • Nilai yang valid: veryfast, fast, medium, slow, dan slower.

  • Nilai default: medium.

ScanMode

String

Tidak

Mode pemindaian. Nilai yang valid:

  • Tidak ditentukan: Mode asli file input digunakan.

  • auto: Deinterlacing otomatis.

  • progressive: Pemindaian progresif.

  • interlaced: Pemindaian interlaced.

  • Nilai default: Kosong. Ini berarti parameter tidak diatur.

Praktik terbaik: Pemindaian interlaced menghemat lebih banyak data daripada pemindaian progresif, tetapi kualitas gambarnya buruk. Oleh karena itu, produksi video utama sekarang menggunakan pemindaian progresif.

  • Jika Anda mengatur progressive atau interlaced, tetapi tidak sesuai dengan mode video asli, pekerjaan transkoding akan gagal.

  • Atur mode ke mode video asli atau deinterlacing otomatis untuk meningkatkan kompatibilitas.

PixFmt

String

Tidak

Format warna video.

  • Untuk menggunakan format warna asli, atur PixFmt ke "".

  • Nilai yang valid untuk format yang ditentukan: yuv420p, yuvj420p, yuv422p, yuvj422p, yuv444p, yuvj444p, yuv444p161e, pc, bt470bg, smpte170m, dan lainnya. Ketika Codec adalah GIF, bgr8 didukung.

Crop

String

Tidak

Pemotongan video. Anda dapat secara otomatis menghapus bilah hitam atau menentukan dimensi pemotongan kustom.

  • Gunakan parameter ini ketika resolusi video input lebih besar dari resolusi video output. Jangan atur parameter penyesuaian resolusi AdjDarMethod.

  • Penghapusan bilah hitam otomatis: border.

  • Pemotongan kustom: Format parameter adalah {width}:{height}:{left}:{top}.

    • width: Lebar video output setelah pemotongan.

    • height: Tinggi video output setelah pemotongan.

    • left: Margin kiri bingkai output relatif terhadap bingkai asli.

    • top: Margin atas bingkai output relatif terhadap bingkai asli.

  • Contoh pemotongan kustom: 1920:800:0:140.示例

Pad

String

Tidak

Padding video dengan bilah hitam.

  • Gunakan parameter ini ketika resolusi video input lebih kecil dari resolusi video output. Jangan atur parameter pemeriksaan resolusi IsCheckReso dan IsCheckResoFail. Jangan atur parameter penyesuaian resolusi AdjDarMethod.

  • Format parameter: {width}:{height}:{left}:{top}.

    • width: Lebar video output setelah padding.

    • height: Tinggi video output setelah padding.

    • left: Margin kiri bingkai asli relatif terhadap bingkai output.

    • top: Margin atas bingkai asli relatif terhadap bingkai output.

  • Contoh: 1920:1080:0:140.视频贴黑边

Detail Audio

Parameter ini dirujuk oleh Output.Audio.

Parameter

Tipe

Diperlukan

Deskripsi

Remove

String

Tidak

Menentukan apakah akan menghapus aliran audio.

  • true: Hapus aliran. Semua parameter Audio lainnya di bagian ini menjadi tidak valid.

  • false: Dipertahankan.

  • Nilai default: false.

Codec

String

Tidak

Format encoding audio.

  • Nilai yang valid: AAC, AC3, EAC3, MP2, MP3, FLAC, OPUS, VORBIS, WMA-V1, WMA-V2, dan pcm_s16le. Untuk informasi selengkapnya tentang format yang didukung dan kompatibilitasnya dengan kontainer, lihat Format yang didukung.

  • Nilai default: AAC.

Profile

String

Tidak

Profil pengkodean audio.

  • Parameter ini hanya berlaku ketika Codec diatur ke AAC.

  • Nilai yang valid: aac_low, aac_he, aac_he_v2, aac_ld, dan aac_eld. Untuk informasi selengkapnya, lihat Istilah.

  • Nilai default: aac_low.

Bitrate

String

Tidak

Bitrate audio file keluaran.

  • Unit: Kbps.

  • Kisaran nilai: [8, 1000].

  • Nilai default: 128.

  • Nilai umum: 64, 128, dan 256.

Samplerate

String

Tidak

Laju sampel.

  • Unit: Hz.

  • Nilai yang valid: 22050, 32000, 44100, 48000, dan 96000.

    Catatan

    Laju sampel yang didukung bervariasi berdasarkan kontainer dan format encoding. Untuk informasi lengkap, lihat Laju sampel yang didukung. Misalnya, jika Codec audio adalah MP3, laju sampel 96000 tidak didukung untuk format kontainer apa pun. Jika format kontainer adalah FLV, hanya laju sampel 22050 dan 44100 yang didukung.

  • Nilai default: 44100

Channels

String

Tidak

Jumlah saluran suara.

  • Nilai yang valid: 0, 1, 2, 4, 5, 6, dan 8.

    • Jika Codec audio adalah MP3 atau OPUS, nilai yang valid adalah 0, 1, dan 2.

    • Jika Codec audio adalah AAC atau FLAC, nilai yang valid adalah 0, 1, 2, 4, 5, 6, dan 8.

    • Jika Codec audio adalah VORBIS, nilai yang valid adalah 2.

    • Jika Format adalah mpd, 8 tidak didukung.

  • Nilai default: 2.

  • Untuk mempertahankan jumlah saluran asli, atur parameter ini ke 0.

Volume

String

Tidak

Kontrol volume. Untuk informasi selengkapnya, lihat Detail kontrol volume di bawah.

  • Parameter ini hanya dapat diatur ketika ada satu aliran audio output. Tidak didukung untuk beberapa aliran audio.

Detail kontrol volume

Parameter ini dirujuk oleh Output.Audio.Volume.

Parameter

Tipe

Diperlukan

Deskripsi

Method

String

Tidak

Metode penyesuaian volume.

  • auto: Penyesuaian otomatis.

  • dynamic: Penyesuaian dinamis.

  • linear: Penyesuaian linier.

  • Nilai default: dynamic.

Level

String

Tidak

Peningkatan volume relatif terhadap audio input.

  • Parameter ini hanya berlaku ketika Method diatur ke linear.

  • Unit: dB.

  • Kisaran nilai: Tidak lebih dari 20 dB.

  • Nilai default: -20 dB.

IntegratedLoudnessTarget

String

Tidak

Volume target.

  • Parameter ini hanya berlaku ketika Method diatur ke dynamic.

  • Unit: dB.

  • Kisaran nilai: [-70, -5].

  • Nilai default: -6.

TruePeak

String

Tidak

Volume Puncak.

  • Parameter ini hanya berlaku ketika Method diatur ke dynamic.

  • Unit: dB.

  • Kisaran nilai: [-9, 0].

  • Nilai default: -1.

LoudnessRangeTarget

String

Tidak

Kisaran fluktuasi relatif terhadap volume target.

  • Parameter ini hanya berlaku ketika Method diatur ke dynamic.

  • Unit: dB.

  • Kisaran nilai: [1, 20].

  • Nilai default: 8.

Detail parameter watermark transkoding

Parameter ini dirujuk oleh Output.WaterMarks.

Parameter

Tipe

Diperlukan

Deskripsi

Tipe

String

Tidak

Jenis watermark.

  • Text: Watermark teks. Anda harus mengatur TextWaterMark.

  • Image: Watermark gambar. Anda harus mengatur parameter watermark gambar.

  • Nilai default: Gambar.

TextWaterMark

Objek

Tidak

Pengaturan watermark teks. Untuk informasi selengkapnya, lihat Detail parameter watermark teks.

  • Parameter ini wajib jika Type diatur ke Text.

  • Contoh: {"Content":"5rWL6K+V5paH5a2X5rC05Y2w","FontName":"SimSun","FontSize":"16","Top":2,"Left":10}.

InputFile

Objek

Tidak

File watermark gambar. Gunakan parameter Bucket, Location, dan Object OSS untuk menggambarkan lokasi file.

  • Format dan ekstensi yang didukung: gambar PNG statis (.png), gambar PNG animasi (.apng), file MOV (.mov), dan file GIF (.gif).

  • File harus disimpan di OSS. Untuk spesifikasi parameter, lihat Detail Input.

  • Dalam API ApsaraVideo Media Processing, nilai Object harus dikodekan URL berdasarkan UTF-8.

  • Contoh: {"Bucket":"example-bucket","Location":"oss-cn-hangzhou","Object":"example-logo.png"}.

Catatan

Menambahkan watermark gambar non-HDR ke video HDR dapat menyebabkan distorsi warna.

WaterMarkTemplateId

String

Tidak

ID templat watermark gambar. Jika parameter ini tidak diatur, konfigurasi default berikut digunakan untuk watermark gambar:

  • Posisi: TopRight.

  • Offset horizontal (Dx) dan offset vertikal (Dy): 0.

  • Lebar: 0,12 kali lebar resolusi output.

  • Tinggi: Diskalakan secara proporsional ke lebar watermark.

  • Waktu tampil: Dari awal hingga akhir.

ReferPos

String

Tidak

Posisi watermark gambar.

  • Nilai yang valid: TopRight, TopLeft, BottomRight, dan BottomLeft.

Dx

String

Tidak

Offset horizontal watermark gambar relatif terhadap video output. Jika parameter ini diatur, parameter ini akan menimpa parameter yang sesuai dalam templat watermark yang ditentukan. Anda dapat mengatur ini dengan dua cara:

  • Sebagai bilangan bulat, mewakili offset dalam piksel.

    • Unit: px.

    • Kisaran nilai: [8, 4096].

  • Sebagai desimal, mewakili rasio offset horizontal terhadap lebar resolusi output.

    • Kisaran nilai: (0, 1).

    • Mendukung hingga empat tempat desimal, seperti 0,9999. Digit tambahan secara otomatis dibuang.

Dy

String

Tidak

Offset vertikal watermark gambar relatif terhadap video output. Anda dapat mengatur ini dengan dua cara:

  • Sebagai bilangan bulat, mewakili offset dalam piksel.

    • Unit: px.

    • Kisaran nilai: [8, 4096].

  • Sebagai desimal, mewakili rasio offset vertikal terhadap tinggi resolusi output.

    • Kisaran nilai: (0, 1).

    • Mendukung hingga empat tempat desimal, seperti 0,9999. Digit tambahan secara otomatis dibuang.

Lebar

String

Tidak

Lebar watermark gambar. Anda dapat mengatur ini dengan dua cara:

  • Sebagai bilangan bulat, mewakili lebar gambar watermark dalam piksel.

    • Kisaran nilai: [8, 4096].

    • Unit: px.

  • Sebagai desimal, mewakili lebar sebagai persentase dari lebar resolusi video output.

    • Kisaran nilai: (0, 1).

    • Mendukung hingga empat tempat desimal, seperti 0,9999. Digit tambahan secara otomatis dibuang.

Tinggi

String

Tidak

Tinggi watermark gambar. Anda dapat mengatur ini dengan dua cara:

  • Sebagai bilangan bulat, mewakili tinggi gambar watermark dalam piksel.

    • Kisaran nilai: [8, 4096].

    • Unit: px.

  • Sebagai desimal, mewakili tinggi sebagai rasio dari tinggi resolusi video output.

    • Kisaran nilai: (0, 1).

    • Mendukung hingga empat tempat desimal, seperti 0,9999. Digit tambahan secara otomatis dibuang.

Timeline

String

Tidak

Durasi tampil watermark gambar. Untuk informasi selengkapnya, lihat Detail parameter Timeline.

Detail parameter watermark teks

Parameter ini dirujuk oleh Output.WaterMarks.TextWaterMark.

Parameter

Tipe

Diperlukan

Deskripsi

Content

String

Ya

Isi watermark teks. Isi harus dikodekan Base64.

  • Contoh: Untuk menambahkan watermark teks "Watermark teks uji coba", nilai Content adalah "5rWL6K+V5paH5a2X5rC05Y2w".

Catatan

Meneruskan karakter khusus, seperti emoji atau tanda kutip tunggal, dapat menyebabkan output watermark terpotong atau gagal. Escape karakter khusus sebelum meneruskannya.

FontName

String

Tidak

Font.

FontSize

Int

Tidak

Ukuran font.

  • Kisaran nilai: (4, 120).

  • Nilai default: 16.

FontColor

String

Tidak

Warna font.

  • Nilai yang valid: Lihat kolom nama di FontColor.

  • Nilai default: black.

FontAlpha

Float

Tidak

Transparansi font.

  • Kisaran nilai: (0, 1].

  • Nilai default: 1.0.

BorderWidth

Int

Tidak

Lebar garis luar.

  • Unit: px.

  • Kisaran nilai: [0, 4096].

  • Nilai default: 0.

BorderColor

String

Tidak

Warna garis luar.

  • Nilai yang valid: Lihat kolom nama di BorderColor.

  • Nilai default: Hitam.

Top

Int

Tidak

Margin atas teks.

  • Unit: px.

  • Kisaran nilai: [0, 4096].

  • Nilai default: 0.

Left

Int

Tidak

Margin kiri teks.

  • Unit: px.

  • Kisaran nilai: [0, 4096].

  • Nilai default: 0.

Detail parameter Timeline

Parameter ini dirujuk oleh Output.WaterMarks.Timeline.

Parameter

Tipe

Diperlukan

Deskripsi

Start

String

Tidak

Waktu saat watermark gambar mulai muncul.

  • Format: sssss[.SSS].

  • Kisaran nilai: [0,000, 86399,999]. Jika waktu mulai melebihi durasi video, pekerjaan transkoding gagal.

  • Nilai default: 0.

  • Contoh: 18000.30.

Duration

String

Tidak

Durasi tampil watermark gambar.

  • ToEND: Watermark ditampilkan hingga akhir video.

  • {duration}: Formatnya adalah sssss[.SSS]. Unit: detik.

  • Nilai default: ToEND.

Detail konfigurasi templat watermark

Parameter ini dirujuk oleh operasi API AddWaterMarkTemplate dan UpdateWaterMarkTemplate.

Parameter

Tipe

Diperlukan

Deskripsi

Type

String

Tidak

Jenis watermark.

  • Image: Watermark gambar.

  • Nilai default: Image.

ReferPos

String

Tidak

Posisi watermark gambar.

  • Nilai yang valid: TopRight, TopLeft, BottomRight, dan BottomLeft.

  • Contoh: Lihat gambar di bawah untuk cara menggunakan ReferPos, Dx, dan Dy untuk menggambarkan posisi.

Dx

String

Tidak

Offset horizontal watermark gambar relatif terhadap video output. Anda dapat mengatur ini dengan dua cara:

  • Sebagai bilangan bulat, mewakili offset dalam piksel.

    • Unit: px.

    • Kisaran nilai: [8, 4096].

  • Sebagai desimal, mewakili rasio offset horizontal terhadap lebar resolusi output.

    • Kisaran nilai: (0, 1).

    • Mendukung hingga empat tempat desimal, seperti 0,9999. Digit tambahan secara otomatis dibuang.

Dy

String

Tidak

Offset vertikal watermark gambar relatif terhadap video output. Anda dapat mengatur ini dengan dua cara:

  • Sebagai bilangan bulat, mewakili offset dalam piksel.

    • Unit: px.

    • Kisaran nilai: [8, 4096].

  • Sebagai desimal, mewakili rasio offset vertikal terhadap tinggi resolusi output.

    • Kisaran nilai: (0, 1).

    • Mendukung hingga empat tempat desimal, seperti 0,9999. Digit tambahan secara otomatis dibuang.

Width

String

Tidak

Lebar watermark gambar. Anda dapat mengatur ini dengan dua cara:

  • Sebagai bilangan bulat, mewakili lebar gambar watermark dalam piksel.

    • Unit: px.

    • Kisaran nilai: [8, 4096].

  • Sebagai desimal, mewakili lebar sebagai rasio dari lebar resolusi video output.

    • Kisaran nilai: (0, 1).

    • Mendukung hingga empat tempat desimal, seperti 0,9999. Digit tambahan secara otomatis dibuang.

Height

String

Tidak

Tinggi watermark gambar. Anda dapat mengatur ini dengan dua cara:

  • Sebagai bilangan bulat, mewakili tinggi gambar watermark dalam piksel.

    • Unit: px.

    • Kisaran nilai: [8, 4096].

  • Sebagai desimal, mewakili tinggi sebagai rasio dari tinggi resolusi video output.

    • Kisaran nilai: (0, 1).

    • Mendukung hingga empat tempat desimal, seperti 0,9999. Digit tambahan secara otomatis dibuang.

Timeline

String

Tidak

Watermark dinamis. Untuk informasi selengkapnya, lihat Detail parameter Timeline.

Gunakan parameter ReferPos, Dx, dan Dy untuk menentukan posisi watermark:

Gunakan parameter Width dan Height untuk menentukan dimensi watermark:

  • Jika Anda tidak mengatur lebar atau tinggi, lebar watermark diatur menjadi 0,12 × lebar video output, dan tinggi watermark diskalakan secara proporsional berdasarkan rasio aspek gambar watermark asli.

  • Jika Anda hanya mengatur lebar atau tinggi, dimensi lainnya diskalakan secara proporsional berdasarkan rasio aspek gambar watermark asli.

  • Jika Anda mengatur lebar dan tinggi, gambar watermark diubah ukurannya ke dimensi yang ditentukan.

Detail efek buram

Parameter ini dirujuk oleh Output.DeWatermark.

{
// Mulai dari 0 ms, buramkan logo 10x10 piksel di (10, 10) dari pojok kiri atas bingkai video,
// dan logo 10x10 lainnya di (100, 0,1 * src_height).
       "0": [
              {
                "l": 10,
                "t": 10,
                "w": 10,
                "h": 10
              },
              {
                "l": 100,
                "t": 0.1,
                "w": 10,
                "h": 10
              }
            ],
  // Mulai dari 128000 ms, hentikan efek buram pada logo. Periode efek buram adalah [0, 128000] ms.
     "128000": [],
  // Mulai dari 250000 ms, buramkan logo berukuran (0,01 * src_width, 0,05 * src_height)
  // di (0,2 * src_width, 0,1 * src_height).
  "250000": [
              {
                "l": 0.2,
                "t": 0.1,
                "w": 0.01,
                "h": 0.05
              }
            ]
 }     

Deskripsi bidang

  • pts: String. Stempel waktu bingkai objek. Satuan: milidetik (ms).

  • l: Margin kiri area yang diburamkan.

  • t: Margin atas area yang diburamkan.

  • w: Lebar area yang diburamkan.

  • h: Tinggi area yang diburamkan.

Jika nilai l, t, w, atau h lebih besar dari 1, nilainya merupakan nilai piksel absolut. Jika tidak, nilainya merupakan rasio relatif terhadap resolusi sumber. Selama pemrosesan akhir, baik nilai rasio maupun nilai absolut dibulatkan ke bawah.

Detail SubtitleConfig

Parameter ini dirujuk oleh Output.SubtitleConfig.

Parameter

Tipe

Diperlukan

Deskripsi

ExtSubtitleList

Object[]

Tidak

Daftar subtitle eksternal. Untuk informasi selengkapnya, lihat Detail ExtSubtitle.

  • Anda dapat menyematkan maksimal empat file subtitle dalam pekerjaan transkoding.

  • Contoh: [{"Input":{"Bucket":”example-bucket","Location":"oss-cn-hangzhou","Object":"example.srt"},"CharEnc":"UTF-8"}].

Detail ExtSubtitle

Parameter ini dirujuk oleh Output.SubtitleConfig.ExtSubtitle.

Parameter

Tipe

Diperlukan

Deskripsi

Input

String

Ya

File subtitle eksternal. Gunakan parameter Bucket, Location, dan Object OSS untuk menggambarkan lokasi file.

  • Format SRT dan ASS didukung. Informasi warna dalam file akan dibaca.

  • File harus disimpan di OSS. Untuk spesifikasi parameter, lihat Detail Input.

  • Placeholder didukung. Untuk informasi selengkapnya, lihat Aturan substitusi placeholder.

  • Dalam API ApsaraVideo Media Processing, nilai Object harus dikodekan URL berdasarkan UTF-8. Untuk informasi selengkapnya, lihat Pengkodean URL.

  • Contoh: File input untuk transkoding adalah a/b/example.flv. Jika jalur file subtitle adalah a/b/example-cn.srt, Object untuk file subtitle dapat direpresentasikan oleh placeholder {ObjectPrefix}{FileName}-cn.srt. Setelah pengkodean URL, nilai akhirnya dapat diatur ke {"Bucket":"example-bucket","Location":"oss-cn-hangzhou","Object":"%7bObjectPrefix%7d%7bFileName%7d-cn.srt"}.

Catatan

Jika durasi file subtitle melebihi durasi video, durasi video yang berlaku. Jika teks subtitle terlalu panjang untuk ditampilkan dalam satu baris, bagian yang berlebihan akan dipotong.

CharEnc

String

Tidak

Pengkodean karakter dari subtitle eksternal.

  • Nilai valid: UTF-8, GBK, BIG5, dan auto.

  • Nilai default: auto.

Catatan

Jika Anda mengatur pengkodean karakter subtitle eksternal ke auto, ada risiko salah deteksi. Kami menyarankan Anda menentukan pengkodean karakter tertentu.

FontName

String

Tidak

Font subtitle.

FontSize

Int

Tidak

Ukuran font subtitle.

  • Kisaran nilai: (4, 120).

  • Nilai default: 16.

Detail Clip

Parameter ini dirujuk oleh Output.Clip.

Parameter

Tipe

Diperlukan

Deskripsi

TimeSpan

String

Tidak

Interval waktu untuk pemotongan. Untuk informasi selengkapnya, lihat Detail TimeSpan di bawah.

  • Contoh pengaturan durasi: {"Seek":"00:01:59.999","Duration":"180.30"}. Ini memotong video dari 1 menit, 59 detik, dan 999 milidetik hingga 5 menit dan 30 milidetik.

  • Contoh pengaturan waktu akhir: {"Seek":"00:01:59.999","End":"180.30"}. Ini memotong video dari 1 menit, 59 detik, dan 999 milidetik hingga 5 menit dan 30 milidetik sebelum akhir video.

ConfigToClipFirstPart

Boolean

Tidak

Menentukan apakah akan memotong segmen pertama.

  • true: Potong segmen pertama, lalu gabungkan (transkode).

  • false: Gabungkan (transkode), lalu potong.

  • Nilai default: false.

Detail TimeSpan

Parameter ini dirujuk oleh Output.Clip.TimeSpan.

Parameter

Tipe

Diperlukan

Deskripsi

Seek

String

Tidak

Waktu mulai. Anda dapat mengatur waktu mulai untuk pemotongan. Secara default, pemotongan dimulai dari awal.

  • Format: hh:mm:ss[.SSS] atau sssss[.SSS].

  • Kisaran nilai: [00:00:00.000, 23:59:59.999] atau [0.000, 86399.999].

  • Contoh: 00:01:59.999 atau 180.30.

Duration

String

Tidak

Durasi. Anda dapat mengatur durasi pemotongan relatif terhadap waktu mulai (Seek). Secara default, konten dari waktu mulai (Seek) hingga akhir dipotong. Anda dapat menentukan Duration atau End. Jika Anda menentukan End, Duration menjadi tidak valid.

  • Format: hh:mm:ss[.SSS] atau sssss[.SSS].

  • Kisaran nilai: [00:00:00.000, 23:59:59.999] atau [0.000, 86399.999].

  • Contoh: 00:01:59.99 atau 180.30.

End

String

Tidak

Durasi untuk memotong dari akhir. Ini menunjukkan durasi yang dipotong dari akhir video. Anda dapat menentukan Duration atau End. Jika Anda menentukan End, Duration menjadi tidak valid.

  • Format: hh:mm:ss[.SSS] atau sssss[.SSS].

  • Kisaran nilai: [00:00:00.000, 23:59:59.999] atau [0.000, 86399.999].

  • Contoh: 00:01:59.999 atau 180.30.

Detail parameter penggabungan MergeList

Parameter ini dirujuk oleh Output.MergeList.

Parameter

Tipe

Diperlukan

Deskripsi

MergeURL

String

Ya

Alamat OSS dari segmen yang akan digabungkan.

  • Dalam API ApsaraVideo Media Processing, nilai Object harus dikodekan URL berdasarkan UTF-8. Untuk informasi selengkapnya, lihat Pengkodean URL.

  • Contoh: http://exampleBucket****m.oss-cn-hangzhou.aliyuncs.com/tail_comm_01.mp4.

Start

String

Tidak

Waktu mulai. Saat menggabungkan video, Anda dapat mengatur waktu mulai untuk memotong sebagian konten untuk output akhir. Secara default, pemotongan dimulai dari awal.

  • Format: hh:mm:ss[.SSS] atau sssss[.SSS].

  • Kisaran nilai: [00:00:00.000, 23:59:59.999] atau [0.000, 86399.999].

  • Contoh: 01:59:59.999 atau 32000.23.

Duration

String

Tidak

Durasi. Saat menggabungkan video, Anda dapat mengatur durasi relatif terhadap waktu mulai (Start) untuk memotong sebagian konten untuk output akhir. Secara default, konten dari waktu mulai (Start) hingga akhir dipotong.

  • Format: hh:mm:ss[.SSS] atau sssss[.SSS].

  • Kisaran nilai: [00:00:00.000, 23:59:59.999] atau [0.000, 86399.999].

  • Contoh: 01:59:59.999 atau 32000.23.

Detail OpeningList

Parameter ini dirujuk oleh Output.OpeningList.

Parameter

Tipe

Diperlukan

Deskripsi

OpenUrl

String

Ya

Alamat OSS dari video pembuka.

  • Dalam API ApsaraVideo Media Processing, nilai Object harus dikodekan URL berdasarkan UTF-8. Untuk informasi selengkapnya, lihat Pengkodean URL.

  • Contoh: http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/opening_01.flv.

Mulai

String

Tidak

Waktu mulai relatif terhadap video utama. Ini menentukan penundaan setelah video pembuka ditampilkan, dimulai dari 0.

  • Satuan: detik.

  • Nilai default: 0.

Lebar

String

Tidak

Lebar video pembuka output. Anda dapat mengatur ini dengan tiga cara:

  • Tentukan lebar: Unit adalah px. Kisaran nilai adalah [0, 4096].

  • -1: Sama dengan lebar video pembuka input.

  • full: Mengisi seluruh bingkai video utama.

  • Nilai default: -1.

Catatan

Video pembuka output disejajarkan ke tengah bingkai video utama. Jangan mengatur lebar video pembuka lebih besar dari lebar video utama. Jika tidak, efeknya tidak dapat diprediksi.

Tinggi

String

Tidak

Tinggi video pembuka output. Anda dapat mengatur ini dengan tiga cara:

  • Lebar: Lebar dalam piksel. Kisaran yang valid adalah [0, 4096].

  • -1: Sama dengan tinggi video pembuka input.

  • full: Mengisi seluruh bingkai video utama.

  • Nilai default: -1.

Catatan

Video pembuka output disejajarkan ke tengah bingkai video utama. Jangan mengatur tinggi video pembuka lebih besar dari tinggi video utama. Jika tidak, efeknya tidak dapat diprediksi.

Detail TailSlateList

Parameter ini dirujuk oleh Output.TailSlateList.

Parameter

Tipe

Diperlukan

Deskripsi

TailUrl

String

Ya

URL OSS dari video penutup.

  • Dalam API ApsaraVideo Media Processing, nilai Object harus dikodekan URL berdasarkan UTF-8. Untuk informasi selengkapnya, lihat Pengkodean URL.

  • Contoh: http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/tail_01.flv.

BlendDuration

String

Tidak

Durasi transisi antara video utama dan video penutup. Efek transisinya adalah fade-in dan fade-out. Bingkai terakhir video utama ditampilkan sambil video penutup diputar. Bingkai terakhir secara bertahap memudar, dan video penutup secara bertahap muncul.

  • Satuan: detik.

  • Nilai default: 0.

Width

String

Tidak

Lebar video penutup output. Anda dapat mengatur ini dengan tiga cara:

  • Tentukan lebar: Unit adalah px. Kisaran nilai adalah [0, 4096].

  • -1: Sama dengan lebar video penutup input.

  • full: Mengisi seluruh bingkai video utama.

  • Nilai default: -1.

Catatan

Video penutup output disejajarkan ke tengah bingkai video utama. Jangan mengatur lebar video penutup lebih besar dari lebar video utama. Jika tidak, efeknya tidak dapat diprediksi.

Height

String

Tidak

Tinggi video penutup output. Anda dapat mengatur ini dengan tiga cara:

  • Menentukan lebar dalam piksel. Nilainya harus bilangan bulat dalam kisaran [0, 4096].

  • -1: Sama dengan tinggi video penutup input.

  • full: Mengisi seluruh bingkai video utama.

  • Nilai default: -1.

Catatan

Video penutup output disejajarkan ke tengah bingkai video utama. Jangan mengatur tinggi video penutup lebih besar dari tinggi video utama. Jika tidak, efeknya tidak dapat diprediksi.

IsMergeAudio

Boolean

Tidak

Menentukan apakah akan menggabungkan konten audio dari video penutup.

  • true: Gabungkan.

  • false: Jangan gabungkan.

  • Nilai default: true.

BgColor

String

Tidak

Warna latar belakang untuk mengisi ruang kosong ketika lebar dan tinggi video penutup lebih kecil dari video utama.

  • Nilai yang valid: Lihat kolom nama di bgcolor.

  • Nilai default: Putih.

Detail pencampuran audio Amix

Parameter ini dirujuk oleh Output.Amix.

Parameter

Tipe

Diperlukan

Deskripsi

AmixURL

String

Ya

Aliran audio yang akan dicampur. Dua mode didukung:

  • input: Menggabungkan beberapa trek audio dari video yang sama. Ini menggabungkan dua aliran audio dari file input.

  • Alamat OSS: Menambahkan musik latar eksternal. Ini menggabungkan aliran audio dari file input dengan aliran audio target dari alamat OSS. Contoh: http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/tail.flv.

Map

String

Tidak

Memilih aliran audio target dari AmixURL. Anda harus menggunakan parameter AudioStreamMap untuk menentukan indeks aliran audio lainnya dari file input yang akan dicampur.

  • Format: 0:a:{index}. Indeks adalah subskrip aliran audio dalam daftar aliran audio, dimulai dari 0.

  • Contoh: 0:a:1. Ini memilih aliran audio kedua untuk pencampuran.

MixDurMode

String

Tidak

Mode durasi file output setelah pencampuran.

  • first: Durasi file input digunakan.

  • longest: Durasi yang lebih panjang antara file input dan file AmixURL digunakan.

  • Nilai default: longest.

Start

String

Tidak

Waktu mulai. Saat mencampur audio, Anda dapat mengatur waktu mulai untuk memotong sebagian konten untuk output akhir. Secara default, pemotongan dimulai dari awal.

  • Format: hh:mm:ss[.SSS] atau sssss[.SSS].

  • Kisaran nilai: [00:00:00.000, 23:59:59.999] atau [0.000, 86399.999].

  • Contoh: 00:01:59.999 atau 18000.30.

Duration

String

Tidak

Durasi. Saat mencampur audio, Anda dapat mengatur durasi relatif terhadap waktu mulai (Start) untuk memotong sebagian konten untuk output akhir. Secara default, konten dari waktu mulai (Start) hingga akhir dipotong.

  • Format: hh:mm:ss[.SSS] atau sssss[.SSS].

  • Kisaran nilai: [00:00:00.000, 23:59:59.999] atau [0.000, 86399.999].

  • Contoh: 00:01:59.999 atau 18000.30.

Detail MuxConfig

Parameter ini dirujuk oleh Output.MuxConfig.

Parameter

Tipe

Diperlukan

Deskripsi

Segment

String

Tidak

Bidang konfigurasi sharding. Untuk informasi selengkapnya, lihat Detail Segment.

  • Parameter ini hanya berlaku ketika Container diatur ke m3u8, hls-fmp4, mpd, atau cmaf.

  • Contoh: {"Duration":"10","ForceSegTime":"1,2,4,6,10,14,18"}. Ini memaksa sharding pada 1, 2, 4, 6, 10, 14, 18, 20, 30, 40, 50, ... detik.

Detail Segment

Parameter ini dirujuk oleh Output.MuxConfig.Segment.

Parameter

Tipe

Diperlukan

Deskripsi

Durasi

Int

Tidak

Durasi segmen.

  • Satuan: detik.

  • Kisaran nilai: [1, 60].

  • Nilai default: 10. Ini memaksa sharding pada 10, 20, 30, 40, ... detik.

ForceSegTime

String

Tidak

Daftar titik waktu untuk sharding. Pisahkan titik waktu dengan koma. Anda dapat menentukan maksimal 10 titik waktu.

  • Format: {time_point},{time_point},{time_point}.

  • Format titik waktu: Desimal, hingga 3 tempat desimal.

  • Unit titik waktu: detik.

  • Contoh: 1,2,4,6,10,14,18. Ini memaksa sharding pada 1, 2, 4, 6, 10, 14, dan 18 detik.

Detail dukungan parameter non-standar M3U8

Parameter ini dirujuk oleh Output.M3U8NonStandardSupport.

Parameter

Tipe

Diperlukan

Deskripsi

TS

Objek

Tidak

Dukungan non-standar terkait file TS. Untuk informasi selengkapnya, lihat Detail dukungan parameter TS.

Detail dukungan parameter TS

Parameter ini dirujuk oleh Output.M3U8NonStandardSupport.TS.

Parameter

Tipe

Diperlukan

Deskripsi

Md5Support

Boolean

Tidak

Menentukan apakah akan mendukung output nilai MD5 file TS dalam file M3U8.

SizeSupport

Boolean

Tidak

Menentukan apakah akan mendukung output ukuran file TS dalam file M3U8.

Detail parameter enkripsi

Parameter ini dirujuk oleh Output.Encryption.

Parameter

Tipe

Diperlukan

Deskripsi

Tipe

String

Ya

Metode enkripsi untuk video. Nilai yang valid:

  • hls-aes-128: Enkripsi standar.

KeyType

String

Ya

Metode enkripsi untuk kunci.

  • Base64: Metode enkripsi dasar.

  • KMS: Metode Key Management Service (KMS). Gunakan KMS untuk menghasilkan kunci teks biasa dan kunci ciphertext.

Key

String

Ya

Kunci ciphertext untuk mengenkripsi video. Tentukan ini berdasarkan metode enkripsi kunci.

  • Base64:

    • Tentukan kunci ciphertext yang dihasilkan setelah mengenkripsi kunci teks biasa dengan Base64.

    • Isi kunci teks biasa ditentukan pengguna, dengan panjang maksimum 16 karakter.

    • Contoh: Kunci ciphertext untuk kunci teks biasa "encryptionkey128" adalah "ZW5jcnlwdGlvbmtleTEyOA==".

  • KMS:

    • Panggil operasi GenerateKMSDataKey dari KMS, masukkan kunci utama, atur KeySpec ke AES_128, dan dapatkan ciphertext key CiphertextBlob.

Catatan

Kami menyediakan kunci utama. Silakan hubungi kami.

KeyUri

String

Ya

Alamat layanan dekripsi. Anda perlu membangun layanan dekripsi sendiri.

  • KeyUri tidak dapat dikirimkan ke MPS dalam bentuk teks biasa. Harus dikodekan Base64.

  • Contoh: Jika URL akses adalah http://aliyun.com/document/hls128.key, kirimkan "aHR0cDovL2FsaXl1bi5jb20vZG9jdW1lbnQvaGxzMTI4LmtleQ==" setelah pengkodean Base64.

SkipCnt

String

Tidak

Jumlah segmen tidak terenkripsi di awal. Ini dapat memfasilitasi startup cepat untuk pemutaran video.

  • Contoh: 3.

Aturan substitusi placeholder

Placeholder berikut didukung untuk jalur file.

Contoh: Jalur file input adalah a/b/example.flv. Untuk mengatur jalur file output menjadi a/b/c/example+test.mp4, gunakan placeholder {ObjectPrefix} dan {FileName} untuk OutputObject. Setelah pengkodean URL, nilai akhirnya adalah %7BObjectPrefix%7D/c/%7BFileName%7D%2Btest.mp4.

Deskripsi placeholder

Output Transkoding

Masukan Subtitle

Snapshot OutputFile

Placeholder

Deskripsi

Alur kerja transkoding

Kirim pekerjaan transkoding

Subtitle

Snapshot alur kerja

Kirim pekerjaan snapshot

{ObjectPrefix}

Awalan file input

Didukung

Didukung

Didukung

Didukung

Didukung

{FileName}

Nama file input

Didukung

Dukungan

Didukung

Didukung

Didukung

{ExtName}

Ekstensi nama file input

Didukung

Didukung

Didukung

Didukung

Didukung

{DestMd5}

Nilai MD5 file output

Dukungan

Didukung

Tidak didukung

Tidak didukung

Tidak didukung

{DestAvgBitrate}

Bitrate rata-rata file output

Dukungan

Didukung

Tidak didukung

Tidak didukung

Tidak didukung

{SnapshotTime}

Waktu snapshot

Tidak didukung

Tidak didukung

Tidak didukung

Didukung

Didukung

{Count}

Nomor seri gambar untuk snapshot batch

Tidak didukung

Tidak didukung

Tidak didukung

Didukung

Didukung

{RunId}

ID instance eksekusi alur kerja

Didukung

Tidak didukung

Tidak didukung

Tidak didukung

Tidak didukung

{MediaId}

ID media alur kerja

Didukung

Tidak didukung

Tidak didukung

Tidak didukung

Tidak didukung

Detail parameter SnapshotConfig

Parameter ini dirujuk oleh SubmitSnapshotJob.

Penting

Pekerjaan snapshot dapat berjalan dalam mode sinkron atau asinkron. Mode asinkron tidak menjamin ketepatan waktu. Setelah pekerjaan snapshot dikirim, pekerjaan tersebut ditambahkan ke antrian MPS untuk dijadwalkan dan dieksekusi. Oleh karena itu, snapshot mungkin belum dihasilkan saat operasi API mengembalikan tanggapan. Setelah pekerjaan dieksekusi, Anda dapat memanggil operasi API QuerySnapshotJobList untuk memeriksa hasil eksekusi. Atau, Anda dapat mengikat antrian MNS ke antrian MPS untuk menerima hasil melalui pesan Message Service (MNS). Untuk informasi selengkapnya, lihat Menerima notifikasi pesan. Jika Anda mengatur salah satu parameter Interval atau Num, pekerjaan berjalan dalam mode asinkron.

Parameter

Tipe

Diperlukan

Deskripsi

Num

String

Tidak

Jumlah snapshot.

  • Jika Anda mengatur salah satu parameter Interval atau Num, pekerjaan berjalan dalam mode asinkron. Num harus lebih besar dari 0.

  • Snapshot tunggal sinkron: Jangan atur Num dan Interval. Ini mengambil satu snapshot pada waktu yang ditentukan oleh Time.

  • Snapshot tunggal asinkron: Atur Num ke 1. Ini mengambil satu snapshot pada waktu yang ditentukan oleh Time.

  • Snapshot ganda asinkron: Atur Num ke nilai lebih dari 1. Ini mengambil jumlah Num snapshot yang ditentukan pada Interval yang ditentukan (atau default 10 detik), dimulai dari waktu yang ditentukan oleh Time. Jika titik waktu snapshot yang dihitung oleh Time + Interval × Num melebihi durasi video, snapshot berikutnya tidak diambil. Jumlah snapshot aktual yang diambil dikembalikan saat pekerjaan selesai.

  • Snapshot rata-rata asinkron: Atur Num ke nilai lebih dari 1 dan Interval ke 0. Ini mengambil Num snapshot pada interval yang merata, dimulai dari waktu yang ditentukan oleh Time.

Time

String

Tidak

Waktu mulai untuk snapshot.

  • Unit: milidetik.

  • Jika Time melebihi durasi video, pekerjaan snapshot gagal.

  • Dalam skenario snapshot pada waktu yang ditentukan, Anda tidak perlu mengatur parameter ini. Parameter ini wajib untuk skenario snapshot lainnya.

    Catatan

    Dalam skenario snapshot pada waktu yang ditentukan, MPS mengambil nilai minimum dari parameter TimeArray, mengonversinya ke milidetik, dan menggunakannya sebagai nilai Time untuk skenario ini. Jika Anda mengatur placeholder {SnapshotTime} dalam jalur output, placeholder tersebut akan diganti dengan nilai Time ini.

Interval

String

Tidak

Interval untuk mengambil tangkapan layar.

  • Menentukan parameter ini mengaktifkan tangkapan layar asinkron.

  • Untuk mengambil beberapa tangkapan layar asinkron pada interval tetap, atur Interval ke nilai lebih dari 0. Unitnya adalah detik.

  • Untuk mengambil tangkapan layar yang tersebar merata sepanjang video, atur Interval ke 0.

  • Nilai default adalah 10. Jika parameter Num ditentukan tetapi Interval tidak, nilai default digunakan.

TimeArray

Array

Tidak

Array titik waktu. Parameter ini wajib untuk snapshot titik waktu.

  • Titik waktu harus berupa bilangan bulat unik dalam milidetik.

  • Titik waktu tidak boleh lebih besar dari durasi video sumber. Jika tidak, operasi snapshot gagal.

  • Titik waktu dapat dikirimkan dalam urutan apa pun. MPS akan mengurutkan titik waktu jika tidak dalam urutan kronologis. Untuk kinerja terbaik, kirimkan titik waktu dalam urutan.

Penting
  • Jika Anda menentukan parameter ini, jangan tentukan parameter Num, Time, atau Interval. Jika tidak, kesalahan `InvalidParameter.Ambiguity` dikembalikan.

  • Snapshot pada waktu tertentu didukung di ApsaraVideo Media Processing SDK 3.3.60 dan yang lebih baru. Untuk informasi tentang versi, klik kueri.

FrameType

String

Tidak

Jenis frame yang akan ditangkap.

  • Default: intra.

  • normal: Frame biasa. Kualitas gambar lebih rendah dan kecepatan tangkapan lebih lambat. Namun, opsi ini memungkinkan Anda menangkap frame pada titik waktu yang tepat.

  • intra: Frame keyframe. Keyframe menawarkan kualitas gambar yang lebih baik dan kecepatan tangkapan yang lebih cepat. Namun, keyframe hanya muncul pada interval dalam video, sehingga waktu tangkapan tidak tepat. Sistem mencari keyframe terdekat ke waktu yang ditentukan. Jika nilai Group of Pictures (GOP) lebih besar dari interval tangkapan, jumlah frame yang ditangkap mungkin kurang dari yang Anda tentukan karena tidak cukup keyframe tersedia.

Catatan

Menangkap frame pada titik waktu tertentu hanya didukung untuk frame normal.

Width

String

Tidak

Lebar tangkapan layar output.

  • Unit: px.

  • Kisaran nilai: [8, 4096]. Disarankan menggunakan bilangan genap.

  • Nilai default:

    • Jika `Width` dan `Height` tidak diatur: Lebar video asli dari file input.

    • Jika hanya `Height` yang diatur: Lebar dihitung untuk mempertahankan rasio aspek file input.

Height

String

Tidak

Tinggi tangkapan layar output.

  • Unit: px.

  • Nilainya harus bilangan bulat dari 8 hingga 4096. Gunakan bilangan genap.

  • Nilai default:

    • Jika Anda tidak mengatur lebar dan tinggi, tinggi asli file input digunakan.

    • Jika Anda hanya mengatur lebar, tinggi diskalakan secara proporsional untuk mempertahankan rasio aspek file input.

BlackLevel

String

Tidak

Parameter untuk mendeteksi layar hitam pada frame pertama. Ini menentukan ambang batas untuk persentase piksel hitam. Frame dianggap sebagai layar hitam jika persentase piksel hitamnya melebihi ambang batas ini. Untuk definisi piksel hitam, lihat parameter PixelBlackThreshold.

Kondisi:

  • Jika Time adalah 0, parameter ini berlaku dan menyaring layar hitam. Jika Time lebih dari 0, penyaringan layar hitam dilewati.

  • Jika Time adalah 0 dan Num adalah 1 atau tidak ditentukan, sistem memeriksa 5 detik pertama video. Jika frame non-layar hitam ditemukan, frame tersebut ditangkap. Jika tidak, tangkapan layar gagal.

  • Jika Time adalah 0 dan Num lebih dari 1, parameter ini hanya berlaku untuk snapshot pertama. Sistem memeriksa 5 detik pertama video. Jika frame non-layar hitam ditemukan, frame tersebut ditangkap. Jika semua frame dalam periode ini adalah layar hitam, frame layar hitam pertama ditangkap.

Rincian:

  • Kisaran: [30, 100].

  • Default: 100.

  • Praktik terbaik: Atur parameter ini ke 100 untuk layar hitam murni.

  • Contoh: Jika Time adalah 0 dan Num adalah 10, penyaringan layar hitam diterapkan pada snapshot pertama.

PixelBlackThreshold

String

Tidak

Parameter untuk mendeteksi layar hitam pada frame pertama. Piksel dianggap hitam jika nilai warnanya kurang dari ambang batas ini.

  • Kisaran nilai: [0, 255]. Nilai 0 mewakili hitam murni, dan 255 mewakili putih murni.

  • Praktik terbaik: Jika penyaringan tidak efektif, tingkatkan nilainya untuk memperluas kisaran deteksi piksel hitam. Mulailah dengan nilai 30.

  • Contoh: 100. Piksel dengan nilai warna kurang dari 100 dianggap hitam.

Format

String

Tidak

Format output.

  • vtt: Format WebVTT. Atur parameter SubOut untuk mengontrol apakah file WebVTT dihasilkan.

  • Default: String kosong (format JPG).

SubOut

Object

Tidak

Konfigurasi WebVTT. Untuk informasi selengkapnya, lihat Detail konfigurasi WebVTT SubOut.

  • Wajib jika Format diatur ke vtt.

TileOut

Object

Tidak

Konfigurasi Tile. Untuk informasi selengkapnya, lihat Detail konfigurasi TileOut.

  • Jika dikonfigurasi, gambar tile besar dihasilkan dan disimpan di TileOutputFile.

  • Jika tidak dikonfigurasi, tidak ada gambar tile yang dihasilkan.

OutputFile

Object

Ya

File gambar mini output. Kunci Bucket, Location, dan Object menentukan lokasi file di OSS. Untuk informasi selengkapnya, lihat Detail tangkapan layar OutputFile.

  • Format file tangkapan layar adalah jpg.

  • Contoh: {"Bucket":"example-bucket","Location":"oss-cn-hangzhou","Object":"example.jpg"}.

TileOutputFile

Object

Tidak

File gambar komposit output. Tentukan lokasi file menggunakan parameter Bucket, Location, dan Object OSS. Strukturnya sama dengan OutputFile.

  • Wajib saat TileOut dikonfigurasi untuk menghasilkan gambar komposit.

  • Format file gambar komposit adalah JPG.

  • Contoh: {"Bucket":"example-bucket","Location":"oss-cn-hangzhou","Object":"example.jpg"}

Catatan
  • Jika Num > 1, Object harus berisi placeholder {TileCount}. Setelah pengkodean URL, placeholder tersebut adalah %7BTileCount%7D. Ini digunakan untuk membedakan jalur output untuk beberapa snapshot. Misalnya, untuk mengambil tiga gambar, jika Anda mengatur Object ke %7BTileCount%7D.jpg, gambar output diberi nama 00001.jpg, 00002.jpg, dan 00003.jpg secara berurutan.

  • Untuk menyimpan gambar individual di OutputFile dan gambar komposit di TileOutputFile, atur nilai Object yang berbeda untuk mencegah file saling menimpa.

Detail konfigurasi WebVTT SubOut

Parameter ini dirujuk oleh SnapshotConfig.SubOut.

Parameter

Tipe

Diperlukan

Deskripsi

IsSptFrag

String

Tidak

Menentukan apakah akan menghasilkan manifes WebVTT.

  • true: Menghasilkan manifes WebVTT. Manifes disimpan di jalur yang sama dengan file snapshot.

  • false: Tidak menghasilkan manifes WebVTT. Hanya snapshot yang dioutput.

  • Default: false.

Detail konfigurasi TileOut

Parameter ini dirujuk oleh SnapshotConfig.TileOut.

Parameter

Tipe

Diperlukan

Deskripsi

Lines

Int

Tidak

Jumlah baris dalam gambar tile.

  • Kisaran nilai: (0, 10000].

  • Default: 10.

Columns

Int

Tidak

Jumlah kolom dalam gambar tile.

  • Kisaran nilai: (0, 10000].

  • Default: 10.

CellWidth

String

Tidak

Lebar satu tile gambar.

  • Unit: px.

  • Nilai default: Lebar resolusi tangkapan layar output.

CellHeight

String

Tidak

Tinggi satu tile gambar.

  • Unit: px.

  • Nilai default: Tinggi resolusi tangkapan layar output.

Padding

String

Tidak

Jarak antar tile gambar.

  • Unit: px.

  • Nilai default: 0.

Margin

String

Tidak

Lebar batas.

  • Default: 0.

  • Unit: px.

Color

String

Tidak

Warna latar belakang. Warna ini mengisi jarak, margin, dan area tile kosong.

  • Nilai yang valid: Kata kunci warna atau random. Kata kunci warna dapat ditentukan dalam tiga format. Misalnya, warna hitam dapat ditentukan sebagai Black, black, atau #000000.

  • Default: black.

IsKeepCellPic

String

Tidak

Menentukan apakah akan menyimpan tile gambar individual.

  • true: Menyimpan tile individual. Tile disimpan ke lokasi yang ditentukan oleh OutputFile.

  • false: Data tidak disimpan.

  • Default: false.

Detail tangkapan layar OutputFile

Parameter

Tipe

Diperlukan

Deskripsi

Bucket

String

Ya

Bucket OSS tempat gambar mini output disimpan.

  • Untuk informasi selengkapnya tentang bucket OSS, lihat Konsep Dasar.

Location

String

Ya

Wilayah bucket OSS tempat gambar mini output disimpan.

  • Bucket OSS harus berada di wilayah yang sama dengan layanan ApsaraVideo Media Processing.

  • Untuk informasi selengkapnya tentang wilayah OSS, lihat Konsep Dasar.

Object

String

Ya

ObjectKey dari gambar mini output.

  • Jalur lengkap file output, termasuk nama file dan ekstensi nama file. Jalurnya harus berupa ObjectKey yang valid. Untuk informasi selengkapnya, lihat Konsep Dasar.

  • Placeholder didukung. Untuk informasi selengkapnya, lihat Aturan penggantian placeholder.

  • Ekstensi nama file: Hanya .jpg yang didukung.

  • Dalam API ApsaraVideo Media Processing, parameter Object harus dikodekan URL dalam UTF-8 sebelum digunakan. Untuk informasi selengkapnya, lihat Pengkodean URL.

Catatan
  • Jika Num>1, parameter Object harus berisi placeholder {Count}. Nilai yang dikodekan URL adalah %7BCount%7D. Placeholder ini membedakan jalur output dari beberapa tangkapan layar. Misalnya, untuk mengambil tiga tangkapan layar dengan Object diatur ke %7BCount%7D.jpg, ObjectKey outputnya adalah 00001.jpg, 00002.jpg, dan 00003.jpg.

  • Jika Anda menyimpan gambar mini tunggal di OutputFile dan gambar sprite di TileOutputFile, atur nilai Object yang berbeda untuk mencegah file saling menimpa.

Detail NotifyConfig

Parameter ini dirujuk oleh operasi API AddPipeline dan UpdatePipeline.

Parameter

Tipe

Diperlukan

Deskripsi

QueueName

String

Tidak

Antrian MNS yang akan diikat. Ketika pekerjaan dalam pipeline selesai, hasilnya dikirim ke antrian ini. Untuk informasi selengkapnya tentang pengaturan pesan, lihat Menerima notifikasi pesan.

  • Anda harus menentukan QueueName atau Topic.

  • Nilai yang valid: antrian MNS yang Anda buat. Jika tidak ada antrian yang tersedia, buka konsol Message Service (MNS) untuk membuatnya.

Topic

String

Tidak

Topik MNS yang akan diikat. Ketika pekerjaan dalam pipeline selesai, hasilnya dikirim ke topik ini. Topik kemudian mendorong hasil sebagai pesan ke semua antrian atau endpoint yang berlangganan. Untuk informasi selengkapnya tentang pengaturan pesan, lihat Menerima notifikasi pesan.

  • Anda harus menentukan QueueName atau Topic.

  • Nilai yang valid: topik MNS yang Anda buat. Jika tidak ada topik yang tersedia, buka konsol Message Service (MNS) untuk membuatnya.

Detail input pekerjaan transkoding

Parameter

Tipe

Diperlukan

Deskripsi

Bucket

String

Ya

Bucket OSS yang berisi file input.

  • Berikan izin baca untuk bucket ini ke layanan ApsaraVideo Media Processing pada halaman Otorisasi Bucket di konsol.

  • Ikuti definisi Bucket OSS. Untuk informasi selengkapnya, lihat Glosarium.

Location

String

Ya

Pusat data (Lokasi OSS) tempat bucket OSS input berada.

Nilainya harus mematuhi definisi Lokasi OSS. Untuk informasi selengkapnya, lihat Glosarium.

Object

String

Ya

File input (Objek OSS).

  • Mematuhi RFC 2396 (dikodekan dalam UTF-8 lalu dikodekan URL. Untuk informasi selengkapnya, lihat Pengkodean URL).

  • Ikuti definisi Objek OSS. Untuk informasi selengkapnya, lihat Glosarium.

Audio

String

Tidak

Konfigurasi audio file media sumber, ditentukan sebagai objek JSON.

Catatan

Parameter ini wajib jika file input dalam format ADPCM atau PCM.

  • Untuk informasi selengkapnya, lihat Detail InputAudio.

  • Contoh: {"Channels":"2","Samplerate":"44100"}.

Container

String

Tidak

Konfigurasi kontainer file media sumber, ditentukan sebagai objek JSON.

Catatan

Parameter ini wajib jika file input dalam format ADPCM atau PCM.

Detail InputContainer

Parameter

Tipe

Diperlukan

Deskripsi

Format

String

Ya

Format audio sumber.

Nilai yang valid: alaw, f32be, f32le, f64be, f64le, mulaw, s16be, s16le, s24be, s24le, s32be, s32le, s8, u16be, u16le, u24be, u24le, u32be, u32le, u8

Detail InputAudio

Parameter

Tipe

Diperlukan

Deskripsi

Channels

String

Ya

Jumlah saluran audio dalam media sumber. Kisaran: [1, 8].

Samplerate

String

Ya

Laju pengambilan sampel audio media sumber.

  • Kisaran: (0, 320000]

  • Unit: Hz

Detail AnalysisConfig

Parameter

Tipe

Diperlukan

Deskripsi

QualityControl

String

Tidak

Kontrol kualitas untuk output. Ini adalah objek JSON. Untuk informasi selengkapnya, lihat Detail AnalysisConfig.

PropertiesControl

String

Tidak

Pengaturan kontrol properti. Ini adalah objek JSON. Untuk informasi selengkapnya, lihat Detail PropertiesControl.

Detail QualityControl

Parameter

Tipe

Diperlukan

Deskripsi

RateQuality

String

Tidak

Tingkat kualitas output.

  • Kisaran nilai: (0, 51)

  • Nilai harus berupa bilangan bulat.

  • Nilai default: 25

MethodStreaming

String

Tidak

Metode pemutaran. Nilai yang valid: network dan local.

Nilai default: network

Detail PropertiesControl

Parameter

Tipe

Diperlukan

Deskripsi

Deinterlace

String

Tidak

Menentukan mode pemindaian paksa

  • Auto: Otomatis.

  • Force: Memaksa deinterlacing.

  • None: Tidak melakukan tindakan.

Crop

String

Tidak

Konfigurasi pemotongan video.

  • Default: Otomatis.

  • Jika nilai ini bukan objek JSON kosong {}, properti Mode wajib.

  • Untuk informasi selengkapnya, lihat Detail Crop.

Detail Crop

Parameter

Tipe

Diperlukan

Deskripsi

Mode

String

Tidak

Parameter ini wajib jika Crop bukan objek JSON kosong {}. Nilai yang valid:

  • Auto: Otomatis

  • Force: Paksa

  • None: Tidak diberlakukan.

Width

Integer

Tidak

Lebar setelah pemotongan.

  • Kisaran: [8, 4096]

  • Parameter ini tidak valid jika Mode diatur ke Auto atau None.

Height

Integer

Tidak

Tinggi setelah pemotongan.

  • Kisaran: [8, 4096]

  • Parameter ini tidak valid jika Mode diatur ke Auto atau None.

Top

Integer

Tidak

Margin atas untuk pemotongan.

  • Kisaran: [8, 4096]

  • Parameter ini tidak valid jika Mode diatur ke Auto atau None.

Left

Integer

Tidak

Margin kiri untuk pemotongan.

  • Kisaran: [8, 4096]

  • Parameter ini tidak valid jika Mode diatur ke Auto atau None.

Detail TransFeatures

Parameter

Tipe

Diperlukan

Deskripsi

MergeList

String

Tidak

Bidang konfigurasi untuk penggabungan video.

  • Array JSON yang mendukung maksimal 4 MergeURL. Untuk informasi selengkapnya, lihat Detail parameter penggabungan MergeList.

  • Contoh: [{"MergeURL":"http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/k/mp4.mp4"},{"MergeURL":"http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/c/ts.ts","Start":"1:14","Duration":"29"}].

Detail file output pekerjaan

Parameter

Tipe

Diperlukan

Deskripsi

URL

String

Tidak

URL OSS untuk file input.

  • Contoh: http://example-bucket-****.oss-cn-hangzhou.aliyuncs.com/example.flv.

  • Jika Anda tidak menentukan URL, parameter Bucket, Location, dan Object wajib.

Bucket

String

Tidak

  • Parameter ini wajib jika Anda tidak menentukan URL.

  • Jika URL ditentukan, parameter ini diabaikan. Parameter ini menentukan bucket OSS untuk file output. Berikan izin tulis pada bucket ini ke layanan ApsaraVideo Media Processing pada halaman Otorisasi Bucket di bagian Kontrol Sumber Daya di konsol.

  • Bucket harus mematuhi definisi bucket OSS. Untuk informasi selengkapnya, lihat Glosarium.

Location

String

Tidak

  • Parameter ini wajib jika Anda tidak menentukan URL.

  • Jika URL ditentukan, parameter ini diabaikan. Parameter ini menentukan pusat data (Lokasi OSS) dari bucket OSS output.

  • Lokasi harus mematuhi definisi lokasi OSS. Untuk informasi selengkapnya, lihat Glosarium.

Object

String

Tidak

  • Parameter ini wajib jika Anda tidak menentukan URL.

  • Jika URL ditentukan, parameter ini diabaikan. Nama file output (Objek OSS) harus mengikuti RFC 2396. Nama harus dikodekan UTF-8 lalu dikodekan URL. Untuk informasi selengkapnya, lihat Detail Pengkodean URL.

  • Objek harus mematuhi definisi objek OSS. Untuk informasi selengkapnya, lihat Glosarium.

Detail MultiBitrateVideoStream

Parameter

Tipe

Diperlukan

Deskripsi

URI

String

Tidak

Nama output aliran video. Nama harus diakhiri dengan .m3u8. Contoh: a/b/test.m3u8. Format: ^[a-z]{1}[a-z0-9./-]+$.

RefActivityName

String

Ya

Nama dari aktivitas terkait.

ExtXStreamInfo

Json

Ya

Properti aliran. Contoh: {"BandWidth": "111110","Audio": "auds","Subtitles": "subs"}.

Detail ExtXMedia

Parameter

Tipe

Diperlukan

Deskripsi

Name

String

Ya

Wajib. Deskripsi yang sesuai dengan atribut NAME dalam protokol HTTP Live Streaming (HLS) V5. Nilainya harus berupa string UTF-8 dengan panjang maksimum 64 byte.

Language

String

Tidak

Opsional. Jenis bahasa yang didefinisikan dalam RFC 5646. Ini sesuai dengan atribut LANGUAGE dalam protokol HLS V5.

URI

String

Ya

Wajib. Jalur sumber daya.

Contoh: a/b/c/d/audio-1.m3u8. Jalurnya harus sesuai dengan ekspresi reguler: ^[a-z]{1}[a-z0-9./-]+$.

Detail MasterPlayList

Parameter

Tipe

Diperlukan

Deskripsi

MultiBitrateVideoStreams

JsonArray

Ya

Array aliran video multi-bitrate. Contoh: [{"RefActivityName": "video-1","ExtXStreamInfo": {"BandWidth": "111110","Audio":"auds","Subtitles": "subs"}}].

Detail ExtXStreamInfo

Parameter

Tipe

Diperlukan

Deskripsi

BandWidth

String

Ya

Bitrate total maksimum. Parameter ini wajib. Ini sesuai dengan atribut BANDWIDTH dalam protokol HLS V5.

Audio

String

Tidak

ID grup aliran audio. Parameter ini opsional. Ini sesuai dengan atribut AUDIO dalam protokol HLS V5.

Subtitles

String

Tidak

ID grup aliran keterangan. Parameter ini opsional. Ini sesuai dengan atribut SUBTITLES dalam protokol HLS V5.

Detail AdaptationSet

Parameter

Tipe

Diperlukan

Deskripsi

Group

String

Ya

Wajib. Nama grup. Misalnya:

<AdaptationSet group="videostreams" mimeType="video/mp4" par="4096:1744"
              minBandwidth="258157" maxBandwidth="10285391" minWidth="426" maxWidth="4096"
              minHeight="180" maxHeight="1744" segmentAlignment="true"
              startWithSAP="1">

Lang

String

Tidak

Bahasa. Parameter ini dapat diatur untuk audio dan keterangan.

Detail Representation

Parameter

Tipe

Diperlukan

Deskripsi

Id

String

Ya

Wajib. ID aliran. Contoh:

<Representation id="240p250kbps" frameRate="24" bandwidth="258157"
              codecs="avc1.4d400d" width="426" height="180">

URI

String

Ya

Wajib. Jalur sumber daya. Contoh: a/b/c/d/video-1.mpd. Format: ^[a-z]{1}[a-z0-9./-]+$.

Detail InputConfig

Parameter

Tipe

Diperlukan

Deskripsi

Format

String

Ya

Wajib. Format file subtitle input. Format yang didukung: stl, ttml, dan vtt.

InputFile

String

Ya

{"Bucket":"example-bucket-****","Location":"oss-cn-hangzhou","Object":"example-logo****.png"}
              atau
              {"URL":"http://exampleBucket****.oss-cn-hangzhou.aliyuncs.com/subtitle/test****.chs.vtt"}