Автор Тема: Проект медиаплеера на базе Orange Pi / Nano Pi  (Прочитано 809 раз)

Оффлайн nabiullin

Приветствую форумчан!

Стоит задача запустить медиаплеер для воспроизведения музыкальных файлов на базе одноплатного компьютера NanoPi / Orange Pi (именно процессор H5 Allwinner) с цифровым выходом по шине i2s в двух режимах Master / Slave, и выход SPDIF.

Функционал плеера:

1.  Воспроизведение файлов в формате MP3, APE, FLAC, WAV, DSF, DSD.
управление плейлистами, чтение карт CUE.
(на текущий момент готовое решение - MPD)

2. Спящий режим по управляющему сигналу посредством GPIO контакта (замыканием на массу или кратковременной подачей + 5 / 3,3 v на контакт GPIO). Для использования в автомобиле с понижением потребления в suspend mode.

3. Перед переходом операционной системы в спящий режим, плеер должен запомнить текущий воспроизводимый трек, его позицию, поставить воспроизведение на паузу.
(на текущий момент готовое решение - MPD)

4. При повторной подаче управляющего сигнала на GPIO операционная система выходит из режима сна/ожидания. Запускается программа / служба плеера, возобновляется воспроизведение ранее сохраненного трека и позиции с момента перевода в спящий режим.

5. Возможность создавать и управлять текущим плейлистом. Браузер файлов, в котором выбирается папка с файлами для воспроизведения, добавление файлов из папки в плейлист, удаление из плейлиста.
(на текущий момент готовое решение - MPD)

6. Поддержка USB накопителей Flash, HDD с которых будут воспроизводиться музыкальные файлы.
(на текущий момент готовое решение - MPD)

7. Наличие модуля/библиотеки для ресемплинга в формат 44/48/88/96/192/384 kHz выходного сигнала и 16/24/32 Bit (Alsa, SOXr)

8. Наличие управляющего WEB интерфейса (по аналогии Volumio).
(на текущий момент готовое решение - MPD)

9. Внешний экран для отображения / управления воспроизведением плеера. Собственный интерфейс управления через LCD Touch экран.

Время ухода в режим сна допустима от 5 до 10 секунд. Время выхода из сна так же от 5 до 10 секунд.


Рассматривается вариант на основе Mplayer вместо MPD.
Основной вопрос, как сделать спящий режим системы и выход из него, или упрощенную версию ОС, что бы она быстро загружалась.
Сделать защиту карты памяти от записи, что бы она дольше прослужила и не сбоила при загрузке OS.

Кому интересно принять участие помочь в реализации? Можно на платной основе, можно советами.
Рассматриваю все варианты. Так же интересно ваше видение данного проекта.
« Последнее редактирование: Март 16, 2019, 10:30:49 pm от nabiullin »
Проект HQ медиаплеера и аудио процессоора:
http://nag-audio.com

Оффлайн ua3nbw

Re: Проект медиаплеера на базе Orange Pi / Nano Pi
« Ответ #1 : Март 17, 2019, 10:16:38 am »
Стоит задача запустить медиаплеер для воспроизведения музыкальных файлов на базе одноплатного компьютера NanoPi / Orange Pi (именно процессор H5 Allwinner) с цифровым выходом по шине i2s в двух режимах Master / Slave, и выход SPDIF.
Для режима Slave потребуется плата формирователя: http://forum.vegalab.ru/showthread.php?t=79888
реализованы:
Драйвер I2S в ядре 4.11 с поддержкой вывода 16-24 бит, 44.1-192 кГц, в мастере и в слэйве
Volumio2 для платы NanoPi NEO2 с 64-битным armv8 ядром
Основной вопрос, как сделать спящий режим системы и выход из него, или упрощенную версию ОС, что бы она быстро загружалась.
На legacy kernel 3.4.113 от armbian например, кнопка на плате Power button выводит систему из спящего режима.
на свежих ядрах, выход из спящего режима пока не реализован.

Оффлайн nabiullin

Re: Проект медиаплеера на базе Orange Pi / Nano Pi
« Ответ #2 : Март 17, 2019, 07:00:56 pm »
Для режима Slave потребуется плата формирователя: http://forum.vegalab.ru/showthread.php?t=79888
реализованы:
Драйвер I2S в ядре 4.11 с поддержкой вывода 16-24 бит, 44.1-192 кГц, в мастере и в слэйве
Volumio2 для платы NanoPi NEO2 с 64-битным armv8 ядром


Да, собственно с этой темы на вегалабе и начал. Получается процессор на аппаратном уровне не может выдавать Slave режим?
И это исправляет плата формирователя? В теме там отписались, что не смогли нормально запустить эту плату с ПЛИС.


На legacy kernel 3.4.113 от armbian например, кнопка на плате Power button выводит систему из спящего режима.

Я понимаю, что сама кнопка POWER есть только на полноформатных компах? А на Zero её нет?
Проект HQ медиаплеера и аудио процессоора:
http://nag-audio.com

Оффлайн ua3nbw

Re: Проект медиаплеера на базе Orange Pi / Nano Pi
« Ответ #3 : Март 18, 2019, 08:16:50 am »
Да, собственно с этой темы на вегалабе и начал. Получается процессор на аппаратном уровне не может выдавать Slave режим?
И это исправляет плата формирователя? В теме там отписались, что не смогли нормально запустить эту плату с ПЛИС.
Да, у процессора нет возможности использовать внешний мастеклок, I2S работает от внутренней PLL в мастер и слэйв режиме.
Необходима плата, которая бы принимала внешний клок, являлась мастером I2S  и отдавала наружу I2S и/или SPDIF.
Схема платы формирователя и проект ПЛИС открыты. Всё должно работать.

Я понимаю, что сама кнопка POWER есть только на полноформатных компах? А на Zero её нет?
Да, у Zero есть проблеемы с выходом из спящего режима. Там вроде отсутствует чип, который управляет питанием.

Оффлайн nabiullin

Re: Проект медиаплеера на базе Orange Pi / Nano Pi
« Ответ #4 : Март 20, 2019, 09:03:10 am »
Да, у Zero есть проблеемы с выходом из спящего режима. Там вроде отсутствует чип, который управляет питанием.

Подскажите, какие платы имеют такой чип контроллер питания?
Проект HQ медиаплеера и аудио процессоора:
http://nag-audio.com

Оффлайн ua3nbw

Re: Проект медиаплеера на базе Orange Pi / Nano Pi
« Ответ #5 : Март 20, 2019, 11:31:06 am »
Да, у Zero есть проблеемы с выходом из спящего режима. Там вроде отсутствует чип, который управляет питанием.

Подскажите, какие платы имеют такой чип контроллер питания?
Юзаю только Orangepi-pc, на старом ядре спящий режим работал.
вам посоветую выбирать плату с eMMC, и  512M RAM должно хватить.
главное, что-бы был драйвер I2S работающий в слэйве,  а это платы NanoPi-Neo, NanoPi NEO2, NanoPi NEO-AIR