Re: media seeking can't work in my decoder filter
- From: "hbtmzrui@xxxxxxxxx" <hbtmzrui@xxxxxxxxx>
- Date: 7 Sep 2006 19:42:15 -0700
Thanks for your reply. I've checked when my filter receives a flush
operation, the operation flow is just as same as you said, but I don't
know how to check if ImediaSeeking parameters are passed correctly, can
you suggest me something about where does the media seeking happen in
baseclass?
Geraint Davies wrote:
On 7 Sep 2006 01:32:16 -0700, hbtmzrui@xxxxxxxxx wrote:
the problem is when I try to play a H.264 avi file with my decoder
filter, media seeking doesn't work. as soon as I try to seek, the graph
stopped immediately and restart to run from first frame.
I build the graph like this:
file source(H.264 avi file) -> avi splitter -> decoder -> video render
I've checked other filters such as xvid or ffdshow's implementation,
and I can find nothing different from my filter and nothing about media
seeking in these transform filters, but they all work correctly.
maybe I should set timestamp for every samples passed to next filter,
so I add such code:
...
CRefTime rtEnd = m_time + m_avgFrameTime;
pOutSample->SetTime(&m_time.m_time, &rtEnd.m_time);
m_time = rtEnd;
but it don't help, what's wrong with my filter?
Thanks a lot!
First check that the IMediaSeeking parameters are passed upstream
correctly. If you derive from the standard transform base class, then a QI
on your output pin for IMediaSeeking should create a CPosPassThru.
Then check what happens when your filter receives a flush operation. When
the app seeks, the following things happen:
- graph pauses
- seeking call is passed upstream to demux
- demux issues BeginFlush
- demux stops worker threads
- demux issues EndFlush
- demux starts worker threads
- worker threads begin Receive calls to your transform, preceded by a
NewSegment call.
G
.
- Follow-Ups:
- Re: media seeking can't work in my decoder filter
- From: Geraint Davies
- Re: media seeking can't work in my decoder filter
- References:
- media seeking can't work in my decoder filter
- From: hbtmzrui@xxxxxxxxx
- Re: media seeking can't work in my decoder filter
- From: Geraint Davies
- media seeking can't work in my decoder filter
- Prev by Date: RE: WMV seeking problem when WMV acceleration is on
- Next by Date: Re: Improving GetDeliveryBuffer function Performance in Source Filter
- Previous by thread: Re: media seeking can't work in my decoder filter
- Next by thread: Re: media seeking can't work in my decoder filter
- Index(es):
Relevant Pages
|