Технический форум по робототехнике.
Правила форума
В данном разделе каждый может иметь не более одной темы. Тема должна начинаться с логина (ника) робофорума.
boez » 02 мар 2010, 12:40
Первая ссылка правильная

В смысле декодера. Когда-то ковырялись с коллегами с мп3, пришли к выводу, что LPC на 60 МГц libMAD не тянет аж никак, довольно сильно не хватало процессора (декодирование 1 секунды МП3 длилось 1.2 - 1.3 сек). Поэтому подозреваю, что и 72 МГц не хватило бы. А вот Helix пошел, явно меньше секунды требовал - но времени не было доделать.
Ну а скрестить наверняка можно - вместо передачи МП3 потока в аппаратный декодер влепить вызов декодирования и передачу в DAC уже декодированного потока. Главное чтобы хватило ОЗУ (хеликсу надо под 25 килобайт). Зато в этом проекте есть некий файловый менеджер, который, если верить комментариям в коде, даже реагирует на поворот плеера изменением ориентации экрана

-= Александр =- » 02 мар 2010, 23:50
А как же тогда SparkFun на LPC2148 это делает?
Angel71 » 03 мар 2010, 00:50

с мп3 на армах особо не вдавался в подробности, бо делал только на мегах с внешним декодером (vlsi). мельком много раз встечал инфу о том, что арму для декодирования мп3 хватает порядка 10МГц.

может есть подвижки в большую сторону, незнаю, из-за битрейта например или стерео вместо моно.

про какой именно битрейт и про стерио/моно в тех статьях шла речь не помню (а может там вообще про это и речи небыло). суть от этого врядли измениться, на 60МГц легко (вариант с коряво написаным кодеком даже не обсуждается).
Добавлено спустя 7 минут 37 секунд:
на 100МГц`ом первом пне точно можно было видева декодировать. если не двд, то немного хакая 98ю винду, избавляя её от ненужностей. нормально проигрывалось не всё видео, но таки проигрывалось. на 486ом (dx4-100) точно помню без проблем мп3 проигрывалось и еще что-то в это время можно было делать. современный 60МГц арм с пнём скорей всего или примерно равны или таки шустрее, утверждать не буду, тут почитать/повспоминать/подсчитать нужно. то, что намного шустрее 486го это уже факт
Michael_K » 03 мар 2010, 01:01
http://www.spiritdsp.com/datasheets/SPIRIT-MP3-Decoder-Datasheet.pdfCarefully optimized ARM9E version fully utilizes the ARM
DSP instruction set extension, achieving 25% more efficiency as
compared with dual-MAC 16-bit DSPs and performing real-time audio
decoding at just 7.5* MHz clock speed.
Features
• Low CPU load (as little as 7.5* MHz)
• Low memory requirements (12.3 Kb RAM + 24-27 Kb ROM)
• Fully compliant to the MPEG-1 and MPEG-2 layers I, II and III
standards and their low bit rate extension MPEG 2.5
• All MP3 features supported, including VBR
• Decoding accuracy almost the same as for floating-point version
• Extremely high robustness to damaged MP3 bit streams
• Simple API
• TI C5xx version is eXpressDSP compliant. Code is reentrant,
supports multithreading and dynamic memory allocation. At the
same time allows direct (non-eXpressDSP) interface to enable
static memory allocation
*Average CPU load for 48 kHz stereo measured onARM9E simulator with 0-WS
подозреваю, что и 72 МГц не хватило бы
А вы портируте больше вслепую...

avr123.nm.ru » 03 мар 2010, 01:06
-= Александр =- писал(а):А как же тогда SparkFun на LPC2148 это делает?
Линк !
Angel71 » 03 мар 2010, 01:16
boez » 03 мар 2010, 18:31
Спаркфан делает это как большинство - на аппаратном декодере, такое и на AVR люди делают.
SPIRIT - слухи о этой чудо-либе бродят очень давно, но видел ли ее кто-нибудь реально???
Helix - 16-битный оптимизированный декодер, 27 МГц для arm7tdmi требует - вот на нем можно делать, о чем я и написал.
libMAD (MPEG audio decoder) - 24-битный мп3 декодер, отличается высоким качеством, наиболее широко применяется в линуксах, но прожорлив и в LPC2xxx на 60-70 МГц скорее всего не втискивается никак.
Michael_K » 03 мар 2010, 20:25
Тут ведь как обычно есть компромиссы - скорость-качество и скорость-память.
В конце концов делают даже МП3 без психоакустической модели

И "телефонное качество" (ну или скажем "говорилку для робота") они вполне
(и с запасом) обеспечивают.
MAD - это другая "крайность" - даже FFmpeg целочисленный раза в два производительнее,
хотя он, вероятно, и проигрывает по качеству.
-= Александр =- » 04 мар 2010, 14:11
Интересно чего лучше будет - 16-битный Helix или внешний vs100X?
Дома у меня 24-битная карточка - хочется конечно такой звук, но и за пределы ARM7 вылезать на хочется...
Вообще это будет mp3-плеер для вело-туристов. Тоесть и зимой и летом и в ливень и в мороз работать должен. Гермокнопки я уже нашел - это будет мембранная клава от микроволновки. Экран будет от Нокии или Сименса - какой раньше найдется. Питание от 2 пальчиковых батареек + вход от внешнего аккума. Такая вот пока задумка... Можно туда еще и фонарик на 5-Вт диоде засунуть - будет очень кстати для ремонта на ночных покатушках - чтоб основную фару не снимать.
Duhas » 04 мар 2010, 18:05
ммм,а какой там вапще, в мп3-ях, звук то ? )
Myp » 04 мар 2010, 18:13
бывает мп3 а бывает жуткий мп3

Duhas » 04 мар 2010, 18:16
ну проста мп3.. он для наличия музыки, а не для ее качества...
-= Александр =- » 06 мар 2010, 00:44
MP3 конечно не аудиофильский формат, но все равно хочется чтоб к нему добавлялось минимум искажений. На программном кодеке боюсь будет неравномерность воспроизведения как в дешевых китайских плеерах - в менюшке копаешься - а воспроизведение от этого лагает... Да и эквалайзер очень бы не помешал - под конкретные наушники настраивать, чтоб звучало одинаково.
В общем-то я еще очень сильно думаю, окончательной картины девайса в голове пока не сформировалось.
Angel71, как ощущения от кодеков vlsi? Если проиграть на нем и на скажем Sony или Iriver одно и то-же - будет разница? Устройство делаю разовое, так что цена и количество деталей мало волнует.
Michael_K » 06 мар 2010, 01:02
MP3 конечно не аудиофильский формат
Тут еще есть такой момент - надо понимать, как он работает, и правильно пользоваться
- он загоняет шумы (от потерь на сжатии) в диапазоны, к которым ухо наименее чувствительно
(в соответствии со своей усредненной психоакустической моделью "уха" человека).
Это я к чему... Использовать эквалайзер к МП3 - это напрочь убивает идею психоакустического сжатия.
Потому что эквалайзером вы вытягиваете те шумы, которые при кодировании МП3 так старался прятать

Естественно это не относится к случаю, когда эквалайзер используется _только_ для компенсации
кривизны АЧХ воспроизводящего тракта.
VLSI работает субъективно неплохо, но на хороших усилителях я его не гонял,
поэтому сравнивать было бы некорректно.

Angel71 » 06 мар 2010, 06:25

нормальных колонках и не воспроизводил. только на мелких Г динамичках (из разобранных старых колонок Sven за "пару баксов"). проверил на паре первых попавшихся мп3`шек, заявленный битрейт воспроизводит. а использовал в основном, когда делал озвучку к меню для светодиодного табло (собирал в основном ради интереса), да когда к р/у машинке озвучку делал. потом убрал, надоела. сейчас где-то валяется.