- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
描述here如何将 srt 文件刻录成视频。但是,我想为字幕添加半透明背景,以便更容易阅读文本。我怎样才能做到这一点?
最佳答案
ASS 字幕可以有半透明的文本背景。
最简单的方法是使用 aegisub .
字幕
→ 样式管理器
。当前脚本
下选择默认
,然后按编辑
按钮。Outline
和Shadow
值。选中不透明框
。颜色
下,单击轮廓
或阴影
下的颜色。将出现一个窗口。调整 Alpha
框的值以更改透明度。.ass
文件。现在您可以使用 AAS 文件来制作 hardsubs or softsubs with ffmpeg
.
如果您想要硬低音炮,您可以使用subtitles filter使用 force_style
选项添加透明背景。
ffmpeg -i input -filter_complex "subtitles=subs.ass:force_style='OutlineColour=&H80000000,BorderStyle=3,Outline=1,Shadow=0,MarginV=20'" output
这适用于 FFmpeg 支持的任何基于文本的字幕,因为过滤器会自动将它们转换为 ASS。
参见SubStation Alpha (ASS) style fields用于格式化选项。
如果您的字幕包含多行,由于长行自动换行或故意换行,背景会重叠并可能看起来很难看,如下所示:
您可以通过以下方式避免这种情况:
轮廓
和阴影
大小更改为0
。Alpha
调整为您所需的透明度级别。在文本编辑器中编辑 ASS 文件。在 Style
行中,将 BorderStyle
对应的值更改为 4
。这将填充每个字幕事件的边界框背景。示例 Style
行:
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H80000000,&H80000000,-1,0,0,0,100,100,0,0,4,0,0,2,10,10,10,1
示例:
请注意,BorderStyle=4
是一个非标准值,因此它可能无法在所有播放器中正常工作。
感谢 sup 和 wm4 用于 BorderStyle
建议。
drawbox filter可用于创建背景框。如果您希望框跨越宽度,这可能很有用。
ffmpeg -i input -filter_complex "drawbox=w=iw:h=24:y=ih-28:t=max:color=black@0.4,subtitles=subs.ass" output
缺点是您必须考虑长字幕的换行或自动换行。只需使框更高以进行补偿就足够了,但看起来会很难看,因为字幕基线保持静态:单行字幕顶部的填充量将比底部的填充量多。
关于ffmpeg - 如何在ffmpeg中设置字幕背景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25870169/
我正在学习WidgetMarqueeLabel课: #include "WidgetMarqueeLabel.h" #include #include WidgetMarqueeLabel::Wi
我需要使用 Graphviz DOT 打印大量图表。为了区分每个图对应的输入,我还希望每个图都有一个标题。有没有办法将它嵌入到图形的 DOT 表示中。 最佳答案 您可以使用 label为图表添加标题。
我用 jQuery 编写了一个简单的脚本,允许根据 .hover 触发器弹出和弹出标题。 问题是您必须将鼠标悬停在图像上,移回图像上,然后再次将鼠标悬停在图像上才能正常工作。 (你可以在这里明白我的意
我已经成功地将视频转换到 chromecast 现在我正在尝试添加对字幕的支持,这里我面临两个问题 当我使用 NanoHttpd 流式传输 vtt 文件时,chromecast 返回错误代码 2100
我想知道 HTML 选框是否允许在控件(或容器)的开头使用静态文本,以便当文本向左滑动时它会滑动传递文本? 例如。 我正在查看要静态对齐到左侧的日期,数据库中的文本将滑过它,然后从右侧重新出现。 HT
如何在ExoPlayer2上设置字幕?我试过这个 tu bild MergingMediaSource: SingleSampleMediaSource singleSampleSource
我正在使用 FFMPEG 使用如下命令刻录字幕: ffmpeg -i video.mp4 -vf "subtitles=subs.srt:force_style='Fontsize=24,Primar
我有一个输入文件,它基本上是一个 .ts 文件,其中包含 4 个 dvb 字幕流(嵌入其中)。我正在使用以下命令在输出视频中保留 dvb 字幕。 ffmpeg -i Input.ts -c:a cop
假设我想查找副标题中包含“法国总统选举”一词的视频列表。 我可以使用 YouTube API 做到这一点吗? 如果它甚至可以在人工生成和自动生成的字幕中搜索,那将是完美的。但是如果它可以搜索两种类型的
我正在尝试将 YouTube 视频嵌入 YouTube iframe。 视频有一个 yt:cc=on 标签,这意味着默认情况下会加载字幕。 (即使用户不想要,属性 cc_load_policy=1 也
我正在使用 ggplot2 来改进降水条形图。 这是我想要实现的可重现示例: library(ggplot2) library(gridExtra) secu <- seq(1, 16, by=2)
我正在尝试从外部 url 播放电影的字幕,但它不起作用,当我尝试添加本地存储的 vtt 文件时,它就起作用了。下面是代码 上面的代码不起作用。但是当我复制 vtt 的内容时它起作用了。 请
我有一个包含单元格的表格,其中只有在搜索了某些内容后才会出现副标题。这是 cellForRowAtIndexPath 的代码: - (UITableViewCell *)tableView:(UITa
不确定这是不是该问的地方,但我在其他地方运气不好,之前经常通过查看其他人在本网站上的问题和答案来设法找到问题的答案。 我最近安装了一个 WordPress 插件 (WP Subtitle),它允许我为
我正在使用 ActionBarSherlock 字幕并尝试使用样式更改字幕文本大小,但似乎不起作用。我对主题不太熟悉,所以..我该如何更改?? 提前致谢 最佳答案 @style/Widget
跑马灯动画不行,这是我做的。 它适用于第一个 TextView ,但不适用于第二个。我究竟做错了什么? 最佳答案 这对我
如何以编程方式获取正在播放的 YouTube 视频的字幕? 最初我尝试通过 YouTube API 离线进行, 但是 as it seems YouTube 禁止获取您不是所有者的视频的字幕。 现在我
由于 AVPlayer 渲染的隐藏式字幕有时会与其他 UI 组件重叠,我想在单独的 View 中渲染 cc。 我可以通过将 closedCaptionDisplayEnabled 设置为 NO 来关闭
这有点与 Does YouTube API forbid to download video captions if you are not it's owner? 重复的问题, Get YouTub
因此,我尝试使用默认的 chrome 发送器应用程序为 chromecast 设置隐藏式字幕,根据文档,这应该是可能的,as seen here 。我不明白为什么我的代码不起作用。它与提供的示例代码几
我是一名优秀的程序员,十分优秀!