XMMS2

редактировать
XMMS2
XMMS2-Logo-white-128.png
Разработчик (и) XMMS Team
Стабильный выпуск 0.8 DrO + WIP / 20 октября, 2011; 9 лет назад (2011-10-20)
Предварительный выпуск 0.9 DrP
Репозиторий Измените это в Викиданных
Операционная система Unix-like
Доступен вC
Типе Аудиоплеер
Лицензия GPL v2 / LGPL v2.1 (плагины)
Веб-сайтwww.xmms2.org

XMMS2 (X-платформа M usic M ultiplexing S ystem 2 ) - это новое поколение аудиоплеера XMMS. Это новый дизайн, написанный с нуля, отдельно от кодовой базы XMMS. Хотя Питер Альм, один из первых авторов XMMS, отвечал за первоначальный дизайн и кодирование XMMS2 (с конца 2002 по начало 2003 года), с тех пор он передал ответственность за дальнейшее развитие проекта Тобиасу Рундстрему и Андерсу Густафссону. LXMusic, приложение музыкального проигрывателя по умолчанию в LXDE, является клиентом XMMS2.

Содержание
  • 1 Концепции дизайна
    • 1.1 Дизайн
  • 2 XMMS2 и другие проекты
  • 3 Ссылки
  • 4 Внешние ссылки
Концепции дизайна

XMMS2 заимствует концепции из Музыкальные проигрыватели эпохи XMMS, такие как управление воспроизведением, список воспроизведения , плагины, настраиваемый пользователем графический интерфейс, а также дополнительные функции, такие как медиа-библиотека и клиент – серверная конструкция.

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

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

XMMS2 также распознает пять типов плагинов, но они выполняют довольно разные функции:

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

В отличие от XMMS2, в XMMS не было библиотеки, в которой хранилась бы информация о медиа-коллекции пользователя. Единственные медиаресурсы, о которых знала XMMS, - это список воспроизведения. Примерно с 2000 года такие проигрыватели, как Winamp и SoundJam MP, начали реализовывать простые функции базы данных, которые позволяют проигрывателю «запоминать», где находится пользовательский носитель, например а также кэширование метаданных, хранящихся в файлах, таких как исполнитель, название, дата добавления и количество воспроизведений.

Медиатека XMMS2 хорошо интегрирована со списком воспроизведения. Эта интеграция означает, что каждый файл или поток, добавленный в список воспроизведения, имеет свои метаданные, автоматически кэшируемые медиа-библиотекой. Это происходит только один раз для каждого уникального URL-адреса, поэтому метаданные больше не читаются, если они уже существуют в библиотеке. Помимо метаданных, медиа-библиотека может также быстро и эффективно сохранять и перезагружать списки воспроизведения, делая всю музыкальную коллекцию пользователя доступной из одного места.

Одной из особенностей XMMS2, которая редко реализовывалась в медиаплеерах, является архитектура клиент-сервер. XMMS2 позволяет пользователю выбирать из множества реализаций интерфейса для поиска, выбора и воспроизведения мультимедиа, а затем закрывать интерфейс, пока звук воспроизводится «в фоновом режиме». Интерфейс можно открыть в любой момент для дальнейшего использования. Другие проигрыватели с аналогичными функциями в * nix включают Music Player Daemon и Music on Console.

Дизайн

При первом замысле XMMS2 был просто общей библиотекой.. То есть XMMS2 будет внутренним кодом, чтобы позаботиться о механике декодирования и воспроизведения аудиопотоков, требуя связывания с скомпилированной программой, которая предоставляет пользовательский интерфейс. Позднее эта концепция была расширена до модели клиент-сервер, чтобы обеспечить более гибкую связь между интерфейсом и сервером. Преимущества этого подхода:

  • Это позволяет любому совместимому клиенту (-ам) подключаться и управлять одним экземпляром XMMS2 daemon.
    • . Клиенты могут предлагать различные типы пользовательских интерфейсов - графические или текстовые, реализованы с использованием различных наборов инструментов, интегрированных с различными средами рабочего стола.
    • Разработчики клиентов могут сосредоточиться на улучшении удобства использования своего интерфейса и не беспокоиться о воспроизведении кода.
  • Использование сокетов TCP также позволяет пользователям удаленно управлять Демоны XMMS2 в сети TCP / IP.

Хотя архитектура подключаемых модулей XMMS позволяла быть достаточно расширяемой, в некоторых отношениях она была неэффективной; XMMS2 стремится улучшить это.

  • XMMS имеет плагины ввода, которые заботятся о чтении данных и декодировании их в аудио. XMMS2 разделяет это на этап передачи и этап декодирования, так что один транспортный плагин может передавать данные любого типа в любой плагин декодера (например, плагин HTTP, читающий данные mp3 с веб-сайта).
  • Общие плагины могут оказаться менее актуальными в XMMS2, поскольку их назначение может выполняться автономными клиентами, но архитектура плагинов все равно будет существовать.
  • XMMS не может обрабатывать форматы контейнеров в общем виде. Архитектура XMMS2 упрощает создание поддержки форматов контейнеров.
XMMS2 и другие проекты

Название «XMMS2» было выбрано Питером Альмом и Тобиасом Рундстремом, когда они начали работу над проектом, очевидно, с намерением стать преемником XMMS. Однако другие разработчики начали использовать это имя (в 2003 году) до того, как Питер и Тобиас когда-либо выпустили свой код:

  • Другой проект, названный XMMS2, был описан как «порт Gtk 2 для хорошо известного xmms». Это не было связано с проектом, обсуждаемым в остальной части этой статьи. Проект был прекращен и удален из GNU Savannah.
  • Более известным портом XMMS на GTK + 2 является порт XMMS, который иногда (ошибочно) называют XMMS2. В нем объясняется связь этого проекта с XMMS.

Тонкое различие между аббревиатурами XMMS и XMMS2 заключается в том, что XMMS означает X (первоначально X11, затем кроссплатформенную) MultiMedia System, XMMS2 означает X (кроссплатформенная) музыка. система мультиплексирования. Это решение было принято, чтобы прояснить, что XMMS2 когда-либо будет только аудиоплеером, а не обычным мультимедийным проигрывателем с поддержкой видео.

  • Портал бесплатного программного обеспечения с открытым исходным кодом
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-22 06:41:10
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте