Моя цель состоит в том, чтобы получить части аудиофайла, который содержит нешумные звуки, используя SoX. Я прочитал эффекты SoX и нашел noisered
и silence
, которые я считаю полезными. Проблема в том, что я не нашел команду, которая может обрезать аудиофайл на основе молчащих пауз в нем.Обрезать аудиофайл и получить часть между тишиной
1
A
ответ
4
Я считаю, что то, что вы ищете, может быть достигнуто командой sox silence
. Это позволяет вам снять тишину с любой части звука с учетом порога, продолжительности над ним и т. Д.
Для получения подробного руководства обратитесь к sox webpage, раздел молчания очень хорошо написан.
Если вы хотите разделить на молчание, а не «выжимать» все вместе, то вы можете попробовать что-то вроде:
sox input.wav slice.wav silence 1 1.0 2% 1 3.0 2% : newfile : restart
Параметры являются:
input.wav
- аудиовход файл
slice.wav
- имя выходного аудиофайла (номера будут добавляться к каждому фрагменту)
silence
- эффект название
1 1.0 2%
- above_periods, продолжительность, порог
1 3.0 2%
- below_periods, длительность, порог
но тишина обрезка большого аудиофайла в маленькие, я имею в виду, если у нас есть большой аудио файл который содержит «Я использую SoX», отключает этот звуковой файл в маленьких: «I»; «Использовать»; «SoX» – nstanchev
По умолчанию он не разбивает аудиофайл, вы должны использовать немного * sox magic *. См. Мой обновленный ответ. – jojek
Огромное спасибо, я не знаю, правильно ли спросить вас здесь, но вы свободны в течение нескольких минут, чтобы объяснить мне, как это работает. – nstanchev