如何在Android中的视频上添加叠加图像或文字?

时间:2015-04-28 08:40:29

标签: android video ffmpeg overlay media

我正在尝试在Android应用程序内的mp4视频上添加叠加图像/文本。 大多数解决方案都指向FFmpeg(或appunits AndroidFFmpeg)但不稳定且维护起来非常复杂。 是否有使用Android SDK执行此操作的本机方法? (MediaCodec?MediaMuxer?)

谢谢你, Ori

1 个答案:

答案 0 :(得分:0)

有两种方法可以理解您的问题:

  1. 您想暂时将视频与其他信息叠加。 这可以使用标准布局过程来完成:
  2. 使用内置VideoView。您可能需要将textView / imageView包装在另外的布局中以将其推到前面:

     <VideoView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/videoView"
        android:background="#00000000"/>
     <LinearLayout
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_gravity="bottom|center_horizontal"
         android:orientation="horizontal">
         <TextView
             android:id="@+id/txt"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:text="Text"/>
     </LinearLayout>
    
    1. 您想要将其他信息添加到视频中。 这显然要困难得多。您可以使用OpenCV。有关OpenCV + Android的信息,请访问their website
    2. 更新:正如this answer所指出的那样,ExtractMpegFramesTest可能会对您感兴趣