I seem to have trouble creating an ATSC BDA filtergraph and am wondering what the future of WDM versus BDA TV tuner drivers will be. Is one going away? Which has more support? I can construct a filtergraph using the WDM filters in source code for an FM tuner but have not yet gotten it to work with the ATSC tuner as of yet. I did finally get the TV tuner working in GraphEdit using the BDA filters, but I add them all in code and try RenderStream() and it fails. What I really would like to know is should I focus on getting the BDA solution to work, or should I attempt to get the ATSC tuner working with the WDM drivers? There isn't a whole lot of sample code out there for ATSC TV tuner development, at least there isn't a whole lot of great examples, but after getting Mark Pesce's book on DirectShow I've finally got a better birds-eye-view of filtergraph construction and think I can figure out how to get ATSC working at least with one of the two driver/filter models. So should I use the WDM or BDA? Here are the filters for each model:

 

This works in GraphEdit but not in C code:

// Microsoft DirectShow ATSC TV Tuner FilterGraph:
// -----------------------------------------------
// - Microsoft ATSC Network Provider
//   (Antenna Out)->
//   - (Input0): Hauppauge HVR USB2 BDA Tuner/Demod
//     (MPEG2 Transport)->
//     - (MPEG2 Transport): Hauppauge HVR USB2 TS Capture
//       (MPEG2 Transport)->
//       - (MPEG-2 Stream): MPEG-2 Demultiplexer
//         (1)->
//         - (IB Input): BDA MPEG2 Transport Information Filter
//       - (MPEG-2 Stream): MPEG-2 Demultiplexer
//         (2)->
//         - (In): MPEG-2 Sections and Tables
//       - (MPEG-2 Stream): MPEG-2 Demultiplexer
//         (3)->
//         - (Input): SampleGrabber
//           (Output)->
//           - (Video Input): Microsoft MPEG-2 Video Decoder
//             (Video Output 1)->
//             - (VMR Input0): Video Renderer
//       - (MPEG-2 Stream): MPEG-2 Demultiplexer
//         (4)->
//         - (In): AC3Filter
//           (Out)->
//           - (Audio Input pin (rendered)):
//             Default DirectSound Device
The following graph I got working in graphedit and C code
for the FM tuner audio, and I hooked up the Composite Audio In
eventually, but I've yet to get any video out of this graph for
TV or Comp/SVideo in C code:
// Microsoft DirectShow WDM TV Tuner FilterGraph:
// -----------------------------------------------
// - Hauppauge HVR USB2 Tuner
//   (Analog Audio)->
//   - (TVAudio In): Hauppauge HVR USB2 TvAudio
//     (TVAudio Out)->
//     - (Audio Tuner In): Hauppauge HVR USB2 Crossbar
//       (Audio Decoder Out)->
//       - (Analog Audio In): Hauppauge HVR USB2 Video Capture
//         (Audio Out)->
//         - (In): AC3Filter
//           (Out)->
//           - (Audio Input pin (rendered)): Default DirectSound Device
// - Hauppauge HVR USB2 Tuner
//   (Analog Video)->
//   - (Video Tuner In): Hauppauge HVR USB2 Crossbar
//     (Video Decoder Out)->
//     - (Analog Video In): Hauppauge HVR USB2 Video Capture
//       (Capture)->
//       - (Input): Hauppauge WinTV Color Format Converter 2
//         (Out)->
//         - (VMR Input0): Video Renderer
I noticed that if you try and change the channel in GraphEdit
if you use the WDM driver that it only allows switching to FM or NTSC
and not ATSC. Is there no way to use ATSC with WDM? Can you only use
BDA filters to get an ATSC tv tuner working? Here's a link to the
project I'm working on and its source code. Any and all help will be appreciated.
Sincerely,
Lee Harrison
lharrison74@verizon.net
project with source:
http://mysite.verizon.net/~lharrison74/xremote/xremote.htm#Source