PDA

View Full Version : MemoryCurrentGrabberColorformat cannot be set



Heiko Wilkens
February 14, 2008, 21:24:37
Once I add the RoIFilter to DeviceFrameFilter I am not able to change the pixel format of MemoryCurrentGrabberColorformat.

This is also true if I remove all frame filters from the deviceframefilter collection.

How Can I change the MemoryCurrentGrabberColorformat?

Best
Heiko

Stefan Geissler
February 15, 2008, 08:05:47
Hi Heiko,

the MemoryCurrentGrabberColorformat can only be called before the live stream is started. Did you do so? (I guess yes...)

I tried this little sample:


Private Sub Form_Load()
ICImagingControl1.Device = ICImagingControl1.Devices.Item(1).Name
ICImagingControl1.MemoryCurrentGrabberColorformat = ICRGB565
ICImagingControl1.LiveStart
Debug.Print ICImagingControl1.ImageBuffers.Item(1).FrameType.B itsPerPixel
End Sub

It results with the correct number of bits per pixel, in this sample it must be 16.

How did you check this issue?

Heiko Wilkens
February 15, 2008, 13:02:58
Hello Stefan,

Yes, I stopped the live stream before setting MemoryCurrentGrabberColorformat.

Changing the value of MemoryCurrentGrabberColorformat works fine as long as no RoI or Flipping frame filter is/was inserted into the device or the sink path*.

If one of the frame filters is or was used the value of MemoryCurrentGrabberColorformat cannot be changed any longer.

Best
Heiko

*With a frame filter inserted the value of MemoryCurrentGrabberColorformat can be set the first time after the camera was connected (and the stream was not started). Later on no more calls to MemoryCurrentGrabberColorformat are accepted no matter if a frame filter is used or not.

Stefan Geissler
February 15, 2008, 14:02:40
Hi,

I forward this to the programmers.

Heiko Wilkens
February 16, 2008, 09:13:04
Hello Stefan,
Please keep me informed.

Best
Heiko

esajoh
September 21, 2014, 18:25:21
Hello Stefan,
Please keep me informed.

Best
Heiko

I'm currently experiencing this problem, with the latest drivers and USB camera. Seems to be an old one, but no solution posted here? Does anybody know the solution?

best regards, -Esa

Stefan Geissler
September 22, 2014, 14:11:43
Hello

Using filters and changing MemoryCurrentGrabberColorformat is somewhat tricky. VB6 code looks as follows:



Dim rffilter As FrameFilter
ic.SinkCompatibilityMode = True
ic.MemoryCurrentGrabberColorformat = ICRGB32
ic.SinkCompatibilityMode = False
ic.DeviceFrameFilters.Clear
ic.Device = ""
ic.Device = "DFK 21F04"
Set rffilter = ic.FrameFilterCreateString("Rotate Flip", "stdfilters.ftf")
ic.DeviceFrameFilters.Add rffilter
ic.LiveStart
ic.LiveStop
ic.DeviceFrameFilters.Clear
ic.Device = ""


This code was used in a loop to make sure, it works.