Cara Memangkas, Memisahkan, dan Menggabungkan Video Tanpa Enkode Ulang
Diperbarui
Memotong beberapa detik dari sebuah video terdengar seperti seharusnya instan dan lossless, dan terkadang memang begitu. Di lain waktu, alat yang digunakan mendekode dan mengompres ulang seluruh klip, yang memakan waktu lebih lama dan sedikit menurunkan kualitas. Perbedaannya bermuara pada dua teknik, yaitu stream copy dan enkode ulang, serta pada cara video terkompresi disusun dari keyframe.
Panduan ini menjelaskan keduanya, menunjukkan kapan potongan lossless dapat dilakukan, dan secara terbuka menyebutkan alat kami mana yang menyalin stream dan mana yang mengenkode ulang.
Stream copy vs enkode ulang
Stream copy (juga disebut remuxing, atau passthrough) mengambil paket video dan audio yang sudah terkompresi dan menuliskannya ke file baru tanpa mendekodenya. Prosesnya sangat cepat, karena tidak ada kompresi yang terjadi, dan lossless, karena paket-paketnya identik bit demi bit dengan aslinya. Keterbatasannya adalah Anda hanya dapat mempertahankan atau membuang paket secara utuh; Anda tidak dapat mengubah codec, resolusi, bitrate, atau orientasi pikselnya.
Enkode ulang mendekode video menjadi frame-frame individual lalu mengompresnya lagi. Prosesnya lebih lambat, dan dengan codec lossy, setiap enkode ulang membuang sedikit lebih banyak detail, tetapi enkode ulang dapat dimulai dan diakhiri pada frame mana pun dan dapat mengubah apa saja pada video.
Mengapa potongan lossless melompat ke keyframe
Codec modern tidak menyimpan setiap frame sebagai gambar yang utuh. Keyframe (I-frame) adalah gambar yang lengkap; frame-frame setelahnya sebagian besar hanya menyimpan bagian yang berubah, dengan merujuk kembali ke frame sebelumnya. Sekelompok frame yang diawali keyframe disebut GOP, dan pada rekaman ponsel dan kamera, keyframe biasanya muncul setiap satu hingga beberapa detik.
Frame di tengah GOP tidak dapat ditampilkan tanpa frame-frame yang menjadi rujukannya. Jadi, potongan stream copy hanya dapat dimulai dengan bersih pada keyframe. Alat yang memotong secara lossless akan memindahkan titik awal Anda ke keyframe terdekat, itulah sebabnya potongan bisa bergeser satu atau dua detik dari yang Anda minta, atau menyertakan frame-frame sebelumnya lalu menyembunyikannya, yang diabaikan oleh sebagian pemutar. Mengakhiri klip lebih mudah, karena Anda dapat berhenti setelah frame mana pun.
Beberapa editor menggunakan smart rendering: editor hanya mengenkode ulang beberapa frame antara titik potong Anda dan keyframe berikutnya, lalu melakukan stream copy untuk sisanya. Cara ini memberikan akurasi hingga tingkat frame dengan hampir tanpa penurunan kualitas, tetapi memerlukan pencocokan pengaturan enkoder yang cermat dengan aslinya.
Menggabungkan tanpa enkode ulang
Menggabungkan file dengan stream copy hanya berhasil jika setiap klip memiliki codec, resolusi, frame rate, format piksel, dan format audio yang sama, misalnya beberapa klip yang direkam berturut-turut dengan kamera yang sama. Jika ada yang berbeda, seperti klip ponsel yang digabungkan dengan rekaman layar, bagian-bagiannya harus dienkode ulang ke format yang sama, dan alat yang digunakan harus memutuskan cara menangani ukuran yang berbeda, biasanya dengan menambahkan bilah hitam.
Apa yang dilakukan alat kami
Semua alat ini berjalan di browser Anda, sehingga file tidak diunggah. Berikut cara masing-masing alat menangani enkode ulang pada mesin utamanya, yang menggunakan dukungan WebCodecs bawaan browser Anda. Jika browser tidak dapat memproses file tertentu dengan cara itu, alat-alat tersebut beralih ke ffmpeg versi WebAssembly, yang mengenkode ulang videonya.
- Pemotong & Pemangkas Video, mode Pangkas: jika bagian yang Anda pertahankan dimulai tepat di awal video dan format output mendukung codec sumber, video dan audio disalin dengan stream copy. Jika bagian yang dipertahankan dimulai lebih lambat, video dienkode ulang, sehingga potongannya akurat hingga tingkat frame alih-alih melompat ke keyframe; audionya juga dienkode ulang.
- Pemotong & Pemangkas Video, mode Potong (menghapus satu bagian dari tengah): kedua potongan yang tersisa dienkode ulang dengan pengaturan yang sama, lalu digabungkan tanpa enkode ulang tambahan. Jika bagian yang dihapus menyentuh awal atau akhir video, perilakunya sama seperti pemangkasan.
- Pemisah Video: setiap bagian dihasilkan sebagai pemangkasan terpisah, sehingga bagian pertama dapat disalin dengan stream copy dan setiap bagian berikutnya dienkode ulang. Anda dapat memisahkan berdasarkan jumlah bagian, durasi, atau titik pilihan Anda, dengan output MP4, MOV, MKV, atau WebM.
- Penggabungan: Penggabung Video membuka Editor Video, tempat Anda menyusun klip di timeline. Ekspor selalu merender video baru dengan resolusi, frame rate, dan bitrate yang Anda pilih, sehingga klip dengan ukuran atau codec yang berbeda dapat digabungkan.
- Alat Rotasi Video: di alat rotasi klasik, merotasi MP4 atau MOV yang codec-nya didukung oleh kontainer tersebut dilakukan tanpa enkode ulang, dengan mengatur penanda rotasi yang dibaca oleh pemutar. Pembalikan, rotasi dengan output MKV atau WebM, dan setiap rotasi yang dilakukan asisten AI mengenkode ulang pikselnya.
Menjaga kualitas saat enkode ulang tidak dapat dihindari
Satu kali enkode ulang dengan bitrate yang wajar sangat sulit terlihat. Masalah kualitas muncul karena proses diulang-ulang, atau karena bitrate ditekan terlalu rendah.
- Potong dari file asli, bukan dari hasil ekspor sebuah hasil ekspor.
- Sebisa mungkin, lakukan semua pemangkasan dalam satu kali proses, alih-alih memangkas, lalu memisahkan, lalu memangkas lagi.
- Pertahankan resolusi output sama dengan sumbernya, kecuali Anda juga menginginkan file yang lebih kecil.
- Pilih kontainer yang sama dengan sumbernya jika Anda tidak memerlukan kontainer lain; hal itu memberi alat peluang terbaik untuk menyalin stream jika memungkinkan.
Saat Anda memerlukan potongan keyframe yang sepenuhnya lossless
Jika Anda memiliki rekaman yang sangat panjang dan ingin membuang bagian awalnya tanpa menyentuh sisanya, alat desktop yang bekerja murni dengan stream copy adalah pilihan yang tepat. Aplikasi open source LosslessCut dibuat untuk keperluan ini, dan command line ffmpeg dapat melakukannya dengan opsi copy, misalnya: ffmpeg -ss 00:01:00 -i input.mp4 -t 30 -c copy output.mp4. Perkirakan titik awalnya akan melompat ke keyframe terdekat sebelum waktu yang Anda tentukan.
Untuk klip sehari-hari, ketika akurasi hingga tingkat frame lebih penting daripada menghindari satu kali enkode ulang, Pemotong & Pemangkas Video lebih cepat digunakan dan tidak perlu dipasang. Untuk sekaligus memperkecil ukuran, selesaikan dengan Kompresor Video.
Alat yang digunakan dalam panduan ini
Pertanyaan yang Sering Diajukan
01
02
03