Há uma diferença entre os contêineres e a codificação. O m4v é um contêiner, assim como WAV, WMA, WMV, AAC, etc. Todos eles suportam várias codificações. Mas existem alguns padrões gerais. ffprobe pode ajudar.
A extração de áudio de arquivos de vídeo usando o ffmpeg é abordada muito bem aqui: link
Nele, há um exemplo de como você pode fazer o que está procurando, em alguns casos, usando ffprobe e sed:
for file in *mp4 *avi; do ffmpeg -i "$file" -vn -acodec copy "$file".'ffprobe "$file" 2>&1 |sed -rn 's/.Audio: (...), .//p''; done
Na página vinculada, o texto acima parece estar corrompido por codificação html. Eu tentei consertar isso. Pode ser simplificado para um único arquivo:
ffmpeg -i "myfile.m4v" -vn -acodec copy "myfile".'ffprobe "myfile.m4v" 2>&1 |sed -rn 's/.Audio: (...), .//p''
Mas, se você não estiver usando sed e um shell bash, isso não funcionará. (ou seja, não funciona no Windows). Também não funcionará se a codificação no arquivo de vídeo não for mapeada normalmente para uma extensão de arquivo. No windows, você provavelmente poderia criar um powershell ou vbscript que faria a mesma coisa.