在OSX Xcode Project for Mac上使用ffmpeg



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

按照FFMPEG的官方安装程序,我成功地实现了以下两个步骤:

要获得适用于OS X的ffmpeg,首先必须安装​自制。如果你不想使用自制啤酒,请参阅下面的部分

  • ruby-e"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)">

然后:
-brew安装automake fdk aac git lame libass libtool libvorbislibvpx\opus sdl shtool texi2.html theora wget x264 xvid yasm

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

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

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

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

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

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路径。因此,例如,如果您想要libavutilincludes,您可以执行:

pkg-config --cflags libavutil

它会告诉你:

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

如果您想要libavfilterlibrary设置,您可以执行:

pkg-config --libs libavfilter

它会告诉你

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

因此,这就是获得编译器/链接器设置的方式。然后你需要把它们放入Xcode中,我在这里已经描述过了——看看带有黄色、红色和蓝色方框的部分。

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

brew install pkg-config

首先得到CCD_ 12二进制。

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

然后你的#include <ffmpeg.h>(或者它的名字)就会开始工作了。

然后,要链接到libffmpeg.a(或任何它的名称),您可以做以下两件事之一:

  1. 将文件添加到构建设置的附加库和框架中(通过文件打开对话框选择它)
  2. /usr/local/lib添加到库搜索路径,将-lffmpeg添加到其他链接器标志

(1.如果你问我会更好)。

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

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

尽管这并不能回答这里的具体问题("如何导入这样那样的库"),

对于任何在谷歌上搜索的人来说,这些天要在OSX中使用FFmpeg,你只需要

使用著名的Kewlbear导入脚本

你可以在这里很容易地找到

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

它什么都做。

维护这样一个构建脚本需要大量非琐碎的工作,幸运的是,有人在持续的基础上做这项工作。

最新更新