在OSX Xcode Project for Mac上使用ffmpeg

时间:2016-05-25 12:30:31

标签: xcode swift git macos ffmpeg

我计划在我的Mac上创建一个新的应用程序供个人使用,该应用程序使用FFMPEG库来存储来自RTSP IP摄像机的提要。

遵循此official installation procedure from FFMPEG我已成功完成以下两个步骤:

要获得OS X的ffmpeg,首先必须安装Homebrew。如果您不想使用Homebrew,请参阅以下部分。

,然后
  - brew install automake fdk-aac git lame libass libtool libvorbis    libvpx \ opus sdl shtool texi2html theora wget x264 xvid yasm

问题: 我的问题在这里,因为我很困惑,是如何将一个库导入Xcode,所以我可以在我即将为我的Mac构建的应用程序中使用它。我可以看到很多与IMP / Android的FFMPEG相关的GitHub项目,但OSX没有。

终端下的所有FFMPEG命令都正常工作,例如转换视频等。

3 个答案:

答案 0 :(得分:3)

如果你查看/usr/local/Cellar/ffmpeg,你会发现实际的ffmpeg包,homebrew中的所有内容都只是符号链接。例如:

/usr/local/bin/ffmpeg -> ../Cellar/ffmpeg/3.0.2/bin/ffmpeg

现在,如果您留在该目录中并执行此操作,您将找到pkgconfig组成部分的所有ffmpeg配置设置:

find . -name \*.pc

./lib/pkgconfig/libavcodec.pc
./lib/pkgconfig/libavdevice.pc
./lib/pkgconfig/libavfilter.pc
./lib/pkgconfig/libavformat.pc
./lib/pkgconfig/libavresample.pc
./lib/pkgconfig/libavutil.pc
./lib/pkgconfig/libpostproc.pc
./lib/pkgconfig/libswresample.pc
./lib/pkgconfig/libswscale.pc

这意味着您现在可以找到需要放入Xcode设置的include路径和library路径。因此,例如,如果您想要includes libavutil,则可以执行以下操作:

pkg-config --cflags libavutil

它会告诉你:

-I/usr/local/Cellar/ffmpeg/3.0.2/include

如果您需要library的{​​{1}}设置,则可以执行以下操作:

libavfilter

它会告诉你

pkg-config --libs libavfilter

这就是你如何获得编译器/链接器的设置。然后你需要把它们放到Xcode中,我已经描述了here - 用黄色,红色和蓝色框看一下。

希望有所帮助。哦,你需要这样做:

-L/usr/local/Cellar/ffmpeg/3.0.2/lib -lavfilter

首先获取brew install pkg-config 二进制文件。

答案 1 :(得分:1)

通常,您需要配置Xcode目标构建设置,以将/usr/local/include添加到标题搜索路径

然后你的#include <ffmpeg.h>(或其他任何东西)将开始工作。

然后,要链接到libffmpeg.a(或其他任何名称),您可以执行以下两项操作之一:

  1. 将文件添加到构建设置的 Additional Libraries and Frameworks (通过文件打开对话框选择)。
  2. /usr/local/lib添加到图书馆搜索路径,将-lffmpeg添加到其他链接标记
  3. (1。如果你问我,会更好。)

    我使用的是Macports,所以对我来说路径是/opt/local/{include,lib}但是对于Homebrew,可能会有一个额外级别的目录(比如/usr/local/ffmpeg/{include,lib},但你应该能够自己解决这个问题。

    我不会详细介绍如何实际使用FFMPEG,因为它过于复杂(我对此一无所知)。

答案 2 :(得分:1)

尽管这里没有回答具体问题(“如何导入此类库”),

对于在这里使用Google搜索功能的人来说,这些天您只需在OSX中使用FFmpeg

使用著名的Kewlbear导入脚本

您可以在这里轻松找到

https://github.com/kewlbear/FFmpeg-iOS-build-script

这一切都可以做。

维护这样的构建脚本需要大量的琐碎工作,而且幸运的是,有人不断进行这项工作。