conversão de lote sox de .raw para .wav

conversão de lote sox de .raw para .wav

Estou tentando converter arquivos 728 .raw em arquivos .wav de 16 khz, mas estou recebendo o seguinte erro

formatos sox FAIL: não é possível abrir o arquivo de entrada `outputdir/rawfile/b95981d1-3aa6-4d10-b755-990915951efc': Esse arquivo ou diretório não existe

script que estou usando é

#!/bin/bash

mkdir -p "outputdir"
for i in rawfile/*.raw; do 
    o=outputdir/${i}
    sox "$i" -r 16000 -e signed ${o%.raw} ${o%.wav}
done

o script está em convert.sh e os arquivos brutos estão na pasta rawfiles. A estrutura do arquivo é como

/Orginal/rawfiles/.rawfiles

e

/Orginal/convert.sh

Eu tenho 728 arquivos para converter arquivos .raw em arquivos wav mono de 16 bits e 16 kHz. Que modificações devo fazer para remover o erro e converter os arquivos?

Responder1

A mensagem de erro diz "não é possível abrir o arquivo de entrada xxx: esse arquivo não existe", então o primeiro passo é irolharat file xxxe veja se ele realmente existe, quais permissões ele possui etc.

Se eu tivesse que adivinhar: o nome do arquivo contém espaços e você obteve apenas a primeira parte do nome do arquivo. Solução: use aspas no script.

Mas pode haver outros motivos pelos quais isso não funciona, e a maneira de descobrir é inspecionar o arquivo. A mensagem de erro existe por um motivo. :-)

informação relacionada