Dasar-dasar file media

Derek Herman
Derek Herman
Joe Medley
Joe Medley

Dalam artikel ini, Anda akan mempelajari dasar-dasar file media seperti konsep penampung, dan beberapa dari banyak format codec yang tersedia yang dapat Anda gunakan dalam aliran. Selain itu, bahas sedikit topik seperti streaming adaptif, kecepatan bit, dan resolusi, tapi kita akan mempelajari semua ini lebih jauh di bagian selanjutnya.

Anda mungkin berpikir bahwa Anda dapat mengambil file mentah dari kamera video dan cukup menguploadnya ke web apa adanya. Memang situs streaming video seperti YouTube atau Vimeo memungkinkan Anda melakukannya, dan bahkan menyediakan kemampuan live streaming—biasanya dengan menghubungkan ke port HDMI kamera lalu memprosesnya melalui kartu tangkap. Layanan ini sangat menyederhanakan pemrosesan dan upload video, yang termasuk membuat banyak file dan manifes yang diperlukan untuk streaming adaptif dan berbagai resolusi. Ditambah banyak persyaratan rumit lainnya yang membuat {i>hosting<i} mandiri sedikit merepotkan. Menyiapkan dan menayangkan video dari situs Anda sendiri, dan kemungkinan berupa server media terpisah, sedikit lebih rumit daripada hanya mengupload file kamera mentah, jika Anda memperhatikan pengalaman pengguna di situs Anda.

File video hadir dalam berbagai format. Format yang muncul dari kamera Anda biasanya adalah file .mov, atau .mp4 jika Anda memiliki kamera mirrorless modern yang bagus. Namun, meskipun .mov cocok untuk perekaman dan pengeditan serta proses pascaproduksi awal lainnya, ukuran filenya tidak cocok untuk streaming melalui web. Selain itu, ukuran file .mp4 mentah dalam resolusi 4K akan membuat pemutaran file tersebut di perangkat seluler menjadi sangat terlarang. Karena browser mendukung format file yang berbeda, Anda harus membuat beberapa file yang dioptimalkan dan mungkin sebuah manifes jika berencana mendukung streaming adaptif. Sebelum mengonversi file, Anda perlu memahami beberapa hal dasar tentang file tersebut dan karakteristiknya.

Container dan codec, serta streaming?

File yang Anda lihat di shell sistem operasi adalah container, yang diidentifikasi oleh ekstensi file (.mp4, .webm, .ogg dll.). Container menampung satu atau beberapa aliran data. File media dapat memiliki berapa pun aliran, dengan lebih banyak format daripada yang akan kita bahas di sini.

File contoh yang digunakan nanti di bagian ini berisi maksimal dua streaming: streaming audio dan streaming video. Di antara jenis teks lain yang mungkin Anda temui adalah teks dan data, keduanya berada di luar cakupan artikel ini. Ada kasus saat streaming audio dan video ditangani secara terpisah. Sebagian besar file yang akan Anda temui hanya akan berisi satu streaming audio dan satu streaming video.

Dalam streaming audio dan video, data sebenarnya dikompresi menggunakan codec. codec, atau coder/decoder, adalah format kompresi untuk data video atau audio. Perbedaan antara container dan codec merupakan hal penting karena konten dengan penampung yang sama dapat dienkode dengan codec yang berbeda.

Gambar di bawah mengilustrasikan struktur ini. Di sebelah kiri adalah struktur penampung dasar dengan dua aliran. Di sebelah kanan adalah spesifikasi struktur untuk satu file WebM.

Membandingkan struktur file media dengan file media fiktif.
Bagian dari file media.

File dalam penampung WebM dapat berukuran lebih kecil daripada format lainnya, sehingga menjadikannya pilihan yang tepat untuk streaming di situs seluler. Sayangnya, tidak semua browser mendukung container dan codec terbaru. Misalnya, WebM dibuat khusus untuk web sebagai opsi open source dan berkualitas tinggi, tetapi dukungannya belum bersifat universal. Secara khusus, Safari tidak, menurut Can I use pada saat penulisan ini, mendukung WebM untuk video sematan. Namun, WebM memiliki dukungan parsial dengan codec VP8 dan VP9 yang digunakan di WebRTC. Jadi, opsi terbaik Anda adalah menyediakan video pengganti.

Format codec

Banyak jenis file mendukung beberapa codec dalam container yang sama. Daftar lengkap codec video dan codec audio yang tersedia akan menjadi satu kesatuan untuk situs itu sendiri. Tautan yang baru saja disediakan adalah daftar praktis MDN tentang apa yang dapat digunakan di web. Di bawah ini tercantum jenis file yang saat ini disukai, dan codec yang mungkin digunakan. Ikuti link jenis file untuk melihat browser yang mendukungnya.

Jenis file Codec Video Codec Audio
MP4 AV1, AVC (H.264)*, VP9 AAC
WebM AV1, VP9* Vorbis, Opus

* Menunjukkan codec video yang diinginkan.

Kecepatan bit dan resolusi

Kecepatan bit adalah jumlah bit maksimum yang digunakan untuk mengenkode streaming satu detik. Semakin banyak bit yang digunakan untuk mengenkode aliran data, semakin tinggi potensi detail dan fidelitas. Kami memberikan informasi selengkapnya tentang konsep ini di Bitrate.

Resolusi adalah jumlah informasi dalam satu frame video, yang ditentukan sebagai jumlah piksel logis dalam setiap dimensi. Kami memberikan informasi selengkapnya tentang konsep ini di Resolution.

Selanjutnya, di Dasar-dasar aplikasi media, kami akan menunjukkan cara memeriksa karakteristik ini menggunakan dua alat command line: Shaka Packager dan FFmpeg.