Fat*_*tie 1 android video-processing android-mediacodec
假设您有一个 20 秒的视频(可能是用设备相机拍摄的),并且您想在视频中添加一个叠加层。
(叠加层只是一个普通的光栅图像,即一个 Android Image( doc )。)
您想要创建一个新视频,将叠加作为视频图像的一部分,然后保存视频。
事实上,MediaCodec SDK 可以用来做这个工作吗?
https://developer.android.com/reference/android/media/MediaCodec
过去,您通常会使用 FFMPEG 来解决此类问题,但这是一团糟且速度缓慢。
MediaCodec 可以在这里使用吗?
由于它是“新的”,我无法找到有关此的任何信息.....
小智 6
这可以使用 MediaCodec 实现。首先,从这里查看 DecodeEditEncode 示例
此示例展示了如何使用 OpenGL ES 着色器调整视频大小。您想要做的是也使用 OpenGL ES 着色器在视频上渲染叠加层。
可以在此处找到有关 MediaCodec 示例的另一个很好的来源
在这里您可以找到一些关于如何使用基本渲染技术的示例。查看硬件缩放器练习器。
当您启动并运行视频部分时,这可能是真正的斗争开始的地方,因为在 OpenGl ES 中没有渲染文本的标准方法。我可能只是将文本绘制到 Canvas 并从中制作纹理,但速度可能很慢。
如果您有静态叠加层,例如水印,您可以预先创建它并作为资源发送。
| 归档时间: |
|
| 查看次数: |
1505 次 |
| 最近记录: |