Скрыть
Как известно, Amarok позволяет одинаково легко работать как с локальной, так и с внешними коллекциями, а также копировать и перемещать между ними дорожки. Однако порой простого копирования бывает недостаточно. Например, когда ваш портативный плеер не поддерживает формат, в котором лежат файлы локальной коллекции, или когда нужно уместить больше файлов на носителе. Или когда просто пользователь хочет перекодировать WMA-файлы, принесённые на флешке друга, в нечто более удобное.
Для этого в будущих версиях Amarok появится перекодировка на лету, над которой в рамках GSoC2010 работает Teo Mrnjavac и его наставник Nikolaj Hald Nielsen. При копировании дорожек пользователю будут предложены на выбор три действия — простое копирование, перекодировка с предопределёнными параметрами и перекодировка с собственными настройками.
Текущая реализация использует FFmpeg, но благодаря использованию в коде класса-»обёртки» разработчикам не составит труда перейти на что-то иное. Сам код практически готов, осталось интегрировать его в Amarok. Кстати, Teo уже участвовал в прошлогоднем GSoC — именно он добавил в Amarok многоуровневую сортировку в Списке воспроизведения.
Тем временем Jeff Mitchell занимается портированием плеера на QtSql, что позволит Amarok использовать не только MySQL/MySQL Embedded, но и SQLite. А также облегчит разработку варианта Amarok для мобильных устройств, над которым сейчас работает Jeff.
Правда, перед этим пришлось исправить несколько недостатков в самом QtSql. Прежде всего, Jeff реализовал отдельные драйверы для MySQL и MySQL Embedded, которые должны появится в Qt 4.8. Сейчас и для первого, и для второго используется один и тот же драйвер, причём выбор можно сделать только на стадии линковки (в Amarok этот выбор является обычной run-time опцией). Также он сделал возможным указывать собственные опции для MySQL-сервера (в частности, каталог для хранения БД), а не только определённые здесь.
После выхода Qt 4.8 и окончания работы по наведению некоторого порядка в исходниках самого Amarok (выделение ядра и платформо-специфичных участков кода в отдельные библиотеки, стандартизация пространств имён и заголовков) Jeff приступит к непосредственному портированию на QtSql и разработке мобильного интерфейса на Qt Kinetic.
>>>
Подробнее