Как создать растровое изображение из (сжатого формата) растрового информационного заголовка и строк сканирования в WPF? - PullRequest
0 голосов
/ 18 февраля 2010

Я использую SampleGrabber в DirectShow на Windows 7, я заметил, что код, предоставленный Microsoft и многими другими поставщиками, не работает, потому что заголовок данных Bitmap сообщает, что данные Bitmap сжаты, однако новый Bitmap (ширина, высота, шаг, pixelformat, scanlines) не имеет параметров, указывающих, что в буфере сжатое изображение. Конечно, Bitmap не будет идентифицировать это.

Тип мультимедиа SampleGrabber предоставляет битовый информационный заголовок, который имеет сжатие, равное чему-то, и полученные данные меньше байтов, указанных в заголовке битовой информации.

Создание растрового изображения просто создает мусор всех видов.

Похоже, у меня есть заголовок битовой информации и строки сканирования, но нет способа создать битовый образ из (сжатого формата) заголовка битовой информации и строк сканирования в WPF.

Я пытался использовать CreateDIBSection и т. Д., Но GDI + не работает правильно в WPF, все возвращает ноль, я также пытался инициализировать GDI и т. Д., Но понятия не имел, что делать сейчас.

1 Ответ

0 голосов
/ 22 марта 2010

Сконфигурируйте тип носителя для примера устройства захвата (sampleGrabber.SetMediaType) с тем, у которого для подтипа задано значение RGB24.

Тогда данные будут поступать в виде несжатых растровых данных в вашем обратном вызове BufferCB.

...