web-dev-qa-db-fra.com

VLC: Comment convertir mp4 en webm

Comment puis-je convertir de MP4 en WebM en utilisant VLC, si possible? Quel codec devrais-je choisir? Dois-je recoder le son?

J'essaie de mettre la vidéo html5 sur un site Web avec Flash comme solution de secours. Si je comprends bien, c’est le seul format (webm) autorisé par Firefox (à moins que vous ne utilisiez Windows 7 64 bits?). Theora semble fonctionner, mais d'après ce que j'ai compris, il est un peu vieux, il faut également un certain temps avant de restituer correctement l'image et de ne fournir aucune miniature :(

<video controls width="500">  
    <!-- if Firefox -->  
    <source src="video/45-theora.ogg" type="video/ogg" />
    <!-- if Safari/Chrome-->  
    <source src="video/45.mp4" type="video/mp4" />
</video>

Oh, je suis sur Mac OS Lion, mais j'ai accès à Windows 7, Vista et XP si cela simplifie les choses pour quelqu'un.

Merci pour toute aide!

25
OZZIE

Je changerais ce code pour lire: 

<video poster="/path/to/your/thumbnail/image.jpg" preload="meta" controls width="500"> 
    <!-- if Safari/Chrome-->  
    <source src="video/45.mp4" type="video/mp4" /> 
    <!-- if Firefox -->  
    <source src="video/45-theora.ogg" type="video/ogg" />
</video>

Les raisons: 

poster="/path/to/your/thumbnail/image.jpg"

parce que vous voulez qu'une "vignette" s'affiche avant que la vidéo ait été lue par l'utilisateur

<source src="video/45.mp4" type="video/mp4" /> BEFORE <source src="video/45-theora.ogg" type="video/ogg" />

mp4 AVANT les formats ouverts (comme webm ou therora) car certaines versions d'iOS contiennent un bogue qui empêche la lecture de la vidéo du tout si mp4 est répertorié après tout autre format dans le code HTML (par conséquent, répertoriez-le en premier).

preload="meta"

certaines versions d'iOS et même certaines versions de Safari et de Chrome ont du mal à charger la page s'il y a plusieurs vidéos sur la même page en même temps. précharge = aucune ou précharge = méta aide à résoudre ces problèmes. 

En ce qui concerne l'encodage, Miro Converter est meilleur encodeur et beaucoup plus facile à utiliser pour convertir des formats lisibles par les navigateurs (mp4, webm, theroa). VLC a beaucoup d'options mais peut être frustrant et frustrant si vous ne le faites pas correctement. Miro est plus une application de glisser-déposer et est recommandée par diveintohtml5 .

18
jonathanbell

Juste pour mettre à jour cette réponse, je ne recommanderais plus d'utiliser Miro Video Converter. C’était jadis mon arme de choix pour la création de vidéos HTML5 pour le Web, mais la version actuelle 3 du programme pose des problèmes de conversion en ogg theora: la qualité de la vidéo convertie est beaucoup trop faible et vous permet de créer une version de meilleure qualité. utiliser l'utilitaire de ligne de commande ffmpeg. 

Easyhtml5video est vraiment bon car il crée automatiquement tous les formats vidéo avec repliement du flash avec code intégré, mais vous devrez payer 69 $ pour cela - la version gratuite ajoute des filigranes aux vidéos.

À la minute, j'utilise le lecteur VLC pour effectuer les conversions vidéo. Pour convertir des fichiers mp4 dans VLC, procédez comme suit:

Conversion en .webm

  1. Sélectionnez Media> convert/save dans le menu.
  2. Cliquez sur le bouton 'Ajouter' et sélectionnez le fichier que vous souhaitez convertir.
  3. Cliquez sur le bouton 'Convertir/Enregistrer'
  4. dans le menu déroulant "Profil", sélectionnez "Vidéo - VP80 + Vorbis (Webm)".
  5. cliquez sur le bouton à côté du menu déroulant ("éditer le profil sélectionné" - ressemble à une icône clé + tournevis)
  6. L'onglet Encapsulation doit être défini sur Webm. 
  7. Cliquez sur l'onglet "Codec vidéo". Dans les paramètres de codage, le codec doit être sélectionné en tant que "VP8".
  8. Dans l'onglet Codec audio, «conserver la piste audio d'origine» doit être désélectionné. Le codec doit être réglé sur 'Vorbis'
  9. Cliquez sur "Enregistrer"
  10. important: sélectionnez l’emplacement et le nom du fichier de destination. Cliquez sur le navigateur, accédez au dossier dans lequel vous souhaitez insérer le nom de fichier converti, puis entrez le nouveau nom de fichier. Si vous ne le faites pas, VLC ne créera pas votre fichier converti (enfin pas dans la version 2.1.5)
  11. Cliquez sur 'Démarrer' pour lancer la conversion.

Conversion en .ogv:

  1. Sélectionnez Media> convert/save dans le menu.
  2. Cliquez sur le bouton 'Ajouter' et sélectionnez le fichier que vous souhaitez convertir.
  3. Cliquez sur le bouton 'Convertir/Enregistrer'
  4. dans le menu déroulant "Profil", sélectionnez "Vidéo - Theora + Vorbis (OGG)".
  5. cliquez sur le bouton à côté du menu déroulant ("éditer le profil sélectionné")
  6. L'onglet Encapsulation doit être défini sur Ogg/Ogm. 
  7. Cliquez sur l'onglet "Codec vidéo". Dans les paramètres de codage, le codec doit être sélectionné comme "theora" et le débit doit être de 1 000 kb/s si vous avez du texte. Un débit plus faible pourrait convenir aux petites vidéos.
  8. Dans l'onglet Codec audio, sélectionnez "Conserver la piste audio d'origine".
  9. Cliquez sur "Enregistrer"
  10. sélectionnez l'emplacement et le nom du fichier de destination.
  11. Cliquez sur 'Démarrer' pour lancer la conversion.

Si vous avez besoin de redimensionner ou de recadrer votre vidéo, je vous recommande de le faire dans le fichier .mp4 en utilisant d’abord Handbrake. Essayer de créer des versions redimensionnées de fichiers .ogg/ogv ou webm à l'aide de VLC ne vous donne pas d'excellents résultats, selon mon expérience.

Lorsque je place les vidéos sur une page Web, j'utilise VideoJs -, ce qui vous permet de créer très facilement des vidéos html5 avec repliement du flash pour les navigateurs plus anciens. Un peu plus de travail que easyhtml5video, mais son utilisation est gratuite.

24
Myke Black

WebM n'est qu'un sous-ensemble de Matroska (.mkv), il suffit donc d'utiliser HandBrake pour créer un fichier MKV (choisissez le conteneur MKV, pas le MP4). IMHO est HandBrake le meilleur outil pour créer des fichiers MP4 et MKV sur Mac (existe aussi pour Windows et Linux, mais je ne l'ai jamais utilisé là-bas). Avec l'encodage en deux passes, vous pouvez obtenir une qualité optimale pour l'espace de stockage disponible et/ou la bande passante, et tout en étant très puissant (vous pouvez configurer autant de paramètres), HandBrake reste un outil très simple (vous n'avez pas besoin de configurer les réglages, déjà les valeurs par défaut vous donneront de très bons résultats).

N'oubliez pas que WebM est un sous-ensemble MKV. Par conséquent, un codec vidéo utilise VP8 ou VP9 et un codec audio utilise Vorbis ou Opus. Jusqu'en 2013, il n'y avait que VP8 et Vorbis pour WebM. Il s'agit donc de la combinaison la plus compatible pouvant être utilisée sur la plupart des appareils, navigateurs et lecteurs. En 2013, les nouveaux VP9 et Opus ont été ajoutés et toute combinaison de ceux-ci est légitime.

Une fois que vous avez obtenu votre MKV, convertissez-le en WebM en utilisant ffmpeg. Vous pouvez télécharger ffmpg préconfiguré pour MacOS X en tant que fichier binaire autonome (fonctionne avec 10.9 ou plus récent). Tout ce que vous avez à faire est d’exécuter cette commande dans Terminal:

./ffmpeg -i INPUTIFLE.mkv -c copy OUTPUTFILE.webm

et c'est tout. Ce sera très rapide car -c copy signifie que ffmpeg ne convertit rien ici (la vidéo est pas transcodée à nouveau!), Elle copie toutes les données audio et vidéo telles quelles, seul le conteneur est réécrit, ce qui supprime la Les parties MKV qui ne sont pas prises en charge dans WebM (par exemple, les chapitres ne sont pas pris en charge). Juste copier signifie également que cette conversion n'a aucune influence sur la qualité, car rien n'est recompressé.

Utiliser ffmpeg pour convertir des conteneurs sans recompression fonctionne également avec de nombreux autres formats. Par exemple. si vous avez un MKV qui est en fait MPEG4 ou H.264, vous pouvez le convertir en un fichier MP4 de la même manière, sans réencapsulation. Vous pouvez même extraire uniquement la couche audio d'une vidéo dans un fichier audio simple sans perdre de qualité (par exemple, extraire l'audio MP3 ou AAC dans un fichier MP3 ou un fichier MPA). Si le conteneur de destination choisi ne peut pas contenir les données du fichier source (par exemple, vous ne pouvez pas copier l'audio AAC dans un fichier MP3 ou la vidéo VP9 dans un fichier MP4, cela ne fonctionnera tout simplement pas), ffmpeg vous le fera savoir.

13
Mecki

Si vous utilisez ffmpeg, j'ai trouvé cette commande qui fonctionne bien comme un compromis entre la taille du fichier et la qualité:

ffmpeg -i myvideo.mp4 -acodec libvorbis -aq 5 -ac 2 -qmax 25 -threads 2 myvideo.webm

Vous pouvez contrôler la qualité de l'audio et de la vidéo avec -aq et -qmax respectivement. J'ai écrit un article de blog avec quelques détails si vous êtes intéressé: http://daniemon.com/blog/how-to-convert-videos-to-webm-with-ffmpeg/

11
tagawa
ffmpeg -i 45.mp4 45.webm
8
DebugXYZ

Essayez celui-ci :: Libav sous Linux  

Installation: run command  
               Sudo apt-get install libav-tools 

Video conversion command::Go to folder contains the video and run in terminal
               avconv -i oldvideo.mp4 -ar 22050 convertedvideo.webm
0
Vishal