Проблема кодирования wav в ogg vorbis - PullRequest
0 голосов
/ 04 марта 2011

У меня есть приложение MFC. У меня есть аудио данные, хранящиеся в формате WAV. У меня вопрос, как я могу закодировать массив этих байтов в формат ogg vorbis?

Я нашел пример:

http://svn.xiph.org/trunk/vorbis/examples/encoder_example.c

и попытался использовать его в моем приложении. Сначала я попытался добавить его в свой проект и скомпилировать. Мне пришлось добавить файлы, включенные в вышеуказанный файл, поэтому я нашел их в библиотеках libvorbis и libogg. И все же я не могу связать:

Error 4 error LNK2019: unresolved external symbol _oggpack_writetrunc referenced in function _vorbis_bitrate_addblock bitrate.obj
Error 2 error LNK2019: unresolved external symbol _oggpack_write referenced in function _vorbis_bitrate_addblock bitrate.obj
Error 8 error LNK2019: unresolved external symbol _oggpack_read referenced in function _vorbis_staticbook_unpack codebook.obj
Error 10 error LNK2019: unresolved external symbol _oggpack_look referenced in function _decode_packed_entry_number codebook.obj
Error 7 error LNK2019: unresolved external symbol _oggpack_get_buffer referenced in function _vorbis_bitrate_flushpacket bitrate.obj
Error 5 error LNK2019: unresolved external symbol _oggpack_bytes referenced in function _vorbis_bitrate_addblock bitrate.obj
Error 9 error LNK2019: unresolved external symbol _oggpack_adv referenced in function _decode_packed_entry_number codebook.obj
Error 3 error LNK2001: unresolved external symbol _oggpack_write codebook.obj
Error 6 error LNK2001: unresolved external symbol _oggpack_bytes codebook.obj

Я не мог найти, где определены эти парни. Буду признателен за любую помощь.

Спасибо.

Ответы [ 3 ]

0 голосов
/ 30 января 2013

Мне повезло с: gcc program.c -lvorbis -o program

Я бы хотел, чтобы Ворбис сдал небольшой рабочий экзамен. это будет работать. Я перепробовал там все примеры, и они не очень хороши.

0 голосов
/ 16 февраля 2013

gcc p.c -lvorbisenc -o p
или
gcc p.c -lvorbis -lvorbisenc -o p

Но я еще не проверял, будет ли он кодировать wav.

0 голосов
/ 04 марта 2011

libsndfile - это популярная библиотека для того, что вы хотите.

Что касается ошибок ссылок, похоже, что вы ссылаетесь на код, зависящий от библиотеки, определяющей символы, начинающиеся с "oggpack", поэтому вам нужно включить эту библиотеку в свою ссылку. Но использование libsndfile может быть лучшим решением.

...