Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Исходники конвертеров аудио форматов


Автор: OlegIT 28.4.2010, 20:53
Где найти исходники конвертеров аудио форматов, например Ogg Vorbis, MP3, AAC, WMA, FLAC, MIDI  ?

Автор: Alexeis 28.4.2010, 21:53
OlegIT, Для этих форматов существуют более чем один енкодер/декодер. Думаю нужно сначала выбрать какую библиотеку использовать. 

Вот пример использования lame mp3 encoder http://lame.cvs.sourceforge.net/viewvc/lame/lame/test/lame_test.cpp?revision=1.1&view=markup

  Библиотека Bass.dll поддерживает довольно много декодеров. Но вряд ли это самое лучше качество, которое можно получить.

Автор: OlegIT 29.4.2010, 11:38
Мне нужны именно исходные тексты, желательно на С, Применение будет не в РС. Если есть из чего выбрать, то это ж хорошоsmile Поиском нахожу только программы конвертеров, без исходников. Подскажите ссылки, где можно исходники найти.

Автор: Alexeis 29.4.2010, 12:28
А так нужны исходники самих декодеров/енкодеров ... 
Думаю все найти не получиться. 
Сам исходник енкодера lame вот тут http://sourceforge.net/projects/lame/files/lame/ 
исходники декодера mpeg123 тут http://www.mp3-tech.org/programmer/sources/mpg123-0.59r.tar.gz
AAC декодер в составе mpeg4 тут http://www.mp3-tech.org/programmer/sources/IM1-2D-2.6-all.zip
OGG декодер/енкодер                    http://downloads.xiph.org/releases/vorbis/
WMA - коммерческий закрытый формат.
FLAC - декодер/енкодер                 http://sourceforge.net/projects/flac/files/flac-src/
MIDI - формат простой, но требует наличие в системе синтезатора. Тут скорее нужно искать софварные музыкальные синтезаторы. Перекодировать в него невозможно. Только подбор нот.

Добавлено через 13 минут и 59 секунд
Хотя не вру. WMA коммерческий, но сорцы декодера есть. Например в проекте ffmpeg. Кстати оттуда можно достать вообще все декодеры одним махом. Сорцы доступны из SVN
Например svn://svn.ffmpeg.org/ffmpeg/trunk/libavcodec/wma.c

Автор: OlegIT 29.4.2010, 20:25
Огромное Вам спасибо. Будет чем в ближайшие недели две занятьсяsmile)

Автор: OlegIT 10.6.2010, 21:16
Скачал библиотеку ffmpeg. Вроде как всё что нужно есть. Поставил Cygwin и застопорился. Не разберусь, какие аргументы нужно для configure, что бы получить нужный мне make файл. Может есть более подробный текст, для чего нужен каждый аргумент?

Автор: djamshud 10.6.2010, 22:16
Кроме ffmpeg есть еще mencoder (mplayer).

Откуда нам знать, какой Makefile вам нужен? ./configure --help попробуйте.

Автор: S11 11.6.2010, 08:23
Цитата

Огромное Вам спасибо. Будет чем в ближайшие недели две занятьсяsmile) 


Сомневаюсь, что это так мало времени займёт, ещё и с учётом того, что проект не на PC.

Автор: OlegIT 11.6.2010, 21:54
Цитата

Сомневаюсь, что это так мало времени займёт, ещё и с учётом того, что проект не на PC. 

Да это так, к словуsmile

Цитата

Откуда нам знать, какой Makefile вам нужен? ./configure --help попробуйте. 

Читаю я этот текст, даже распечатал его. Но дело ещё в том, что я слабоват в Unix командах. Сейчас остановился на такой строке в своём файле *,sh  (arm архитектура): ./configure --enable-bzlib --enable-libopencore-amrwb --enable-libamr-wb --enable-cross-compile --cc=arm-kgp-eabi-gcc
Из командной строки компилятор виден (пути прописаны), а ошибку выдаёт такую "C compiler test failed.", не проходит проверка "if test -z "$cross_prefix" && ! enabled cross_compile ;". И что это значит не пойму.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)