После стабилизации ветки 0.10 в svn была открыта новая ветка 0.11 для внесения нового функционала и переработки кода. В этой ветке мы увидим самое существенное изменение Rhythmbox с самого начала его разработки. Ранее повелось так, что работа над плеером велась плавным наращиванием одной кучи кода, в которой соседствовали как стабильный код, так и экспериментальные нововведения как в стабильных так и в разработческих версиях, что создавало массу неудобств и разработчикам и пользователям. В новой же ветке разработчики приняли новую политику строгого разветвления и разделения разработческой и пользовательской версий, которая была взята с ветки 0.9/0.10, что позволит развязать руки людям с свежими головами, не плодить ошибок обратным портированием, не бояться временно "ломать" код и не тревожить/перегружать главную интеллектуальную силу.
Что мы можем увидеть в следующей стабильной ветке:
- Обрезание бритвой Оккама давно не поддерживаемых и не расширяемых управляющих api, таких как lirc и bonobo api в пользу dbus.
- Удаление из готового пользовательского тарбола пустых каталогов и прочего тестового/сборочного мусора, который начал попадать туда по недосмотру.
- Сильная переработка и чистка кода, api расширений и плагинов.
- Намного большее "выворачивание" внутренностей процесса воспроизведения в api для плагинов.
- Вышеуказанное "выворачивание" позволит безболезненно ввести наложение эффектов "кроссфэйд" и непрерывное воспроизведение.
- Добавление логики для расширенного взаимодействия с парсером плейлистов позволит дальше расширять возможности манипуляций с ними и асинхронность, а также обращаться к ним через api для плагинов.
- Добавление Vala api для расширений.
- Полное обдуманное разнесение всего, что могло подвесить и "залочить" плеер по соответсвующим потокам, с соответсвующим управлением им.
- Усовершенствование в логике порождения дочерних процессов.
- Переработка glib костяка (который уже давно числился проблемным местом проекта) для поддержки самых последних функций glib, оптимизация и удаление бутылочных горлышек производительности.
- Комплексное и повсеместное введение вспомогательных функций по управлению и противостоянию ошибкам.(!)
- Новые плагины для веб сервисов, доведение до ума, с исправлением ошибок и введением новых функций, старых.
- Визуализатор.
- Логика противодействия мошенничеству по схеме "man on the middle" с интернет магазинами.
- Поддержка режима mtp и прочих аппаратных медиаплееров, поддерживаемых в HAL-подсистеме.
- Повышение вменяемости по отношению к юникоду.
- Условия для возможного введения "тэггинга" в будущем, благодаря работам в db api.
- Усовершенствование и обновление GUI.
- Возможная поддержка возможности "умной" записи с радио, интернет-радио и last.fm - радио, также с цифрового или спутникового радио(обсуждается среди разработчиков).
- Возможная поддержка p2p технологий.
Наш Rhythmbox растет не по дням, а по релизам и, как выразился один из разработчиков, Rhythmbox становится чем-то большим чем медиаплеер.
Обзор составлен по материалам почтовой рассылки разработчиков и анализа изменений в svn.