Как добавить кодировщик видео в окна, чтобы их распознавал DirectShow

Я чего-то не понимаю в кодировщике видео, помогите мне пояснить:

  • где энкодеры существуют в системе?
  • как directshow их распознает?
  • какие кодировщики поддерживаются directshows и как их добавить?

спасибо, что прочитали мои вопросы и за любую помощь.


person habibhassani    schedule 13.10.2014    source источник


Ответы (2)


См. Выбор фильтра сжатия:

Чтобы перечислить компрессоры видео или аудио, доступные в системе пользователя, сделайте следующее: [...]

Там также есть фрагмент кода для перечисления и создания экземпляров компрессоров/кодировщиков.

Вы отметили вопрос как c#, а не directshow.net, так что вы также можете нужно посмотреть на DirectShow.NET для доступа к DirectShow API из управляемого кода. DirectShow.NET также предоставляет образцы.

person Roman R.    schedule 13.10.2014
comment
спасибо за ваш повтор, я увижу эти образцы DirectShow.NET - person habibhassani; 13.10.2014

Очень полезным инструментом для таких вещей является GraphEdit (часть DirectShow SDK, его можно скачать, например, здесь: http://www.videohelp.com/tools/GraphEdit)
Если вы нажмете График -> Вставить фильтры, вы увидите список всех установленных фильтров и расположение их файлов.

Чтобы зарегистрировать фильтр, вы можете использовать (в командной строке): regsvr32 filter.dll
(Как описано здесь: Как использовать/установить пользовательский фильтр Directshow)

person Denis Thomas    schedule 13.10.2014
comment
большое спасибо, это очень полезно, как вы сказали. это помогает мне найти, что они находятся в файле программы, так что вы знаете, как directshow распознает их, добавлены ли какие-то ссылки в реестр? - person habibhassani; 13.10.2014