roboforum.ru

Технический форум по робототехнике.

-= Александр =- [Всякие интересные вещи]

Блоги посетителей.
Правила форума
В данном разделе каждый может иметь не более одной темы. Тема должна начинаться с логина (ника) робофорума.

Re: -= Александр =- [Всякие интересные вещи]

Сообщение boez » 02 мар 2010, 12:40

Angel71 писал(а):вот тут немного про софтовый плеер http://embdev.net/articles/ARM_MP3/AAC_Player. только без экранчика
незнаю, может как-то можно скрестить с этим проектом http://www.sparkfun.com/commerce/product_info.php?products_id=8603


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

Ну а скрестить наверняка можно - вместо передачи МП3 потока в аппаратный декодер влепить вызов декодирования и передачу в DAC уже декодированного потока. Главное чтобы хватило ОЗУ (хеликсу надо под 25 килобайт). Зато в этом проекте есть некий файловый менеджер, который, если верить комментариям в коде, даже реагирует на поворот плеера изменением ориентации экрана :)
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: -= Александр =- [Всякие интересные вещи]

Сообщение -= Александр =- » 02 мар 2010, 23:50

А как же тогда SparkFun на LPC2148 это делает?
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Angel71 » 03 мар 2010, 00:50

:) с мп3 на армах особо не вдавался в подробности, бо делал только на мегах с внешним декодером (vlsi). мельком много раз встечал инфу о том, что арму для декодирования мп3 хватает порядка 10МГц. :oops: может есть подвижки в большую сторону, незнаю, из-за битрейта например или стерео вместо моно. :pardon: про какой именно битрейт и про стерио/моно в тех статьях шла речь не помню (а может там вообще про это и речи небыло). суть от этого врядли измениться, на 60МГц легко (вариант с коряво написаным кодеком даже не обсуждается).

Добавлено спустя 7 минут 37 секунд:
:) на 100МГц`ом первом пне точно можно было видева декодировать. если не двд, то немного хакая 98ю винду, избавляя её от ненужностей. нормально проигрывалось не всё видео, но таки проигрывалось. на 486ом (dx4-100) точно помню без проблем мп3 проигрывалось и еще что-то в это время можно было делать. современный 60МГц арм с пнём скорей всего или примерно равны или таки шустрее, утверждать не буду, тут почитать/повспоминать/подсчитать нужно. то, что намного шустрее 486го это уже факт
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Michael_K » 03 мар 2010, 01:01

http://www.spiritdsp.com/datasheets/SPIRIT-MP3-Decoder-Datasheet.pdf
Carefully 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 МГц не хватило бы

А вы портируте больше вслепую... :)
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: -= Александр =- [Всякие интересные вещи]

Сообщение avr123.nm.ru » 03 мар 2010, 01:06

-= Александр =- писал(а):А как же тогда SparkFun на LPC2148 это делает?
Линк !
Читайте !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Angel71 » 03 мар 2010, 01:16

похоже этот
http://www.sparkfun.com/commerce/product_info.php?products_id=8603

Добавлено спустя 4 минуты 8 секунд:
ан нет, там vs1002
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: -= Александр =- [Всякие интересные вещи]

Сообщение boez » 03 мар 2010, 18:31

Спаркфан делает это как большинство - на аппаратном декодере, такое и на AVR люди делают.
SPIRIT - слухи о этой чудо-либе бродят очень давно, но видел ли ее кто-нибудь реально???
Helix - 16-битный оптимизированный декодер, 27 МГц для arm7tdmi требует - вот на нем можно делать, о чем я и написал.
libMAD (MPEG audio decoder) - 24-битный мп3 декодер, отличается высоким качеством, наиболее широко применяется в линуксах, но прожорлив и в LPC2xxx на 60-70 МГц скорее всего не втискивается никак.
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Michael_K » 03 мар 2010, 20:25

Тут ведь как обычно есть компромиссы - скорость-качество и скорость-память.
В конце концов делают даже МП3 без психоакустической модели :)
И "телефонное качество" (ну или скажем "говорилку для робота") они вполне
(и с запасом) обеспечивают.

MAD - это другая "крайность" - даже FFmpeg целочисленный раза в два производительнее,
хотя он, вероятно, и проигрывает по качеству.
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: -= Александр =- [Всякие интересные вещи]

Сообщение -= Александр =- » 04 мар 2010, 14:11

Интересно чего лучше будет - 16-битный Helix или внешний vs100X?
Дома у меня 24-битная карточка - хочется конечно такой звук, но и за пределы ARM7 вылезать на хочется...
Вообще это будет mp3-плеер для вело-туристов. Тоесть и зимой и летом и в ливень и в мороз работать должен. Гермокнопки я уже нашел - это будет мембранная клава от микроволновки. Экран будет от Нокии или Сименса - какой раньше найдется. Питание от 2 пальчиковых батареек + вход от внешнего аккума. Такая вот пока задумка... Можно туда еще и фонарик на 5-Вт диоде засунуть - будет очень кстати для ремонта на ночных покатушках - чтоб основную фару не снимать.
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Duhas » 04 мар 2010, 18:05

ммм,а какой там вапще, в мп3-ях, звук то ? )
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Myp » 04 мар 2010, 18:13

бывает мп3 а бывает жуткий мп3 :ROFL:
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Duhas » 04 мар 2010, 18:16

ну проста мп3.. он для наличия музыки, а не для ее качества...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: -= Александр =- [Всякие интересные вещи]

Сообщение -= Александр =- » 06 мар 2010, 00:44

MP3 конечно не аудиофильский формат, но все равно хочется чтоб к нему добавлялось минимум искажений. На программном кодеке боюсь будет неравномерность воспроизведения как в дешевых китайских плеерах - в менюшке копаешься - а воспроизведение от этого лагает... Да и эквалайзер очень бы не помешал - под конкретные наушники настраивать, чтоб звучало одинаково.

В общем-то я еще очень сильно думаю, окончательной картины девайса в голове пока не сформировалось.

Angel71, как ощущения от кодеков vlsi? Если проиграть на нем и на скажем Sony или Iriver одно и то-же - будет разница? Устройство делаю разовое, так что цена и количество деталей мало волнует.
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Michael_K » 06 мар 2010, 01:02

MP3 конечно не аудиофильский формат

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

Это я к чему... Использовать эквалайзер к МП3 - это напрочь убивает идею психоакустического сжатия.
Потому что эквалайзером вы вытягиваете те шумы, которые при кодировании МП3 так старался прятать :)
Естественно это не относится к случаю, когда эквалайзер используется _только_ для компенсации
кривизны АЧХ воспроизводящего тракта.

VLSI работает субъективно неплохо, но на хороших усилителях я его не гонял,
поэтому сравнивать было бы некорректно. :pardon:
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: -= Александр =- [Всякие интересные вещи]

Сообщение Angel71 » 06 мар 2010, 06:25

:oops: нормальных колонках и не воспроизводил. только на мелких Г динамичках (из разобранных старых колонок Sven за "пару баксов"). проверил на паре первых попавшихся мп3`шек, заявленный битрейт воспроизводит. а использовал в основном, когда делал озвучку к меню для светодиодного табло (собирал в основном ради интереса), да когда к р/у машинке озвучку делал. потом убрал, надоела. сейчас где-то валяется.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Пред.След.

Вернуться в Блоги

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6