OSX est fourni avec un utilitaire de conversion vidéo en ligne de commande, avconvert, mais cet outil offre des fonctionnalités limitées par rapport à avconv fourni par libav .
wget http://libav.org/releases/libav-10.1.tar.gz
# use http://libav.org/releases/libav-snapshot.tar.bz2 for the latest snapshot
tar -xvzf libav-10.1.tar.gz
cd libav-10.1
Configurez les dépendances avec MacPorts (ou d’autres gestionnaires de paquets tels que Homebrew ):
x264 +asmsemble être nécessaire pour travailler cpu-capabilities, donc si vous ne les faites pas (c.-à-d. [libx264 @ 0x7fe66101a800] using cpu capabilities: none!), exécutez:
mise à niveau du port sudo --enforce-variantes x264 + asm
Vous devriez avoir comme ça: [libx264 @ 0x7fc62401b600] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2 AVX
Sous Mac OSX, les dépendances installées via MacPorts et utilisant pkg-config ne sont pas trouvées jusqu'à ce que vous définissiez la variable d'environnement export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig'. Also, for the fun of it, you may add, to ./configure , options: --extra-cflags = -I / opt / local / include --extra-ldflags = -L / opt / local / lib . Then the whole . / configure` ci-dessus passe miraculeusement!
Alexy
5
brasser installer libav
Steven Soroka
1
Dans l’avant-dernière étape, construisez lib-av. ERREUR: gnutls not found
Chase Roberts
@ ChaseRoberts Salut Chase, j'ai aussi le même problème avec gnutls non trouvé. J'ai essayé de suivre un guide gist.github.com/morgant/1753095 mais j'ai rencontré plus d'erreurs. Avez-vous déjà réussi à faire fonctionner les choses?
Jean
ok je viens de réinstaller homebrew pour me rendre brew install libavau travail.
Jean
1
Pour ceux qui brewn'en ont pas - et jusqu'à ce que les macports proposent un port pour libav, voici mes notes sur l'installation de libav sur OSX 10.8.5 à partir des sources (version de libav 12_dev0, à partir de github).
Le principal problème que j'ai rencontré était que libav utilise sem_timedwait()( semaphore.h sous Linux) ce qui n'est pas défini dans macos.
AVERTISSEMENT: Je ne peux pas dire ni garantir si la dite mise en œuvre de sem_timedwait()est la bonne et / ou n'aura aucun effet secondaire sur le fonctionnement du système libavou même de toute autre partie du système qui est liée aux bibliothèques libav qui ont maintenant une sem_timedwait()implémentation !!!! Pour ce dernier, permettez-moi de vous suggérer de renommer l’ensemble sem_timedwait()de votre copie de libavKeith et son implémentation. Vérifiez également si d’autres symboles sont exportés à partir de sem_timedwait.o et renommez-les également.
Voici les nouveaux symboles renommés de l'implémentation de Keith Shortridge sem_timedwait():
brew install libav
.Réponses:
Il suffit de l'installer avec de la bière:
la source
D'abord, prenez la bibliothèque:
Configurez les dépendances avec MacPorts (ou d’autres gestionnaires de paquets tels que Homebrew ):
Construire libav:
Ensuite, vous pouvez exécuter
avconv
:x264 +asm
semble être nécessaire pour travaillercpu-capabilities
, donc si vous ne les faites pas (c.-à-d.[libx264 @ 0x7fe66101a800] using cpu capabilities: none!
), exécutez:Vous devriez avoir comme ça:
[libx264 @ 0x7fc62401b600] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2 AVX
la source
export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig'. Also, for the fun of it, you may add, to
./configure, options:
--extra-cflags = -I / opt / local / include --extra-ldflags = -L / opt / local / lib. Then the whole
. / configure` ci-dessus passe miraculeusement!brew install libav
au travail.Pour ceux qui
brew
n'en ont pas - et jusqu'à ce que les macports proposent un port pourlibav
, voici mes notes sur l'installation de libav sur OSX 10.8.5 à partir des sources (version de libav12_dev0
, à partir de github).Le principal problème que j'ai rencontré était que libav utilise
sem_timedwait()
( semaphore.h sous Linux) ce qui n'est pas défini dans macos.Cet article https://stackoverflow.com/a/15163760 indique que Keith Shortridge du groupe de logiciels de l'Observatoire astronomique australien (merci) a écrit une implémentation de cette fonction pour macos qui peut être trouvée ici https://github.com/attie / libxbee3 / tree / master / xsys_darwin
Téléchargez les deux fichiers dans
${LIBAVDIR}/libavdevice
puis ajoutez la ligne suivante dans le fichier d'en-têtesem_timedwait.h
:int sem_timedwait(sem_t *sem, const struct timespec *abs_timeout);
Puis éditez le Makefile dans
${LIBAVDIR}/libavdevice
et ajoutezsem_timedwait.o
à la fin de laOBJS
variableconfigurer et faire tout
tu es prêt.
Pour mémoire, j'ai utilisé la commande de configuration suivante:
./configure --extra-cflags=-I/opt/local/include --extra-ldflags=-L/opt/local/lib --enable-gpl --enable-libx264 --enable-libxvid --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-nonfree --enable-libfaac --enable-libmp3lame --enable-libspeex --enable-libvorbis --enable-libtheora --enable-libvpx --enable-libopenjpeg --enable-libfreetype --enable-doc --enable-gnutls --prefix=/opt/local
AVERTISSEMENT: Je ne peux pas dire ni garantir si la dite mise en œuvre de
sem_timedwait()
est la bonne et / ou n'aura aucun effet secondaire sur le fonctionnement du systèmelibav
ou même de toute autre partie du système qui est liée aux bibliothèques libav qui ont maintenant unesem_timedwait()
implémentation !!!! Pour ce dernier, permettez-moi de vous suggérer de renommer l’ensemblesem_timedwait()
de votre copie delibav
Keith et son implémentation. Vérifiez également si d’autres symboles sont exportés à partir de sem_timedwait.o et renommez-les également.Voici les nouveaux symboles renommés de l'implémentation de Keith Shortridge
sem_timedwait()
:sem_timedwait_keith, timeoutThreadMain_keith, triggerSignal_keith, ignoreSignal_keith, timeoutThreadCleanup_keith
(supprimer
_keith
pour obtenir les noms d'origine). La seule référence àsem_timedwait()
inlibav
(pour ladite version) est injack.c
.la source
Pour les vidéos hébergées sur https (beaucoup, de nos jours), assurez-vous de créer avconv avec le support OpenSSL:
la source