h264许可证,ffmpeg iPhone转码

3

要求
1. 一款应用程序应该首先在iPhone上运行,最终在多个智能手机设备上运行。
2. 目标是支持尽可能多的操作系统的转码代码。
3. 应用程序是商业用途。

用例
I. 使用便携式智能手机相机应用程序录制视频
II. 使用自定义应用程序将视频转码为多种比特率

iPhone实现
A. 为满足需求[2],使用C++实现转码
B. 使用ffmpeg进行转码。

问题
- 使用ffmpeg编码H264需要使用x264库
- H264编码要求支付许可证费用。

为避免H264许可证问题
- iPhone设备(以及许多其他设备)都配备了内置的H264编码功能
- 使用内置的H264编解码器将避免许可证问题/限制


ffmpeg是否以任何方式支持使用iPhone的内置H264编码器?



将不胜感激地接受任何帮助。


旨在让转码代码支持尽可能多的操作系统,听起来像是一个梦想。 - Uğur Gümüşhan
为什么会这样?假设唯一变化的部分是H264编码器,而其余部分(例如MP4解复用)使用ffmpeg完成。 - NadavRub
1
@NadaRub,你不能同时针对iOS和平台独立性。忘了它吧。 - Uğur Gümüşhan
独立性仅适用于转码模块,因此,.SO或.a文件显然相当依赖于平台。 - NadavRub
这里涵盖了硬件和许可问题:http://stackoverflow.com/questions/17606933/using-ffmpeg-to-display-video-on-iphone/17622379#17622379 - MoDJ
2个回答

0

我不需要HLS,而是仅需要能够将现有文件转码为多个不同的比特率,看起来我别无选择,只能使用ALAssetWriter/Reader Obj-C对象,因为这是iPhone特定的。 - NadavRub

0

AVFoundation框架提供了一种机制,可以将H264编码的视频写入文件(mp4或quicktime容器格式)。您可以尝试解析视频文件并在写入时提取H264 NALs。

这有点棘手,但应该是可行的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接