Android Cookie

Android 安卓是最开放的手机操作系统,谷歌安卓APP开发和安卓市场的相关话题

如何在各种设备上可靠地捕获Android上的低分辨率video?

你好Androidvideo专家:) 我正在开发一个Android应用程序,它允许用户捕获video并将其上传到远程服务器(它比这更复杂,但应用程序的其余部分并不重要)。 由于上传要求,video的大小合理,因此不是超高分辨率。 假设最大为680×480或10Mb /分钟。 这在Apple设备上没问题。 我曾经有过一个完全噩梦,试图在一系列Android设备上以可靠的低比特率捕获video。 据我了解,有两种方法可以在Android上捕获video: 1)使用Media Recorder / Camera API 2)使用Intent打开摄像机video捕获应用程序 选项1)提供了最大的灵活性,使我们可以轻松更改捕获分辨率。 然而,Android Camera API在各种设备上都不可靠,而且我有很好的信息(包括那些在这个问题上与Google联系的人),如果你使用这个API捕获video,那么它会在50%的那里的设备。 Zoom Camera FX使用Intent进行video捕获是有原因的。 变焦相机(不同的应用程序)似乎使用媒体记录器,但有很多坏评论video崩溃或不工作。 选项2)适用于各种设备,因为它使用设备上的内置应用程序。 问题是你无法控制分辨率,Intent上有质量提示,但相机应用通常会忽略这一点。 我的三星Galaxy S3默认以约2Mb / s的速度录制video。 这是太高的分辨率。 内置应用程序当然可以改变分辨率,但这依赖于用户难以控制的动作。 我知道我可以使用诸如ffmpeg之类的库来在捕获后更改video的分辨率。 然而,这需要我为Android编译库,而且我也被告知,为了在设备上合法使用解码/编码编解码器,您必须支付每个应用程序副本大约1美元的许可费。 由于此应用程序可以免费使用,因此不能选择。 这就是我所处的位置。 我已经搜索了很长时间以获得答案,但我无法弄清楚如何使用Android可靠地捕获低分辨率video。 任何帮助非常感谢! 马修