Saat pengguna hanya membutuhkan audio—misalnya pada aplikasi musik, pemutar podcast, atau pemutaran audio latar dari konten video—mentransfer file video lengkap akan membuang bandwidth. Ekstraksi audio memungkinkan node edge CDN menghapus track video dari file video dan hanya mengembalikan aliran audio, sehingga mengurangi konsumsi bandwidth untuk kasus penggunaan hanya audio.
Cara kerja
Saat klien meminta file video dengan parameter kueri ali_audio_only=1, node edge CDN terdekat mencegat permintaan tersebut, mengekstraksi track audio, dan hanya mengembalikan metadata serta data audio. Data video tidak pernah dikirim ke klien.
Klien harus mendukung chunked transfer encoding (Transfer-Encoding: chunked).
Aktifkan ekstraksi audio
-
Masuk ke CDN console.
-
Di panel navigasi kiri, klik Domain Names.
-
Pada halaman Domain Names, temukan nama domain yang dituju dan klik Manage di kolom Actions.
-
Di panel navigasi domain, klik Video.
Pada bagian Audio Extraction, aktifkan sakelar tersebut.
Buat permintaan
Setelah ekstraksi audio diaktifkan, sertakan ali_audio_only=1 dalam URL permintaan:
http://<domain>/<video-file>?ali_audio_only=1Ganti placeholder dengan nilai aktual Anda:
Placeholder | Description | Example |
| Nama domain yang dipercepat CDN Anda |
|
| Jalur ke file video |
|
Node CDN hanya mengembalikan metadata dan data audio. Jika parameter tersebut tidak disertakan atau diatur ke nilai selain 1, ekstraksi audio tidak dilakukan.
Format yang didukung
MP4
Persyaratan metadata: Metadata harus berada di header file. File dengan metadata di akhir file tidak didukung.
Ukuran header box: Hanya file MP4 dengan header box 8-byte yang didukung. File MP4 dengan header box 16-byte (64-bit) tidak didukung.
Contoh permintaan:
http://<domain>/video.mp4?ali_audio_only=1FLV
Persyaratan metadata: Tidak ada persyaratan.
Contoh permintaan:
http://<domain>/video.flv?ali_audio_only=1Batasan
Permintaan range tidak didukung. Browser seperti Safari secara otomatis mengeluarkan permintaan range saat memutar media. Kami menyarankan agar Anda menyediakan klien buatan sendiri kepada pengguna untuk mengekstraksi data audio.
Pencarian video memerlukan konfigurasi tambahan. Jika pengguna perlu melakukan pencarian melalui konten audio, aktifkan fitur video seeking. Fitur video seeking membaca metadata file untuk menentukan panjang total file, yang memungkinkan pencarian berbasis posisi.
Ukuran header box MP4
Jika file MP4 gagal diproses oleh fitur ekstraksi audio, kemungkinan box mdat file tersebut menggunakan header extended 16-byte, yang tidak kompatibel dengan ekstraksi audio. Gunakan bagian ini untuk memahami ukuran header box dan memverifikasi apakah file Anda kompatibel.
Tentang header box MP4
File MP4 terdiri dari beberapa box (unit kontainer), seperti box moov dan box mdat. Setiap box berisi header yang menjelaskan ukuran dan tipe box tersebut. Terdapat dua format header:
Format | Ukuran header | Description |
Header standar | 8 byte (32-bit) | Berisi field size (4 byte) dan field tipe box (4 byte). Field size menyimpan ukuran aktual box. Digunakan ketika ukuran box dapat direpresentasikan dalam 4 byte. |
Header extended | 16 byte (64-bit) | Berisi field size (4 byte, nilai tetap 1), field tipe box (4 byte), dan field largesize (8 byte). Saat field size bernilai 1, mekanisme largesize diaktifkan, dan ukuran aktual box disimpan dalam field largesize. Umum digunakan untuk box mdat dengan volume data besar. |
Periksa ukuran header box file MP4
Anda dapat menggunakan tool berikut untuk memeriksa ukuran header box file MP4.
Metode 1: Gunakan tool online MP4Box.js (disarankan)
Unggah file MP4 Anda.
Di pohon Box View sebelah kiri, klik mdat (MediaDataBox).
Di Box Property View sebelah kanan, periksa field
original_sizeuntuk menentukan ukuran header:original_sizebernilai 1: Ukuran header box mdat adalah 16 byte. Ekstraksi audio tidak didukung.original_sizetidak ditampilkan atau tidak bernilai 1: Ukuran header box mdat adalah 8 byte. Ekstraksi audio didukung.
Tabel berikut membandingkan properti untuk kedua skenario tersebut:
Property | Header size = 8 byte (didukung) | Header size = 16 byte (tidak didukung) |
size | Nilai ukuran aktual | Nilai ukuran aktual |
box_name | MediaDataBox | MediaDataBox |
start | Offset dalam byte | Offset dalam byte |
original_size | Tidak ditampilkan | Ditampilkan sebagai 1 |
Metode 2: Gunakan tool command-line Bento4
Jalankan perintah berikut:
./mp4dump your-file.mp4 | grep -E "\[mdat\]|\[moov\]"Interpretasikan output:
[mdat] size=8+xxxxxx: Ukuran header adalah 8 byte. Ekstraksi audio didukung.[mdat] size=16+xxxxxx: Ukuran header adalah 16 byte. Ekstraksi audio tidak didukung.
Batasan ukuran header ekstraksi audio
Ekstraksi audio hanya mendukung file MP4 di mana box mdat menggunakan header standar 8-byte. File yang menggunakan header extended 16-byte (mekanisme largesize) pada box mdat tidak didukung.
Skenario File MP4 | Ukuran header | Ekstraksi audio |
Box mdat menggunakan header standar | 8 byte | Didukung |
Box mdat menggunakan header extended ukuran besar | 16 byte | Tidak didukung |
Batasan ini terutama berlaku untuk box mdat, yang menyimpan data media mentah. Box lain seperti moov umumnya menggunakan header default 8-byte dan tidak terpengaruh oleh batasan ini.