You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ffmpeg-python调整字幕位置与样式的技术咨询

解决方案

要调整字幕的位置、大小等样式,你可以在subtitles滤镜中添加force_style参数,通过ASS样式规则覆盖默认设置。针对把字幕放在屏幕中间的需求,具体修改如下:

修改后的代码

input_video = ffmpeg.input(video_path)
input_audio = ffmpeg.input(audio_path)

# 在subtitles滤镜中添加force_style参数指定样式
ffmpeg.concat(input_video, input_audio, v=1, a=1)\
       .filter("subtitles", subtitle_path, 
               force_style="Alignment=5,Fontsize=24,PrimaryColour=&HFFFFFF&")\
       .output(output_path).run()

参数说明

  • Alignment=5:将字幕设置为水平垂直居中(ASS对齐规则中,1=左下,5=正中,9=右上,其余数值对应不同角落/边的居中)
  • Fontsize=24:设置字幕字体大小,可根据视频分辨率自行调整数值
  • PrimaryColour=&HFFFFFF&:设置字幕颜色为白色(十六进制颜色值格式为&HBBGGRR&,可替换为其他颜色值)
  • 还可按需添加更多样式参数:
    • OutlineColour=&H000000&:给字幕加黑色描边,增强复杂背景下的可读性
    • MarginV=0:取消垂直边距,避免默认边距干扰居中效果
    • FontName=Arial:指定字幕字体(需确保运行环境中存在该字体)

补充说明

如果你的字幕文件是ASS格式,文件自带的样式会优先生效。此时可以直接修改ASS文件里的Style段,或者在subtitles滤镜中追加si=0参数,忽略原字幕文件的样式,强制使用force_style的设置。

内容的提问来源于stack exchange,提问作者Gustje04

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 09:43:10