Here is a consolidated list of changes that we can expect for DirectShow Windows 7

Potentially Breaking Change (*IMPORTANT*): Intelligent Connect adds a level of indirection on Win 7 that may have a major impact to DirectShow developers. Starting in Windows 7, DirectShow has a list of preferred filters for certain media subtypes. If there is a preferred filter for the media type that is being rendered, the Filter Graph…

1

Playing an MPEG1 file in WMP via HTTP returns the wrong duration

A colleague of mine in Japan recently found this very interesting issue in Windows Media Player (WMP) on Windows XP. From what he found WMP returns the wrong duration value when playing back MPEG1 files via HTTP. This only appears to occur if the file has not been cached locally by the player. This issue…

1

DirectShow Filter vs. DMO – Ready… Fight!

There are some rather interesting misunderstandings surrounding Direct Media Objects (DMO). I talked to one engineer the other day that called DMOs inferior to DirectShow filters. While I personally think that DirectShow is one of the most amazing technologies of all time, times are changing. From what I understand, the DMO actually got its start…

1

Rendering MMS, RTSP and HTTP with DirectShow in Vista and Windows 7

I was talking to a DirectShow engineer the other day that was having issues rendering URLs using DirectShow on XP and Vista. He noticed that the behavior was very different between the two operating systems. Luckily I was privy to a very interesting conversation between the original developer of the WM ASF Writer filter and…

0

Custom DirectShow Audio Renderer hangs playback in Windows Media Player 11

If you write your own DirectShow based Audio Renderer and want it to work inside WM Player 11 don’t derive it from CBaseRenderer. If you use CBaseRenderer, A/V playback in WM Player may hang. Unfortunately it doesn’t hang all the time. The hang usually manifests after seeking. So at first glance everything is working fine…

0

Unexpected Windows Media Encoder shutdown / crash while encoding

I found an interesting problem when dynamically changing the input format of the WM Encoder while encoding. In other words if you are capturing from a single digital capture card and the card can change the input resolution dynamically then WM Encoder may behave strangely, shutdown or crash. The problem appears to be that the…

0

When playing back a DV encoded AVI file, what does the AVI Splitter do when it detects a zero byte sample (zero byte index) from the Async File Source?

Q. When playing back a DV encoded AVI file, what does the AVI Splitter do when it detects a zero byte sample (zero byte index) from the Async File Source? A. From what I see in the code the AVI Splitter doesn’t do anything when it detects a zero byte sample. It appears to drop…

0

When NTSC (29.97 interlaced) video is being fed to the VMR9 with a custom allocator/presenter, PresentImage is being called 60 times per second. You expect 30 times per second.

Q. When NTSC (29.97 interlaced) video is being fed to the VMR9 with a custom allocator/presenter, PresentImage is being called 60 times per second.  You expect 30 times per second. A. This is by design depending on the type of deinterlacing that you are using. I worked with the developer that wrote the deinterlacing code…

0