С нами лучше!
Выбираем видеокодек


Итак, передо мной встал вопрос - чем кодировать. Т.к. с форматом вещания мы уже разобрались, то выбор стандарта видеокодека осуществлялся теперь автоматически - выбор пал на видеокодек H.264. Естественно, изобретать велосипед мы не стали, а взяли готовый, проверенный временем и отлично работающий open source видеокодек x264. Я успешно прикрутил его к своей системе, и он также успешно стал работать и кодировать видео. Но дальше меня ждал один неприятный момент.

Как я уже указывал (методика разработки), моей целью было - написать программу с полным отсутствием каких бы то ни было утечек памяти. Так вот, с x264 видеокодеком у меня это не получалось. Анализатор постоянно показывал утечку, хотя я всё делал согласно документации к x264 - вызывал соответствующие функции очистки памяти и пр. Причем это была плавающая утечка - при каждом запуске программы она была разной. Возможно, непосредственно при самой работе кодека память и не текла, а утечка возникала лишь при завершении - не знаю. Тут необходимо было детально разбираться в исходных кодах x264, а делать это мне совсем не хотелось. Итого - наличие утечек памяти стало первой причиной, по которой я поставил под сомнение использование x264 в своём проекте.

Второй причиной стал банальный интерес - мне было интересно понять, как работает видеокодирование, с чем его едят, какие технологии при этом используются и как всё это работает. В итоге я принял решение о разработке собственного видеокодека стандарта H.264. Данному вопросу я посвятил заметку Разработка видеокодека H.264. Именно этот, разработанный собственными силами видеокодек, сейчас используется при вещании на сайте.

Игорь, Октябрь 2012.



Комментарии Выбираем видеокодек (1)
Скрыть комментарии
Комментарий от: Гость, от 09-03-2026 21:14,
Круто! Спасибо, что завпечатлили здесь свой опыт!
 
» Ответить на комментарий...

Добавить комментарий


Навигация
Все онлайн тв каналы
Архивы
Телепрограмма
Выбрать телеканал