objective-c - ffmpeg 64 位 Xcode

标签 objective-c macos compilation ffmpeg 64-bit

我正在尝试在 Mac 上的 Xcode 中使用 ffmpeg 库。我想针对像 Lion 和 Mountain Lion 这样的 64 位系统。我试图编译

./configure --enable-static --enable-nonfree --enable-version3 --enable-gpl --disable-doc --disable-programs --arch=x86_64 --cc=cc --disable-yasm --host-cflags="-arch x86_64" --host-ldflags="-arch x86_64" --prefix=ffmpeg

然后我将 ffmpeg 目录(带有 lib 和 include 文件夹)复制到我的项目文件夹中。我将 .a 文件添加到我的项目中,并将 .a 文件添加到“使用库链接二进制文件”)。我还调整了项目设置中的标题和库文件夹。到目前为止,一切都很好。

我是这些库的初学者,所以我从打开视频开始。工作正常。

现在我正在尝试解码给定的输入文件。因此我查看了这个示例文件:http://ffmpeg.org/doxygen/1.0/decoding__encoding_8c-source.html

我复制了 video_decode_example 函数。但是在编译时出现以下错误:
Undefined symbols for architecture x86_64:
  "_decode_write_frame", referenced from:
    _video_decode_example in cutClass.o
ld: symbol(s) not found for architecture x86_64

我在编译ffmpeg时做错了什么?

最佳答案

decode_write_frame()不是 ffmpeg 的一部分——它是您所指的示例代码的一部分。更仔细地阅读示例代码并实现您自己的等效代码。 (decoding_encoding.c 示例中的实现几乎可以肯定是 而不是 您在生产代码中想要的东西——它只是将每一帧作为 PGM 图像文件写入磁盘。)

关于objective-c - ffmpeg 64 位 Xcode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14915318/

相关文章:

c++ - 在 Mac OSX 中设置 QComboBox 样式

objective-c - setValuesForKeysWithDictionary 可以与嵌套字典一起使用吗

objective-c - IOS8 - [UIlabel sizeToFit] 导致 EXC_BAD_ACCESS KERN_INVALID_ADDRESS 崩溃

objective-c - 在子类中覆盖初始化

java - 在编译时或运行时编程

visual-studio - Visual Studio 2017 在为发布构建时不会编译对代码的小改动

javascript - 编译后的 JavaScript 代码的安全性如何?

objective-c - UITableViewCell 不可选择,而它的accessoryView 可选择

c++ - Valgrind 下 Mac OS 上的 std::thread.join() SIGSEGV

objective-c - NSAppleEventDescriptor 到 NSArray