Релиз xine 1.2.0

Спустя шесть с половиной лет с момента выпуска прошлой стабильной ветки представлен релиз xine-lib 1.2.0, популярной многоплатформенной библиотеки для проигрывания видео и аудио файлов, а также набора сопутствующих плагинов. Библиотека может использоваться в ряде популярных видео-проигрывателей, среди которых Xine-UI, gxine, Totem, kaffeine. Из-за изменения ABI при переходе на версию 1.2.0 требуется пересборка фронтэндов, использующих в своей работе xine-lib.

Xine поддерживает работу в многопоточном режиме, поддерживает большое число популярных и малоизвестных форматов и кодеков, может обрабатывать как локальный контент, так и передаваемые по сети мультимедиа потоки. Модульная архитектура позволяет легко наращивать функциональность через плагины. Различается 5 основных классов плагинов: плагины ввода для приёма данных (ФС, DVD, CD, HTTP и т.п.), плагины вывода (XVideo, OpenGL, SDL, Framebuffer, ASCII, OSS, ALSA и т.п.), плагины для распаковки медиаконтейнеров (демуксеры), плагины для декодирования видео и аудио данных, плагины для применения эффектов (подавление эхо, эквалайзер и т.п.).

Ключевые улучшения xine-lib 1.2.0:

  • Поддержка ускорения декодирования видео с использованием VDPAU (Video Decode and Presentation API for Unix);
  • Поддержка формата VDR (Video Disk Recorder);
  • Приведение используемых программой файловых путей в соответствие со спецификацией XDG (X Desktop Group). Например, стандартные XDG-пути теперь используется для данных шрифтов и кэшей для плагинов, cddb и win32codecs;
  • Проведение работы по сокращению потребления памяти. Например, удаление лишних структур из video_overlay позволило высвободить около 10 Мб памяти, затрачиваемой при проигрывании видео;
  • Уход от поставки встроенных копий ffmpeg, libcdio и libvcd в пользу внешних зависимостей. Обновление libmpcdec и libdca до последних версий и перемещение кода в contrib/libmpcdec и contrib/libdca для отделения от основных исходных текстов xine;
  • Демуксер для формата Ogg и декодеры Theora, Vorbis и Speex объединены в комбинированный плагин 'xiph'. Демуксер и декодер для формата NSF объединены в один плагин;
  • Связанный с разбором медиаконтейнеров код выделен из modplug в отдельный плагин, что позволяет не загружать данный код без необходимости и сэкономить немного процессорного времени на этапе инициализации;
  • Расширены возможности по отображению субтитров для DVB, добавлена поддержка управления степенью прозрачности строки с субтитрами.
  • Улучшена работа XML-парсера, добавлена поддержка блоков CDATA;
  • Удалён плагин вывода звука через aRTs (проект KDE в ветке 4 ушел от использования подсистемы aRTs). Вместо aRTs рекомендуется использовать DMix, основанный на ALSA;
  • Удалён плагин вывода видео SyncFB из-за прекращения развития данной подсистемы, вместо SyncFB рекомендуется использовать DirectFB или VIDIX;
  • В плагине вывода видео с использованием Xv и XxMC добавлена поддержка выбора порта для Xv через указания номера или типа порта ("any", "overlay" и "textured video"). Для XvMC выбор порта пока не реализован;
  • Переработка системы сборки, уход от xine-config в пользу "pkg-config libxine";