在我的Android应用中,我想通过更改分辨率,比特率来压缩mp4视频。我不想使用FFmpeg(因为我不想使用NDK),所以我决定使用MediaCodec API。
以下是我的逻辑步骤:
我的问题是:我不知道如何设置解码器输出和编码器输入之间的连接。我可以将视频解码为Surface或从曲面编码新视频。但我不明白如何连接它们。
我阅读了以下链接:Android MediaCodec: Reduce mp4 video size,Video compression on android using new MediaCodec Library以及Bigflake的示例:https://android.googlesource.com/platform/cts/+/jb-mr2-release/tests/tests/media/src/android/media/cts/DecodeEditEncodeTest.java
有人能给我一个明确的解释我必须做什么吗?
答案 0 :(得分:12)
我用它来看看如何在android中操作视频:https://github.com/hoolrory/AndroidVideoSamples,查看CommonVideoLibrary
中的VideoResampler.java
。