Grabovanie videa v Linuxe
Tento článok slúži na zaznamenanie mojich poznámok z grabovania videa, aby som nabudúce nemusel prehľadávať internet a objavovať koleso.
Na grabovanie som použil adaptér z AliExpressu, ktorý som kúpil za pár euro viacmenej ako hračku na test, než ako seriózne zariadenie. Na vstupe má HDMI, na výstupe USB3 a v Linuxe sa hlási ako ID 534d:2109 MacroSilicon usb video
. Môj predpoklad bol, že cez OSSC by bolo možné získať relatívne kvalitný záznam z originálneho hardvéru.
Na začiatok si prezrieme hardvér. Zoznam V4L zariadení nám vypíše:
v4l2-ctl --list-devices
A zoznam formátov, ktoré zariadenie podporuje:
ffmpeg -hide_banner -f v4l2 -list_formats all -i /dev/video0
Moje zariadenie pozná dva formáty. Komprimovaný mjpeg
a Raw yuyv422
, oba až do rozlíšenia 1920x1080, aj keď to je diskutabilné. Mjpeg pridáva od obrazu jpegové artefakty, yuyv422 zasa vie iba nízke obnovovacie frekvencie (cca. 20Hz).
Zvuk sa dá grabovať priamo z HDMI, ale na to nemám spravené káble. Preto sa zvuk pripojí do vstupu zvukovej karty. Kupodivu to má minimlnu latenciu. Zoznam vstupov Alsy nám zobrazí:
arecord -l
Moja zvukovka ma citlivý vstup, takže bolo treba stiahnuť hlasitosť až niekam k 30%. Vyskúšať si správne nastavenie môžeme cez:
ffmpeg -f alsa -i hw:0,2 -t 30 out.wav
Ešte by som spomenul utilitu qv4l2
, ktorú tiež môžete nájsť v KDE menu v Multimedia - Qt V4L2 test Utility. V nej si môžete vyskúsať všetky možné aj nemožné kombinácie nastavení grabovacej karty a poslúži aj ako zobrazovač, ak chcete použiť grabovaciu kartu ako monitor.
Teraz už stačí iba napísať jednoduchý príkaz, ktorý nám zgrabuje toľko žiadané video. Vlastne, až tak jednoduché to nebude. K celému grabovaciemu procesu som sa dostal tak, že Lovebyte požadoval okrem príspevku aj záznam v rozlíšení 1280x720. Takže treba video upraviť do tohoto rozlíšenia a pridať má čierne okraje. Ak ste sledovali live záznam, tak viete, že kto to nepravil, mal roztiahnutý 4:3 obraz na 16:9. No a tu je teda ten jednoduchý príkaz:
ffmpeg -f v4l2 -input_format mjpeg -framerate 50 -video_size 1024x768 -i /dev/video0 -f alsa -i hw:1 -acodec libvorbis -vf "scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2" -r 60 -b:v 8000k video.mp4
Súťažné videá si môžete pozrieť pre PLOT-Love a Planet of Pyramid Monsters. Viem, že to nie je najlepšia kvalita, ale je to záznam z originálnej mašiny a žiadna fantasy grafika, akú originálne stroje nikdy nemali.
Prajem Vám veľa zaznamenaných videí, v čo najlepšej kvalite!