Как обрезать и соединить несколько частей аудиофайла, используя перекрестные переходы?

528
Sarge Borsch

Я хочу сохранить несколько частей аудиофайла, объединенных вместе, но без каких-либо разрывов («щелчков») в точках соединения. Есть команда SoX, которая делает это ( https://superuser.com/a/677351 ), но она не выполняет перекрестного затухания, поэтому будут разрывы. Есть ли способ достичь этого, используя утилиту командной строки или библиотеку? (Помимо написания моего собственного кода - я бы обязательно сделал это, если бы мне пришлось)

1

1 ответ на вопрос

1
Sarge Borsch

Оказывается, это вполне возможно сделать с SoX, даже с помощью всего лишь одного вызова SoX, использования trimи spliceэффектов. Но числовые аргументы не так просто написать. Все области обрезки, кроме последней, должны включать дополнительное количество времени в конце, которое будет использоваться для кроссфейдинга, и аргументы для сращивания должны также указывать правильные длины 1-й области, включая это дополнительное время, 1 + 2 после первого сращивания, 1 + 2 + + 3-й и т. Д.

Я написал сценарий, который делает это (на языке Scala), и я выпущу его, рано или поздно.

У Sox есть один недостаток: похоже, trimэффект не работает с форматом с плавающей запятой, поэтому в конце аудиоданные преобразуются в (максимум) 24-битный целочисленный формат, это может быть приемлемым или нет в зависимости от вашего варианта использования.

Я знаю, что это три года спустя, но я бы хотел увидеть пример сокс (я не знаю, Scala), даже если он не совсем точно показывает время. kr37 5 лет назад 0
@ kr37 Я давно этим не пользовался, но, может быть, я найду его и уточню ответ с более подробной информацией, когда у меня будет немного свободного времени. Не стесняйтесь пинговать меня снова на выходных, если я еще этого не сделаю. Sarge Borsch 5 лет назад 0
Спасибо, в моем случае сроки не очень точные. Кажется, что простой `sox test.wav out.wav trim 50:00 = 51: 00 52:00 = 53: 00 54:00 = 55: 00 splice -q` работает просто отлично. kr37 5 лет назад 0

Похожие вопросы