【问题标题】:How to display a frame number on each frame of a video using ffmpeg?如何使用ffmpeg在视频的每一帧上显示帧号?
【发布时间】:2012-11-09 19:13:28
【问题描述】:

我的测试命令如下:

ffmpeg -i in.mov -vf "drawtext=fontfile=/usr/share/fonts/ttf-bitstream-vera/Vera.ttf: x=(w-tw)/2: y=h-(2*lh)-n: fontcolor=white: fontsize=40: box=1: boxcolor=0x00000000@1: text=" -an -y out.mov

我想在每一帧上显示帧号。但是,将“text”变量设置为“n”并没有帮助(它显示 n)并且 %n 似乎是换行符。最让我困惑的是这部分

y=h-(2*lh)-n

效果很好,这意味着它获取当前帧的正确值并相应地向上移动文本。

【问题讨论】:

  • 我相信 ffmpeg 目前无法做到这一点。我建议向FFmpeg bug tracker 添加功能请求(类型:增强,优先级:希望)。
  • @LordNeckbeard,你能推荐 Linux 上的任何其他工具来实现这个特定目的吗?
  • 这很快。 FFmpeg 开发相当活跃。

标签: variables ffmpeg frame


【解决方案1】:

好的,ffmpeg 中没有此功能,但现在有了。这就是你的做法:

...drawtext=text=%{n}:expansion=normal:fontfile=/usr/share/fonts/ttf-bitstream-vera/Vera.ttf:other_options...

注意,扩展应该设置为正常,现在不是默认的,但以后应该是默认的(根据ffmpeg文档)。

【讨论】:

    猜你喜欢
    • 2013-10-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-31
    • 1970-01-01
    • 2020-05-18
    • 1970-01-01
    • 1970-01-01
    • 2021-04-12
    相关资源
    最近更新 更多