SoX - Sound eXchange Files
Код:
for %%* in (c:\A\*.wav) do sox "%%~*" -t wavpcm "c:\@\%%~n*.wav" trim 0 2 Хотелось бы заменить жёсткое указание целевых папок, хотя бы одну убрать IN или OUT. Я имею ввиду сделать "батник", положить его в папку windows и просто обращаться к нему из разных папок как к утилите. Как бы надстройка над sox.exe Почему ".wav" надо приписывать? А если %%~f вместо %%~n Или использовать относительные пути ..\..\ Вся проблема в перечислении файлов, если бы просто sox *.wav, но так не работает, может через dir | .. как-то? Хотя FOR тоже хорошо, но замысловато. --- Вобще-то я сделал из папки r в папку w, вроде корректно Код:
for %%* in (r\*.wav) do sox "%%~*" -t wavpcm "w\%%~n*.wav" pad 0 5 |
Какое действие над wav тут производится?
Цитата:
|
Код:
for %%* in (r\*.wav) do sox "%%~*" -t wavpcm "t\%%~n*.wav" pad 0 5 Дело в том что короткие файлы сами не удлиняются, чтобы их привести к одинаковой длине. Хотя может в документации это можно совместить, не знаю. |
Не понимаю смысла. Добавляется 5 секунд в конце, а потом берётся 3 секунды в начале?
Может быть, лучше перейти на ffmpeg как более универсальное, гибкое и постоянно обновляемое решение. https://ffmpeg.org/ffmpeg-all.html#apad https://ffmpeg.org/ffmpeg-all.html#atrim Там можно комплексный фильтр прописать. |
Вначале 0 (ничего не добавляется)
Добавляется 5 в конец, а потом обрезается до 3-х, чтобы всё получились одной длины. Если файлы короче 3-х, то они игнорируются, к тому же ошибки об этом в консоль выводятся. Но мне нужны все одной длины, заодно выровнить. pad по русски значит append :) |
https://madskjeldgaard.dk/posts/sox-...it-by-silence/
Код:
sox threebursts.wav burst_num.wav silence 1 0.1 1% 1 0.1 1% : newfile : restart -- ffmpeg может разделить файл на несколько по.. тишине между.. звуком? ...как бы альбом на треки скажем? Sox пока я не понял, оставляет куски тишины вроде бы при жёстких установках, хотя дело делает, режет. |
|
Время: 15:53. |
Время: 15:53.
© OSzone.net 2001-