Подтвердить что ты не робот

Как вы обрезаете конец аудиофайла с помощью SoX?

Используя Sox, как я могу сократить аудиофайл на 5 секунд, обрезание с конца?

Например, как обрезать файл с самого начала:

    sox input output trim 5000

Вот как добавить к концу 5 секунд молчания:

    sox input output pad 0 5000
4b9b3361

Ответ 1

Синтаксис sox input output trim <start> <duration>

например. sox input.wav output.wav trim 0 00:35 выведет первые 35 секунд в output.wav.

(вы можете знать, что использует длина sox input -n stat)

Из Документация SoX в команде trim:

Вырезает части из аудио. Может быть задано любое количество позиций; аудио не отправляется на выход до достижения первой позиции. Затем эффект чередуется между копированием и отбрасыванием звука в каждой позиции. Использование значения 0 для параметра первой позиции позволяет копировать с начала звука.

Например,

sox infile outfile trim 0 10

скопирует первые десять секунд, а

play infile trim 12:34 =15:00 -2:00

и

play infile trim 12:34 2:26 -2:00

будет воспроизводиться с 12 минут 34 секунды в аудио до 15 минут в аудио (то есть 2 минуты и 26 секунд), а затем возобновить воспроизведение за две минуты до окончания звука.

В выражении dpwe значения позиции интерпретируются как относящиеся к предыдущей позиции, если они не начинаются с = (в этом случае они относятся к начало файла) или - (в этом случае они относятся к концу файла).

Итак, вырезание за пять секунд с конца будет sox input output trim 0 -5

Ответ 2

Выше команда неверна, она будет вам только на 5 секунд. Вам действительно нужно использовать:

sox input output reverse trim 5 reverse 

который вырезает 5 секунд с конца файла.

Ответ 3

Я новичок в SoX, но заметил, что эта страница часто появляется в результатах поиска для обрезки аудио, и многие из них будут пытаться делать подобные вещи.

В качестве таковой я хотел предоставить то, что, как я нашел, было лучшим решением лично.

Я столкнулся с тем же 'click' в конце файла, о котором упомянул John Smith Optional. Это предполагает, что кратковременное исчезновение может удалить любые артефакты скрепления, поскольку звук заканчивается и, конечно же, он работает. Принятие отрицательного значения параметра положения затухания для указания времени до окончания звука является ключом.

Поэтому я не вижу лучшего способа достичь цели OP, чем это:

sox full_length.wav trimmed.wav fade 0 -5 0.01

Параметр 1 равен '0', поэтому нет затухания. Параметр 2 удаляет последние 5 секунд Параметр 3 использует затухание 10 мс