Kooha adalah salah satu aplikasi screen recorder. Keunggulannya antara lain:
- User interface atau tampilan yang simpel tapi tetap mudah dimengerti
- Bisa dijalankan dengan baik di lingkungan wayland dan X11
- Mudah dijalankan
- Mudah di-install.
Kooha menyediakan metode instalasi menggunakan flatpak. Inilah cara yang kami sarankan untuk slackers mengingat belum ada di SBo. Caranya
$ flatpak install io.github.seadve.Kooha
Sebenarnya sudah lama ingin menulis catatan ini, tapi berhubung baru ada kesempatan tertunda beberapa bulan. Awal tahun 2022 yang lalu, membeli laptop baru dengan spesifikasi
Processors: 4 × Intel® Celeron® J4125 CPU @ 2.00GHz
Memory: 11,5 GiB of RAM
Graphics Processor: Mesa Intel® UHD Graphics 600
dengan audio awalnya berupa dummy output alias tidak terdeteksi. Seiring waktu, ada dukungan dari kernel sehingga terdeteksi sebagai ES8336.
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sofessx8336 [sof-essx8336], device 0: ES8336 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofessx8336 [sof-essx8336], device 5: HDMI 1 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofessx8336 [sof-essx8336], device 6: HDMI 2 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofessx8336 [sof-essx8336], device 7: HDMI 3 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
Keberhasilan deteksi ini ternyata tidak diikuti dengan munculnya suara dari speaker. Yah, laptop masih diam seribu bahasa. Sound Open Firmware memberikan secercah harapan. Apalagi kemudian sof-firmware masuk ke repo current. Namun sayang, laptop masih membisu. Beberapa kali upgrade kernel, alsa, pulseaudio dan pipewire, masih saja tak terdengar. Alhamdulillah kemudian menemukan solusi dari issue yang dibuat oleh junocom di github alsa-project/alsa-ucm-conf.
Catatan tentang pipewire sebenarnya sudah pernah dituliskan. Tetapi, biar tidak lupa dan lebih mudah mencarinya kala lupa, tidak ada salahnya dibuat catatan tersendiri. Bedanya, ini lebih singkat dan mudah dikerjakan.
Salah satu keberuntungan slackers adalah Patrick Volkerding menyediakan skrip untuk meng-enable dan disable pipewire. Skrip tersebut adalah
/usr/sbin/pipewire-enable.sh
/usr/sbin/pipewire-disable.sh
Silakan dieksekusi sesuai kebutuhan.
Langsung saja
cd /opt
git clone https://github.com/thesofproject/sof-bin.git
cd sof-bin
Masuk ke direktori rilis terbaru, contoh kali ini v2.2
cd v2.2.x
rsync -a sof-v2.2/ /lib/firmware/intel/sof/
rsync -a sof-tplg-v2.2 /lib/firmware/intel/sof-tplg/
Lama tidak menggunakan, hati ini rindu pada WindowMaker. Segera mengalihkan .xinitrc ke xinitrc.wmaker. Beberapa hari kemudian, merasa ada yang janggal. Suasana menjadi sunyi senyap. Tanpa suara. Padahal ketika menggunakan KDE Plasma tidak ada masalah dengan sound system.
Hati ini baru sadar bahwa sound-nya telah diserahterimakan dari pulseaudio kepada pipewire. Baiklah, mari tambahkan beberapa baris berikut ke ~/GNUstep/Library/WindowMaker/autostart
#pipewire
/usr/bin/daemon -frB --pidfiles=~/.run --name=pipewire /usr/bin/pipewire &
/usr/bin/daemon -frB --pidfiles=~/.run --name=pipewire-pulse /usr/bin/pipewire-pulse &
/usr/bin/daemon -frB --pidfiles=~/.run --name=pipewire-media-session /usr/bin/pipewire-media-session &
Salah satu fitur baru yang dihadirkan Slackware 15.0 adalah masuknya pipewire sebagai alternatif dari pulseaudio. Bagaimana penggunaanya? Silakan simak catatan berikut ini.
Pertama, edit /etc/pulse/client.conf. Ubah autospawn dari yes menjadi no.
Hapus /etc/xdg/autostart/pulseaudio.desktop atau rename menjadi file yang “tidak penting”.
Rename file berikut menjadi .desktop saja
- /etc/xdg/autostart/pipewire-media-session.desktop.sample
- /etc/xdg/autostart/pipewire-pulse.desktop.sample
- /etc/xdg/autostart/pipewire.desktop
Untuk mengubah background gambar menjadi transparan, bisa dilakukan dengan mudah menggunakan krita. Klik menu Filter –> Colours –> Colour to Aplha. Color picker pilih warna background yang akan diganti menjadi transparan. Threshold atur 100 atau sesuai kebutuhan. Kemudian Ok.
Untuk menghapus history atau riwayat video yang ditonton dengan QtAV Player ada 2 cara:
- melalui QtAV Player dengan klik History kemudian Clear
- menghapus file historynya
$ rm ~/.local/share/Player/*.qds
Command tersebut juga menghapus riwayat playlist
Ketika mengedit video menggunakan ffmpeg, filter video ataupun filter yang lebih kompleks seperti menambahkan watermark, tanpa pengaturan tambahan kadang hasilnya mengecewakan. Gambar pada video menjadi pecah. Untuk meminimalisirnya, bisa ditambahkan opsi -q:v 0.
Sebelum menggabungkan video, agar optimal, video-video yang akan digabungkan harus mempunyai frame size, frame rate, rata-rata volume dan container/format yang sama. Misalkan akan digabungkan 4 file video, yaitu
- piknik-1.mkv
- piknik-2.mkv
- piknik-3.mkv
- piknik-4.mkv
Keempat file tersebut berada dalam folder yang sama.
Kemudian mereka akan digabungkan menjadi piknik.mkv.
Sebelum digabungkan, membuat list dulu bernama list-piknik yang juga berada sefolder dengan mereka berempat. List berisi video yang akan digabung.
$ vim list-piknik
file 'piknik-1.mkv'
file 'piknik-2.mkv'
file 'piknik-3.mkv'
file 'piknik-4.mkv'
Untuk menggabungnya
Sebelum menggabung-gabungkan beberapa video menjadi 1, penting untuk mengetahui berapa intensitas suara/volumenya, agar beberapa video itu bisa diatur sedemikian rupa sehingga suaranya seragam volumenya atau hampir sama dari awal sampai akhir.
Untuk mengetahui intensitas suara video intro.mkv
$ ffmpeg -i intro.mkv -filter:a volumedetect -f null /dev/null
Input #0, matroska,webm, from 'intro.mkv':
Metadata:
COMPATIBLE_BRANDS: isommp42
COM.ANDROID.VERSION: 9
MAJOR_BRAND : mp42
MINOR_VERSION : 0
ENCODER : Lavf58.29.100
Duration: 00:00:14.90, start: 0.000000, bitrate: 5559 kb/s
Stream #0:0(eng): Video: mpeg4 (Simple Profile), yuv420p, 3840x2160 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 1k tbn, 30 tbc (default)
Metadata:
HANDLER_NAME : VideoHandle
ENCODER : Lavc58.54.100 mpeg4
DURATION : 00:00:14.900000000
Stream #0:1(eng): Audio: vorbis, 48000 Hz, stereo, fltp (default)
Metadata:
HANDLER_NAME : SoundHandle
ENCODER : Lavc58.54.100 libvorbis
DURATION : 00:00:14.849000000
Stream mapping:
Stream #0:0 -> #0:0 (mpeg4 (native) -> wrapped_avframe (native))
Stream #0:1 -> #0:1 (vorbis (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, null, to '/dev/null':
Metadata:
COMPATIBLE_BRANDS: isommp42
COM.ANDROID.VERSION: 9
MAJOR_BRAND : mp42
MINOR_VERSION : 0
encoder : Lavf58.29.100
Stream #0:0(eng): Video: wrapped_avframe, yuv420p, 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default)
Metadata:
HANDLER_NAME : VideoHandle
DURATION : 00:00:14.900000000
encoder : Lavc58.54.100 wrapped_avframe
Stream #0:1(eng): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s (default)
Metadata:
HANDLER_NAME : SoundHandle
DURATION : 00:00:14.849000000
encoder : Lavc58.54.100 pcm_s16le
frame= 447 fps= 97 q=-0.0 Lsize=N/A time=00:00:14.90 bitrate=N/A speed=3.24x
video:234kB audio:2784kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[Parsed_volumedetect_0 @ 0x1a28300] n_samples: 1425280
[Parsed_volumedetect_0 @ 0x1a28300] mean_volume: -12.1 dB
[Parsed_volumedetect_0 @ 0x1a28300] max_volume: 0.0 dB
[Parsed_volumedetect_0 @ 0x1a28300] histogram_0db: 10593
Dari hasil tersebut di atas, tampak bahwa rata-rata intensitas suara/volumenya -12,1 dB dengan maksimum 0,0 dB.
Misalkan kita akan memberikan watermark berupa gambar logo.png ke video ramadhan.mkv. Watermark ditempatkan di pojok kiri bawah. Video dengan watermark diberi nama ramadhan-fix.mkv
ffmpeg -i ramadhan.mkv -i logo.png -filter_complex "overlay=x=0:y=(main_h-overlay-h)" ramadhan-fix.mkv
Keterangan opsi dan parameternya
-filter_complex : menggunakan filter yang kompleks
overlay : menambahkan watermark
x : posisi pada sumbu x, dihitung dari ujung kiri
y : posisi pada sumbu y, dihitung dari ujung atas
main_h : tinggi video
main_w : lebar video
overlay_h : tinggi gambar yang akan dijadikan watermark
overlay_w : lebar gambar yang akan dijadikan watermark
Misalkan terdapat video VID20200509135621.mp4, dengan resolusi 3840x2160 SAR 1:1 DAR 16:9. Akan diubah resolusinya menjadi 1920x1080 dengan tetap memperhatikan SAR dan DAR. Video hasil scaling ini diberi nama VID20200509135621-1080p.mkv. Perubahan ini sekaligus konversi ke mkv agar menghemat space.
ffmpeg -i VID20200509135621.mp4 -vf "scale=1920:1080, setdar=16:9, setsar=1:1" VID20200509135621-1080p.mkv
Secara default, output ffmpeg akan menampilkan built configuration yang digunakan.
$ ffmpeg
ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 9.2.0 (GCC)
configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --docdir=/usr/doc/ffmpeg-4.2.2/html --mandir=/usr/man --disable-debug --enable-shared --disable-static --enable-gpl --enable-version3 --enable-avresample --arch=x86_64 --disable-encoder=aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gnutls --enable-libbluray --enable-libcaca --enable-libcdio --enable-libopus --enable-libspeex --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libmp3lame --enable-opencl --enable-opengl --enable-libopenjpeg --enable-libpulse --enable-libsmbclient --enable-libwavpack
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
Use -h to get full help or, even better, run 'man ffmpeg'
Menurut saya ini tidak perlu ditampilkan. Berdasarkan pengalaman selama ini menggunakan ffmpeg baik-baik saja. Informasi tersebut bisa dikatakan mubadzir. Lebih baik tidak ditampilkan. Caranya beri opsi
Editing kali ini adalah bagaimana mengubah volume default audio/suara menggunakan ffmpeg. Misal, file yang akan diinput/diedit adalah video.mp4. Karena suaranya terlalu pelan, akan dinaikkan menjadi 5x semula melalui filter audio. File hasil editan diberi nama video-louder.webm.
ffmpeg -i video.mp4 -filter:a "volume=5" video-louder.webm
Apabila suara terlalu nyaring bisa dipelankan. Berikut akan dipelankan menjadi setengahnya dari volume semula dan file baru diberi nama new.webm
ffmpeg -i video.mp4 -filter:a "volume=0.5" new.webm
Atau, dengan menuliskan volume suaranya secara langsung. Default aslinya 256. Misalkan akan dinaikkan menjadi 300 kemudian disimpan sebagai anyar.mkv
Misalkan, kita akan mencuplik sebagian (trimming) video video-asli.mp4 dari menit ke 57 lebih 34 detik sampai durasi ke 1 jam 2 menit 5 detik. Fila hasil trimming adalah cuplikan.mp4
ffmpeg -i video-asli.mp4 -ss 00:57:34 -to 01:02:05 -c copy cuplikan.mp4
Download video dari Youtube adalah hal yang mudah bagi pengguna Slackware. Paling tidak ada 2 cara. Cara pertama menggunakan peramban web, dan cara kedua menggunakan youtube-dl yang berantar muka teks. Di sini menggunakan cara kedua. Untuk menginstall youtube-dl silahkan [klik di sini]({% post_url 2015-10-01-install-youtubedl %}).
Cara menggunakannya
youtube-dl url_video_youtube
Contoh, akan URL video yang akan di download adalah https://www.youtube.com/watch?v=lGRQIBJ5FBE&index=1&list=PLB9F411241A111B54.
youtube-dl https://www.youtube.com/watch?v=lGRQIBJ5FBE&index=1&list=PLB9F411241A111B54
Kalau ada beberapa video yang ingin didownload, masukkan saja URLnya ke satu file, tiap baris 1 URL, kemudian cara downloadnya tambahkan opsi -a
Siapa bilang pakai Slackware ga bisa download video dari Youtube? Bisa kok pakai youtube-dl.Cara installnya gampang. Pastikan terhubung ke internet untuk mengunduh berkasnya. Dan untuk install butuh hak akses root. Di sini kita pakai cara yang mudah saja, install dari slackbuilds.org.
cd /usr/local/src
wget http://slackbuilds.org/slackbuilds/14.1/network/youtube-dl.tar.gz
tar xzf youtube-dl.tar.gz
cd youtube-dl
wget https://github.com/rg3/youtube-dl/archive/2015.09.22.tar.gz
sh youtube-dl.SlackBuild
installpkg /tmp/youtube-dl-2015.09.22-x86_64-1_SBo.tgz