I've been doing hours and hours of google groups searching now, with no
results.
I am trying to call SetRate when playing a wmv9 encoded file. It does not
work.
I read on msdn.microsoft.com that
"The WM ASF Reader supports the DirectShow IMediaSeeking interface, which
enables applications to perform temporal seeking within the file. However,
playback at speeds other than 1.0 (as specified in IMediaSeeking::SetRate)
is not supported."
Then i found another document, which said:
"This filter is geared toward network playback and provides support for fast
forwarding but not rate control. For simple playback, this filter is
sufficient but in general is considered legacy technology and inferior to
the WM ASF Reader, which is a wrapper filter for the Windows Media Format
SDK and enables applications to make use of most of the features of that SDK
for Windows Media playback. The WM ASF Reader supports the
IMediaSeeking::SetRate method. Values of -1 to -10 and 1 to 10 are accepted.
To use this filter, you must use the COM CoCreateInstance function to
instantiate it, and call IFilterGraph::AddFilter to add it to the graph. The
WM ASF Reader exposes interfaces of the Windows Media Format Reader object
to enable applications to program directly to that SDK when necessary."
_The WM ASF Reader supports the IMediaSeeking::SetRate method_
I found code examples that suggested that i CoCreated a filter with the
CLSID_WMAsfReader CLSID, BEFORE calling RenderFile(). I did this, but now
all i get is a black videowindow, and no playback.
Then i discovered this:
"Note In the DirectX SDK, this filter is not the default source filter for
ASF files, so with that SDK you cannot use this filter with the RenderFile
method; you must explicitly add it to the filter graph by using its class
identifier (CLSID). This behavior is different with the Windows Media Format
9 Series SDK. When you install the Windows Media Format 9 Series SDK
run-time libraries, the WM ASF Reader is registered as the default filter
for ASF files."
I have installed the WMF9 sdk runtime libraries, which means that the WM ASF
Reader should be the default filter for asf files.
As i understand it, this should mean i should not have to modify my graph
building code, to get DS to user the new WM ASF Reader as a file source.
Ergo SetRate should also work.
It doesn't.
Anyone got the solution to this one?
Øystein Hansen
Frustrated DS developer
--
Michael Blome [MS]
This posting is provided "AS IS" with no warranties, and confers no
rights. You assume all risk for your use. (c) 2002 Microsoft Corporation.
All rights reserved.
"oystein" <ooha...@start.no> wrote in message
news:3ef981cb$1...@news.broadpark.no...
Øystein Hansen
--
Michael Blome [MS]
This posting is provided "AS IS" with no warranties, and confers no
rights. You assume all risk for your use. (c) 2002 Microsoft Corporation.
All rights reserved.
"oystein" <ooha...@start.no> wrote in message
news:09d801c33c98$dec2f4c0$a301...@phx.gbl...
> Please accept my apologies. The WM ASF Reader does not support
> rates other than 1.0.
> I will correct older, erroneous docs, which are in the DirectShow
> help file. When using the 9 Series QM ASF Reader and Writer,
> always go by the info in Format SDK docs. It is more recent and is
> updated regularly.
>
Michael,
As a follow-on to this question and before I spend a lot of time
pursuing it. Would encoding WMV to an AVI file allow playback at
rates other than 1.0 within a DShow application?
TIA,
Bill
--
Bill Arnette
Signalscape, Inc.
bi...@MAPSONsignalscape.com
www.signalscape.com
A futher note: If you really need to play back ASF files at speeds other
than 1.0, you can do so using the Reader Object directly in the WM Format
SDK. See IWMReaderAdvanced3::StartAtPosition.
--
Michael Blome [MS]
This posting is provided "AS IS" with no warranties, and confers no
rights. You assume all risk for your use. (c) 2002 Microsoft Corporation.
All rights reserved.
"Bill Arnette" <bi...@MAPSONsignalscape.com> wrote in message
news:Xns93AA6C13349EAbi...@207.46.248.16...
If you want to support smooth playback at arbitrary forward rates, you will
need to use the reader in user-clock mode, and you will need to process the
audio samples to make them render at the proper rate. Smooth playback at
arbitrary reverse rates are technically very difficult to support in any
manner using the WMF SDK.
Geoff
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"Michael Blome [MS]" <mbl...@online.microsoft.com> wrote in message
news:uvDCeMyP...@tk2msftngp13.phx.gbl...