用字幕处理视频

最近搓了一个用字幕切分视频的脚本,https://github.com/tumuyan/video-shuffler-for-aegisub
众所周知,目前搜索视频内容是有困难的,但是字幕是文本,所以搜字幕的内容代替搜视频,然后用字幕的时间进行定位很容易。使用这个工具,可以把搜到的结果对应的视频片段快速导出并使用。

感觉没什么人有这种需求,就不多讲解了,随便录了一个操作方式的视频

然后今天忽然想到另一个问题,大家应该都看过影视作品的长截图,就图很长,顶部是视频的正常截屏,下放是几十行字幕拼接起来。
如果纯手工把视频进行截屏,然后用工具拼接,工作量是非常大的。
所以有没有工具,几乎不做重复性的动作,就能使用视频和字幕文件,快速得到这样的拼接结果呢?
如果真要做这么一个工具,其实难度也并不大,但是我自己目前没有相关需求暂时就不搓了,纯讨论。

拼接字幕那个我见过:

好像还是没有脱离重复截屏的动作

你说这个好像的确啊。不过这款挺久的了,近期是没怎么发现类似的工具。

我觉得,大概思路可以指定时间区间,然后自动识别字幕去拼接,也不知道有没有。

说起字幕剪视频,想起了这个

1 个赞

自动剪辑的概念其实出现的要更早,就是根据是否在说话来删除不需要的内容.
李沐老师的项目创造了用语音识别字幕,再用md文件编辑的新思路.但是这个方法并不很实用.
首先md文件其实是多此一举,其次无法在gui中实时预览,另外是这个项目没有实现非线性编辑,只能线性编辑,还有处理后并不能导出新时间轴的字幕,最后是pymovie这个库其实效率很低

所以我实际上做了另一个项目(不是帖子里的这个),部分解决了上诉问题,现在我可以在aegisub中用图形界面编辑字幕,然后导出非编后的内容.但是由于思路太过超前(???)感觉没人用,而且同样没有解决pymovie的效率问题,所以就没有讲.

帖子的内容是针对字幕预览发现有感兴趣的内容,快速导出的一个方法,通用性其实要更高

既然字幕里有时间轴,选择对应字幕,然后获取对应时间点的视频画面再拼起来,第二张以后具体要取多少画面可能有点麻烦,可以手动设定一个高度范围。
更进一步,第二张以后的画面相对不重要,甚至可以直接把字幕转成图片拼到第一张下面就行了。
主要的工作应该ffmpeg都能做到,不过我也就随便一说,成品我是撸不出来了。

我对于用字幕剪辑视频是有需要的:

现在视频太水, 真正有用的东西可能占比很少.
想了很多办法快速定位知识点,
其中对于长篇大论的视频,
用字幕辅助定位是非常高效的.
而能用字幕进行剪辑, 将关键点萃取出来,
比较方便传播和回溯.

说实话, 视频这种东西是很好的广告载体,
但从传播知识方面, 可能不如文字来得高效.


尝试 使用了你的视频剪辑的脚本,
(可能我还 不得要领)
发现脚本无法做到选择不连贯的字幕片段,
并将其"直接"输出成一个合集.

而只能将这些不连贯的片段输出成单独的视频片段,
再用其他工具进行组合.

其中的区别就仅相差组合这一步,
不知道有没有办法在脚本中做到呢?


而关于shuffler, 不太清楚这是做什么用的.
看了github的说明, 也不得要领.
可否简单给个实例辅助说明下?


我也使用过autocut,
他内置的whispter确实有些矛盾,
我觉得主要的原因是识别字幕太慢.
其次是md编辑其实不如compressed srt更方便,
但是后者没有提供单独的操作命令.

仓库里的两个lua脚本,一个是仅用ffmpeg对连续的字幕片段对应的内容进行保存,不做额外的处理。另一个是用于调用video shuffler。

video shuffler的逻辑是,针对编辑后的ass格式的字幕,对视频文件进行处理。目前的完成度还不太够,介绍也很简单。

我的操作逻辑是,用他把视频裁剪出有用的部分,构成几个章节,然后用其他工具或者 -m merge参数把这些章节组合在一起。

裁剪逻辑是这样的:

  1. 如果相邻字幕之间的时间大于-t参数,则抛弃两段字幕之间的内容
  2. 如果字幕后方有被标记为注释的内容,则抛弃注释的内容
    所以如果有需要删除的内容,则直接删除字幕或者把字幕标记为注释
    参考 GitHub - tumuyan/video-shuffler: Cut video to clips and shuffle them by ass file | 洋片箱:用ASS字幕文件切割视频,并重组输出
-m  merge filelist.txt 这样的参数,可以把filelist.txt中的裁切后的视频和字幕按照文件列表的顺序组合在一起。

感谢你的回复, 对你的脚本有了更多的理解, 也期待着能更加简化操作:

  • 可以转换srt为便于编辑的版本, 也就是一行一个时间戳.

这样做不光可以直接使用文本编辑器编辑, 脱离使用字幕软件的局限
而且还能做字幕顺序调整, 应对前言不搭后语的视频很有用.

  • 可以对调整好的字幕直接输出拼接结果.

  • 同时保留一个选项, 对字幕中每句话单独输出.

不过以上部分可能就要脱离Aegisub了. :frowning:

ass字母本身就是文本可以用其他软件编辑,是比srt更强的字幕格式。

我在想要不要明天下午开个直播一起看一下这玩意

@yazii 直播地址烦请发布在这里一下, 我去观摩. :slight_smile:

暂定明天下午一点吧,可以直接和你连麦

这… 昨儿有点儿事儿没看网页. 结果错过了.呜呜. bilibili不会有直播历史存档吗?

我就随便播一下 没什么价值 不做录播的。
你可以约个时间 基本上我晚上都有空