在Android上录制视频时添加叠加层

时间:2014-09-06 18:14:03

标签: android video gpuimage android-gpuimageview

我想在我的Android设备上通过相机录制视频。我需要在录制的电影上添加叠加图像。在iOS中,我会使用GPUImage。在Android中,我找到了Android GPUImage。我尝试使用它,但我没有找到任何方法在视频录制时添加任何过滤器。在提供的示例中,我可以仅为拍照而添加过滤器。有没有办法使用Android GPUImage过滤器录制视频?有没有其他方法可以实时添加图像叠加在录制视频上?如果没有,是否有任何方法可以在后处理中将图像叠加添加到录制的视频上?

2 个答案:

答案 0 :(得分:0)

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

关于视频录制:android-gpuimage库不支持它,但您可以尝试使用android-gpuimage-videorecording库。它是android的gpu-image的一个分支,它还提供视频录制功能

android-gpuimage-videorecording

请参阅GPUImageMovieWriter类

它应该指出你在GPUImage上开发自己的视频编写器的正确方向。

这个想法是:

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

其他有用的链接:EGL surface helperMedia encoder

答案 1 :(得分:0)

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