Я пишу фрагмент кода в C для pocketsphinx
модуля freeswitch
, чтобы сохранить высказывание (сигнал или звук) в файл. Я получаю аудио как void *data
и его unsigned int len
и должен сохранить его как файл RAW
(или PCM
) (без заголовков). Как это сделать?Написание сырого звука в файл?
Я попытался это:
FILE *_file;
int16_t *_data;
_data = (int16_t *) data;
_file=fopen("utterance","ab");
fwrite(data, sizeof(_data[0]), sizeof(_data)/sizeof(_data[0]), _file);
fclose(_file);
_file=NULL;
Это не работает (Может быть, я не делаю это правильно?). Я также нашел libvlc
и libsndfile
, но не нашел функции, которая бы обслуживала меня. У кого-нибудь есть простой пример/учебник по этому вопросу?
Я работаю на C, VS2010, Win8.1 (x64)
Я не могу поверить, как я пропустил это. Я использовал 'fwrite (data, 1, len, _file);' и он работает. Спасибо за тонну Джейка за быстрый и точный ответ! – codedrunk