После пяти месяцев разработки увидел свет релиз мультимедиа пакета FFmpeg 0.9, включающего набор приложений и коллекцию библиотек для манипулирования различными мультимедиа форматами (запись, преобразование и декодирование звуковых и видео форматов). Кроме изменений, созданных внутри проекта, в новую версию также включены все последние наработки, добавленные в ветки ffmpeg-mt (поддержка многопоточного декодирования) и libav (форк FFmpeg). Пакет распространяется под лицензиями LGPL и GPL, разработка FFmpeg ведется смежно с проектом MPlayer.
Ключевые улучшения:
- Декодировщики:
- Встроенный декодировщик для свободного формата сжатия видео Dirac, оптимизированного как для сжатия видеоданных в системах высокой четкости (HDTV - 1920x1080) и для организации потокового интернет-вещания;
- Декодировщик для формата кодирования видео без потери качества VBLE;
- Поддержка декодирования H.264 с использованием аппаратной акселерации на платформе Android;
- Декодировщик h264, которые никогда не превышает указанной полосы пропускания;
- Декодировщик escape130;
- Встроенный декодировщик для utvideo;
- Декодировщик для формата сжатия речи g.729;
- Декодер для формата Dxtory, используемого в системах захвата видео;
- Кодировщики:
- Кодировщик JPEG 2000 на базе libopenjpeg и собственный экспериментальный кодировщик JPEG 2000;
- Кодировщик для формата CLJR (Cirrus Logic AccuPak codec) с поддержкой дизеринга;
- Кодировщик для фидеоформата AMV;
- Кодировщик звукового формата SPEEX на базе libspeex;
- Кодировщик для формата кодирования видео без потери качества ProRes;
- Кодировщик для g723.1;
- Упаковщики/распаковщики (muxer/demuxer):
- Поддержка декодирования h264 с цветовой субдискретизацией 4:2:2;
- Упаковщики медиаконтейнеров (muxer) для форматов mkv timecode v2, segment и wtv;
- Упаковщик для g723.1;
- Распаковщик для медиаконтейнеров ACT/BIT;
- Фильтры и форматы:
- Поддержка чтения файлов в формате MPO (Multi Picture Object);
- Возможность изменения частоты дискретизации при декодировании FLV с использованием декодера nellymoser;
- Поддержка фрагментов и группировки ("chunking") для mov/mp4 (эквивалент "mp4boxs -frag" и "mp4boxs -inter");
- Поддержка rgba TIFF и 2bpp/4bpp PNG;
- В качестве источника видео можно использовать генератор фракталов Множества Мандельброта;
- Поддержка PulseAudio в качестве источника данных;
- Реализация фильтров stereo3d (из libmpcodecs), nowdeshake и aevalsrc;
- Добавлен фильтр libass для отображения субтитров;
- Поддержка перемещения (произвольного изменения позиции) по потоку MMSH (Microsoft Media Server (MMS) over HTTP);
- Разное
- Поддержка протокола "cache" в URL;
- Поддержка библиотек libutvideo и libaacplus;
- Подготовлена библиотека libswresample;
- В коде swscale увеличена точность преобразования rgb в rgb;
- Поддержка вывода через libmodplug и bintext;
- Поддержка потоков для OS/2;
- Дополнительные оптимизации для архитектуры ARM;
- Расширение числа регрессионных тестов (новые тесты для wtv, sox и utvideo);
- Во встроенную систему вычисления выражений (expression evaluator) добавлена поддержка функции random() и постоянно хранимых переменных (persistent variables);