Saturday, May 02, 2020

Mengedit video dan audio untuk keperluan konferensi virtual

Di musim pandemi seperti sekararang ini, banyak seminar/konferensi dialihkan menjadi online/virtual. Tulisan ini akan membahas teknik presentasi online/virtual berbasis perangkat lunak  gratis, khususnya yang berjalan di sistem operasi berbasis Linux.

Perangkat yang dibutuhkan/digunakan antara lain: Beamer atau Impress atau Google Slide, SimpleScreenRecorder atau OBS Studio, ffmpeg dan audacity. Jadi setidaknya kita menggunakan empat perangkat, misal Beamer > OBS > ffmpeg > Audacity, atau, Impress > SimpleScreenRecorder > ffmpeg > Audacity. Diagram alir dari langkah-langkah yang dilakukan dapat digambarkan pada gambar di bawah ini.


Diagram alir proses peremakan presentasi virtual
Di akhir tulisan, saya akan demokan dua hasil perekaman dengan teknik yang saya jelaskan di artikel ini.

1. Perangkat Presentasi
Ada tiga perangkat yang saya gunakan untuk membuat presentasi, yakni sebagi berikut:
  1. (Latex) Beamer
  2. Libreoffice Impress
  3. Google Slide
Dari ketiganya, saya menggunakannya secara acak. Kalau sedang rajin pakai Latex, saya membuat presentasi dengan Beamer. Kalau butuh cepat, biasanya kalau tidak Impress ya Google Slide. Impress bisa dibuat dengan offline, namun terbatas tema dan desainnya. Google slides kaya tema dan desain, namun, meski menyediakan fitur offline, kadang agak merepotkan kalau tidak terkoneksi dengan internet.


2. Perangkat Screeen Recorder
Ada dua perangkat perangkat lunak screen recorder yang saya pakai:
  1. SimpleScreenRecorder
  2. OBS Studio
SimpleScreenRecorder
Berikut adalah setelah (setting) yang saya gunakan ketika merekam screen dengan menggunakan SimpleScreenRecorder.



recordmydesktop

OBS Studio
Open Broadcast Software (OBS) adalah perangkat lunak yang biasa digunakan untuk rekaman baik live maupun screencast (tampilan layar). Instalasi perangkat ini bisa dilakukan dengan mengikuti petunjuk di laman download OBS Project, https://obsproject.com/download. Langkah berikut merupakan pengalaman saya sebagai pengguna baru OBS Studio.
Tampilan OBS Studio

Pertama, OBS Studio menggunakan konsep "scene" dan "source", mirip pada pembuatan film. Scene mengacu pada layar (atuu kamera/film) apa, sedang source mengacu pada "dari sumber mana". Karena hanya untuk presentasi, saya membuat scene baru yang saya namai presentation (kanan bawah pada screenshot diatas), Untuk menambah scene klik tanda +, sedang untuk menghapus scene klik tanda -.

Pada kolom source saya tambahkan dua item. Pertama adalah item Audio input capture untuk merekam suara (bisa juga dari kolom Audio Mixer), kedua adalah Window capture untuk menangkap slide presentasi saya. Klik kanan pada Audio Input Capture dan pilih properties untuk memilih mic yang diinginkan. Saya menggunakan settingan dari AskUbuntu ini untuk menghilangkan bising pada mic laptop saya. Kemudian klik kanan lagi pada Audio Input Catpure (tanda gerigi), dan pilih Filter, tambahkan Noise Suppression dan Compressor (dengan tanda +) seperti di bawah ini.
Penambahan Filter pada Audio Input Capture
Source kedua adalah slide presentasi. Tambahkan Window Capture (XComposite) dan scroll jendela mana yang akan direkam, dalam hal ini adalah jendela slide presentasi (jadi anda harus sudah pada tampilan slide show sebelum memasukkan window capture ini). Tidak ada setting lain pada source ini. Jika ukukan jendela yang di preview di OBS kecil, klik kanan dan klik: Resize Output, untuk memaksimalkan untuk perekaman.

Memilih jendela (window) yang akan direkam pada source > Window capture, di OBS studio

Terakhir untuk memudahkan perekaman gunakan shortcut Ctrl-R baik untuk memulai dan mengakhiri recording. Caranya, klik setting pada kolom paling kanan, pilih Hotkeys, dan tekan Ctrl-R baik pada start dan stop recording.

Sekarang, beralihlah ke slide presentasi dan tekan Ctrl-R untuk memulai. Setelah selesai, tekan Ctrl-R lagi, video akan tersimpan pada direktori tujuan (default: "/home/").

3. Perangkat manipulasi video: ffmpeg
Sampailah kita pada perangkat paling ampuh untuk memenanipulasi video, yakni ffmpeg. Ini adalah perintah terminal (command line) yang cukup canggih. Kita bisa memisahkan suara dan gambar, memotong, dan menggabungkan kembali suara dan gambar dengan perangkat ini. Beberapa perintah yang sangat penting.

Pertama, Cek stream untuk mengetahui informasi (meta data) dari file video mp4.
ffmpeg -i input.mp4

Kedua, mengekstrak Audio dari file video.
ffmpeg -i input-video.avi -vn -acodec copy output-audio.aac

Bila diperlulkan, kita bisa memotong video selama sekian waktu, misal 15 menit pertama (900 detik) dengan argumen -t.
ffmpeg -i spro2020.mp4 -ss 0 -t 900 -strict -2 spro2020_15m.mp4

Pemotongan tersebut bisa juga di awal dan di akhir (instead of "sekian waktu") dengan argumen -to.
ffmpeg -ss 00:02:06 -i 2020-05-22\ 14-59-19.mp4 -to 00:49:00 -c copy output.mp4 

Keterangan:
-ss: HH:MM:DD, waktu mulai pemotongan.
-to: HH:MM:DD, waktu kapan pemotongan berakhir.
-t: DDD, durasi pemotongan dalam detik.

Bila diperlukan, kita bisa menggabungkan dua buah video identik (sama codec dan konfigurasi perekamannya). Pertama kita membuat file text untuk menampung file-file video yang akan kita gabungkan. Contohnya file `mylist.txt` sebagai berikut:
  1 file './tencon2020_compare-edit.mp4'
  2 file './tencon2020_compare-end-video.mp4'  
Kemudian kita jalankan perintah ffmpeg untuk mengeksekusi file text tersebut.
ffmpeg -f concat -safe 0 -i mylist.txt -c copy tencon2020_compare-final.mp4c

Bila diperlukan lagi, kita juga bisa mengesktrak gambar saja dari video (menghapus suara dari video).
ffmpeg -i final_00.mp4 -c copy -an final_00_vid.mp4

Ketiga, menggabungkan video (lama), dan mengganti suara pada vide tersebut dengan suara yang baru yang telah diedit dengan audacity.
ffmpeg -i final_00.mp4 -i final_00_edd.ogg -c:a aac -strict -2 -map 0:v:0 -map 1:a:0 final_00_mix.mp4
Bila file audio dalam format `.wav`, maka argumen `-c:a aac` tidak diperlukan.

Selesai!

4. Perangkat untuk mengedit file audio: Audacity
Hampir mustahil dalam setiap perekaman kita mendapatkan hasil yang sempurna. Kita masih harus mengedit file audio, utamanya mengapus (presisinya: "mendiamkan") suara-surang yang tidak diinginkan, misal suara nafas (paling umum), batuk, dll.

Video berikut mendemokan cara mendiamkan suara nafas (bisa juga suara lainnya) dengan audacity. Sederhananya, block suara yang ingin di diamkan (dijadikan silence), kemudian Ctrl-L. Sesedarhana itu.


Tips dan trik (dari pengalaman pribadi):
1. Menggunakan OBS Studio menghasilkan gambar dan suara yang lebih jernih dari SimpleScreenRecorder
2. Menggunakan mic bawaan laptop (dalam hal ini: MacBook-Pro) mengasilkan suara yang lebih jernih dari mic eksternal (dalam hal ini: Boya BY-M1).

Gallery

Contoh video yang direkam dengan Simple Screen Recorder dan Microphone eksternal Boya BY-M1 (setelah diedit dengan audacity).



Contoh video yang direkam dengan OBS-studio dengan mic internal (MBP 2012).



Referensi:
[1] https://superuser.com/questions/277642/how-to-merge-audio-and-video-file-in-ffmpeg
[2] https://gist.github.com/protrolium/e0dbd4bb0f1a396fcb55
Related Posts Plugin for WordPress, Blogger...