164

Я сделал поддержку flac! Ч.2

Если честно, не ожидал, что плеер вызовет такой интерес.

Для начала, что он может.

Есть поддержка плейлистов, если плеер не заблокирован, при нажатии кнопок вверх/вниз откроется текущий плейлист, можно полистать и выбрать композицию, можно удалить из плейлиста, воспроизведение при этом не прерывается.

Есть файловый менеджер, позволяет просматривать содержимое флешки, удалять файлы, добавлять композиции в текущий плейлист, менять тему оформления.

По сути, темы оформления меняют только цвета всего, что на экране, плюс, могут делать батарейку и индикатор громкости цветными или монохромными.

Поддерживаемые форматы: MP3, flac, WAV (пока только целочисленный, с плавающей точкой - в процессе)

Будут поддерживаться: OGG, AAC, WMA(вероятно)

ВСЕ форматы воспроизводятся с той частотой дескритизации, с которой в них хранятся данные. Передескритизации в 48КГц, как в большинстве плееров, звуковых карт и мобильников - НЕТ.

Поддерживаются все варианты тегов, которые могут быть в этих форматах и несколько вариантов кодировок, что бы не было крякозябр.

Если в файле теги есть, то информация об исполнителе, альбоме и названии композиции берется из них (для flac - из cue листа), если нет - выводится по принципу: название файла - композиция, имя папки с файлом - альбом, имя папки с альбомом - исполнитель.

При выключении плеера сохраняются: путь к теме оформления, путь к текущему плейлисту, номер композиции в листе, уровень громкости. В планах дописать сохранение текущей позиции воспроизведения.

При включении - не нашел тему оформления - попробует открыть стандартную, не нашел стандартную - создаст её и откроет.

С плейлистами - так же.

При создании плейлиста информация о flac добавляется согласно cue. Если это был единый файл на весь альбом, он добавляется как набор композиций и листать по ним можно.

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

При заблокированном экране зарядки хватает примерно на семь часов работы.

При подключении по USB, если устройство выключено - просто заряжается, во время зарядки горит оранжевый светодиод внизу, по окончании зарядки - гаснет.

Если устройство включено - он предложит варианты:

1. Зарядка - работает как плеер и заряжается

2. USB ЦАП - работает как внешняя звуковуха, поддерживает все стандартные частоты дискретизации от 44,1 до 192 КГц, 16 и 24 бит, полноценно реализован асинхронный USB Audio

3. Флешка - определяется как флешка, скорость записи до 1МБ/с.

В следующий раз расскажу о программном и аппаратном обеспечении устройства.

P.S.Шрифт сменил, мне реально было влом.

Больше постов читайте по тегу «Программирование». А если хотите изучить новую профессию, посмотрите актуальные курсы от проверенных школ с реальными отзывами на сайте Пикабу Курсы.