Re: Multiple DirectShow Window problems




"Thore Karlsen [DShow MVP]" <sid@xxxxxxxx> wrote in message
news:jvpkt1liiqd8fmguknrcv6cug6pfht8qgv@xxxxxxxxxx
> On Fri, 27 Jan 2006 10:28:15 -0800, "Corey Cooper" <CoreyC at
> InnovativeDesign dot com> wrote:
>
> >> It's a way to narrow it down so you can start looking for a solution in
> >> the right place. If the problem is that the renderer is dropping the
> >> frames or telling the decompressor to drop frames then you may get away
> >> with modifying the filter to adjust the time stamps up instead of
> >> blanking them to prevent the renderer from dropping the samples, while
> >> still retaining some semblance of synchronization.
> >>
> >> Or, you can intercept quality control messages from the renderer in the
> >> filter and prevent them from reaching the decompressor (or handle them
> >> some other way), but QC is an area I don't have much experience with.
> >>
> >> I can't say for sure that this is the problem you're having, but I have
> >> seen the same thing myself. In my case I was viewing video from live
> >> sources, so a simple blanking of the time stamps was enough. Since you
> >> need to retain playback synchronization your situation is a little
> >> different.
>
> >OK, I've never written a Directshow Filter, any samples of how to write a
> >CTransInPlaceFilter anywhere? I search the SDK for TransInPlace,
InPlace,
> >in place filter, all to no avail.
>
> A CTransInPlaceFilter is very easy to write, just search for
> CTransInPlaceFilter in MSDN. There are some samples in the Platform SDK,
> but let me backtrack a bit before you do spend any time on this, because
> I think I may have misunderstood the situation:
>
> >Any ideas on my second problem, the audio gradually deteriorating?
>
> I read through your original post again, and I'm a little confused now.
> I originally thought that you were playing several files at once when
> you had your problems, but it seems like you are having problems even
> when all the other files are just paused in the background? Is that
> correct? So even when you are playing just one file, you are having
> problems?

Yes, I am never playing more than one file/graph at a time. The only reason
I have multiple graphs is because of the fast response time needed to start
the playback.

A little more info: To wrap the Directshow interfaces I'm using an example
from CodeProject that uses the VMR9, the theory being that that is a
'better' VMR than VMR7. The article is:
http://www.codeproject.com/audio/vmr9.asp
I've used this successfully for a couple of projects, and with aditional
error trapping seems stable. What I'm trying to do right now is try the
whole thing with VMR7 and see what happens.




> Btw, the answer to this question:
>
> >When I load the MPEGs, I do a sequential thing, where I send the message
> >with the file name to load, the video window creates and Renders the
graph,
> >I then set a timer for a period (it was 2 milliseconds, now to try and
> >alleviate problems it's 250 m'secs), to allow some buffers to load, then
I
> >tell it to play, set a timer again for 2 m'secs, and when I get that
timer
> >callback I tell it to Pause. That's the way I know how to get it to
pause
> >already displaying frame 0, if there's a better way, PLEASE let me know.
>
> If you just call Pause() it will show frame 0. No need for timers or
> running the graph first.

I had a problem with that a while ago (different project) using WMV's and
this solution worked to fix it, I guess I'm over complicating things.

I'm actually worried more about what I describe as the second problem, but I
brought them up in that order because I think they must be related in some
way.

Thank You So much for the fast replys, I have to be in the studio with this
on Tuesday, and we tape a week from today. This is sort of a 'failure is
not an option' situation!

Corey

> --
> New to newsgroups? Read: http://dev.6581.com/newsgroups.html


.



Relevant Pages

  • Re: Multiple DirectShow Window problems
    ... If the problem is that the renderer is dropping the ... >> frames or telling the decompressor to drop frames then you may get away ... >> filter and prevent them from reaching the decompressor (or handle them ... >tell it to play, set a timer again for 2 m'secs, and when I get that timer ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Feeding VCam
    ... I was thinking to use VCam to ... Is it possible to call from an .ax filter an external ... filter to get the frames. ... You can use the above approach with a stock renderer (or null renderer ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Need more about Pause command
    ... I know that it immediatly stops renderer while graph goes on ... I need this information cause my source filter get a delayed pause ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Renderer Delay
    ... ignored by the renderer and usually by any other filter as ... so you need to properly timestamp the ... frames to render them at the correct rate. ...
    (microsoft.public.win32.programmer.directx.video)
  • Frame stepping in directshow
    ... I was trying to implement FrameStepping for my renderer filter but ... FGM calls Step to set the number of frames to skip ... FGM calls Pause on the filters. ... The renderer changes it state to ...
    (microsoft.public.win32.programmer.directx.video)

Loading