在 Android 中使用 GPU 进行视频录制和播放
Posted
技术标签:
【中文标题】在 Android 中使用 GPU 进行视频录制和播放【英文标题】:Use GPU in Android for video recording and playback 【发布时间】:2021-10-25 05:13:28 【问题描述】:我有一个用 android 编写的视频录制应用程序。我想知道是否有任何方法可以使用设备的 GPU 来加快速度或提高录制(例如编码部分)的效率?视频播放如何(例如解码部分、处理等)?
任何示例或指导都会有所帮助。
【问题讨论】:
【参考方案1】:最简单的答案是确保您的应用使用最常见的编解码器之一,然后设备可能会在硬件中支持此功能 - h.264 可能是最常见的,但现在许多设备可能支持 h.264。 265 也在硬件中。
更复杂的答案是,您的应用实际上可以检查设备上支持的编解码器列表,使用 MediaCodec API 获取 coec 列表,然后查询哪些是硬件加速的(必须是 API 29 或更高版本) :https://developer.android.com/reference/android/media/MediaCodecInfo.html#isHardwareAccelerated()
【讨论】:
如果 API 还提到哪些是硬件加速的,那就太好了。以上是关于在 Android 中使用 GPU 进行视频录制和播放的主要内容,如果未能解决你的问题,请参考以下文章
尽管以纵向视图录制,但使用 mediaRecorder 和表面视图录制的 Android 视频无法在横向视图中播放