视频翻译配音声音、画面、字幕 同步对齐问题

大家都知道,不同语言即使对于同一句话,发音时长也是不同的,比如一句话用中文2s就能说完,但翻译为英语后,句子可能变的很长,需要3s或更多时间才能讲完。如下面的例子,中文读完用时2.3s,而翻译为英文配音后读完需要3.8s(来自deepl.com)。

例子:

中文:用时 2.300 秒

00:00:13,530 --> 00:00:15,830

本期我们介绍电磁阀的功用原理

英文:用时 3.800 秒

"In this issue, we introduce the functional principle of electromagnetic valves."

这种情况就导致在对视频进行字幕翻译并配音后,新视频的时长同原视频的时长不相等,从而造成 "画面、声音、字幕" 无法对齐。

如何解决该问题呢,一种思路是尽量精简译文,保持翻译短小精悍,但除非人工翻译,机器翻译几乎无法做到这一点,因此忽略这种方法。

另外有2种比较容易实现的思路,也是目前我所采用的。

一是强制配音加快语速:

在原时长内必须说完,看上面的例子,英文配音后,正常语速需要 3.8秒,为了让它在 2.3秒 内讲完,需将语速提升为原语速的 1.65 倍,从而实现了 声音、画面、字幕对齐。

但很显然,这种方式必然导致语速时快时慢,而且有时太快,压根听不清说的什么,体验很不好。

二是强制视频慢放延长画面:

以配音后时长为准,将原时长内的视频片段慢速播放,将时长延长到配音时长。

还是看上面例子,原用时 2.3秒,配音时长3.8秒,将原视频里 00:00:13,530 --> 00:00:15,830 这2.3秒时间段内的视频片段截取出来,然后通过 ffmpeg 滤镜 setpts 将视频延长 1.65倍,时长就变为了 3.8秒,这样就和配音时长一致了,从而实现了对齐,而配音并不需要加快语速。

这种方法避免了语速的时快时慢,但很显然又带来了另一个问题:画面变的时快时慢,有时候慢的像是在进行慢动作回放,体验同样不好。

如果同时结合上面两点是否可行呢,自然是可以的。

还是看上面示例,同时采用 "配音加速" 和 "视频慢放" ,将配音语速加快 0.825 倍,即原本 1.65 的一半,同样将视频延长 0.825倍,这样可将影响降到最低,保证了语速不至于太快,同时视频不至于太慢。

感觉仍不完美,还有没有其他办法呢

若是采用人工调整,无论是精简翻译,还是调整配音语速或者视频抽插帧,方法都很多,但效率太低,我想要的是程序自动化实现。

目前想到了另一种思路,即在配音延长后,先检测原视频中,对应每条字幕结尾到下一条字幕开始之前是否存在静音区间,如果有,那就延长本条字幕结尾时间,直到达到配音时长,或者达到了下一条字幕开始时间。

看前文例子,原中文这条字幕:00:00:13,530 --> 00:00:15,830,时长只有2.3s,距离正常播放完毕3.8s的英文配音还差1.5s,此时检测下一条字幕和本条字幕结束时间 00:00:15,830 之间是否存静音时段,这里假如下一条字幕开始时间是 00:00:17,830 ,显然存在2s的区间,那么配音就无需加速,只需要将本条字幕显示结尾时长延长1.5s就可以了。

这是比较顺利的情况,如果后边没有间隔,或者间隔不足 1.5s 怎么办,此时再检测距离同上一条字幕结束是否存在静音片段,如果有,那么就将本条字幕开始时间往前移动,直到延长1.5s或者达到上条字幕结束时间。

但更多见的情况是,前后都移动了仍然无法正常语速播放完毕怎么办呢?

那就强制语音加速,为避免加速太多导致无法听清,设置一个最大加速倍数如1.5倍,超出就不再加速。

那不还是不同步吗?

别忘了还可以继续视频慢速,到了这一步,只能强制视频慢放,直到全部对齐。

这是目前的思路,不完美,但相比其他方法,应该效果要好很多,不过暂时还未实现,仍停留在思考阶段。

相关推荐
在狂风暴雨中奔跑11 天前
Android+FFmpeg+x264重编码压缩你的视频
音视频开发
音视频牛哥16 天前
[2015~2024]SmartMediaKit音视频直播技术演进之路
音视频开发·视频编码·直播
音视频牛哥18 天前
Windows平台Unity3D下RTMP播放器低延迟设计探讨
音视频开发·视频编码·直播
音视频牛哥18 天前
Windows平台Unity3D下如何低延迟低资源占用播放RTMP或RTSP流?
音视频开发·视频编码·直播
音视频牛哥18 天前
Android平台GB28181设备接入模块动态文字图片水印技术探究
音视频开发·视频编码·直播
陈年19 天前
纯前端视频剪辑
音视频开发
声知视界20 天前
音视频基础能力之 Android 音频篇 (三):高性能音频采集
android·音视频开发
音视频牛哥23 天前
RTSP摄像头8K超高清使用场景探究和播放器要求
音视频开发·视频编码·直播
音视频牛哥23 天前
RTMP如何实现毫秒级延迟体验?
音视频开发·视频编码·直播
哔哩哔哩技术25 天前
WASM 助力 WebCodecs:填补解封装能力的空白
音视频开发