Membuat daftar putar transkoding just-in-time yang mengonversi file video menjadi file M3U8 untuk pemutaran instan saat pembuatan daftar putar. Transkoding dilakukan sesuai permintaan berdasarkan progres pemutaran, yang secara signifikan mengurangi waktu tunggu transkoding dan menurunkan biaya transkoding serta penyimpanan dibandingkan dengan transkoding offline.
Deskripsi operasi
Sebelum menggunakan operasi ini, pastikan Anda sepenuhnya memahami penagihan Intelligent Media Management dan harganya.
Sebelum memanggil operasi ini, pastikan proyek aktif di wilayah saat ini. Untuk informasi lebih lanjut, lihat Manajemen proyek.
- Secara default, operasi ini hanya memproses satu aliran video, audio, atau subtitle. Anda dapat mengonfigurasi jumlah aliran video, audio, dan subtitle yang akan diproses.
Penting Parameter Video, Audio, dan Subtitle di bawah Targets tidak boleh kosong semua. Nilai kosong menunjukkan bahwa pemrosesan terkait dinonaktifkan. Misalnya, jika Video kosong, pemrosesan video dinonaktifkan dan file TS output tidak berisi aliran video.
Durasi minimum video sumber adalah sekitar 0,x detik, yang bervariasi tergantung pada laju frame output.
Operasi ini mendukung pembuatan Media Playlist dan Master Playlist. Perhatikan deskripsi data deret waktu dalam dokumen ini.
Ini adalah operasi sinkron. Transkoding sinkron atau asinkron hanya dipicu selama pemutaran atau pra-transkoding. Anda dapat mengatur parameter notifikasi Paket Notification untuk memperoleh hasil tugas transkoding melalui notifikasi pesan.
Untuk informasi lebih lanjut tentang fitur ini, lihat Transkoding just-in-time.
Kemampuan pemrosesan data OSS juga menyediakan fitur pembuatan daftar putar, tetapi hanya mendukung pembuatan Media Playlist dengan parameter yang disederhanakan. Untuk detailnya, lihat Membuat daftar putar dalam pemrosesan data OSS.
Coba sekarang
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
imm:GenerateVideoPlaylist |
none |
*Proyek.
|
None | None |
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| ProjectName |
string |
Yes |
Nama proyek. Untuk informasi tentang cara mendapatkan nama proyek, lihat Membuat proyek. |
immtest |
| UserData |
string |
No |
Informasi kustom, yang dikembalikan dalam notifikasi Paket asinkron. Hal ini memungkinkan Anda mengaitkan notifikasi Paket dengan proses tertentu dalam sistem Anda. Panjang maksimum: 2.048 byte. |
{"ID": "user1","Name": "test-user1","Avatar": "http://example.com?id=user1"} |
| SourceURI |
string |
Yes |
URI OSS video. URI OSS mengikuti format oss://${Bucket}/${Object}, di mana ${Bucket} adalah nama bucket OSS di wilayah yang sama dengan proyek saat ini, dan ${Object} adalah jalur lengkap file termasuk ekstensi nama file. Catatan
Hanya bucket OSS dengan kelas penyimpanan Jenis Penyimpanan Standar yang didukung. Bucket dengan daftar putih perlindungan hotlink yang dikonfigurasi tidak didukung. |
oss://test-bucket/test-source-object/video.mp4 |
| SourceStartTime |
number |
No |
Waktu mulai untuk membuat daftar putar. Unit: detik. Nilai valid:
Catatan
Anda dapat mengatur parameter ini bersama dengan SourceDuration untuk membuat daftar putar untuk bagian tertentu dari video sumber. |
0 |
| SourceDuration |
number |
No |
Durasi untuk membuat daftar putar. Unit: detik. Nilai valid:
Catatan
Jika titik waktu yang sesuai dengan parameter yang ditentukan melebihi akhir video sumber, nilai default akan digunakan. |
0 |
| SourceSubtitles |
array<object> |
No |
Daftar subtitle yang akan ditambahkan. Parameter ini kosong secara default. Maksimal dua subtitle didukung. |
|
|
object |
No |
Informasi subtitle. |
||
| URI |
string |
Yes |
URI OSS subtitle yang akan disematkan. URI OSS mengikuti format oss://${Bucket}/${Object}, di mana ${Bucket} adalah nama bucket OSS di wilayah yang sama dengan proyek saat ini, dan ${Object} adalah jalur lengkap file. Catatan
Parameter MasterURI tidak boleh kosong, dan URI OSS |
oss://test-bucket/test-object/subtitle/eng.vtt |
| Language |
string |
No |
Bahasa subtitle. Nilai mengikuti standar ISO 639-2. Parameter ini kosong secara default. |
eng |
| MasterURI |
string |
No |
URI OSS dari Master Playlist. URI OSS mengikuti format oss://${Bucket}/${Object}, di mana ${Bucket} adalah nama bucket OSS di wilayah yang sama dengan proyek saat ini, dan ${Object} adalah jalur lengkap file dengan ekstensi ".m3u8". Catatan
Jika daftar putar memiliki input subtitle atau beberapa output Target, MasterURI wajib diisi. URI subtitle atau URI Target harus berada di direktori yang sama atau subdirektori dari MasterURI. |
oss://test-bucket/test-object/master.m3u8 |
| Targets |
array<object> |
Yes |
Array daftar putar transkoding just-in-time. Panjang array maksimum adalah 6. Setiap Target berkorespondensi dengan paling banyak satu Media Playlist video dan satu atau lebih Media Playlist subtitle. Catatan
Jika lebih dari satu Target dikonfigurasi, parameter MasterURI tidak boleh kosong. |
|
|
array<object> |
No |
Detail tugas transkoding just-in-time. |
||
| URI |
string |
No |
Awalan URI OSS dari file output transkoding just-in-time, termasuk file M3U8 dan file TS. URI OSS mengikuti format oss://${Bucket}/${Object}, di mana ${Bucket} adalah nama bucket OSS di wilayah yang sama dengan proyek saat ini, dan ${Object} adalah awalan jalur lengkap file tanpa ekstensi nama file.
Catatan
Jika parameter MasterURI tidak kosong, URI harus berada di direktori yang sama atau subdirektori dari parameter MasterURI. |
oss://test-bucket/test-object/output-video |
| Container |
string |
No |
||
| Video | TargetVideo |
No |
Pengaturan parameter pemrosesan video. Nilai kosong (default) menunjukkan bahwa pemrosesan video dinonaktifkan dan file TS output tidak berisi aliran video. Catatan
Bidang Video dan Subtitle dalam Target yang sama saling eksklusif. Jika bidang Video diatur, bidang Subtitle akan diabaikan. |
|
| Audio | TargetAudio |
No |
Pengaturan parameter pemrosesan audio. Nilai kosong (default) menunjukkan bahwa pemrosesan audio dinonaktifkan dan file TS output tidak berisi aliran audio. Catatan
Bidang Audio dan Subtitle dalam Target yang sama saling eksklusif. Jika bidang Audio diatur, bidang Subtitle akan diabaikan. Audio dan Video dapat diatur secara bersamaan. Audio menentukan informasi audio dalam video output. Anda juga dapat mengatur hanya Audio untuk menghasilkan output khusus audio. |
|
| Subtitle | TargetSubtitle |
No |
Pengaturan parameter pemrosesan subtitle. Catatan
Bidang Subtitle saling eksklusif dengan bidang Video atau Audio dalam Target yang sama. Subtitle hanya dibuat ketika Subtitle diatur secara independen. |
|
| TranscodeAhead |
integer |
No |
Jumlah file TS yang akan ditranskode sebelumnya saat transkoding just-in-time dipicu. Secara default, 2 menit video ditranskode sebelumnya.
|
12 |
| Duration |
number |
No |
Durasi pemutaran satu file TS. Unit: detik. Nilai default: 10. Nilai valid: [5, 15]. |
10 |
| InitialTranscode |
number |
No |
Durasi transkoding awal. Unit: detik. Nilai default: 30.
Catatan
Parameter ini terutama digunakan untuk mengurangi waktu tunggu untuk pemutaran video awal dan meningkatkan pengalaman pemutaran. Jika Anda ingin mengganti skenario bisnis VOD tradisional, coba transkode seluruh video pada awalnya. |
30 |
| InitialSegments |
array |
No |
Array durasi file TS transkoding awal. Panjang array maksimum adalah 6. Parameter ini kosong secara default dan independen dari parameter Duration. |
|
|
number |
No |
Durasi file TS transkoding awal. Nilai valid: [1, Duration].
Catatan
Menyesuaikan durasi file TS transkoding awal yang lebih kecil membuat pemuatan video lebih lancar. |
2 |
|
| Tags |
object |
No |
Tag objek OSS yang akan ditambahkan ke file TS yang dibuat. Anda dapat menggunakan tag OSS untuk mengontrol siklus hidup file OSS. Catatan
Nilai tag pada tingkat ini digabungkan dengan Tags yang didefinisikan pada tingkat induk untuk membentuk nilai tag untuk Target saat ini. Jika tag dengan nama yang sama ada, nilai pada tingkat ini akan diutamakan. |
|
|
string |
No |
Nilai tag. |
{\"key1\":\"value1\"} |
|
| Tags |
object |
No |
Tag objek OSS yang akan ditambahkan ke file TS yang dibuat. Anda dapat menggunakan tag untuk mengontrol siklus hidup file OSS. |
{"key1": "value1", "key2": "value2"} |
|
string |
No |
Nilai tag. |
{"key1": "value1", "key2": "value2"} |
|
| CredentialConfig | CredentialConfig |
No |
Biarkan parameter ini kosong kecuali Anda memiliki persyaratan khusus. Konfigurasi otorisasi China. Parameter ini opsional. Untuk informasi lebih lanjut, lihat Menggunakan otorisasi Tiongkok untuk mengakses resource entitas lain. |
|
| Notification | Notification |
No |
Konfigurasi notifikasi Paket. Klik Notification untuk detailnya. Untuk format pesan notifikasi asinkron, lihat Format pesan notifikasi asinkron. |
|
| OverwritePolicy |
string |
No |
Kebijakan penimpaan ketika Media Playlist sudah ada. Nilai valid:
|
overwrite |
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
Skema Respons. |
||
| RequestId |
string |
ID permintaan. |
CA995EFD-083D-4F40-BE8A-BDF75FFF***** |
| Duration |
number |
Total durasi video output. |
1082 |
| Token |
string |
Token dari Master Playlist. |
92376fbb-171f-4259-913f-705f7ee0**** |
| MasterURI |
string |
URI OSS dari Master Playlist. |
oss://test-bucket/test-object/master.m3u8 |
| VideoPlaylist |
array<object> |
Daftar file Media Playlist video. |
|
|
object |
Informasi file Media Playlist video. |
||
| Token |
string |
Token yang dibuat untuk Media Playlist video. Anda dapat menggunakan parameter ini untuk menyusun alamat file TS yang dibuat. Catatan
Berdasarkan nilai Token yang dikembalikan, Anda dapat menyusun alamat file TS yang ditranskode. Formatnya adalah: oss://${Bucket}/${Object}-${Token}-${Index}.ts, di mana oss://${Bucket}/${Object} adalah URI Target yang ditentukan dalam parameter input, ${Token} adalah parameter yang dikembalikan, dan ${Index} adalah nomor urut file TS. |
affe0c6042f09722fec95a21b8b****** |
| URI |
string |
URI OSS dari Media Playlist video. |
oss://test-bucket/test-object/output-video.m3u8 |
| Resolution |
string |
Resolusi video. |
640x480 |
| FrameRate |
string |
Laju frame video. |
25/1 |
| AudioPlaylist |
array<object> |
Daftar file Media Playlist audio. |
|
|
object |
Informasi file Media Playlist audio. |
||
| Token |
string |
Token yang dibuat untuk Media Playlist audio. Anda dapat menggunakan parameter ini untuk menyusun alamat file TS yang dibuat. |
affe0c6042f09722fec95a21b8b****** |
| URI |
string |
URI OSS dari Media Playlist audio. |
oss://test-bucket/test-object/output-audio.m3u8 |
| Channels |
integer |
Jumlah saluran audio. |
1 |
| SubtitlePlaylist |
array<object> |
Daftar file Media Playlist subtitle. |
|
|
object |
Informasi file Media Playlist subtitle. |
||
| Token |
string |
Token yang dibuat untuk Media Playlist subtitle. Anda dapat menggunakan parameter ini untuk menyusun alamat file subtitle yang dibuat. Catatan
Berdasarkan nilai Token yang dikembalikan, Anda dapat menyusun alamat file subtitle yang ditranskode. Formatnya adalah: oss://${Bucket}/${Object}-${Token}_${Index}.ts, di mana oss://${Bucket}/${Object} adalah URI Subtitle yang ditentukan dalam parameter input, ${Token} adalah parameter yang dikembalikan, dan ${Index} adalah nomor urut file subtitle. |
affe0c6042f09722fec95a21b8b****** |
| URI |
string |
URI OSS dari Media Playlist subtitle. |
oss://test-bucket/test-object/output-subtitle.m3u8 |
| Language |
string |
Bahasa aliran subtitle. Catatan
Bahasa diperoleh dari informasi aliran subtitle video sumber yang ditentukan oleh SourceURI. Jika video sumber tidak berisi informasi bahasa, nilai kosong akan dikembalikan. |
eng |
| Index |
integer |
Nomor aliran subtitle, mulai dari 0. |
1 |
Contoh
Respons sukses
JSONformat
{
"RequestId": "CA995EFD-083D-4F40-BE8A-BDF75FFF*****",
"Duration": 1082,
"Token": "92376fbb-171f-4259-913f-705f7ee0****",
"MasterURI": "oss://test-bucket/test-object/master.m3u8",
"VideoPlaylist": [
{
"Token": "affe0c6042f09722fec95a21b8b******",
"URI": "oss://test-bucket/test-object/output-video.m3u8",
"Resolution": "640x480",
"FrameRate": "25/1"
}
],
"AudioPlaylist": [
{
"Token": "affe0c6042f09722fec95a21b8b******",
"URI": "oss://test-bucket/test-object/output-audio.m3u8",
"Channels": 1
}
],
"SubtitlePlaylist": [
{
"Token": "affe0c6042f09722fec95a21b8b******",
"URI": "oss://test-bucket/test-object/output-subtitle.m3u8",
"Language": "eng",
"Index": 1
}
]
}
Kode kesalahan
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.