Pergunta

Estou usando o seguinte comando no SoX para dividir muitos arquivos de áudio grandes em cada local onde há silêncio por mais de 0,3 segundos:

sox -V3 input.wav output.wav silence 1 0.50 0.1% 1 0.3 0.1% : newfile : restart

No entanto, isso ocasionalmente acaba criando arquivos totalmente silenciosos e cortando o áudio antes de cada intervalo.

Encontrei melhores resultados com o Audacity, mas preciso dividir centenas de arquivos WAV e o Audacity não consegue nem abrir 10 arquivos simultaneamente sem congelar.

Como posso usar o SoX ou software semelhante para dividir os arquivos no final dos períodos de silêncio de 0,3 segundos, de modo que a parte silenciosa ainda esteja afixada no final da fala, mas não antes e não haja clipes totalmente silenciosos , a menos que venham do início de input.wav?

Foi útil?

Solução

se você alterar 0,5 para 3,0, funciona bem:

sox -V3 input.wav output.wav silence 1 3.0 0.1% 1 0.3 0.1% : newfile : restart

Outras dicas

Você não especificou nenhuma linguagem de programação, então presumo que você não esteja procurando uma maneira de programá-la sozinho (o que torna isso um pouco fora do assunto aqui).A propósito, não seria muito difícil de fazer.

De qualquer forma, talvez isso funcione para você:

http://www.nch.com.au/splitter/

Você pode definir um limite em dB para dividir.Acho que quando você define para 0dB, você obtém todo o áudio necessário por fatia.

sox -V3 orig.wav p.wav silence -l  0   1 0.5 0.1% : newfile : restart

isso funciona para mim.Encontrei algumas explicações úteis sobre o comando aqui e aqui.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top