none
Directshow To WIA

    Question

  • Hi,

    I wrote some directshow filter that can show outputs of a custom device (Kinect). MSN and Skype works with it perfectly. But some apps (for example photoshop) support only WIA. I want to know how can i make a WIA driver that can Route filter output?!


    ONLY a Beginner
    Friday, March 11, 2011 12:27 AM

Answers

  • Sheng Jiang ?? [MVP] wrote:
    >
    >I believe WIA view preview uses DirectShow internally. If you are
    >looking for writing a WIA driver try
    >Photoshop...check if it can recognize WPD or TWAIN. WIA isn't the
    >best interface for static image acquiring.
     
    That is a fascinating statement, since that is EXACTLY what WIA was
    designed to handle. It was created as Microsoft's answer to TWAIN.
     
    Originally, Microsoft included a generic WIA driver that would wrap any
    arbitrary AVStream device. This was shipped with windows up through XP,
    and because of the generic WIA/TWAIN converter, it meant you had automatic
    TWAIN support for all streaming devices.
     
    After XP, someone made the bone-headed decision that WIA wasn't appropriate
    for grabbing snapshots from streaming cameras, so they removed that generic
    driver, and even made it impossible to supply your own (it is no longer
    possible to register a streaming WIA driver).
     
    It is possible to create a TWAIN data source with an embedded DirectShow
    graph, but it's a pain. TWAIN is a HUGE specification.
    --
    Tim Roberts, timr@probo.com
    Providenza & Boekelheide, Inc.
     

    Tim Roberts, DDK MVP
    • Marked as answer by DarkSoroush Saturday, March 12, 2011 9:18 PM
    Friday, March 11, 2011 6:14 AM
  • It is a driver type not a filter type. Check AVStream Overview.

    WIA does not support video devices in Windows Server 2003, Windows Vista, or later. Which means, if Adobe choose to only support WIA, you will be unable to use video devices in Photoshop on modern operating systems.



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    • Marked as answer by DarkSoroush Saturday, March 12, 2011 9:17 PM
    Friday, March 11, 2011 8:13 PM

All replies

  • I believe WIA view preview uses DirectShow internally. If you are looking for writing a WIA driver try http://social.msdn.microsoft.com/Forums/en/wdk/threads. But for Photoshop...check if it can recognize WPD or TWAIN. WIA isn't the best interface for static image acquiring.

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    Friday, March 11, 2011 1:28 AM
  • Sheng Jiang ?? [MVP] wrote:
    >
    >I believe WIA view preview uses DirectShow internally. If you are
    >looking for writing a WIA driver try
    >Photoshop...check if it can recognize WPD or TWAIN. WIA isn't the
    >best interface for static image acquiring.
     
    That is a fascinating statement, since that is EXACTLY what WIA was
    designed to handle. It was created as Microsoft's answer to TWAIN.
     
    Originally, Microsoft included a generic WIA driver that would wrap any
    arbitrary AVStream device. This was shipped with windows up through XP,
    and because of the generic WIA/TWAIN converter, it meant you had automatic
    TWAIN support for all streaming devices.
     
    After XP, someone made the bone-headed decision that WIA wasn't appropriate
    for grabbing snapshots from streaming cameras, so they removed that generic
    driver, and even made it impossible to supply your own (it is no longer
    possible to register a streaming WIA driver).
     
    It is possible to create a TWAIN data source with an embedded DirectShow
    graph, but it's a pain. TWAIN is a HUGE specification.
    --
    Tim Roberts, timr@probo.com
    Providenza & Boekelheide, Inc.
     

    Tim Roberts, DDK MVP
    • Marked as answer by DarkSoroush Saturday, March 12, 2011 9:18 PM
    Friday, March 11, 2011 6:14 AM
  • What is a AVStream device?! This is a filter type or driver?! Because my filters are on "Video Capture Sources" category. So if i wrote my driver like an AVStream then WIA must route it and Photoshop can use in under XP. But in 7 or vista it didn't work. Correct?! Photoshop only support WIA i think. Any way. I want this filter become more standard for windows. Showing on device list (7-vista) as a webcam and showing on My computer (XP) if possible. How can i made this Virtual webcam more standard?!
    ONLY a Beginner
    Friday, March 11, 2011 8:27 AM
  • It is a driver type not a filter type. Check AVStream Overview.

    WIA does not support video devices in Windows Server 2003, Windows Vista, or later. Which means, if Adobe choose to only support WIA, you will be unable to use video devices in Photoshop on modern operating systems.



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    • Marked as answer by DarkSoroush Saturday, March 12, 2011 9:17 PM
    Friday, March 11, 2011 8:13 PM
  • DarkSoroush wrote:
    >
    >What is a AVStream device?!
     
    Almost any video capture hardware you are likely to encounter today has an
    AVStream driver. There is a standard DirectShow component called "ksproxy"
    that lets any AVStream driver act as a DirectShow source filter.
     
    >This is a filter type or driver?! Because my filters are on "Video Capture
    >Sources" category.
     
    Which almost certainly means they are AVStream devices.
     
    >So if i wrote my driver like an AVStream then WIA must route it and
    >Photoshop can use in under XP. But in 7 or vista it didn't work. Correct?!
     
    Correct.
    --
    Tim Roberts, timr@probo.com
    Providenza & Boekelheide, Inc.
     

    Tim Roberts, DDK MVP
    Sunday, March 13, 2011 3:09 AM