MATRIX VISION - mvBlueFOX3 Technical Documentation
DirectShow interface
Note
DirectShow can only be used in combination with the Microsoft Windows operating system.
Since Windows Vista, Movie Maker does not support capturing from a device registered for DirectShow anymore.

This is the documentation of the MATRIX VISION DirectShow_acquire interface. A MATRIX VISION specific property interface based on the IKsPropertySet has been added. All other features are related to standard DirectShow programming.

Supported interfaces

IAMCameraControl

IAMDroppedFrames

IAMStreamConfig

IAMVideoProcAmp

IKsPropertySet

The DirectShow_acquire supports the IKsPropertySet Interface. For further information please refer to the Microsoft DirectX 9.0 Programmer's Reference.

Supported property set GUID's:

  • AMPROPERTY_PIN_CATEGORY
  • DIRECT_SHOW_ACQUIRE_PROPERTYSET

ISpecifyPropertyPages

Logging

The DirectShow_acquire logging procedure is equal to the logging of the MATRIX VISION products which uses mvIMPACT Acquire. The log output itself is based on XML.

If you want more information about the logging please have a look at the Logging chapter of the respective "mvIMPACT Acquire API" manual or read on how to configure the log-output using mvDeviceConfigure in the "mvIMPACT Acquire GUI Applications" manual.

Setting up devices for DirectShow usage

In order to be able to access a device through the mvIMPACT Acquire driver stack from an application through DirectShow a registration procedure is needed. This can either be done using mvDeviceConfigure or by a command line tool that is part of the Windows operating system.

Note
Please be sure to register the MV device for DirectShow with a matching version of mvDeviceConfigure. I.e. if you have installed the 32-bit version of the VLC Media Player, Virtual Dub, etc., you have to register devices with the 32-bit version of mvDeviceConfigure ("C:\Program Files\MATRIX VISION\mvIMPACT Acquire\bin", the 64-bit version resides in "C:\Program Files\MATRIX VISION\mvIMPACT Acquire\bin\x64")!

Registering devices

To register all devices currently recognized by the mvIMPACT Acquire driver stack for access with DirectShow the following registration procedure is needed:

  1. >mvDeviceConfigure needs to be started(with elevated rights).
    If no device has been registered the application will more or less (depending on the installed devices) look like this.

    mvDeviceConfigure - After Start


  2. To register every installed device for DirectShow access click on the menu item "DirectShow""Register All Devices".

    mvDeviceConfigure - Register All Devices


  3. After a successful registration the column "Registered For DirectShow" will display "yes" for every device and the devices will be registered with a default DirectShow friendly name which is displayed in the "DirectShow Friendly Name" column.

    mvDeviceConfigure - All Devices Registered For DirectShow Access


Renaming devices

To modify the DirectShow friendly name of a device:

  1. mvDeviceConfigure needs to be started(with elevated rights).
  2. right-click on the device to rename and select "Set DirectShow Friendly Name":

    mvDeviceConfigure - Set DirectShow Friendly Name


  3. Then, a dialog will appear. Please enter the new name and confirm it with "OK".

    mvDeviceConfigure - Dialog For New Name


  4. Afterwards the column "DirectShow friendly name" will display the newly assigned friendly name.

    mvDeviceConfigure - Renamed Device


Note
Please do not select the same friendly name for two different devices. In theory this is possible, however the mvDeviceConfigure GUI will not allow this to avoid confusion.

Using regsvr32

To register all devices currently recognized by the mvIMPACT Acquire driver stack with auto-assigned names, the Windows tool "regsvr32" can be used from an elevated command shell.

The following command line options are available and can be passed during the silent registration:

EXAMPLES:

Register ALL devices that are recognized by mvIMPACT Acquire (this will only register devices which have drivers installed) without any user interaction:

regsvr32 <path>\DirectShow_acquire.ax /s

Unregister ALL devices that have been registered before without any user interaction:

regsvr32 <path>\DirectShow_acquire.ax /u /s