编译 x264 for iOS

文章目录


环境 :

macOS 14.3.1

x264 - 20191217-2245


编译

1、下载 x264 源码

http://download.videolan.org/pub/videolan/x264/snapshots/

这里我下载x264-snapshot-20191217-2245.tar.bz2 (截止2024-05-04最新)

解压后,将文件夹命名为 x264 (编译脚本写死这个地址)


2、下载 x264 编译脚本
https://github.com/kewlbear/x264-ios

将脚本和源码 x264 放在同一级目录


3、编译 x264

这里我将脚本中的 ARCHS 选项只保留 arm64 x86_64,然后执行

shell 复制代码
./build-x264.sh

编译完将生成 x264-iOS 文件夹

shell 复制代码
% cd /Users/shushu/Downloads/x264/x264-iOS 
% tree
.
├── include
│   ├── x264.h
│   └── x264_config.h
└── lib
    └── libx264.a

在 FFMpeg 启用 x264


修改 ffmpeg 编译脚本

对于 <目前大家都是用这份脚本

https://github.com/kewlbear/FFmpeg-iOS-build-script\> 的 ./build-ffmpeg.sh 文件

1、17 行的注释打开

sh 复制代码
X264=`pwd`/fat-x264

在 脚本同一级目录,新建文件夹命名为 fat-x264,将 x264 编译出来的 x264-iOS 文件夹下的 lib 复制到 fat-x264 下。
x264-iOS保持还不懂,后续会拖放到 iOS 工程中。


2、将 104行的 -fembed-bitcode 去掉

sh 复制代码
CFLAGS="$CFLAGS -mios-version-min=$DEPLOYMENT_TARGET -fembed-bitcode"

修改为

sh 复制代码
CFLAGS="$CFLAGS -mios-version-min=$DEPLOYMENT_TARGET"

其他编译选项


  • To build everything:
shell 复制代码
./build-x264.sh

  • To build for arm64:
shell 复制代码
./build-x264.sh arm64

  • To build fat library for armv7 and x86_64 (64-bit simulator):
shell 复制代码
./build-x264.sh armv7 x86_64

  • To build fat library from separately built thin libraries:
shell 复制代码
./build-x264.sh lipo

  • Library and Header Files are in ./x264-iOS

报错处理

shellsh 复制代码
building x86_64...
Found no assembler
Minimum version is nasm-2.13
If you really want to compile without asm, configure with --disable-asm.

CONFIGURE_FLAGS 键添加选项 --disable-asm

不知道这个 未来是否会用上,先这么做


sh 复制代码
brew upgrade nasm 

伊织 2024-05-04(六)

要上班了,是否焦虑?

相关推荐
ACP广源盛139246256738 小时前
iOS 27 开放 AI 生态@ACP#小型化扩展黄金风口,IX8008全面超越 ASM2806,铸就嵌入式 AI 扩展核心
人工智能·嵌入式硬件·macos·ios·计算机外设·objective-c·cocoa
人月神话Lee10 小时前
【图像处理】卷积原理与卷积核——图像处理的核心引擎
ios·ai编程·图像识别
杨云龙UP10 小时前
Oracle RAC/ODA环境下如何准确查询PDB表空间已分配大小?一次说清Oracle表空间逻辑大小和ASM三副本实际占用_2026-05-19
linux·运维·数据库·sql·oracle·ffmpeg
用户2235862182011 小时前
如何在超大型的工程中使用 Claude Code?
前端·ios·claude
00后程序员张14 小时前
HTTPS单向认证、双向认证、抓包原理与反抓包策略详解
网络协议·http·ios·小程序·https·uni-app·iphone
Daniel_Coder16 小时前
iOS Widget 开发-14:iOS 18 控制中心组件开发
ios·swift·widget·activitykit·widgetkit·控制中心组件
七牛云行业应用17 小时前
OpenAI Codex手机版上线实战:iOS/Android 5步配置远程控制指南(2026)
android·ios·智能手机
DogDaoDao18 小时前
Android 播放器开发:从零构建全功能视频播放器
android·ffmpeg·音视频·播放器·mediacodec·编解码
2501_9159214319 小时前
使用Swift和Xcode创建简单iOS应用完整教程
ide·vscode·ios·个人开发·xcode·swift·敏捷流程
Daniel_Coder19 小时前
iOS Widget 开发-13:Live Activity 实战详解
ios·swift·widget·widgetkit·controls·live activity