Клуб DiyAudio

Источники аудиосигнала => Цифровые => Тема начата: blindman от 22 Апреля 2012, 15:11:58

Название: Аудиоплеер на основе mini2440
Отправлено: blindman от 22 Апреля 2012, 15:11:58
Понемногу начал воплощать мысли по созданию плеера на базе mini2440. Появляются вопросы, поэтому решил создать тему, может кто чего посоветует.

Итак, что имеем. Одноплатный компьютер, процессор ARM9 400 МГц, на борту 64 ОЗУ, 128 флэш, USB device, USB host, слот для карт SD/MMC, 100 Mbit/s Ethernet. ЖКИ 3,5" с тачскрином, может быть заменен на 7" или VGA адаптер.

Что хочется получить

1. Аудиоплеер с поддержкой как можно большего числа аудио форматов
2. Прием потокового вещания (интернет радио и т.п.)
3. Поддержка различных носителей (карты памяти, USB flash, жесткие диски, CD)
4. Удобная база данных по исполнителям, альбомам, жанрам и т.д.
5. Дистанционное управление
5. ?? ?? ?? ?? ?? ??

Как все это реализовать?

Железо

1. Жесткий диск, CD-ROM, карты памяти и флэшки подключаем через картридер с встроенным USB хабом
2. В слоте на плате - карта памяти с корневой файловой системой
3. С выводом звука пока не ясно. Пока что использую набортную UDA1341. Понятно, что далеко не лучший вариант. Варианты - USB DAC, или выводить данные через системную шину во внешний буфер с памятью, который будет выдавать I2S на ЦАП. Второй вариант на макете опробован. А через USB, есть сомнения, что потянет одновременно читать с внешнего носителя и выводить в ЦАП - хоcт поддерживает только USB 1.1
4. Приемник дистанционного управления, кнопки (возможно энкодер) - на отдельной плате

Софт

1. Linux
2. Собственно воспроизведением звука будет заниматься mplayer. Это дает поддержку кучи форматов, сетевых протоколов и т.д.
3. Основа GUI - nano-X. Скорее всего "голая", без всяких дополнительных слоев (типа FLTK  и тому подобных) - но это еще не решено окончательно. Применение nano-X хорошо тем, что позволяет предварительно тестировать софт на ПК.
4. Настройка - через web интерфейс.
5. Заливка файлов на жесткий диск - через FTP.

Что сделано на настоящий момент

1. Собран и опробован mplayer. Протестированы форматы WAV, MP3, Ogg/Vorbis, FLAC, APE, AAC, WMA. APE и AAC не тянет, звук заикается. Интернет-радио играет.
2. Собран и опробован nano-X
3. Написана базовая обертка для mplayer, которая позволяет запускать/останавливать воспроизведение, перематывать, и т.д., а также читает метаданные и парсит cue-файлы.

Встал вот такой вопрос - как реализовать интерфейс. Самое простое - лазим по папкам, запускаем файл, он проигрывается до конца, потом следующий, и так до последнего файла в папке. Но хотелось бы также иметь базу данных по тэгам - жанр, исполнитель итп, а также поддержку плэйлистов. Как это удобно реализовать - пока мыслей нет. Экран маленький, тыкать в него - удовольствие небольшое, тем более что девайс будет не переносной, и экран на передней панели.
Название: Re: Аудиоплеер на основе mini2440
Отправлено: KiFFiR от 22 Апреля 2012, 16:30:14
Озадачили, если б не портатив, то можно было б взять мать на Cortex А8, к примеру beagleboard с поддержкой HD-video, камень 1Ггц у нее Убунту и XBMC повесить и там творить. А так частота низковата, а желаний у всех много))
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 23 Апреля 2012, 05:20:41
 :D девайс будет не переносной

Видео мне не надо. И большой экран тоже. Хочется коробку типа CD-плеера, но чтоб играла не только CD, но и любые цифровые форматы. Проблем с железом или написанием софта нет, есть трудности с интерфейсом пользователя.
Название: Re: Аудиоплеер на основе mini2440
Отправлено: Conan от 23 Апреля 2012, 08:18:43
 :off:
Андрей - есть предложение написать вот в эту темку:

http://www.vegalab.ru/forum/showthread.php/50840-Высококачественный-звук-в-Linux-и-в-Linuх-подобных-ОС

Там есть несколько спецов по Linux-у. Ну и так покурить её - там есть кое-что полезное... ;)
Название: Re: Аудиоплеер на основе mini2440
Отправлено: xar от 23 Апреля 2012, 09:31:21
по мне так лучше будет выкинуть весь этот одноплатник и сделать плеер на связке МК + VS1063 + PCM1794.

и добавил...
будет железная поддержка различных форматов вплоть до flac 24бит, ну и неплохой цап (цап конечно же можно выбрать по своему вкусу)
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 23 Апреля 2012, 11:57:43
выкинуть весь этот одноплатник и сделать плеер на связке МК + VS1063 + PCM1794
Это было бы круто. Но вряд ли выполняло бы поставленные задачи
Название: Re: Аудиоплеер на основе mini2440
Отправлено: xar от 23 Апреля 2012, 12:24:38
ну я проблемы вижу только в файлообмене и некоторых онлайн трансляциях. а в общем то если брать данные и гнать их в аппаратный декодер то какая разница откуда.
как вариант можно оставить микрокомп в качестве ядра для гуя и работы с сетью и через гпио слать данные уже на декодер. тогда и нагрузка на комп упадет, и качество будет на уровне. просто я не уверен что нормальный цап будет стоять в одноплатнике
Название: Re: Аудиоплеер на основе mini2440
Отправлено: m.i.s.n от 23 Апреля 2012, 12:41:12
Доброго времени суток Андрей. Если ваша тема еще актуальна то можете посмотреть на это устройство  ;)
http://www.raspberrypi.ru/

Я сам жду такого ;D
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 23 Апреля 2012, 13:00:41
ну я проблемы вижу только в файлообмене и некоторых онлайн трансляциях

Декодирование потоков из сети, поддержка разнообразных файловых систем (vfat, ISO 9660+Joliet, UDF как минимум) - это уже более чем достаточно геморроя

А идея с аппаратным декодером хорошая, спасибо.

Доброго времени суток Андрей. Если ваша тема еще актуальна то можете посмотреть на это устройство  ;)
[url]http://www.raspberrypi.ru/[/url]

Я сам жду такого ;D


Смотрел. Однозначно лучше подходит под задачу, чем mini, 2 порта USB 2.0 чего стоят. Кроме одного - видео только через HDMI, а значит громоздкий монитор. Да к тому же mini у меня уже есть.



и добавил...
Друзья, вопрос выбора платформы не стоит. И я представляю себе решение большинства проблем, которые вижу. Кроме одной - как сделать плеер удобным
Название: Re: Аудиоплеер на основе mini2440
Отправлено: xar от 23 Апреля 2012, 13:40:18
blindman, у рапсберри есть 2 сокета под шлейф. возможно один из них как раз для лсд каких то. точно не знаю конечно, не вчитывался.
меня идея мультимедиа центра давно интересовала, но все не могу добитсья от операционок нормальной скорости загрузки.
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 23 Апреля 2012, 13:54:37
возможно один из них как раз для лсд каких то
Там имеется DSI - как раз видео интерфейс для применения в мобильных устройствах. Но что туда подключать и где это брать - хз. Я пока на миньке потренируюсь :)



и добавил...
По интерфейсу - наверно можно кое-что подсмотреть у андроидного винампа
(Извините, но у Вас нет доступа в Галерею)
(Извините, но у Вас нет доступа в Галерею)
(Извините, но у Вас нет доступа в Галерею)
(Извините, но у Вас нет доступа в Галерею)
(Извините, но у Вас нет доступа в Галерею)


И в рокбоксе еще подсмотрел - в версиях для некоторых девайсов экран разделен на 9 зон - 3 строки на 3 столбца, каждая зона - отдельная кнопка. Не промахнешься
Название: Re: Аудиоплеер на основе mini2440
Отправлено: xar от 23 Апреля 2012, 14:16:45
а нужен ли вообще такой интерфейс? жк индикатор монохромный присобачить и на него рисовать, ну и набор кнопочек хардварных. все таки иксы это лишняя нагрузка на и без этого не слишком мощный проц.
Название: Re: Аудиоплеер на основе mini2440
Отправлено: m.i.s.n от 23 Апреля 2012, 15:19:46
По интерфейсу - наверно можно кое-что подсмотреть у андроидного винампа
Моё скромное мнение мне подсказывает, что лучше посмотреть в сторону минимализма, например в сторону TTPod или стокового плеера WP7. все таки чем меньше графики, тем легче процессору, и больше рабочего пространства для обработки звука.
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 23 Апреля 2012, 15:36:54
Ренат, Антон, дело не в графике и рюшках, а в принципах организации интерфейса, системы меню, навигации. Это должно быть продумано и удобно при любом способе ввода - будь это тачскрин или кнопки на девайсе или на пульте.
Название: Re: Аудиоплеер на основе mini2440
Отправлено: xar от 23 Апреля 2012, 16:27:27
На счет продуманности интерфейса согласен, у нас для этого даже специальный человек имеется. так и умудряемся полноценную и понятную менюшку на дисплее 128х64 и 3х кнопках реализовать
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 24 Апреля 2012, 18:18:01
Решил пока не спешить. Сначала доведу до ума сам плеер, а потом уже буду интерфейсы прикручивать
Название: Re: Аудиоплеер на основе mini2440
Отправлено: m.i.s.n от 24 Апреля 2012, 21:32:19
Сначала доведу до ума сам плеер, а потом уже буду интерфейсы прикручивать
И это правильно  :v:
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 30 Июня 2012, 03:52:59
Ура! Удалось победить AAC  :yah: Сутки крутится радио BBC - AAC 128 кБит/с - полет нормальный, загрузка процессора не более 20%.

Все, окончательно определился с собственно проигрывателем - это будет Music On Console, немного переделанный. Оставлю только сервер, всю клиентскую часть вытру. Клиент с GUI будет отдельным приложением. Форматы - WAV, FLAC, AAC, MP3, OGG/Vorbis. Надо будет только "декодер" WAV сделать, а то MOC для WAV  использует ffmpeg, а тащить этого монстра только ради одного простейшего формата неохота. И надо будет еще его научить понимать cue - как внешние, так и встроенные
Название: Re: Аудиоплеер на основе mini2440
Отправлено: Conan от 30 Июня 2012, 07:25:38
 :off:Да! Дорогу осилит идущий...
Название: Re: Аудиоплеер на основе mini2440
Отправлено: xar от 01 Июля 2012, 20:42:19
blindman, раз уж гуй будет выделенным, то может все же стоит задуматься о железном (о5 я о своем) управлении?
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 02 Июля 2012, 03:17:34
Что значит железном? Кнопками? Я планирую возможность управления через UART и через сеть
Название: Re: Аудиоплеер на основе mini2440
Отправлено: xar от 02 Июля 2012, 15:34:50
blindman, ну уарт это вариант, чтоб гпио лишний раз не заморачиваться. а так - да, кнопками. и дисплей небольшой.
Название: Re: Аудиоплеер на основе mini2440
Отправлено: blindman от 02 Июля 2012, 15:50:09
Ну дисплей небольшой  :D и так есть, и 6 кнопок на плате есть, с готовым драйвером, выводы кнопок выведены также на разъем расширения. С него все равно шлейф выводить на I2S интерфейс, вот на плате интерфейса можно предусмотреть соединитель для клавиатуры. Но это неудобно. уарт - в самый раз.