Aqui está um artigo sobre como deve ser um arquivo wav PCM:
link
Deve ser capaz de escrever um pequeno script de algum tipo para verificar os cabeçalhos e ter certeza de que eles estão corretos.
Atualização:
Aqui está um pequeno utilitário que pode atender sua necessidade. Ele verifica o arquivo, gera algumas informações sobre o arquivo e sai. O código de retorno é 0 se for bem-sucedido, diferente de zero se houver um problema com o arquivo.
Está escrito em Python e depende da biblioteca de ondas do Python. Você pode extrair o arquivo .py do zip e examinar / executar independentemente ou usar o exe compilado juntamente com os arquivos de suporte incluídos.
Parece funcionar bem, por exemplo arquivos de saída por --decode lame, e pega quando truncar um WAV (verifica se o tamanho do arquivo é são).
Não há como determinar se os dados PCM foram corrompidos sem, e. checksums externos, etc.
Atualização:
Adicionada uma verificação de erros um pouco melhor. Versão exe compilada enlouquece quando wavcheck.py está na mesma pasta, então eu coloquei em uma subpasta (/ src). Ri muito. Link atualizado acima para o novo arquivo.
Atualização:
Eu dei uma olhada no shntool, como sugerido por @boehj - parece um bom software para checar arquivos WAV, e tem uma saída detalhada. Sua saída poderia ser analisada trivialmente ou seu código-fonte modificado para permitir um status de saída totalmente OK no modo 'info' e / ou 'len'. Tal como está, tem o código de saída 0 mesmo quando está a reportar problemas com o ficheiro.
Página inicial do shntool: link