Je recherche soit une application enregistreur / screencast de bureau pouvant produire au format WebM, soit un programme capable de convertir le format .ogv généré par gtk-recordmydesktop
en WebM.
J'ai sélectionné WebM comme format dont j'ai besoin car il semble que ce soit le seul codec gratuit pris en charge par YouTube, où mes enregistrements finiront. J'ai essayé de télécharger un .ogv dans le passé et j'ai obtenu une vidéo verte continue, donc cela ne fonctionnera pas pour moi.
J'habite aux États-Unis et je suis conscient d'essayer de rester à l'écart de tout ce qui pourrait avoir des problèmes de brevets logiciels, comme gstreamer0.10-plugins-ugly
ou gstreamer0.10-plugins-bad
. C'est pour cette raison que je m'intéressais à l'origine à Tibesti (par exemple), mais cela nécessitait l'installation de packages comme ceux mentionnés ci-dessus.
J'ai fait des recherches en ligne pour trouver une solution gratuite (comme pour l'argent et la liberté), mais jusqu'à présent, je n'ai rien trouvé. Aucune suggestion?
la source
Réponses:
12.04 LTS
Il semble que cette version
ffmpeg
ne fonctionne plus correctement pour convertirrecordmydesktop
les enregistrements .ogv de WebM. Comme il n'est plus maintenu, il est recommandé d'utiliser à la place son remplacementavconv
, fourni dans lelibav-tools
package (qui semble être installé automatiquement s'il affmpeg
été installé).La commande nécessaire à utiliser
avconv
pour les conversions n'est pas trop différente de celle deffmpeg
:Ainsi, si quelqu'un est confronté au même problème en essayant d'utiliser uniquement des packages gratuits pour convertir de .ogv en .webm en 12.04 (ou probablement plus tard), voici comment je l'ai résolu. Cela devrait être utile si vous faites des enregistrements pour montrer de nouvelles fonctionnalités ou documenter des problèmes en utilisant la vidéo.
la source
gstreamer0.10-plugins-bad
etgstreamer0.10-plugins-ugly
. Ces packages contiennent les codecs que j'essaie d'éviter en raison de problèmes de brevets, comme indiqué ci-dessus. Si une version mise à jour / alternative devient disponible qui ne dépend pas de ces packages, faites-le moi savoir dans une nouvelle réponse. Merci quand même!Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height
recordmydesktop
rapport de bogue . Curieusement, lorsque j'ai pris la même vidéo sur ma machine de bureau et que je l'ai convertie là-bas, cela a fonctionné sans problème. Donc ... ce pourrait être un bug, mais je ne pense pas en savoir suffisamment pour déposer un rapport.J'utilise des choses comme ça:
Où:
-f x11grab
- applique la capture d'écran au "format" de l'entrée.-s 1024x768
est la résolution du fichier d'entrée (alias zone de capture). Par exemple, est égal à la résolution du bureau. Si elle est plus petite que cela, la zone d'enregistrement serait à gauche et en haut. J'ai utilisé une zone d'enregistrement 1024x768 dans cet exemple.-r 24
- framerate. Fondamentalement, 23 à 30 FPS utilisés par de vrais films pour donner une image d'enregistrement fluide. Cependant, pour la capture d'écran, il pourrait être correct de réduire cela pour obtenir une meilleure image à des débits inférieurs. J'ai utilisé 24 pour faire une capture d'écran de jeu.-i 0:0
est un indice pour utiliser l'affichage 0: 0 comme source (le périphérique est en notation xorg). Si vous n'avez qu'un seul moniteur et une configuration Xorg par défaut, 0: 0 sera correct la plupart du temps.-deadline realtime
- est un indice pour libvpx. Nous voulons une capture en direct. Nous voulons des performances en temps réel. Libvpx fera donc de son mieux pour encoder VP8 en temps réel. Pour ce faire, il échange un peu la qualité contre la vitesse. À un débit donné, la qualité sera un peu pire qu'elle ne le serait en temps non réel. Mais la vitesse d'encodage monterait en flèche. Donc, sur mon matériel, il peut crunch 1024x768 @ 24FPS, des scènes intenses, sans laisser tomber aucune image (CPU puissant recommandé cependant). Dans cet exemple, je voulais une capture en direct de qualité décente à un bon FPS et une zone de capture assez grande. L'utilisation du processeur par le codec pourrait donc être un problème. C'est pourquoi cette indication était vraiment nécessaire pour de bons résultats.-b 5000000
- débit binaire cible en bits / seconde. J'ai utilisé 5Mbits pour obtenir une image plus ou moins bonne de scènes assez intenses. Le codec essaiera de maintenir la vitesse de transmission moyenne de la vidéo proche de cette valeur. Plus cette valeur est faible, plus la qualité est mauvaise et le fichier plus petit. Vous pouvez expérimenter un peu pour savoir quel débit est bon pour des utilisations particulières. Les services de partage vidéo réduiraient la conversion vidéo en cas de dépassement. Si vous êtes sur le point d'utiliser votre propre serveur, c'est à vous de gérer le trafic. Si vous sous-estimez, la qualité de l'image sera mauvaise. N'hésitez pas à modifier la valeur pour vous faire une idée de ce qui vous convient le mieux. 5Mbits étaient destinés à une capture en direct plus ou moins agréable des scènes intenses lors de jeux où vous ne pouvez pas facilement voir que l'image est surcompressée. Pour capturer des applications fixes, vous aurez besoin de beaucoup moins que cela.-minrate
200000 - est un débit binaire minimum autorisé pour le codec. En fonction de la nature de la chose que vous souhaitez capturer, vous pouvez parfois vouloir forcer le débit binaire minimum pour garder une image raisonnablement belle à tout prix. Parfois, l'heuristique du codec peut réduire le débit binaire bien en dessous des valeurs souhaitées, donnant une mauvaise image dans certaines scènes. Cette option permet de forcer le codec à conserver un débit binaire minimum même si le codec pense que la scène est simple et que le débit binaire pourrait être abandonné. Une valeur élevée de ce paramètre peut augmenter la taille du fichier en empêchant le codec d'utiliser des débits binaires inférieurs.-maxrate 40000000
- Cette valeur contrôle le débit binaire maximal en rafale dans les scènes intenses. J'ai utilisé une valeur vraiment élevée pour permettre au codec d'aller bien au-dessus de la moyenne souhaitée s'il considère qu'une vitesse plus élevée est obligatoire pour conserver une qualité décente sur certaines scènes. Pour obtenir une belle image dans toutes les conditions, il est souhaitable de régler cette valeur suffisamment haut (40Mbits est une vitesse de type BlueRay et fera l'affaire). D'autre part, si vous êtes sur le point de le diffuser en utilisant votre propre serveur, vous devez réduire cette valeur au prix d'une certaine qualité d'image lors de scènes intenses. Sinon, le serveur pourrait ne pas gérer le débit de rafale souhaité, étant incapable de le fournir aux utilisateurs en temps réel. Ensuite, le joueur serait confronté à une sous-exécution du tampon (ce qui est agaçant). Les services de partage de vidéos prendront soin d'eux-mêmes et généralement convertiront la vidéo en baisse pour réduire les paramètres au détriment de la qualité de l'image.recording-filename-000.webm
- est un nom de fichier de sortie. Si vous utilisez l'extension .webm, ffmpeg / avconv sont suffisamment intelligents pour comprendre que vous voulez WEBM. C'est SI simple - avconv devine le format souhaité à partir du nom de fichier. Les fichiers .WEBM sont donc WEBM à l'intérieur.C'est tout - cette commande dirige l'enregistrement d'écran vers le fichier webm. Aucune conversion supplémentaire n'est nécessaire et devrait
libvpx
être aussi rapide que possible. Il n'y a pas de son car il n'y a pas de spécification pour l'entrée du son. Cela peut ou non être ce que vous voulez. Pour le son, vous devez également spécifier la source d'entrée pour le flux sonore.PS, cela peut sembler un peu trop compliqué, mais à la fin de la journée, vous pouvez comprendre qu'une seule taille ne convient pas à tous. Donc, pour obtenir une belle image dans toutes les situations, vous voudrez peut-être vraiment utiliser des poignées pour le codec et les ajuster. Ffmpeg vous offre toutes les poignées dont vous pourriez avoir besoin et bien plus que cela. C'est une arme lourde de conversion et d'encodage vidéo. Cet exemple est donc un bon point de départ pour ceux qui veulent faire des encodages plus ou moins avancés et est prêt à expérimenter un peu pour obtenir des résultats vraiment décents.
la source
Vous pouvez effectuer des enregistrements WebM dans Ubuntu 11.10 + GNOME Shell en appuyant sur la combinaison de touches Ctrl+ Shift+ Alt+ R.
La première fois que vous appuyez sur le combo, un cercle rouge apparaît dans la zone de notification, indiquant que l'enregistrement a commencé. La 2ème fois que vous appuyez dessus, le cercle rouge disparaît et vous aurez votre enregistrement dans le
${HOME}/Videos
répertoire.Plus d'informations ici: Gnome Shell Cheat Sheet: Enregistrement Screencast
la source
jhbuild
du 10.10 et je l'ai installé sur mes systèmes 11.10, et je sais que cela fonctionne également. Merci d'avoir ajouté cette réponse!~/Videos
avec un nom de fichier deScreencast from {date} {time}.webm
.Utilisez l'application transmageddon pour ce faire. son application basée sur Gstreamer
sudo apt-get install transmageddon
ou cliquez ici installer transmageddonla source
Utilisez Kazam pour enregistrer.
La sortie est mkv et fonctionne bien avec Youtube. Seul problème, Kazam ne semble pas avoir été mis à jour depuis un moment.
BTW Vous devriez être sûr d'utiliser Tibesti si je comprends bien, à moins bien sûr que vous ne soyez absolument paranoïaque qu'un vaisseau spatial extraterrestre géant vous enlève et vous fasse torturer pour avoir utilisé un logiciel ...
la source
11.10 et précédents
ffmpeg
peut être utilisé pour convertir .ogv en .webm directement sans avoir besoin de codecs supplémentaires. Comme mentionné dans un commentaire sur une autre réponse , la version deffmpeg
fournie par Ubuntu ne vient pas par défaut avec des codecs qui pourraient poser des problèmes de brevets logiciels.Il s'agit d'un programme en ligne de commande; pour l'utiliser, ouvrez simplement une fenêtre de terminal et entrez:
la source
imo, le meilleur moyen de convertir des vidéos en WebM est Firefogg .
la source