2014-12-12 6 views
0

У меня есть исходные данные ИКМ в следующем виде:FFmpeg преобразования файла данных PCM в WAV файл получать искажены (шумные) данные

0000 0000 0000 0000 0000 0000 0000 0000 
0000 0000 0000 0000 0000 0000 0000 0000 
0000 0000 0000 0000 0000 0000 0000 0000 
0000 0000 0000 0000 0000 0000 0000 0100 
0000 0000 0000 0000 0000 0000 0000 0000 
0000 0100 0100 0000 0000 efbf bdef bfbd 
0000 efbf bdef bfbd efbf bdef bfbd efbf 
bdef bfbd efbf bdef bfbd efbf bdef bfbd 
efbf bdef bfbd efbf bdef bfbd 0000 efbf 
bdef bfbd 0000 efbf bdef bfbd efbf bdef 
bfbd 2900 efbf bdef bfbd 0000 efbf bdef 
bfbd efbf bdef bfbd efbf bdef bfbd 0000 

, и я хочу, чтобы эти данные в WAV файл, когда я преобразовывая от FFmpeg получения шумовые данные по этой команде:

sox -V -t raw -b 16 -e signed -r 16000 -c 1 14_32_7_187.pcm new.wav 

и:

ffmpeg -f s16le -ar 16000 -ac 1 -i 14_32_7_187.pcm -ar 16000 -ac 1 oout.wav 

с использованием как получать шумные данные.

+0

Вы _listen_ к необработанным данным PcM? Он не выглядит достаточно случайным для «реального» raw pcm audio. –

+0

Да, я тоже, в сыром виде тоже искажен. что это значит? – Mahendra

+0

Это означает, что ваш файл '.pcm', вероятно, вовсе не является звуковым файлом, а всего-навсего. 'sox' и' ffmpeg' здесь не виноваты, и ваши призывы к ним выглядят хорошо для меня (для необработанного 16-битного подписанного мало-дневного аудио) –

ответ

1

Выполняя эту команду, мы можем преобразовать необработанные данные в файл wav.

FFmpeg -loglevel паниковать -f s16le -y -ar 16000 -ac 1 -i rawFile.pcm -ar 16000 -ac 1 output.wav

0

По определению, поскольку нет соответствующего формата, любой файл может считаться действительными необработанными данными, будь то аудио или изображение. Независимо от того, имеет ли смысл изображение или звуковой файл до слушателя или зрителя, и не может быть решено, просто глядя на необработанные данные.

Ваши «сырые данные pcm», вероятно, не являются аудиоданными, но это просто может быть звуком двух марсиан, занимающихся любовью, кто знает?

ffmpeg и sox будут счастливы конвертировать любой файл из raw в .wav. Если результирующий файл звучит как случайный шум, есть две возможности:

  • Это действительно сырые звуковые данные, но вы неправильно интерпретировали их. Например: образцы находятся в формате big-endian, и вы интерпретировали их как little-endian

  • Это не сырые звуковые данные вообще, но, например, .mp3 или даже исполняемый файл. Сырые звуковые файлы имеют тенденцию быть довольно случайным образом (вы практически никогда не найти строку «Happy Birthday» в них, но все еще есть маленький шанс, что вы найдете эти байты в записи Реквиема Моцарта)

Ваш файл явно попадает во вторую категорию. Существуют очевидные повторяющиеся шаблоны (efbf bdef bfbd), которые вы никогда не найдете в реальных сырых звуковых данных (кроме, возможно, в марсианском разговоре)