Музыка в KolibriOS: полный обзор и последние новинки

Обзор существующих приложений

Как классно работать, слушая при этом музыку! Запустил себе плейлист, он играет, а ты занимаешься своими делами. Но вот незадача — в современных плеерах поголовно начали использоваться библиотеки музыки, без них уже скоро и файл нормально не откроешь, не просканировав перед этим весь жесткий диск. Я ведь человек родом из 90х, и у меня есть на жестком папка "Muz.one", у кого-то она "Музыка", "Музычка", у некоторых (не будем показывать пальцами) она "Барахло" или "100% разобрать в этом году". Всё чего я хочу — это зайти в папку с аудиозаписями, запустить файл и наслаждаться музыкой! Мне не нужен комбайн, который "каталогизирует", "синхронизирует" и варит кофе — мне нужен плеер с поддержкой MP3: простой, быстрый и няшный. Поэтому я постарался такой написать для моей любимой операционной системы Колибри.

Т.к. самым популярным форматом аудиофайлов является MP3 и почти вся музыка на моём компьютере именно в этом формате, давайте посмотрим на существующие аудиоплееры с его поддержкой для Колибри:

  1. AC97SND — поставляется вместе с дистрибутивом, находится в /rd/1/media/. Название программы связано с тем, что ранее поддерживал только аудиокарты стандарта AC97, сейчас в него добавили также поддержку кодека HD Audio.
    Плюсы: поддержка MP3, WAV, XM, имеет плейлист и поддерживает их загрузку в формате M3U, отображается полоса прогресса аудиозаписи, регулировка громкости, зацикливание композиции.
    Минусы: компьютер зависает при проигрывании многих аудиозаписей.
  2. Listplay — это проигрыватель плейлистов (M3U, LAP, ASF) через AC97SND. У меня он ни одного плейлиста M3U открыть не смог, о дизайне я молчу. UPD: пока писал статью, исправил баг в listplay — путь к ac97snd был указан неверный. Теперь AC97SND запускается при выборе дорожки, но музыка всё равно не играет.
  3. MiniMP3 — MPEG Audio Layer III decoder, программа не имеющая окна (проигрывает музыку в фоне), также существует в виде библиотеки. Как понятно из названия, воспроизводит файлы MP3. Играет сносно, очень редко, когда не может "прожевать" файл, из колонок слышен треск.

Как видим, аудиоплееров в Колибри мало, и все они имеют свои существенные недостатки. Даже закрывая глаза на то, что Listplay и AC97SND приводят к зависанию системы, их внешний вид плох и нет возможности открыть папку с музыкой: нужно либо открывать по одному файлу, либо иметь готовый плейлист; у MiniMP3 же нет окна в принципе.

Hey, Pixie!

Есть проблема — нужно решение. И вот, спустя неделю разработки, я готов представить миру Pixie Player! (Где-то тут зазвучали фанфары, задребезжали трели и с неба посыпались лепестки роз...)

Pixie — это аудиоплеер, а точнее front-end для программы, которая проигрывает звук (MiniMP3). Не пугайтесь — всё очень просто: Pixie загружает список файлов, управляет началом проигрывания и остановкой, громкостью — всё как обычный плеер, но при этом сам аудиозаписи не проигрывает, этим занимается другой процесс, который не имеет окна, но его можно увидеть в диспетчере задач, например. Теневой процесс (back-end) для проигрывания музыки может быть любой программой или библиотекой — MiniMP3 / AC97SND / LibFlac / etc. В чём плюс такого подхода:

  1. отделение функционала от GUI и возможность полностью сконцентрироваться на разработке плеера (т.е. GUI front-end'a);
  2. можно подключить любой фоновый проигрыватель аудиофайлов; для разных форматов файлов — разные проигрыватели;
  3. если фоновый процесс проигрывателя нечаянно упадёт, ничего страшного не случится, плеер будет жив здоров и позаботится об этом, открыв следующую песню;

Итак, как видим есть очевидные плюсы от такого подхода. Давайте же рассмотрим функционал Pixie.

Окно может быть трёх режимов: обычное, схлопнутое в заголовок и компактное. Из тем на выбор пользователя доступно две: светлая и тёмная, применить их можно нажав F1 или F2 соответственно.

При первом запуске плеер спросит назначить ли его MP3 плеером по умолчанию. В случае отказа плеер всё равно будет доступен через меню "Открыть с помощью" в файловых менеджерах.

Нажатие правой кнопкой мыши на заголовке, скроет плейлист, а на области списка — покажет небольшую справку.

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

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

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



Интересные факты о Pixie:

  1. Первый рабочий прототип программы был написан за один день! В субботу с 9 утра до 2 часов ночи с перерывами на еду. Уже этой версией можно было комфортно пользоваться, последующая же доработка растянулась на полторы недели.
  2. Название происходит не от пикселя, как можно подумать, а от группы Pixies, фанатом которой я давно являюсь. Выходит игра слов "Pixie Player" можно перевести, как участник (гитарист) группы Pixie.
  3. Язык разработки С-- (смесь Си и ассемблера).

Volume – системный регулятор громкости

Специально для Pixie была написана программа @Volume — общесистемный микшер громкости, автор e-andrew (Андрей Краснобаев).

Управление: горячие клавиши в системе: Ctrl+Alt+Left (громкость ниже) и Ctrl+Alt+Right (громкость выше), а так же Ctrl+Alt+Home/Down (включение/выключение тишины). При открытом окне громкость так же меняется с помощью Left,PgDown(громкость ниже), Right,PgUp(громкость выше), Up/Down,Home/End (включить/выключить звук).

Возможен запуск с параметрами и взаимодействие с программой через shared memory.



Другие программы для работы со звуком

Помимо описанных выше, есть несколько других приложений, которые стоило бы упомянуть.

  1. FPlay — отличный видеоплеер, основанный на медиа комбайне FFmpeg, потому воспроизводит всё, что только можно: mp3, ogg, mkv, avi, mp4, mpeg, flv, webm, vob, mov и это далеко не полный список. В версии для Колибри реализована поддержка видеофайлов с большим битрейтом, поддержка вертикальной синхронизацией для видеокарт Intel (работает в связке с соответствующим видеодрайвером). Управление клавиатурой: пробел — пауза, Enter — полноэкранный режим.
  2. MidAmp — позволяет воспроизводить Midi-файлы с помощью встроенного динамика компьютера. Имеет интерфейс и горячие клавиши очень похожие на WinAmp.
    Del — удалить выделенные треки;
    z — предыдущий трек;
    x, Enter, двойной щелчок на файле — воспроизведение;
    c, Space — пауза;
    v — стоп;
    b — следующий трек;
    Esc — закрыть программу;
    m — включить/выключить звук;
    PgUp, PgDn — поменять местами 2 соседних трека;
    BackSpace — перемотка трека в начало;
    Home/End — увеличить/уменьшить тональность мелодии и проиграть ее с начала (отображается рядом с надписью 'tone').
  3. CDPlayer — простой проигрыватель музыкальных компакт-дисков (*.cdp), на данный момент морально устарел.
  4. LibFLAC — порт декодера FLAC 1.3.0. Работает по принципу MiniMP3 — программа не имеет окна, проигрывает FLAC файл в фоне и закрывается по окончанию. Имеет следующие ограничения: декодер (не библиотека) понимает только стерео 16 бит, не работает с файлами больше 4 Гб.


Поддерживаются практически все популярные (и не очень) модели звуковых карт: AC97SND, HDAudio, Sound Blaster 16, SIS. С вероятностью 99% звук на вашей машине будет. Более подробный список поддерживаемых аудиокарт можно найти на нашей вики.

Заключение

Как видите, теперь в Колибри есть замечательный аудиоплеер Pixie, удобный регулятор громкости Volume, видеоплеер FPlay — всё это делает работу в Колибри ещё более удобной и приятной.



UPD: Спустя 3 года вышла финальная версия Pixie 2. В ней произошел переход на AC97SND бэкенд, как результат MiniMP3 был викинут из дистрибутива, освободив тем самым 22 Кб в IMG образе. Также AC97SND привнес в Pixie поддержку форматов wav и xm (трэкерная музыка). Много внимания было уделено UI: новый скин, крупные шрифты и кнопки сделали использование плеера более удобным и приятным. В окно добавлены кнопки открытия и изменения громкости. Новый функционал состоит из возможности повторения трэка и случайного воспроизведения, можно удалить песню из списка нажатием клавиши Delete.

Сравнение Pixie 1 и Pixie 2




Автор: Липатов Кирилл 2015 – 2018
Успеха вам и процветания.

К разделу