我的ffmpeg版本缺少'libtheora'编解码器,我下载了这个版本的'libtheora'使其工作。http://www.theora.org/downloads/问题是,提取zip文件后,我不知道如何安装它。README文件没有提供很多细节。我只是运行make吗?有人做过这个吗?
使用Homebrew非常简单:
brew install ffmpeg2theora
但实际上它不允许您在此之后转换为OGG/OGV格式。最终真正帮助我将MP4转换为OGV格式的是编译ffmpeg与libtheora支持。详细的解释可以在这里找到ffmpeg Mac OSX编译指南。在此之后,我终于能够运行以下命令:
ffmpeg -i input.mkv -codec:v libtheora -qscale:v 7 -codec:a libvorbis -qscale:a 5 output.ogv
您可以使用brew安装libtheora for ffmpeg
brew install theora
要在ffmpeg中使用它,您应该重新编译ffmpeg。解决方案来源:https://trac.ffmpeg.org/wiki/CompilationGuide/MacOSX
brew install automake fdk-aac git lame libass libtool libvorbis libvpx opus sdl shtool texi2html theora wget x264 xvid yasm
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
./configure --prefix=/usr/local --enable-gpl --enable-nonfree --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid
make && sudo make install
在阅读了一长串的邮件列表并因为人们的粗鲁而感到难过之后,我终于为我解决了这个问题。似乎有必要用--extra-ldflags
和--extra-cflags
指定lib路径。在我的例子中是这样的:
./configure --prefix=/usr/local --enable-gpl --enable-nonfree
--enable-libass --enable-libfdk-aac --enable-libfreetype
--enable-libopus --enable-libtheora --enable-libvorbis
--enable-libvpx --enable-libx264 --enable-libxvid
--extra-ldflags="-L/usr/local/Cellar/lame/3.99.5/lib
-L/usr/local/Cellar/libogg/1.3.2/lib
-L/usr/local/Cellar/theora/1.1.1/lib
-L/usr/local/Cellar/libvorbis/1.3.5/lib
-L/usr/local/Cellar/xvid/1.3.4/lib"
--extra-cflags="-I/usr/local/Cellar/lame/3.99.5/include
-I/usr/local/Cellar/libogg/1.3.2/include
-I/usr/local/Cellar/theora/1.1.1/include
-I/usr/local/Cellar/libvorbis/1.3.5/include
-I/usr/local/Cellar/xvid/1.3.4/include"
根据你需要的库和版本,当然这可能是不同的
您是否尝试过Macports (http://www.macports.org/)来安装ffmped或libtheora?如果你没有……下载并安装它。然后进入控制台并执行以下命令:
sudo port install libtheora