Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

IMAG AVI Get Filter Names comes back empty

I'm using Labview 7.1 with the NI Vision Development module version 7.0.
When I try to run the AVI Get Filter Names vi, it hangs for about a minute
or so, and then returns an apparently empty list. It looks like it
simply can't find any filters at all. Where is it supposed to be looking?
How can I get it to write AVI files?
0 Kudos
Message 1 of 21
(7,394 Views)
doughera -

What version of DirectX do you have on your system? To find this out, go to the Start Menu->Run... and run "dxdiag" (without quotes). If your version of DirectX is less than 8.1, you will need to upgrade to DirectX 8.1 or higher (it's a free download from Microsoft which can be found here). If not, what version of DirectX do you have, and what version of Windows do you have?

Greg Stoll
IMAQ R & D
National Instruments
Greg Stoll
LabVIEW R&D
Message 2 of 21
(7,385 Views)
I'm running Direct X 9.0b, Windows XP Service pack 1, with all the latest
security patches. Is the direct X too new?
0 Kudos
Message 3 of 21
(7,382 Views)
doughera -

No, that version of DirectX should be OK. Can you post the output of dxdiag (click the "Save All Information..." button in dxdiag) here?

Greg Stoll
IMAQ R & D
National Instruments
Greg Stoll
LabVIEW R&D
Message 4 of 21
(7,346 Views)
The only problem DxDiag reported was "DirectX Files Tab: The file qasf.dll is an old version, which could cause problems. You should reinstall DirectX to get the latest version."

So I went to re-install DirectX. Microsoft's web page pointed me to 9.0c instead, so I figured I might as well
try that. I installed 9.0c. It turns out to have the exact same qasf.dll file, but it's now not called an
"old version". Oh, well.

Anyway, installing 9.0c didn't help. IMAQ AVI Get Filter Names still hangs for a long time and then comes back empty. I've attached the DirectX 9.0c diagnostic output. I hope it means something to somebody.
0 Kudos
Message 5 of 21
(7,343 Views)
hi,

I have the same problem with IMAQ AVI Get Filter Names. Once I run it, VI hangs for a long time, and then crushes. Installation of DirectX 9.0c did not help.
Does anybody have any clue as to where the problem is?

Any information will be greatly appreciated.

Thanks,
pete
0 Kudos
Message 6 of 21
(7,125 Views)
I still haven't solved it, though I haven't been trying lately. I'll be looking at it again in the next month or so, but I still don't really have any ideas what's wrong.
0 Kudos
Message 7 of 21
(7,088 Views)
Hi,

Apparently AVI Get Filter Names is not compatible with some codecs. Nevertheless there is a work around.
Go to Control Panel->Sound and Audio Devices->Hardware->Video Codecs->Properties. You should see all your video codecs (such as Microsoft Video 1, Microsoft RLE etc.)
If you want to test your compression filters, make an array of strings and place it where IMAQ AVI Get Filter Names should be.
For me, the best filter was Microsoft Video 1 since I am working with 24-hour long videos.
This is not the most elegant solution, but most PCs with Windows have Microsoft Video 1, so your application may be portable.

Hope this helps,
petar
0 Kudos
Message 8 of 21
(7,066 Views)
I too have just come across this error.  I have LabVIEW and Vision7.0 and DirectX 9.0c installed.  Running this VI completely crashes LabVIEW.  If this VI is in-compatible with some Codecs does anyone know which ones they are?  I have a feeling it is the DivX range of Codecs, since when I tried to list the details of a particular AVI encoded with this Codec it resulted in an error (at least it didn't crash LabVIEW).  Has this problem been fixed in Vision 8.0
0 Kudos
Message 9 of 21
(6,713 Views)
Hi Chris,
 
There are certain cases, usually involving the Divx filter, which can possibly cause an error in Vision 7.0.  The crashing should not occur in Vision 8.0.  The newest verion will either return a list of usable filters or it will return an error. 
 
There is however a suggested work-around for Vision 7.0. 
  1. Follow the instructions above to create a DxDiag.txt
  2. Open DxDiag.txt and find the section titled "Video Compressors:"
  3. Choose a filter from the listed section and copy the name to your clipboard
  4. Instead of using the IMAQ AVI Get Filter Names vi, paste the filter name into a constant string that feeds into the Compression Filter input of the IMAQ AVI Create vi
  5. If you need to select between many known filters, consider making a selectable array of filter names

I hope this works for your application. Let me know if you have any further questions.

Regards,

Ryan F.

0 Kudos
Message 10 of 21
(6,694 Views)