Как кодировать изображения RGB в кадры H264 (ключевой кадр + некоторые зависимые кадры)? - PullRequest
3 голосов
/ 31 мая 2010

Итак, я создал генератор изображений (довольно просто, который генерирует RGB). Я хочу иметь возможность превращать некоторое количество изображений в H264 KeyFrame + зависимые кадры (лат, скажем, 100). Поэтому на каждые 100 генерируемых кадров мне нужно кодировать их в H264. , Как это сделать?

1 Ответ

3 голосов
/ 16 июня 2010

У вас есть пара вариантов. Вероятно, лучшим из доступных кодеров является x264, но он не имеет интерфейса C #. Вам нужно определить вызовы взаимодействия в стиле C, чтобы использовать его из программы на C #.

Другой вариант - SDK-кодировщик выражений MSFT, который поддерживает H264. Я не уверен, сколько это стоит. Кроме того, есть несколько других реализаций кодировщика, таких как Mainconcept и Dicas, которые могут иметь интерфейсы C #, но они будут стоить вам.

Последний вариант - использовать DirectShow.NET и этот фильтр для кодирования с использованием directshow. Вы должны быть в состоянии сделать все из C #, и это через COM-взаимодействие, так что интерфейс немного чище.

Наконец, почти все кодировщики работают в цветовом пространстве YUV, поэтому вам, вероятно, потребуется что-то для преобразования ваших изображений RGB - x264 и фильтр Monogram оба работают на YV12.

...