Я имею .mp3 файл и должен преобразовать это в 1 канал 8kHz wav файл, кто-либо знает, как я могу сделать это с mplayer? В противном случае какие-либо другие инструменты командной строки я мог использовать?
ffmpeg должен сделать задание. Эта строка преобразует в 8 кГц 1 канал wav файл.
ffmpeg -i input.mp3 -ar 8000 -ac 1 output.wav
http://ffmpeg.org/ffmpeg-doc.html#SEC11
Я не уверен в требовании на 8 битов - к чему Вы обращаетесь? Это не скорость передачи, конечно?
SoX может также сделать это; принятие Вашего SoX компилируется с поддержкой MP3, все, в чем Вы нуждались бы,
sox input.mp3 -c 1 -r 8000 -1 output.wav
... хотя Вы могли бы столкнуться с отсечением проблем, в этом случае Вы захотите играть с vol
и/или mixer
эффекты уменьшить объем каналов ввода перед передискретизацией происходят.
Без поддерживающего MP3 SoX используйте декодер MP3 для преобразования MP3 в WAV сначала, затем вышеупомянутая команда становится:
sox input.wav -c 1 -r 8000 -1 output.wav
mplayer -srate 8000 -vo null -vc null -ao pcm:fast:file="$fn.wav" "$fn"
Это будет также работать на извлечение аудиотрека от видео, и любой другой медиа-файл mplayer был настроен для обработки.