V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
aocif23
V2EX  ›  FFmpeg

ffmpeg 给视频加硬字幕的命令

  •  
  •   aocif23 · 2019-10-19 23:58:04 +08:00 · 7554 次点击
    这是一个创建于 1895 天前的主题,其中的信息可能已经有所发展或是发生改变。

    linux 下使用 ffmpeg 的命令

    
    ffmpeg -i input.mp4 -vf "subtitles=input.srt:force_style='FontName=Source Han Sans SC,Fontsize=27,PrimaryColour=&H88FFFFFF&'" -c:a copy -preset fast -crf 22 output.mp4
    
    

    一些坑:

    srt 字幕文件要注意编码方式,直接下载网上的字幕,使用时老是加不上硬字幕,即使在 ffmpeg 加了“-sub_charenc GB18030”参数还是不行,最后把 srt 文件转成 GB18030 编码方式。

    FontName 里的名字可以用"fc-list :lang=zh"或"fc-list"命令查看已安装的字体名字。

    PrimaryColour=&H88FFFFFF&,88 是字幕透明度(00 到 FF),FFFFFF 字幕颜色。

    如果不加 force_style 参数,可能字幕的大小会很少。

    1 条回复    2019-11-14 16:01:52 +08:00
    acreti
        1
    acreti  
       2019-11-14 16:01:52 +08:00
    可以先把 srt 通过 ffmpeg 转为 ass,ass 调整起来方便些
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1030 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 20:23 · PVG 04:23 · LAX 12:23 · JFK 15:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.