Itala ang iyong desktop mula sa terminal gamit ang FFmpeg

Record screen na may terminal at FFmpeg

Ilang oras na ang nakakalipas nai-publish namin isang artikulo kung saan ipinaliwanag namin kung paano i-convert ang isang audio file sa isa pang format (audio din) na may FFmpeg. Sa artikulong iyon ipinaliwanag din namin na ang balangkas na pinag-uusapan ay isang napakalakas na tool na kung saan maaari naming gampanan ang maraming mga gawain na may kaugnayan sa video at audio, at din sa ibang oras ay tuturuan ka namin kung paano itala ang screen ng aming PC gamit ang FFmpeg mula sa terminal. Ang sandaling iyon ay dumating at ang artikulo ay ito.

I-record ang screen dito balangkas magiging mas kumplikado ito kaysa sa pag-convert ng audio. Ang kahirapan ay matatagpuan sa oras ng pagsulat ng utos, dahil ang dapat nating tandaan ay higit pa sa paglalagay ng isang utos, isang "-i" at dalawang mga file, ang input at ang output. Bilang karagdagan, ang paraan upang gawin ito ay na-update dahil binago nila ang utos / tool na itatala namin ang screen. Nang walang karagdagang pag-uusap, ilalarawan namin ngayon ang mga hakbang na susundan, na walang iba kundi ang mga matatagpuan sa Official Site ng proyekto.

Pinapayagan kami ng FFmpeg na itala ang aming desktop screen na mayroon at walang audio

Tulad ng iba pang mga programa tulad ng VLC o SimpleScreenRecorder, pinapayagan kami ng FFmpeg na itala ang aming desktop screen may at walang audio. Bilang karagdagan, papayagan din kaming magrekord lamang ng isang bahagi ng aming desktop, isang bagay na magiging mas madali gamit ang isang application na may isang interface ng gumagamit na magpapahintulot sa amin na piliin ang rehiyon na magrekord gamit ang pointer. Sa anumang kaso, ang mga utos o hakbang upang sundin upang maitala ang screen ng aming desktop ay ang mga sumusunod:

  1. Tulad ng pagko-convert ng mga file, tinitiyak namin na mayroon kaming kinakailangang naka-install na kinakailangang software. Upang magawa ito, i-type lamang ang "ffmpeg" (nang walang mga quote) sa terminal. Makikita natin ang isang bagay tulad ng sumusunod: ffmpeg sa terminal
  2. Kung may lilitaw na tulad sa itaas, pupunta kami sa hakbang 3. Kung hindi, isusulat namin ang sumusunod sa terminal:
sudo apt install ffmpeg
  1. Sa naka-install na software, magkakaroon lamang ng dalawa pang mga hakbang: simulan ang pag-record at ihinto ito. Upang simulan ito, isusulat namin ang sumusunod na utos.
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 salida.mp4
  • Mula sa itaas kinakailangan na isaalang-alang:
    • 1920 × 1080 ang laki ng recording.
    • framerate ay ang bilang ng mga frame bawat minuto.
    • 0.0 ay ang rehiyon na iyong itatala. Maaari kang magbigay ng panimulang X at Y point upang magtala ng isang bahagi ng screen pagkatapos ng simbolong plus, na maaaring magmukhang 0.0 + 100,200 para sa isang window na nagsisimula sa point X = 100 at point Y = 200.
    • output.mp4 ay ang output file. Kung inilalagay namin ito tulad ng sa nakaraang utos, ang file ay nai-save sa aming personal na folder na may pangalang "output.mp4".
  1. Panghuli, upang itigil ang pag-record ay pinindot namin ang Ctrl + C

Mag-record ng screen gamit ang audio

Kung ang nais namin ay itala din ang audio, ganito ang hitsura ng mga utos:

  • Upang Pulse Audio:
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 -f pulse -ac 2 -i default salida.mkv
  • Para sa ALSA:
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 -f alsa -ac 2 -i hw:0 salida.mkv

Upang mapabuti ang kalidad ng tunog, pinakamahusay na isara ang lahat ng hindi kinakailangang mga programa. Sa parehong kaso, para sa itigil ang pag-record pindutin ang Ctrl + C. Kapag ginawa namin ito, hihintayin kami ng video sa aming personal na folder na may pangalan na na-configure namin para sa mga ito, sa mga kasong ito na "exit.mp4" o "exit.mkv".

Dapat isaalang-alang ang laki ng video. Sa mga utos, inilagay ko ang "1920 × 1080" sapagkat ito ang laki at resolusyon ng aking screen. Ang pinakamagandang bagay ay ang bawat isa ay nagdaragdag ng laki / resolusyon ng kanilang sariling doon. Dapat din nating tandaan na ito ay hindi nagkakahalaga ng paggawa ng isang script upang ilunsad ang order, dahil maaari itong mabigo o, sa pinakamagandang kaso, gagawin nating kumplikado ang aming buhay sa sandaling nais nating ihinto ang pagrekord. Kung magpasya kang subukan kung ito ay gumagana nang maayos para sa iyo gamit ang isang script, palaging maaari mong subukang ihinto ang proseso gamit ang "mga trabaho" na utos, tulad ng ipinaliwanag namin sa Ang artikulong ito noong Hunyo.

Ano ang palagay mo sa pamamaraang ito upang maitala ang screen mula sa terminal na may FFmpeg?


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   Creole Software dijo

    Bagong blog tungkol sa Libreng Software mula sa Argentina!

    Bisitahin mo kami:

    http://softwarecriollo.blogspot.com

    Sa Facebook: SoftwareCriollo Argentina

    Sa twitter: @softwarecriollo

    Dapat nating ikalat ang kaalaman upang maging malaya!

    Pagbati!

  2.   Gaspar Fernandez dijo

    Masarap magkaroon ng ganitong linya sa kamay. Noong nakaraang araw nakikipaglaban ako upang makagawa ng isang screencast na may ffmpeg at nagkaroon ako ng problema sa audio, na hindi mahusay na na-synchronize.

    Nalutas ko ito sa isang napaka-panimulang paraan ... pag-record ng audio sa hiwalay na arecord at pagkatapos ay pagsali sa mga stream: S: S

  3.   nanay 21 nanay dijo

    Hello,
    oo napaka kapaki-pakinabang na kaibigan.
    Kumuha ako ng inspirasyon mula sa bash at pinagsama ang isang script na pinangalanang "xrec" at ibinalot ito sa deb.

    kung nais mong subukan ito, inaanyayahan ka http://cut07.tk/e6

  4.   SergioJP dijo

    Ginagamit ko ang sumusunod na utos:
    $ ffmpeg -f oss -i / dev / dsp1 -f x11grab -s sxga -r 24 -i: 0.0 /home/seunome/Video/teste.mpg

    O ang "-f oss" ay ang nagsasaad na nais ring mag-record ng audio,
    Sinasabi ng "-ako / dev / dsp" sa audio input device kung ano ang gagamitin.
    Gumamit ng "-i / dev / dsp0" o "-i / dev / dsp1" (Para sa akin, nagtrabaho ito sa DSP1)
    Ang "-f x11grab" ay nag-uulat na nais mong i-record ang screen ng video ng server ng Grafix X11.
    O ang "-s sxga" ay katumbas ng "-s 1280 × 1024" na ang resolusyon ng aking display (LCD). Ang isa pang pagpipilian ay xga na tumutugma sa 1024 × 768. Upang malaman ang higit na basahin ang dokumentasyon ng ffmpeg.
    O ipinaalam sa "-r 24" na nais naming i-record ang 24 na mga frame (mga imahe) bawat segundo, na kung saan ay ang minimum na magkaroon ng pakiramdam ng isang pelikula.
    Ipinapahiwatig ng "-i: 0.0" na nais naming makuha ang mga display screen em "0.0" ng X11.
    Sa wakas ay i-configure lamang ang direktoryo at wakasan ang filename upang mabuo.
    Iyon lang, maaari mong basahin ang dokumentasyon ng FFmpeg upang mapabuti at makakuha ng mas mahusay na kalidad.
    Salamat sa lahat.

  5.   tarribalis dijo

    Salamat Sa resolusyon, hal. 1024X600, ang X ay dapat na naka-capitalize para gumana ang utos.

  6.   Santiago Yornet dijo

    Kumusta, sinubukan ko ang lahat ng mga utos na sinabi mo at lahat sila ay nagrekord ng video para sa akin nang walang audio. Mayroon akong Ubuntu 20.04. Anumang mga mungkahi?

    1.    Diego dijo

      Binago ng Ubuntu ang mga base driver tulad ni Debian at iba pa, hindi ko alam kung alin ang gagamitin nila ngayon mula noong nabubuhay pa ako sa nakaraan.
      Alamin kung alin ang gumagamit at palitan ang mga mula sa Alsa o Pulse.