C ++ кросс-платформенный MP3-декодер? - PullRequest
5 голосов
/ 02 июня 2011

Я искал верх и низ и не могу найти приличных декодеров MP3 = /

Мне нужен тот, который будет компилироваться в gcc / linux.

Самым близким, что я мог найти, был libmad, у которого вообще нет документации, и единственный пример, который я смог найти, это пример на их домашней странице, который действительно сложен.

Кто-нибудь знает, где я могу его найти?

Ответы [ 4 ]

4 голосов
/ 02 июня 2011

Я использовал MAD (MPEG Audio Decoder) в прошлом с отличными результатами, поэтому я бы не стал так быстро сдаваться MAD специально разработан для обеспечения высокой производительности на процессорах без операций с плавающей запятой, что желательно, например, при разработке приложений для мобильных устройств.
Я хотел бы порекомендовать вам взглянуть на исходные коды этого проекта (GSPlayer) . Это аудиоплеер для Windows CE / Windows Mobile и использует libmad. Код полностью функциональный, аккуратный и не слишком большой, поэтому он может помочь вам понять, как использовать libmad в ваших собственных проектах.

Возможно, вам придется проверить лицензию (GPL) для libmad, поскольку она может не соответствовать вашим потребностям.

3 голосов
/ 02 июня 2011

Вы смотрели на Хромой ?

Глядя на ее страницу командной строки , я вижу по крайней мере несколько вариантов, которые выглядят многообещающими, например --decode и --mp3input.Это намекает на то, что базовая библиотека способна делать то, что вам нужно, я думаю.Есть ли у него хорошие, хорошо инкапсулированные функции C ++ для декодирования mp3-файлов - это другая история.

Как правильно отмечено в комментариях, вам следует внимательно изучить лицензионные и патентные соглашения.

2 голосов
/ 02 июня 2011

ffmpeg должен уметь обрабатывать MP3 без труда. Как легко получить доступ к этой функции, я не могу сказать.

1 голос
/ 21 января 2012

посмотрите на это приложение, очень простое в использовании, запрограммирован на C и работает на Windows / Linux

http://sourceforge.net/projects/mp3decoder/

...