Немного о истории Theora.
Theora (на основе Theora 1 Specification, от 6 мая 2005) базируется на формате VP3 разработанным On2 Technologies. On2 Technologies подарила исходный код VP3.1 Xiph.org, со всеми вытекающими последствиями.
Далее в "Theora 1 Specification" идёт подробное описание формата, которое для конечного пользователя не имеет значения. Единственное хочу отметить, что Theora 1 относится к MPEG-1 , 2 , 4 , и H.263 классу кодеков. Так-же важно, что Theora 1 содержит "I" и "P" кадры, но никакого эквивалента "B" кадрам нет. Плохо это или хорошо пока понять сложно, однако при сжатии такими кодеками как Xvid и Dvix, "B" кадры активно используются. О двух проходном кодирование речи пока тоже нет :(. Тем, кому интересна концепция "I", "P" и "B" кадров, следует обратится к любому описанию настроек Xvid'а, благо их сейчас много появилось.
В данный момент существуют две реализации, в исходном коде libtheora и готовые решения. Для windows это - ffmpeg2theora, VLC player, Windows Media plugins. Подробно об этом можно прочесть на http://www.theora.org/.
ffmpeg2theora - кодек и кодеровщик в одном exe. Программа поддерживает только консольный ввод.
Вот перевод основных ключей, может кому пригодится (взято из help'а).
===============================================================
использование: ffmpeg2theora-0.15 [опции] вход(файл или поток(for linux)).
--output,-o по умолчанию готовый файл имеет тоже имя что и исходный,опцией можно указать своё имя
--width, -x изменение ширины изображения до значения x
--height,-y изменение высоты изображения до значения y
--videoquality,-v [0 to 10] качество кодирования видео
--videobitrate,-V [45 to 2000] указание bitrate для видео
--sharpness,-S [0 to 2] резкость изображения (по умолчанию: 2), меньшие значения делают изображения резче
--keyint,-K [8 to 65536] интервал ключевых кадров (по умолчанию: 64)
--audioquality,-a [-1 to 10] качество кодирования звука
--audiobitrate,-A [45 to 2000] указание bitrate для звука
--samplerate,-H указание частоты звука в Герцах
--channels,-c указание количества выходных каналов звука
--nosound отключение кодирования звука
--endtime,-e окончание кодирования в сек.
--starttime,-s начало кодирования в сек.
Примеры:
Я кодировал только dvd, для этого использовал двд-декриптор для копирования в один файл. Там же выбирал звуковую дорожку. Если оставить две звуковые дорожки, то ffmpeg2theora-0.15 выберет первую или по умолчанию. Два звуковых потока сделать не удаётся. Есть опция выбора звуковой дорожки в самой программе, если кто знает как ей пользоваться напишите. При кодировании звука 5.1 я указывал -H48000, по умолчанию программа начинает переводить звук из 48000 Гц в 44100 Гц, звук начинает отставать от изображения(может это только у меня). При указании 2 каналов перевод из 48000 Гц в 44100 Гц происходит нормально.
ffmpeg2theora-0.15 -v5 -a2 -S1 -c2 VTS_1_1.vob - в результате получается файл VTS_1_1.ogg. Качество изображения приемлемое, но замечены некоторые артефакты заднего фона в статических сценах, или мало динамичных. Возможно это связано с периодом ключевых кадров.
для просмотра можно использовать wmp предварительно установив oggcodecs_0.69.8924.exe, но я рекомендую vlc-0.8.4a-win32.exe, гораздо удобнее имеет возможность выбора звуковых дорожек 5.1 или стерео, и качества декодирования.
отредактировано Returned...