Пользовательский фильтр источника графика DirectShow - PullRequest
2 голосов
/ 15 сентября 2009

Все, что мне нужно сделать, это воспроизвести видео AVI из памяти. Я не могу записать его на диск по соображениям безопасности. Насколько я знаю, встроенный график воспроизведения AVI, полученный при вызове RenderFile, будет воспроизводить только файлы.

Существует ли граф DirectShow, который будет воспроизводить AVI из памяти? Если нет, как я могу изменить или создать график, который будет делать это?

1 Ответ

5 голосов
/ 15 сентября 2009

На графике есть исходный фильтр, демультиплексор, а затем декодеры и рендеры. Фильтр исходного кода - это просто оболочка для API доступа к файлам. Если вы замените исходный фильтр на собственный, вы сможете воспроизводить его из памяти или из любого хранилища, к которому обращается ваш пользовательский фильтр.

В SDK есть пример исходного фильтра, который считывает весь файл в память и использует его.

G

...