使用 ffmpeg 库将原始字节数据转换为 h264 视频

convert raw byte data to h264 video using ffmpeg libs

我用谷歌搜索了很多但没有找到答案,因为他们都使用命令 "ffmpeg xxxx" 来完成这项工作。我想使用低级 API:libavcodeclibavformat...

android 相机的默认格式是 NV21(YUV420sp),我想使用 .so 文件将相机预览中的帧编码为 h264 视频。有这方面的例子吗?

ffmpeg 源代码中有一些示例展示了如何使用低级 API 对视频进行编码,在 ffmpeg/doc/examples

您要查看的文件是muxing.c

这是一个简单的示例,展示了如何打开音频和视频流,对它们进行多路复用并将其全部写入文件。它为视频输出生成程序测试模式,为音频生成正弦波,您只需更改 fill_yuv_image() 和 get_audio_frame() 函数即可使用您的数据,然后替换 main()使用 JNI 导出的函数运行,您就快完成了。