通过使用FFmpeg库,我们可以在Android上快速添加图像水印到视频中。以下是一个简单的示例代码,演示如何使用FFmpeg库从命令行添加水印:
dependencies { implementation 'com.arthenica:mobile-ffmpeg-full:4.4.LTS' }
private void addWatermarkToVideo(String inputPath, String watermarkPath, String outputPath) {
String[] command = new String[]{
"-i",
inputPath,
"-i",
watermarkPath,
"-filter_complex",
"overlay=10:10",
"-preset",
"superfast",
"-c:a",
"copy",
outputPath
};
FFmpeg.executeAsync(command, new ExecuteCallback() {
@Override
public void apply(final long executionId, final int returnCode) {
// 执行完成后的回调
if (returnCode == RETURN_CODE_SUCCESS) {
Log.i(TAG, "添加水印完成");
} else {
Log.i(TAG, "添加水印失败");
}
}
});
}
String watermarkPath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/watermark.png";
String outputPath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/output.mp4";
addWatermarkToVideo(inputPath, watermarkPath, outputPath);
以上就是在Android上最快添加图像水印到视频的方法。当然,还可以通过修改filter_complex参数来在不同的位置和大小添加水印