2011-11-07 19 views
6

Tworzę aplikację do przechwytywania wideo w systemie Windows i używam programu DirectShow do przechwytywania. Gdy przychodzi każda klatka, chcę ją pobrać jako surową bitmapę RGB do bufora, w którym to momencie mój kod zrobi wszystko, czego potrzebuję.DirectShow - Pobieranie klatek wideo

Szukałem próbek podobnych do tego, co chcę robić i wszędzie, gdzie wyglądam online, ludzie zalecają używanie interfejsu IMediaDet i/lub ISampleGrabber do robienia zdjęć klatka po klatce. Niestety oba są nieaktualne i nie są nawet w najnowszej wersji zestawu Windows SDK.

Jaki jest najlepszy (nowoczesny) sposób przechwytywania klatka po klatce w programie DirectShow? Jeśli go nie ma, czy istnieje inna biblioteka, której powinienem użyć, aby uchwycić klatkę po klatce?

+0

możliwe duplikat [ISampleGrabber nieaktualne? ] (http://stackoverflow.com/questions/6124629/isamplegrabber-deprecated) –

Odpowiedz

5

Sample Grabber został wycofany kilka lat temu, co było kilka lat po tym, jak program DirectShow faktycznie przestał działać. Oznacza to, że używaj Sample Grabber, gdy czytasz jako sugerowaną metodę i zadziała to dla Ciebie.

Jedyną rzeczą, którą dodatkowo potrzebne jest, aby skopiować definicje int kod źródłowy, patrz dane:

+0

Nie byłem świadomy rozwoju DirectShow był co Mpletely zatrzymany. Czy istnieje nowa, inna biblioteka, której powinienem użyć? –

+1

W "DirectShow" pojawiło się niewiele nowych w ciągu ostatnich (8?) Lat. 'Media Foundation' ma być następcą, ale jak dotąd nie osiągnęło mocy' DirectShow' nawet w najnowszych wersjach Windows, nawet nie mówiąc o kompatybilności w poprzednich wersjach. Oznacza to, że 'DirectShow' jest nadal idealnym wyborem dla multimedialnego API. –

Powiązane problemy