2010-05-30 1 views
3

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

ответ

3

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

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

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

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

Смежные вопросы