在安卓录制视频时添加叠加层

5

我希望在我的Android设备上使用相机录制视频,并需要在录制的视频上添加叠加图像。在iOS中,我会使用GPUImage。在Android中,我发现了Android GPUImage。我尝试使用它,但是我没有找到任何在视频录制时添加滤镜的方法。在提供的示例中,我只能为拍照添加滤镜。是否有任何方法可以使用Android GPUImage记录带有滤镜的视频?是否有其他方法可以实时添加图像覆盖在录制的视频上?如果没有,是否有任何方法可以在后期处理中添加图像覆盖在录制的视频上?


如果您想在录制的视频中添加图像,可以使用一个名为ffmpeg4android的库(http://androidwarzone.blogspot.com/2011/12/ffmpeg4android.html),它可能会帮助您完成此操作。接下来,您可以在https://www.ffmpeg.org/ffmpeg-all.html找到所有命令语法。希望现在还不算太晚。 - Luong Truong
2个回答

0
这个项目(MagicCamera)有许多多重输入过滤器。您可以编写自己的片段着色器来在相机纹理上叠加图像(类似于MagicN1977Filter)。它还包括视频录制。

0

您可以使用混合滤镜在视频上添加覆盖图像。

关于视频录制:android-gpuimage库不支持它,但您可以尝试使用android-gpuimage-videorecording库。它是为Android提供GPU图像的分支,还提供了视频录制功能。

android-gpuimage-videorecording

请查看GPUImageMovieWriter类。

它应该指导您正确地开发基于GPUImage的自己的视频编写器。

思路是:

  • 在当前屏幕表面上绘制
  • 切换到编码器输入表面并再次在其中绘制前一帧缓冲区
  • 切换回屏幕表面

其他有用的链接:EGL表面助手, 媒体编码器


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接