объединять/объединить сотни TS файлов в один файл TS

загрузка видеопотока с curl, я закончил с ~400 *.файлы ts, каждый размером около 1 МБ. Они последовательно пронумерованы video1.ts, video2.ts ...video400.ts. Теперь мне нужно объединить их в один файл, видимо, в правильном порядке (так video10.ТС следует video11.ts и не video110.ts).

Я пытался придумать что-то вроде "for i in *.ts; do ...."но я просто не могу понять это. Также ffmepg и avconv слишком сложны для меня.

кто знает как соединить эти 400 файлов в нужном нравится, в новый файл? ТХ!

13
задан An Dorfer
15.04.2023 12:08 Количество просмотров материала 2688
Распечатать страницу

5 ответов

какой трюк:

for i in `seq 1 400`; do cat "video$i.ts" >> newvideo.ts; done

но теперь звук рассинхронизирован на ~ 0.5 сек и каждые несколько секунд происходит ~0.5 сек тишины (предположительно, когда фрагменты склеены вместе).

1
отвечен user140222 2023-04-16 19:56

Это старый вопрос, но я надеюсь, что ответ может добавить ценность для других.

на основе этой ссылке, следующий сценарий будет делать работу, предполагая ffmpeg 1.1 и позднее.

#!/bin/bash

for i in `seq 0 $totalNumberOfTsFiles`; do echo  file "'${i}.ts'" >> Input.txt ; done
/home/hq6/bin/ffmpeg-2.3.3/ffmpeg -f concat -i Input.txt  -c copy output.ts
1
отвечен merlin2011 2023-04-16 22:13

попробуйте выполнить следующую команду:

cat video?.ts video??.ts video???.ts  > out.ts
0
отвечен Roadowl 2023-04-17 00:30

Лучшее Решение:

скачать TSSplitter, нажмите вкладку "JOIN" и перетащите все файлы в окно!

enter image description here

0
отвечен T.Todua 2023-04-17 02:47

filenames="`ls -rt1 $input | tr '\n' '|' | sed '$ s/.$//'`"

ffmpeg -i "concat:$filenames" -c copy out.ts,

здесь $input - это имя файла(ов) или сбежал регулярное выражение (например, \*.ts).

0
отвечен Geremia 2023-04-17 05:04

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх