web-dev-qa-db-fra.com

Comment installer avconv avec libfdk_aac sur Ubuntu 14.04?

Comment installer ou compiler avconv avec libfdk_aac sur Ubuntu 14.04? Je suis également d'accord avec les codecs AAC comparables, par exemple. http://wiki.hydrogenaud.io/index.php?title=Fraunhofer_FDK_AAC

Actuellement j'essaye ceci mais avec avconv: https://trac.ffmpeg.org/wiki/CompilationGuide/Ubunt

Je vous ai laissé savoir comment ça marche.

5
nottinhill

Voici comment je le fais. Mais je dois vous prévenir, cela nécessite un peu de courage car vous devez construire libav (cela vous donnera l'exécutable avconv parmi d'autres outils) vous-même. Mais n'ayez crainte, je l'ai fait plusieurs fois et je vais vous montrer comment tout construire et tout installer sans nuire à votre système. Si vous ne souhaitez plus utiliser votre compilation libav personnalisée, il vous suffit de supprimer un répertoire.

Premièrement, je supprime le logiciel par défaut installé par avconv avec:

apt-get remove --purge libav-tools

Ensuite, assurez-vous de disposer des outils nécessaires à la création de logiciels en général:

apt-get install build-essential

Pour obtenir le plus rapidement possible avconv, vous aurez besoin d’un compilateur Assembly. C'est facile:

apt-get install yasm

Maintenant, entrez dans un répertoire de scrap pour y être intégré, je vais faire:

mkdir ~/src
cd ~/src

Maintenant, clonez le dépôt libav git (vous aurez besoin de git installé pour cela):

git clone git://git.libav.org/libav.git

Cela vous donnera la dernière et la plus grande source de libav. J'ai trouvé le code de Edge saignant suffisamment stable pour mes besoins et je n'ai rencontré aucun bogue lié au code lors de la construction.

Laissez le référentiel cloner, puis installez libfdk-aac via le gestionnaire de paquets:

apt-get install libfdk-aac-dev

Pour simplifier les choses, il suffit d'installer la bibliothèque libx264 pour qu'avconv puisse utiliser:

apt-get install libx264-dev

Créez une maison pour les fichiers binaires et autres fichiers qui seront créés dans un instant (cela facilitera également la désinstallation):

mkdir ~/apps    

Une fois installé, l'exécutable avconv sera situé dans ~/apps/bin/Pour exécuter avconv à partir de la ligne de commande, ajoutez-y simplement ~/apps/bin $ PATH

Maintenant, vous devez configurer la source libav pour utiliser votre bibliothèque fdk-aac récemment installée. Entrez simplement ceci dans la ligne de commande:

./configure \
--prefix=~/apps \
--enable-nonfree \
--enable-gpl \
--disable-shared \
--enable-static \
--enable-libx264 \
--enable-libfdk-aac

Cette commande vous donnera toutes les bibliothèques de codage et de décodage libav par défaut, ainsi que libx264 et libfdk_aac. Remarque: si vous souhaitez davantage de fonctionnalités de codage, essayez ./configure --help pour voir toutes les bibliothèques externes que vous pouvez activer.

Maintenant, tout ce qui reste à faire est de construire la chose! Cela ne devrait prendre que quelques minutes sur une machine décente.

make && make install

Si vous avez ajouté ~/apps/bin à $ PATH, vous devriez pouvoir exécuter 'avconv' maintenant.

Pour mettre à jour votre compilation libav personnalisée, exécutez simplement:

git pull Origin

Dans ~/src/libav/up, récupérez le dernier code. Puis reconifgure avec la commande ci-dessus, make et make install.

Si vous voulez tous vous débarrasser de votre construction personnalisée et réinstaller les paquets libav-tools par défaut d'ubuntu, exécutez:

rm -rf ~/apps/
apt-get install libav-tools

Et supprimez ~/apps/bin de votre $ PATH

Désolé si la tâche que vous souhaitez accomplir semble décourageante, mais cela me rend fier d’utiliser une version personnalisée et optimisée d'avconv d'Edge :). Je pense que le travail supplémentaire en vaut la peine. J'espère que cela t'aides :)

12
Rudker

Ne pas Ne vaut pas la peine. Installer via

Sudo apt-get installez libav-tools

Ensuite, au lieu d'utiliser Fraunhofer, utilisez ces commutateurs:

-acodec aac -trictel expérimental ou -acodec libvo_aacenc

La qualité audio peut varier.

4
nottinhill