16

У меня есть несколько длинных аудиофайлов (по 80 минут каждый; m4a), и я хочу, чтобы они были разбиты на 5- или 10-минутные фрагменты.

Я вижу много вопросов по разбиению аудиофайла на длительные паузы, тоны и т.д., Но не могу найти ни одного относительно этой простой операции. Кто-нибудь знает простой способ сделать это?

Конечно, что-то автоматическое, и с командной строкой все в порядке - даже предпочтительнее.

Заранее спасибо!

4 ответа4

20

С недавним ffmpeg (загрузите статическую сборку отсюда):

ffmpeg -i in.m4a -f segment -segment_time 300 -c copy out%03d.m4a

Это использует сегментный мультиплексор и копирует битовые потоки. Если ваш файл содержит аудио и видео потоки, вы можете отключить видео поток с помощью -vn .


Вот одна строка, вам просто нужно установить Ruby и FFmpeg :

ruby -e '(0..4500).step(300) { |x| system "ffmpeg -ss #{x} -i in.m4a -c copy -t 300 out-#{x}.m4a"}'

Просто выполните это в той же папке, где находится in.m4a . Он скопирует звуковой поток битов, поэтому выполнение этого, вероятно, займет менее нескольких секунд.

Объяснить:

  • 4800 секунд - это длина аудиофайла (80 минут × 60 секунд), поэтому наш последний разделитель составляет 4500 (4800 - 300 секунд).
  • Мы идем от 0 до 4500, и мы разделяем каждые 300 секунд (5 минут × 60 секунд).
  • FFmpeg запустится в время, указанное -ss
  • И он будет копировать в течение времени, указанного -t
  • Будет записано несколько выходных файлов с именем out-<x>.mp4 , где <x> - время начала в секундах.
2

Прошло много времени с тех пор, как этот вопрос был задан, но после того, как я начал дурачиться с Ruby и ffmpeg, я решил, что должен быть более простой способ сделать это в Windows, и обнаружил, что так и есть.

Скачайте и установите Audacity

Создайте текстовый файл где-нибудь, где вы сможете найти его и вставьте в него следующую строку: (300-секундные интервалы, т. Е. 5 минут, 10 минут - это 600 интервалов и т.д.)

0       300  
300     600  
600     900  
900     1200  
1200    1500  
1500    1800  
1800    2100  
2100    2400  
2400    2700  
2700    3000  
3000    3300  
3300    3600  
3600    3900  
3900    4200  
4200    4500  
4500    4800  
4800    5100  
5100    5400  
5400    5700  
5700    6000  
6000    6300  
6300    6600  
6600    6900  
6900    7200  
7200    7500  
7500    7800  
7800    8100  
8100    8400  
8400    8700  
8700    9000  
9000    9300  
9300    9600  
9600    9900  
9900    10200  
10200   10500  
10500   10800  
10800   11100  
11100   11400  
11400   11700  
11700   12000  
12000   12300  
12300   12600  
12600   12900  
12900   13200  
13200   13500  
13500   13800  
13800   14100  
14100   14400  
14400   14700  
14700   15000  

Просто убедитесь, что количество интервалов больше, чем общая длина ваших аудиофайлов, я создал этот, который работает более трех часов, достаточно долго для моих нужд, добавив к нему больше, чтобы удовлетворить ваши потребности.

Импортируйте аудиофайл в Audacity и произведите балансировку и любые другие изменения, которые вы хотите, затем нажмите на файл> метки> импортировать метки

Выберите текстовый файл, затем выберите дорожку метки и звуковую дорожку одновременно и нажмите «Файл»> «Экспорт нескольких».

Измените тип файла, в который вы хотите экспортировать и настройте параметры, затем выберите папку назначения.

Я всегда изменяю шаблон нумерации на «Нумерация после префикса имени файла» и набираю имя файла, которое я хочу, в поле, и программа добавит номера, нажмите «Экспорт» и «Альт»!

2

Я искал решение для этого сам. Я нашел самый простой способ сделать это через MP4Box:

mp4box -split 300 infile.m4a

Где "300" - это время в секундах. MP4Box будет автоматически записывать пронумерованные выходные файлы.

(Вам не нужно устанавливать все большое приложение GPAC. Это файлы, которые вы можете извлечь из архива для его работы: js.dll; libeay32.dll; libgpac.dll; MP4Box.exe; ssleay32.dll)

-1

Скачать Audacity - это бесплатный аудио инструмент, который может делать именно то, что вам нужно, и он абсолютно бесплатный и простой в использовании. http://audacity.sourceforge.net/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .