Как слить два файла * .srt

См. Этот вопрос.

Я только что объединил два avi-файла cd1.avi и cd1.avi в movie.avi используя:

 avimerge -o movie.avi -i cd{1,2}.avi 

Проблема в том, что мне пришлось подзаголовки файлов, связанных с первыми avi файлами:

 cd1.srt cd2.srt 

Сначала я попытался объединить файлы вместе:

 cat cd{1,2}.srt > movie.srt 

Но это вызвало хаос с субтитрами … любые предложения?

2 Solutions collect form web for “Как слить два файла * .srt”

Это довольно сложно, так как файлы .srt – это просто текстовые файлы, содержащие метки времени – все, что вам нужно сделать, это добавить длину cd1.avi во время всех субтитров в cd2.srt . Вы можете найти длину cd1.avi с ffmpeg :

 ffmpeg -i cd1.avi # Look for the Duration: line 

А затем добавьте это в cd2.srt используя srttool

 srttool -d 12345 -i cd2.srt # 12345 is the amount to add in seconds 

или:

 srttool -a hh:mm:ss -i cd2.srt # The first subtitle will now start at hh:mm:ss 

Затем вы должны просто объединить файлы и перенумеровать:

 srttool -r -i cd.srt 

Я выбрал srttool потому что в Arch он поставляется с transcode , который вы установили для этого вопроса ; есть много других инструментов, которые могут сменять и объединить файлы .srt и, по крайней мере, один веб-сайт, погрузиться

Я создал это как онлайн-инструмент давным-давно, но потерял его из-за некоторых проблем. Теперь я начал оживлять этот инструмент, и вы можете найти его под http://srtsubmerge.webpgr.com/, он еще не совсем закончен, но вы можете надеяться на улучшения или напомнить мне 😉

  • Очистка экрана GNU после полноэкранного приложения
  • Команда запуска на основе вывода другой команды
  • Как я могу правильно удалить строку, которая будет передана оболочке с аргументом команды
  • Необходимость grep-файла с конкретным письмом и переход в другую папку Linux
  • Копирование рекурсивно файлов с пробелами
  • Как читать из stdin при замене процесса?
  • Почему grep показывает разные результаты, когда я использую file1 как шаблон в файле2 и наоборот?
  • Есть ли (относительно) безопасный способ запуска команд CLI из Интернета?
  • Усредняющий вывод dstat
  • -bash: lstat: команда не найдена
  • Как запустить самую последнюю команду в AIX?
  • Interesting Posts

    Будет ли перерабатывать идентификаторы? Что делать, если вы достигнете максимального id?

    Как сделать принтер с точечной матрицей печатать каждую строку 'tail -f'

    Экран не всегда отключается самостоятельно

    Создать символическую ссылку в текущем каталоге

    SELinux Запись доступа для vsftpd и samba

    Python не распознает LD_LIBRARY_PATH?

    Как переключиться с одного рабочего пространства на другое в Linux Mint / Ubuntu (KWin)?

    Обновите MySQL 5.0.88 до 5.1.69

    Использовать пользовательскую конфигурацию без полномочий root для учетной записи root

    Ubuntu: / proc / pid / файл сообщения отсутствует

    Отключить логин пользователя без отключения учетной записи.

    Что вызывает паузу во время зонда системного устройства?

    Как я могу выполнить скрипт оболочки, который существует в длинном пути с помощью одной команды без первого cd'ing в каталог?

    Возможно ли установить подкаталог на ftp-сервере через curlftpfs

    Почему я не мог убить процесс NOHUP?

    Linux и Unix - лучшая ОС в мире.