Menurut GNOME API doc, perekam layar gnome-shell ( shell-recorder class ) pada dasarnya adalah pipeline semua hasil tangkapan layar ke pipeline yang kemudian dikodekan oleh GStreamer.
Anda dapat menggunakan aplikasi dconf-editor dan menavigasi ke org.gnome.shell.recorder
, dalam skema ini Anda akan menemukan 3 opsi:
- ekstensi file - default pada kotak saya untuk
webm
- framerate - defauly di kotak saya ke 30
- pipeline - yang default ke pipeline ke GStreamer vp8enc untuk meng-encode stream
vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=%T ! queue ! webmmux
Jadi bagaimana kita bisa mereplikasi pipa rekaman di baris perintah? Kita bisa melakukannya dengan perintah gst-launch gst-launch. Pertama, Anda perlu menginstal alat gst di komputer Anda dan Anda bisa mulai bermain dengan gstreamer !. Berikut ini beberapa contoh:
Rekam ke webm (video vp8 & audio vorbis):
gst-launch ximagesrc ! ffmpegcolorspace ! queue ! vp8enc quality=10 speed=2 ! mux. alsasrc ! audio/x-raw-int ! queue ! audioconvert ! vorbisenc ! mux. webmmux name=mux ! filesink location=screencast.webm
Tekan Ctrl + C untuk menghentikan rekaman.
Rekam ke ogv (theora video & vorbis audio):
gst-launch ximagesrc ! ffmpegcolorspace ! queue ! theoraenc ! mux. alsasrc ! audio/x-raw-int ! queue ! audioconvert ! vorbisenc ! mux. oggmux name=mux ! filesink location=screencast.ogv
Tekan Ctrl + C untuk menghentikan rekaman.
Pipa-pipa dieksekusi oleh peluncuran gst. Inilah yang mereka lakukan:
- Raih gambar video X (desktop)
- Konversi video secara otomatis ke format yang dapat diterima
- Munculkan thread latar belakang [t1] untuk melanjutkan pemrosesan video
- [t1] Enkode video (baik ke vp8 atau theora)
- [t1] Bersiap untuk menggabungkan video ke dalam shell video (webm atau ogg)
- Raih input audio sebagai mentah (mikrofon)
- Munculkan thread latar belakang [t2] untuk melanjutkan pemrosesan audio
- [t2] Secara otomatis mengonversi audio ke format yang dapat diterima
- [t2] Encode audio ke vorbis
- [t2] Bersiap untuk menggabungkan audio ke dalam shell video (webm atau ogg)
- Tulis audio dan video yang dikodekan ke dalam file video
Sekarang, Anda tidak perlu takut dengan pipa gstreamer lagi! \Hai/
man istanbul
?