ffmpeg2theora

Список разделов Ogg Vorbis Статьи

Описание: Статьи и их обсуждения

Сообщение #1 filiton » 10.02.2006, 14:05

Немного о истории 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...
Последний раз редактировалось filiton 20.02.2006, 11:40, всего редактировалось 4 раз(а).
filiton
Откуда: осенний б-р
Репутация: 0
С нами: 18 лет 1 месяц

Сообщение #2 Laksiej » 13.02.2006, 15:50

У меня при кодировании звука 5.1 (ставлю -с6) в выходном файле звуковые каналы оказываются перепутаны. Можно ли это исправить?
Laksiej
Аватара
Откуда: Менск
Репутация: 0
С нами: 18 лет 1 месяц

Сообщение #3 VEG » 13.02.2006, 18:17

Laksiej:У меня при кодировании звука 5.1 (ставлю -с6) в выходном файле звуковые каналы оказываются перепутаны. Можно ли это исправить?
Похоже, что это проблема сплиттера потока. Какие DirectShow фильтры для проигрывания Vorbis у вас установлены?
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 40
С нами: 18 лет 4 месяца

Сообщение #4 Laksiej » 14.02.2006, 16:12

VEG:Какие DirectShow фильтры для проигрывания Vorbis у вас установлены?
Vorbis проигрываю либо через ffdshow версия от 23.11.2005 г., либо через CoreVorbis.ax версия 1.1.0.79, оба из пакета K-Lite Codec 2.67.
Laksiej
Аватара
Откуда: Менск
Репутация: 0
С нами: 18 лет 1 месяц

Сообщение #5 VEG » 14.02.2006, 23:29

Laksiej:[quote="VEG"]Какие DirectShow фильтры для проигрывания Vorbis у вас установлены?
Vorbis проигрываю либо через ffdshow версия от 23.11.2005 г., либо через CoreVorbis.ax версия 1.1.0.79, оба из пакета K-Lite Codec 2.67.[/quote]Странно. А есть ли какая-то закономерность при перепутывании каналов (левый всегда путается с правым и т.д.)? Или это носит беспорядочный характер? При разных сплиттерах каналы остаются перепутаны одинаково?
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 40
С нами: 18 лет 4 месяца

Сообщение #6 filiton » 20.02.2006, 11:25

11.02.06 появился новый релиз ffmpeg2theora-0.16.
основные нововведения заключаются в следующем:
- добавлена поддержка кодирования из контейнера .ogg.
- по умолчанию частота и количество звуковых каналов такие же как
и в исходном файле , для изменения использовать -H и -с.
- также размер изображения остаётся таким же , для изменения
использовать -x и -y. (раньше так и было вроде)
- изменено соответствие уровней качества кодирования звука , теперь
-a2 = -q2.
- добавлена опция --optimize , которая включает поиск движения и
уменьшает битрейт на 5% примерно. (странно , разве раньше это не
использовалось , опция очень полезная советую её использовать ,
естественно увеличивает время кодирования)
- ещё два дополнения for linux , обновлены help и man page ,
и "compile video4linux only under linux" (что это значит я не понял ,
так как освоение linux'a происходит с большим скрипом винта и моих
мозгов , если кто в этом разбирается подскажите)
Последний раз редактировалось filiton 28.02.2006, 14:09, всего редактировалось 1 раз.
filiton
Откуда: осенний б-р
Репутация: 0
С нами: 18 лет 1 месяц

Сообщение #7 Laksiej » 28.02.2006, 13:52

VEG:А есть ли какая-то закономерность при перепутывании каналов (левый всегда путается с правым и т.д.)? Или это носит беспорядочный характер? При разных сплиттерах каналы остаются перепутаны одинаково?
Я не вникал, т.к. уже воспользовался релизом ffmpeg2theora-0.16 и вроде всё Ok. Количество каналов теперь не указываю, т.к. по-умолчанию он начал брать такое количество, как в исходном файле.
Laksiej
Аватара
Откуда: Менск
Репутация: 0
С нами: 18 лет 1 месяц

Сообщение #8 D.A.S. » 05.03.2006, 16:49

Theora I относится к MPEG-1 ,-2 ,-4 , и H.263 классу кодеков.
так же важно что Theora I содержит I и P кадры, но никакого эквивалента
B кадрам нет. плохо это или хорошо пока понять сложно, однако при сжатии
такими кодеками как Xvid и Dvix B кадры активно используются. о двух проходном
кодирование речи пока тоже нет :(

Использование B-фреймов положительно сказываеться на сжимаемости. В последних версиях кодеков использующих B-фреймы прирост качества, достаточно существенн, их использование на некоторых истониках может давать не хилую надбавку в качестве. Все кодеки MPEG, используют B-фреймы, потому как они себя полностью оправдывают, придумать чтото проще и настолькоже эффективное наверно просто невозможно, поэтому MPEG саму идею B-фреймов переносила из самого первого своего формата, до самого последнего, хотя алгоритм изменялся и дорабатывался, чтоб быть еще эффективнее, но сама идея осталась прежней. И если мне не изменяет память, это запатентовано MPEG. Так-что в свободных кодеках, эта фитча врятле появиться, если правда не произойдет что-то непредвиденное. Ну типа MPEG снимет все ограничения на свои идеи, и подарит их обществу... Угу дождемся... :)

On2 Technologies пыталась чем-то компенсировать в своем кодеке эту утрату. И не только эту. Ведь это не одна утрата которую On2 тоже не использует. Им это удалось. Компенсировали они правда своими, более сложными Алгоритмами. Поэтму, это положительно сказалось в отношении качества, но отрицательно в скорости кодирования.
Сначала On2 Technologies подошли до качества DivX, но имели кодек медленнее нежели DivX. А после появился On2 Vp6, который еще более усложнился, стал качственнее чем DivX и XviD, но стал еще ресурсоемкее и медленнее. Сейчас On2 Technologies пыхтит над своим Vp7, Vp6 забросили. Ходят слухи о возможности открытия компанией On2 Technologies - Vp6. Но это токо слухи.

Theora еще сыра. Многое в ней еще требует очень серьезной доработки. Начиная от очень важных моментов для кодирования видео и заканчивая уже всякого рода мелочами. Ну например для видео очень важно многопроходное кодирование. 2 прохода должно быть полюбэ.
Более качественная реализация Deinterlace, чем та, которая есть сейчас. Я посмотрел оно не подходит к некоторым источникам.... потому как Deinterlace есть много методов, и разные методы лучше подходят к разным источникам. Интерфейс очень слабенький, я думаю что Theora еще далеко не скоро обзаведеться более привлекательным интерфейсом. Да интерфейс для меня это мелочи, но для некоторых он этот интерфейс, играет не маловажную роль. Да дело то тут и не в интерфейсе, не былобы у Theor(ы) таких недоделок в кодере, и она была уже сделана более-менее, нашлись бы интузиасты которые бы сделали для нее GUI, чтоб ею было для многих приятнее пользоваться. Но, по большому счету, GUI делать еще не для чего.
D.A.S. M
Аватара
Откуда: Одесса
Репутация: 0
С нами: 18 лет 1 месяц

Сообщение #9 Ized » 29.12.2006, 00:09

Но зато формат открытый =)
С Наступающим всех, кстати =)
Ized
Репутация: 0
С нами: 17 лет 7 месяцев


Вернуться в Статьи



cron