android - 无效的参数无法使用 ffmpeg 使用 drawtext 打印文本

标签 android video ffmpeg video-processing

我正在尝试在视频上添加文本和时间戳,但无法在其上打印简单的文本。

String[] complexCommand = {"-f", "3gp", "-i", videoPath, "-s", height + "x" + width, "-r",
 "17", "drawtext=fontfile='file://android_asset/font_eight.ttf':fontsize=20:text='test':x=10:y=100",
  "-vcodec", "libx264", "-vb", "2000k", "-preset", "fast", "-f", "3gp", dir.getAbsolutePath() + "/out.3gp"};
 
 ffmpeg -f 3gp -i /storage/emulated/0/DCIM/Camera/VID_20171211_105946.3gp -s 1920x1080
 -r 17 drawtext='fontfile=file://android_asset/font_eight.ttf:fontsize=20:text=test:x=10:y=100 
-vcodec libx264 -vb 2000k -preset fast -f 3gp /storage/emulated/0/Pictures/Video/out.3gp 
-- 已编辑问题 ---
错误:
Fontconfig 错误:无法加载默认配置文件
[Parsed_drawtext_0 @ 0xf5ba0730] 无法初始化 fontconfig
[AVFilterGraph @ 0xf5b89040] 使用参数“fontfile=file://android_asset/font_eight.ttf:fontsize=32:text=test:fontcolor=white:x=0:y=0”初始化过滤器“drawtext”时出错
打开过滤器时出错!
相同的命令在 Windows 上运行没有错误,但是当我将它转换为移动设备并测试得到字体路径错误时。

最佳答案

drawtext 是一个视频过滤器,所以它必须作为参数传递给 -vf-filter_complex (过滤多个流时使用)。

所以,
-vf drawtext=fontsize=20:=text='aaa':x=10:y=100

关于android - 无效的参数无法使用 ffmpeg 使用 drawtext 打印文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47787807/

相关文章:

video - 一次覆盖并组合ffmpeg

file - 如何将 2 个视频文件和音频文件与 FFMPEG 结合起来?

video - Apple TV 的 ffmpeg 转换

ffmpeg 转换原始视频双倍大小的视频,第二部分没有音频

android - 初学者 Android 开发 : findViewById issue

javascript - 在全屏视频上放置文本 (HTML5)

python - 如何使用OpenCV将框架存储到文件

java - 隐藏每个 Activity 中的软按钮

java - 由 : android. view.InflateException : Binary XML file line #16: Error inflating class com. google.android.material.navigation.NavigationView 引起

android - android.R.layout.simple_list_item_1 和 android.R.layout.simple_list_item_2 有什么区别