【问题标题】:Multicolor text in FFmpegFFmpeg 中的多色文本
【发布时间】:2018-09-14 20:29:02
【问题描述】:

如何在 ffmpeg 中使用 drawtext 在视频上绘制多色文本? 示例:我想突出句子中的专有名词, “XYZ公司股价上涨91%” 高亮 XYZ 白色 黄色 用绿色突出显示 91%

如果您有任何其他方法不使用 ffmpeg 在视频上绘制多色文本,那也可以。

【问题讨论】:

    标签: ffmpeg drawtext


    【解决方案1】:

    Aegisub 中制作ASS 字幕(或手动)并在ffmpeg 中使用subtitles 过滤器:

    ffmpeg -i input -vf subtitles=colors.ass -c:a copy output
    

    示例 ASS 文件内容:

    [Script Info]
    ; Script generated by Aegisub 3.2.2
    ; http://www.aegisub.org/
    Title: Default Aegisub file
    ScriptType: v4.00+
    WrapStyle: 0
    ScaledBorderAndShadow: yes
    YCbCr Matrix: None
    
    [Aegisub Project Garbage]
    
    [V4+ Styles]
    Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
    Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
    
    [Events]
    Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
    Dialogue: 0,0:00:00.00,0:00:05.00,Default,,0,0,0,,{\c&H00FFFF&}XYZ {\c&HFFFFFF&}company shares hike {\c&H00FF00&}91%
    

    另一种但不推荐的方法是为每种颜色使用单独的 drawtext 实例。

    【讨论】:

    • 感谢 LordNeckbeard,但使用字幕过滤器,我无法为文本设置动画(如从左到右移动)
    • @Holy_diver ASS 允许各种类型的动画。请参阅\move tag 等。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-15
    • 1970-01-01
    • 2013-04-11
    • 2015-10-19
    • 2011-06-05
    相关资源
    最近更新 更多