【问题标题】:How to correct/time shift subtitles in multiple SRT files?如何更正/时移多个 SRT 文件中的字幕?
【发布时间】:2022-01-27 21:22:50
【问题描述】:

有没有办法标记编辑多个 .srt 文件。我们有一个项目,其中最近对视频的编辑将 .srt 文件偏移了 5 秒。我知道如何在单个文件上对 .srt 进行时移,但我想知道是否有办法将 1000 个 .srt 文件时移 5 秒。

我知道的大多数命令行都可以逐个文件地执行,但我还没有看到它适用于文件夹。

【问题讨论】:

  • 创建一个小的测试目录,看看for f in * ; do shifttime --yourArgs .... "$f" ; done 是否能帮到你。也许您也需要处理重命名文件? ...do shiftime ... "$f" > "$f".fixed 。确认fixed 版本具有您需要的内容,然后可以使用一些工作代码发布一个新问题。这确实假设了一个可用的 *nix Shell(bash、zsh、其他一些)。类似的命令也可用于基于 Windows 的机器,或者更好的是,学习 PowerShell。祝你好运!

标签: command-line batch-processing edit srt job-batching


【解决方案1】:

这是一个有趣的挑战。您几乎可以肯定必须编写一些简短的脚本来执行此操作。 sed 和 awk 等命令行工具非常适合此类文本处理任务,但我认为您将面临的挑战是时间码。这并不像在每个时间码的秒字段中添加 5 那样简单,因为您可能会翻过一分钟的边缘(即 00:00:59.000 + 5 = 00:01:04.000)。据我所知,您必须编写一些自定义代码来处理这部分问题。

剩下的很简单,你只需要像find . -name ".srt" | xargs the-custom-script-you-have-to-write.sh这样的命令

抱歉,这不是一个更令人满意的答案。我不知道有任何现有的实用程序可以做到这一点。

【讨论】:

    猜你喜欢
    • 2012-10-03
    • 1970-01-01
    • 1970-01-01
    • 2021-08-23
    • 1970-01-01
    • 2019-03-04
    • 1970-01-01
    • 1970-01-01
    • 2022-06-20
    相关资源
    最近更新 更多