как разделить аудиофайл на несколько глав с заданным временем - PullRequest
0 голосов
/ 30 марта 2019

как легче разбить файл аудиокниги с 10 главами при заданных временах метаданных 0.000000, 3472.683000 секунд это ch0

3472.683000, 7642.058000 ч1

и т.д ..

2 столбца начало и конец каждой главы,

я глупая, но пыталась и не удалась с помощью awk добавить столбцы вправо и влево для получения командной строки

    ffmpeg -i output.mp3  -acodec copy -ss  begin -to end  ch'number'.mp3.

проблема с положением NF и последующим увеличением числа новых выходных файлов

как использовать awk или sed и подсчитывать новые имена файлов ch01 ch02 и т. Д.

Ответы [ 2 ]

0 голосов
/ 30 марта 2019

Для этого предназначен сегментный мультиплексор.

ffmpeg -i output.mp3 -c copy -f segment -segment_times 0,3472.683,7642.058 -segment_start_number 1 ch%d.mp3

Я добавил первые три главы. Эта команда создаст ch1.mp3, ch2.mp3, ch3.mp3.

0 голосов
/ 30 марта 2019

время начала и окончания каждой предопределенной главы, цель: 10 командных строк ffmpeg для их разделения

    ffmpeg -i audiofile.mp3  -acodec copy -ss begin to end  ch'number'.mp3

сначала добавьте в начало шаблон '-i output.mp3 -acodec copy -ss' с помощью sed

    sed  -e '1,$s/^/ -i audiofile.mp3  -acodec copy -ss' file1 > file2 #file1 :contains 2 columns of begin and end time 

результат

    -i audiofile.mp3  -acodec copy -ss begin, end  

секунду замените ',' на '-to' глобально на g

    sed s'/, / -to /g' file2 > file3

у нас будет

    -i audiofile.mp3  -acodec copy -ss begin -to end

Счетчик третьего приращения с awk

    awk '{$(NF+1) = "ch"(NR-1)".mp3"} 1' file3 > file4

получаем ch0.mp3 ch1.mp3 ..ch10.mp3

     -i audiofile.mp3 -acodec copy -ss begin -to end ch'number'.mp3 

ffmpeg читать ввод из файла4

    ffmpeg $(cat file4)

у вас будет 10 глав

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...