Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
tutoriel:3gp_mp4_en_avi [Le 31/03/2007, 08:15] 83.179.224.63 |
tutoriel:3gp_mp4_en_avi [Le 11/09/2022, 12:24] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
{{tag>tutoriel}} | {{tag>tutoriel}} | ||
+ | ---- | ||
- | ===== Convertir les vidéos d'un téléphone mobile (3GP ou MP4) en AVI ===== | + | ====== Convertir les vidéos d'un téléphone mobile (3GP ou MP4) en AVI ====== |
- | Crédit : [[http://blogger.rukker.org/2007/01/29/enable-mp3-and-amr-support-in-ffmpeg-ubuntu-edgy-eft/|enable mp3 and amr support in ffmpeg ( Ubuntu Edgy Eft )]] | + | Ce petit tutoriel décrit comment avec FFMPEG, l'on peut convertir les vidéos de téléphones mobiles ainsi que les fichiers flv (format Adobe Flash Video) dans n'importe quels autres formats vidéos. |
- | + | ||
- | Ce petit howto décrit comment avec FFMPEG, l'on peut convertir les vidéos de téléphones mobiles ainsi que les fichiers flv (format adobe flash video) dans n'importe quels autres formats vidéos. | + | |
Le codec utilisé pour l'encodage du son de ces vidéos est l'AMR. Seulement, l'AMR est propriétaire et il va donc nous falloir l'ajouter ! | Le codec utilisé pour l'encodage du son de ces vidéos est l'AMR. Seulement, l'AMR est propriétaire et il va donc nous falloir l'ajouter ! | ||
- | ==== Avant de commencer ==== | + | ===== Avant de commencer ===== |
Premièrement, je supposerai que vous avez déjà les compilateurs C, ainsi que les paquets de développement standard installés. | Premièrement, je supposerai que vous avez déjà les compilateurs C, ainsi que les paquets de développement standard installés. | ||
- | Aussi, soyez sûr d'avoir activé le dépot “multiverse” dans votre /etc/apt/sources.list et exécutez la commande suivante : | + | Aussi, soyez sûr d'avoir activé le dépôt “multiverse” dans votre /etc/apt/sources.list et exécutez la commande suivante : |
+ | |||
+ | apt-get update | ||
+ | |||
+ | ===== Activer le support du MP3 et de l'AMR dans FFMPEG ===== | ||
+ | |||
+ | //Source : [[http://blogger.rukker.org/2007/01/29/enable-mp3-and-amr-support-in-ffmpeg-ubuntu-edgy-eft/|enable mp3 and amr support in ffmpeg (Ubuntu 6.10)]]// | ||
+ | |||
+ | Une aide complémentaire : [[https://ubuntuforums.org/showthread.php?t=1071262]] | ||
+ | |||
+ | N.B. : si les noms des paquets ont changé entre les différentes versions d'Ubuntu, apt vous fournira les noms des paquets qui les remplacent. | ||
+ | On se met en root pour effectuer les opérations : | ||
<code> | <code> | ||
- | apt-get update | + | sudo -i |
</code> | </code> | ||
+ | ==== Installation des librairies de développements nécessaires ==== | ||
+ | [[:tutoriel:comment_installer_un_paquet|Installez les paquets]] **quilt dpkg-dev libimlib2-dev texi2html libmp3lame-dev libfaad-dev libmp4v2-dev libfaac-dev libxvidcore4-dev debhelper libogg-dev libvorbis-dev liba52-dev libdts-dev libsdl1.2debian-all libraw1394-dev libdc1394-13-dev libtheora-dev libgsm1-dev libx264-dev x264**. | ||
+ | [[apt://quilt,dpkg-dev,libimlib2-dev,texi2html,libmp3lame-dev,libfaad-dev,libmp4v2-dev,libfaac-dev,libxvidcore4-dev,debhelper,libogg-dev,libvorbis-dev,liba52-dev,libdts-dev,libsdl1.2debian-all,libraw1394-dev,libdc1394-13-dev,libtheora-dev,libgsm1-dev,libx264-dev,x264|{{ apt.png |Tout installer en 1 clic}}]] | ||
+ | Il parait que sur AMD64, il faut [[:tutoriel:comment_installer_un_paquet|installer aussi le paquet]] **[[apt://libsdl1.2-dev|libsdl1.2-dev]]**. | ||
+ | ==== Changez de répertoire pour votre répertoire d'installation ==== | ||
+ | |||
+ | On utilise toujours le répertoire /usr/local/src pour cela : | ||
+ | |||
+ | cd /usr/local/src | ||
+ | |||
+ | ==== Récupérez les sources du paquet ffmpeg ==== | ||
+ | |||
+ | apt-get source ffmpeg | ||
+ | |||
+ | ==== Récupérez le patch amr ==== | ||
+ | |||
+ | wget http://wclhfl.dyndns.org/pub/ffmpeg_enable_amr.patch.bz2 | ||
- | ===== Activer le support du MP3 et de l'AMR dans FFMPEG ===== | ||
- | == Installation des librairies de développements nécessaires == | + | ==== Allez dans le répertoire sources de ffmpeg et appliquez le patch ==== |
<code> | <code> | ||
- | sudo apt-get install dpkg-dev libimlib2-dev texi2html liblame-dev libfaad2-dev libmp4v2-dev libfaac-dev libxvidcore4-dev debhelper libogg-dev libvorbis-dev liba52-dev libdts-dev libsdl1.2debian-all libraw1394-dev libdc1394-13-dev libtheora-dev libgsm1-dev | + | cd ffmpeg-0.cvs20060823 |
+ | |||
+ | bzcat ../ffmpeg_enable_amr.patch.bz2 | sudo patch -p1 | ||
</code> | </code> | ||
- | == Changez de répertoire pour votre répertoire d'installation == | + | ==== Construisez le paquet complet avec l'option “risky” ==== |
- | On utilise toujours le répertoire /usr/local/src pour cela : | + | <code> |
+ | DEB_BUILD_OPTIONS=”risky” sudo dpkg-buildpackage | ||
+ | </code> | ||
+ | |||
+ | ==== Retournez dans « /usr/local/src » ==== | ||
+ | |||
+ | cd .. | ||
+ | |||
+ | ==== installez le paquet ffmpeg ==== | ||
<code> | <code> | ||
- | cd /usr/local/src | + | dpkg -i ffmpeg_0.cvs20060823-3.1ubuntu1_i386.deb libavcodec0d_0.cvs20060823-3.1ubuntu1_i386.deb libavformat0d_0.cvs20060823-3.1ubuntu1_i386.deb libpostproc0d_0.cvs20060823-3.1ubuntu1_i386.deb |
</code> | </code> | ||
- | == Récupérez les sources du paquet ffmpeg == | + | ==== Ou bien, installez le paquet ffmpeg (AMD64) ==== |
<code> | <code> | ||
- | sudo apt-get source ffmpeg | + | dpkg -i ffmpeg_0.cvs20060823-3.1ubuntu4_amd64.deb libavcodec0d_0.cvs20060823-3.1ubuntu4_amd64.deb libavformat0d_0.cvs20060823-3.1ubuntu4_amd64.deb libpostproc0d_0.cvs20060823-3.1ubuntu4_amd64.deb |
</code> | </code> | ||
- | == Récuperez le patch amr == | + | |
+ | Nous avons maintenant ffmpeg avec le support du mp3 et de l'amr, maintenant, nous devons prévenir apt de ne pas mettre à jour notre paquet fraîchement crée par un nouveau sans le support mp3 et amr. Cela s'appelle le “pinning”. | ||
+ | |||
+ | ==== Créez le fichier suivant avec votre éditeur favoris ( vi !! ) ==== | ||
<code> | <code> | ||
- | sudo wget http://blogger.rukker.org/dl/ffmpeg_enable_amr.patch.bz2 | + | vi /etc/apt/preferences |
</code> | </code> | ||
- | (avec sudo, sinon wget n'aura pas l'accès au dossier) | + | |
- | == Allez dans le répertoire sources de ffmpeg et appliquez le patch == | + | Ajoutez-y les lignes suivantes : |
<code> | <code> | ||
- | cd ffmpeg-0.cvs20060823 | + | Package: ffmpeg |
+ | Pin: version 0.cvs20060823-3.1ubuntu1 | ||
+ | Pin-Priority: 1001 | ||
- | bzcat ../ffmpeg_enable_amr.patch.bz2 | sudo patch -p1 | + | Package: libavcodec0d |
+ | Pin: version 0.cvs20060823-3.1ubuntu1 | ||
+ | Pin-Priority: 1001 | ||
+ | |||
+ | Package: libavformat0d | ||
+ | Pin: version 0.cvs20060823-3.1ubuntu1 | ||
+ | Pin-Priority: 1001 | ||
+ | |||
+ | Package: libpostproc0d | ||
+ | Pin: version 0.cvs20060823-3.1ubuntu1 | ||
+ | Pin-Priority: 1001 | ||
</code> | </code> | ||
- | == Construisez le paquet complet avec l'option “risky” == | + | Ou bien sur (AMD64) : |
<code> | <code> | ||
- | DEB_BUILD_OPTIONS=”risky” sudo dpkg-buildpackage | + | Package: ffmpeg |
+ | Pin: version 0.cvs20060823-3.1ubuntu4 | ||
+ | Pin-Priority: 1001 | ||
+ | |||
+ | Package: libavcodec0d | ||
+ | Pin: version 0.cvs20060823-3.1ubuntu4 | ||
+ | Pin-Priority: 1001 | ||
+ | |||
+ | Package: libavformat0d | ||
+ | Pin: version 0.cvs20060823-3.1ubuntu4 | ||
+ | Pin-Priority: 1001 | ||
+ | |||
+ | Package: libpostproc0d | ||
+ | Pin: version 0.cvs20060823-3.1ubuntu4 | ||
+ | Pin-Priority: 1001 | ||
</code> | </code> | ||
- | == Retournez dans /usr/local/src et installez le paquet ffmpeg == | + | Maintenant, nous pouvons convertir toutes sortes de fichiers vidéos ! |
+ | |||
+ | |||
+ | ===== Méthode alternative ===== | ||
+ | |||
+ | |||
+ | |||
+ | === Installation des composants nécessaires === | ||
+ | |||
+ | Pour les utilisateurs qui n'ont pas d'expérience dans la compilation je recommande la lecture de cet article **[[:tutoriel:compilation]]**. Il est possible qu'il vous faille ajouter des paquets de composants supplémentaires au cour des étapes pour permettre la compilation. Ces paquets reconnaissable au suffixe "-dev" dans le nom de fichier. En général lorsqu'un script "./configure" échoue à cause d'une librairie manquante, cherchez à installer ce paquet "-dev" via synaptic. En résumé, la liste des paquets proposés ci-dessous peu ne pas être complète. | ||
+ | |||
+ | La première chose à faire est de se mettre dans un répertoire de travail favori. | ||
<code> | <code> | ||
- | cd .. | + | sudo apt-get install build-essential subversion nasm zlib1g-dev |
+ | sudo apt-get install libx264-dev | ||
+ | </code> | ||
- | sudo dpkg -i ffmpeg_0.cvs20060823-5ubuntu1_i386.deb | + | <note important>Attention, si vous utilisiez Ubuntu Ibex (8.10) ou inférieur, il vous faudra impérativement installer les versions >= 0.65 de libx264 et de libx264-dev, si vous utilisez la source svn pour ffmpeg. Le premier paquet étant une dépendance de l'autre. Les choses étant bien faites, le paquet libx264-65 est disponible pour Ubuntu 9.4 (Jaunty). Ne nous privons pas de l'utiliser: on les trouve ici |
+ | [[https://packages.ubuntu.com/fr/jaunty/i386/libx264-65]] et là | ||
+ | [[https://packages.ubuntu.com/fr/jaunty/libx264-dev]]</note> | ||
+ | |||
+ | === Installer AMR === | ||
+ | |||
+ | On peut trouver la dernière version de la librairie AMR à cette adresse: [[http://www.penguin.cz/~utx/amr]] | ||
+ | |||
+ | == AMR-NB == | ||
+ | |||
+ | téléchargement et extraction (pour la version 7.0.0.2) | ||
+ | |||
+ | <code> | ||
+ | wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.2.tar.bz2 | ||
+ | tar -jxvf amrnb-* | ||
+ | cd amrnb-* | ||
</code> | </code> | ||
- | Nous avons maintenant ffmpeg avec le support du mp3 et de l'amr, maintenant, nous devons prévenir apt de ne pas mettre à jour notre paquet fraîchement crée par un nouveau sans le support mp3 et amr. Cela s'apèlle le “pinning”. | + | compilation et installation |
+ | |||
+ | <code> | ||
+ | ./configure --prefix=/usr | ||
+ | make | ||
+ | sudo make install | ||
+ | </code> | ||
+ | <note important>Petite surprise, lors de mes essais avec la version 7.0.0.2, l'installation à placé la librairie libamrnb dans /usr./lib et non /usr/lib . En utilisant vos droits d'administrateur, il vous faudra déplacer le contenu de /usr./ vers /usr/ . Ensuite il faudra mettre à jour le cache des librairies en utilisant | ||
+ | <code>sudo ldconfig -v </code> | ||
+ | </note> | ||
+ | |||
+ | |||
+ | |||
+ | == AMR-WB == | ||
- | == Créez le fichier suivant avec votre éditeur favoris ( vi !! ) == | + | téléchargement et extraction (pour la version 7.0.0.3) |
<code> | <code> | ||
- | sudo vi /etc/apt/preferences | + | wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.3.tar.bz2 |
+ | tar -jxvf amrwb-* | ||
+ | cd amrwb-* | ||
</code> | </code> | ||
- | Ajoutez-y les lignes suivantes : | + | <code> |
+ | ./configure --prefix=/usr | ||
+ | make | ||
+ | sudo make install | ||
+ | </code> | ||
+ | == Verification == | ||
+ | |||
+ | On peut vérifier la bonne installation des librairies amr avec les commandes suivantes | ||
<code> | <code> | ||
- | Package: ffmpeg | + | sudo ldconfig -p | grep libamr |
- | Pin: version 0.cvs20050918-5ubuntu1 | + | </code> |
- | Pin-Priority: 1001 | + | Le résultat est quelque chose similaire à |
+ | <code> libamrwb.so.3 (libc6) => /usr/lib/libamrwb.so.3 | ||
+ | libamrwb.so (libc6) => /usr/lib/libamrwb.so | ||
+ | libamrnb.so.3 (libc6) => /usr/lib/libamrnb.so.3 | ||
+ | libamrnb.so (libc6) => /usr/lib/libamrnb.so | ||
</code> | </code> | ||
- | Maintenant, nous pouvons convertir toutes sortes de fichiers vidéos ! | ||
- | == Convertir un avi en flv == | + | === Compiler ffmpeg à la main === |
+ | |||
+ | Nous allons récuperer les codes sources de ffmpeg. | ||
+ | Pour varier de la solution décrite sur la page de [[:ffmpeg]], je vous propose de récupérer une version dite de développement, moins stable, plus à jour. Afin de vous simplifier la gestion des dépendances, je vous propose de commencer par installer la version "du dépot" en cliquant sur le lien suivant [[apt://ffmpeg]] ou en utilisant la ligne de commande suivante: | ||
+ | <code> | ||
+ | apt-get install ffmpeg | ||
+ | </code> | ||
+ | |||
+ | récupération du code source | ||
+ | <code> | ||
+ | svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg-svn | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | cd ffmpeg-svn | ||
+ | </code> | ||
+ | La configuration de la compilation, si vous n'avez pas lu [[:ffmpeg]], il serait peut-être temps vous demander quels drapeaux utiliser pour avoir toutes les fonctionnalités que vous voulez. Pour le sujet qui nous intéresse, il suffit d'avoir: | ||
+ | <code> | ||
+ | ./configure --enable-gpl --enable-pthreads --enable-libx264 --enable-libamr-nb --enable-libamr-wb --enable-nonfree | ||
+ | </code> | ||
+ | |||
+ | la compilation proprement dite, vous pouvez allez boire un café. | ||
+ | <code> | ||
+ | make | ||
+ | </code> | ||
+ | |||
+ | l'installation du ffmpeg compilé | ||
+ | <code> | ||
+ | sudo make install | ||
+ | </code> | ||
+ | |||
+ | C'est tout. Vous pouvez reprendre la méthode de pinning de l'autre méthode pour que synaptic n'écrase pas votre ffmpeg tout neuf. | ||
+ | |||
+ | //inspiré de [[https://ubuntuforums.org/archive/index.php/t-491885.html]]// | ||
+ | |||
+ | ===== Utilisation ===== | ||
+ | ==== Convertir un avi en flv ==== | ||
<code> | <code> | ||
Ligne 98: | Ligne 252: | ||
</code> | </code> | ||
- | == Convertir un 3gp en mpeg4 avi == | + | ==== Convertir un 3gp en mpeg4 avi ==== |
<code> | <code> | ||
Ligne 104: | Ligne 258: | ||
</code> | </code> | ||
+ | ---- | ||
+ | |||
+ | //Contributeurs principaux : [[:utilisateurs:adam0509]], [[:utilisateurs:ludomatic]].// |