FFmpeg
Особенности пакета
1. Поддержка всех encoder'ов и decoder'ов из стандартно распространяемых в исходниках ffmpeg.
2. Поддержка linamrnb/linamrwb через dlopen для проигрывания 3gp (patch branch amr)
3. Поддержка xvmc для карт via openchrome (в версиях 11199-alt3 <= ffmpeg <= 16869-alt1).
Особенности сборки
Сборка ведется из git при помощи git-svn.
1. git-svn вытягивает trunk и бранч 0.5 в refs/remotes/ffmpeg/trunk и refs/remotes/ffmpeg/0.5 соответственно. Этим remote бранчам соответствуют локальные ffmpeg-trunk и ffmpeg-0.5
2. git-svn вытягивает trunk проекта libswscale в refs/remotes/libswscale. Этому remote бранчу соответствует бранч libswscale-trunk.
3. Бранчи ffmpeg-trunk и libswscale-trunk мержатся в бранч upstream, причем libswscale-trunk является subtree для бранча upstream. Этим достигается наличие вложенной истории libswscale относительно ffmpeg.
4. В любой момент времени существует несколько feature/patch бранчей для более удобной поддержки того или иного патчсета, будь то alt-specific исправления или поддержка дополнительных кодеков. В данный момент таких бранчей два: alt, содержащий alt-specific исправления, и amr, содержащий код для поддержки библиотек libamrnb/libamrwb. Бранч xvmc считается устаревшим.
5. Для каждого из feature/patch бранчей делается pull из "низлежащего" бранча. Отправная точка -- бранч upstream, из него надо придти в бранч master. В данный момент схема merge'й такова:
upstream -> alt -> amr -> master,
т.е. все feature-патчи проходят мержи в алфавитном порядке.
6. В бранче master относительно последнего feature-бранча содержатся только spec-файл и правила для gear. Любые другие исправления должны попадать в feature/patch бранчи.
7. В данный момент в Сизифе поддерживается версия 0.5, всё вышеперечисленное применимо к бранчам с суффиксом -0.5.
8. Сборка unstable trunk ffmpeg предназначена для power users и для подготовки девелоперских версий зависимого софта. Никакой поддержки по сборкам из trunk не оказывается.