Как захватывать видеокадры с помощью gstreamer-sharp

Я делаю некоторую обработку видео с уже написанным приложением. На самом деле, он использует DirectShow (DS) для декодирования видеопотока и обработки его с помощью обратного вызова.
Основной недостаток заключается в том, что многие распространенные видеоформаты не могут быть декодированы с помощью DS из-за отсутствия кодеков (это влияет на большинство чересстрочных видеоформатов, таких как .vob - Files = DVD-Format).
Поэтому я ищу альтернативу декодированию для замены кода DirectShow.
Возможно, gstreamer с его привязки C#.
К сожалению, имеется лишь небольшой пример кода, как его использовать, поэтому довольно сложно найти подходящее место для начиная.

Может быть, кто-нибудь знает, как начать с обратных вызовов gstreamer-sharp и videoframe-для дальнейшей обработки?

Заранее большое спасибо!


person Sascha    schedule 10.11.2011    source источник
comment
Возможна ли коммерческая составляющая?   -  person Yahia    schedule 10.11.2011
comment
@Yahia Commercial зависит от лицензии и цены - в основном да.   -  person Sascha    schedule 10.11.2011
comment
пожалуйста, смотрите мой ответ ниже...   -  person Yahia    schedule 10.11.2011


Ответы (2)


К сожалению, ffmpeg-sharp мертв. Я использую IPP с внутренним уровнем взаимодействия для выполнения декодирование с постобработкой в ​​управляемом коде. Streamcoders предлагает что-то очень похожее на то, что IIRC немного дороже, но не требует реализации кода взаимодействия. .

person Yaur    schedule 11.11.2011
comment
Сколько времени/усилий/строк кода вы потратили на написание своего слоя взаимодействия? - person Sascha; 11.11.2011

Посмотрите эти бесплатные + коммерческие библиотеки:

person Yahia    schedule 10.11.2011
comment
Насколько я знаю, ffmpeg не может обрабатывать видео с помощью (блокирующего) обратного вызова. Вы можете это подтвердить? - person Sascha; 10.11.2011
comment
@Sascha Я не уверен на 100%, но IIRC в ffmpeg был какой-то видео-хук (может зависеть от используемой оболочки) ... - person Yahia; 10.11.2011
comment
Нет шансов для gstreamer-sharp? Может быть, что-нибудь вокруг appsink-класса? - person Sascha; 15.11.2011
comment
@Sascha У меня мало знаний/опыта работы с gstreamer-sharp... и по моему опыту, особенно. когда дело доходит до поддержки различных кодеков и т. д., ffmpeg (кстати, gstreamer использует его среди прочего!) хорош, и некоторые коммерческие компоненты тоже, так что это то, что я рекомендовал ... - person Yahia; 16.11.2011