Enregistrez votre bureau depuis le terminal avec FFmpeg

Écran d'enregistrement avec terminal et FFmpeg

Il y a quelques heures nous avons publié un article dans lequel nous avons expliqué comment convertir un fichier audio dans un autre format (également audio) avec FFmpeg. Dans cet article, nous expliquons également que le framework en question est un outil très puissant avec lequel nous pouvons effectuer de nombreuses tâches liées à la vidéo et à l'audio, et aussi qu'à un autre moment, nous vous apprendrions comment enregistrer l'écran de notre PC avec FFmpeg depuis le terminal. Ce moment est venu et l'article sera celui-ci.

Enregistrez l'écran avec ceci cadre ça va être un peu plus compliqué que de convertir l'audio. La difficulté se trouve au moment de l'écriture de la commande, car ce qu'il faut retenir est bien plus que de mettre une commande, un "-i" et deux fichiers, l'entrée et la sortie. De plus, la façon de le faire a été mise à jour car ils ont modifié la commande / l'outil avec lequel nous enregistrerons l'écran. Sans plus tarder, nous allons maintenant décrire les étapes à suivre, qui ne sont autres que celles trouvées dans le Site officiel le projet.

FFmpeg nous permet d'enregistrer notre écran de bureau avec et sans audio

Comme d'autres programmes tels que VLC ou SimpleScreenRecorder, FFmpeg nous permet d'enregistrer notre écran de bureau avec et sans audio. De plus, cela nous permettra également d'enregistrer seulement une partie de notre bureau, ce qui serait plus facile en utilisant une application avec une interface utilisateur qui nous permettrait de sélectionner la région à enregistrer avec le pointeur. Dans tous les cas, les commandes ou étapes à suivre pour enregistrer l'écran de notre bureau seraient les suivantes:

  1. Comme lors de la conversion de fichiers, nous nous assurons que les logiciels nécessaires sont installés. Pour ce faire, tapez simplement "ffmpeg" (sans les guillemets) dans le terminal. Nous verrons quelque chose comme ce qui suit:ffmpeg dans le terminal
  2. Si quelque chose comme celui ci-dessus apparaît, nous passons à l'étape 3. Si ce n'est pas le cas, nous écrivons ce qui suit dans le terminal:
sudo apt install ffmpeg
  1. Avec le logiciel installé, il ne resterait plus que deux étapes: démarrer l'enregistrement et l'arrêter. Pour le démarrer, nous écrirons la commande suivante.
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 salida.mp4
  • De ce qui précède, il est nécessaire de prendre en compte:
    • 1920 × 1080 la taille de l'enregistrement.
    • framerate est le nombre d'images par minute.
    • 0.0 est la région que vous allez enregistrer. Vous pouvez donner un point de départ X et Y pour enregistrer une partie de l'écran après le symbole plus, qui pourrait ressembler à 0.0 + 100,200 pour une fenêtre commençant au point X = 100 et au point Y = 200.
    • output.mp4 est le fichier de sortie. Si nous le mettons comme dans la commande précédente, le fichier sera enregistré dans notre dossier personnel avec le nom "output.mp4".
  1. Enfin, pour arrêter l'enregistrement, nous appuyons sur Ctrl + C

Écran d'enregistrement avec audio

Si nous voulons également enregistrer l'audio, les commandes seraient comme ceci:

  • Pour impulser l'audio:
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 -f pulse -ac 2 -i default salida.mkv
  • Pour ALSA:
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 -f alsa -ac 2 -i hw:0 salida.mkv

Pour améliorer la qualité du son, il est préférable de fermer tous les programmes inutiles. Dans les deux cas, pour arrêter l'enregistrement appuyez sur Ctrl + C. Lorsque nous faisons cela, la vidéo nous attendra dans notre dossier personnel avec le nom que nous avons configuré pour elle, dans ces cas "output.mp4" ou "output.mkv".

Il y a tenir compte de la taille de la vidéo. Dans les commandes, j'ai mis "1920 × 1080" car c'est la taille et la résolution de mon écran. La meilleure chose est que chacun y ajoute la taille / résolution qui lui est propre. Nous devons également garder à l'esprit qu'il ne vaut pas la peine de faire un script pour lancer la commande, car cela pourrait échouer ou, dans le meilleur des cas, nous compliquerions nos vies au moment où nous voulons arrêter l'enregistrement. Si vous décidez de tester si cela fonctionne bien pour vous avec un script, vous pouvez toujours essayer d'arrêter le processus avec la commande "jobs", comme nous l'avons expliqué dans Cet article Juin dernier.

Que pensez-vous de cette méthode pour enregistrer l'écran du terminal avec FFmpeg?


7 commentaires, laissez le vôtre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Logiciel créole dit

    Nouveau blog sur les logiciels libres d'Argentine!

    Rendez nous visite:

    http://softwarecriollo.blogspot.com

    Sur Facebook: SoftwareCriollo Argentina

    Sur Twitter: @softwarecriollo

    Nous devons diffuser les connaissances pour être libres!

    Salutations!

  2.   Gaspar Fernandez dit

    C'est bien d'avoir cette ligne sous la main. L'autre jour, je me battais pour faire un screencast avec ffmpeg et j'avais le problème de l'audio, qu'il ne se synchronisait pas bien.

    Je l'ai résolu de manière très rudimentaire ... en enregistrant l'audio avec un enregistrement séparément, puis en rejoignant les flux: S: S

  3.   maman 21 maman dit

    Salut,
    oui des amis très utiles.
    J'ai été inspiré par bash et j'ai mis en place un script nommé "xrec" et je l'ai empaqueté dans deb.

    Si vous voulez l'essayer, vous êtes invité http://cut07.tk/e6

  4.   SergioJP dit

    J'utilise la commande suivante:
    $ ffmpeg -f oss -i / dev / dsp1 -f x11grab -s sxga -r 24 -i: 0.0 /home/seunome/Videos/teste.mpg

    Ou "-f oss" est que les états qui veulent également enregistrer de l'audio,
    "-I / dev / dsp" indique au périphérique d'entrée audio ce qu'il doit utiliser.
    Utilisez «-i / dev / dsp0» ou «-i / dev / dsp1» (pour moi, cela fonctionnait avec DSP1)
    Le "-f x11grab" signale que vous souhaitez enregistrer l'écran vidéo du serveur Grafix X11.
    Ou "-s sxga" est égal à "-s 1280 × 1024" qui est la résolution de mon écran (LCD). Une autre option est xga qui correspond à 1024 × 768. Pour en savoir plus, lisez la documentation ffmpeg.
    Ou "-r 24" rapporte que nous voulons enregistrer 24 images (images) par seconde, ce qui est le minimum pour avoir la sensation d'un film.
    Le "-i: 0.0" indique que nous voulons capturer les écrans d'affichage em "0.0" du X11.
    Enfin, configurez simplement le répertoire et finissez le nom du fichier à générer.
    Voilà, vous pouvez lire la documentation ffmpeg pour améliorer et obtenir une meilleure qualité.
    Merci à tous.

  5.   tarribalis dit

    Merci. Dans la résolution, par exemple 1024X600, le X doit être en majuscule pour que la commande fonctionne.

  6.   Santiago Yonet dit

    Qu'en est-il, j'ai essayé toutes les commandes que vous avez dites et elles m'enregistrent toutes de la vidéo sans audio. J'ai Ubuntu 20.04. Des suggestions?

    1.    Diego dit

      Ubuntu a changé les pilotes de base comme Debian et d'autres, je ne sais pas lequel ils utiliseront maintenant car je vis toujours dans le passé.
      Découvrez ceux qui utilisent et remplacent ceux d'Alsa ou de Pulse.