如何在android上使用ffmpeg录制视频?

Posted

技术标签:

【中文标题】如何在android上使用ffmpeg录制视频?【英文标题】:How to record video using ffmpeg on android? 【发布时间】:2012-09-14 00:27:43 【问题描述】:

我想通过从 android 相机获取 byte[] 数据来使用 ffmpeg 创建视频。现在的问题是我对ffmpeg知之甚少。所以我需要一些关于 ffmpeg 的文档。如果有人能提供一些关于 ffmpeg 的有用教程/示例代码/示例以及它是如何工作的,如何使用它以编程方式创建视频,我将不胜感激,谢谢。

【问题讨论】:

【参考方案1】:

ffmpeg 是一个 C 库,因此您必须使用 NDK 来构建它并使用 JNI 接口将它与您的 Android 设备桥接在一起。据我所知,我认为直接使用 ffmpeg 录制视频是不可能的。但是,如果您决定走这条路,您可以使用 openCv 捕获视频流,然后使用 ffmpeg 对其进行解码/编码。再一次,所有这些都必须在 C/C++ 中完成,并且一旦您使用 ffmpeg 处理完信息,就可以使用 NDK 通过 JNI 将信息发送到 android 设备。

这里是 Android 的 OpenCV 库的链接 http://opencv.org/downloads.html

下载后,有示例项目向您展示如何使用原生 android 摄像头以及使用 opencv 功能录制视频。

【讨论】:

我也在使用 openCV。但问题是我必须处理相机预览并显示它们,并且还必须一次捕获它们。我不知道该怎么做。我还没有找到任何例子。那么,如果你有可能帮我解决这个问题?您对如何做到这一点有任何想法/提示吗? 您可以对这个样本感兴趣:code.google.com/p/javacv/source/browse/samples/…

以上是关于如何在android上使用ffmpeg录制视频?的主要内容,如果未能解决你的问题,请参考以下文章

Android制作一个视频录制器

Android制作一个视频录制器

Android制作一个视频录制器

FFmpeg mac录屏

使用ffmpeg进行网络直播

用ffmpeg录制小程序直播开发高清视频并实现直播推流