【问题标题】:How to implement Video filter on android like instagram [closed]如何在像instagram这样的android上实现视频过滤器[关闭]
【发布时间】:2014-12-16 16:27:45
【问题描述】:

我需要在我的 Android 应用中添加视频过滤器,例如 Instagram。我搜索了很多,但没有找到很多东西。有没有类似 aviary sdk 之类的用于图像编辑的库?

【问题讨论】:

  • 你能指导我解决这个问题吗?
  • @DJtiwari 您指的是哪种解决方案进行视频过滤?有什么文档可以参考吗?

标签: android video


【解决方案1】:

执行此操作的最短方法是使用 Java 的 OpenCV 库(将其导入 Android 项目可能会很麻烦) - 它使您能够轻松地将每一帧提取到可以应用过滤器的不同类型的图像对象(不是确定 OpenCV 是否包含执行此操作的工具),然后用修改过的帧组成一个新视频。

请记住,这可能非常消耗 CPU 和电池,我不太确定这在各种硬件配置上如何工作。

另一个更长的解决方案是深入研究 Android NDK 并尝试使用 ffmpeg。总而言之,它可能会降低 CPU 负载。

此外,新的 Android L 版本还将为相机提供一些基本过滤器(不确定这是否包括视频)https://www.youtube.com/watch?v=Xtp3tH27OFs,因此您可以等待一些 Compat 库

【讨论】:

  • 这个库实际上嵌入并使用 ffmpeg 来做一些非常酷的事情(图像叠加、人脸检测和任何你喜欢的原始 c++ opengl 黑客):github.com/wysaid/android-gpuimage-plus
  • 我尝试在之前的项目中使用 FFMPEG,但发现它的处理速度太慢了。我已经为视频(和图像)处理编写了 FFMPEG 的替代方案,可以在这里找到:github.com/isaac-udy/Kfilter
【解决方案2】:

我为视频提供了一些过滤器,例如使用 OpenGL ES 的 instagram 过滤器。这非常快而且非常好。

如果你只是想过滤和显示视频,你可以看到这个例子,你可以访问https://www.virag.si/2014/03/playing-video-with-opengl-on-android/。对于另一个过滤器,您可以编辑 fragment_shader。

但是,如果您需要渲染过滤后的视频并将其保存到 sd 卡,则需要 mediacodec 和 mediamuxer。您可以从这里 http://bigflake.com/mediacodec/ 展示示例。

希望这可以帮助你,对不起我的英语。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2012-11-14
  • 2014-01-21
  • 1970-01-01
  • 1970-01-01
  • 2020-05-12
  • 1970-01-01
  • 2021-12-22
  • 1970-01-01
相关资源
最近更新 更多