C++/VB - Sending event from a decoder
Asked By Jeremy Noring
02-Feb-10 07:14 PM
Does anyone know a way to send an event up to the filter graph manager
from a DMO filter? In my CSource filters, I do something like:
m_pFilter->NotifyEvent(E_BLAH, hr, blah);
...but I do not see a comparable call for DMOs.
Any help is much appreciated.
NotifyEvent
(1)
DirectShow
(1)
CSource
(1)
PFilter
(1)
Discontinuities
(1)
Riseoftheants
(1)
Mvpnews
(1)
Preroll
(1)
Alessandro Angeli replied to Jeremy Noring
From: "Jeremy Noring"
There is no way. DMOs are designed to be usable outside of a
DS graph, so they do not know anything about the graph's
IMediaEventSink. And there is no DMO-specific signalling
mechanism (not even for stream discontinuities or preroll).
--
// Alessandro Angeli
// MVP :: DirectShow / MediaFoundation
// mvpnews at riseoftheants dot com
// http://www.riseoftheants.com/mmx/faq.htm

From: "VideoWaves" DMO_E_TYPE_NOT_ACCEPTED Have you tried setting biBitCount to 12 or 24? - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm Thanks for come from somewhere and this somewhere knows about the real media type). - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm Thanks once that probably is not enough to let you invent valid extra bytes). - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm I was bytes, that comes with the WVC1 data you are going to decode. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm I am which is the default behavior) - draw the decoded pictures: yourself 4. - parse the ASF: using DirectShow - decode the VC-1 stream: using DirectShow - draw the decoded pictures: using DirectShow You seem to be heading towards #1, which is a bloodbath, while #4 is half for you, even using hardware acceleration for decoding and drawing (if available). - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm I forgot
text - Win32 DirectX Video Discussions Silverlight (1) Vista (1) CoCreateInstance (1) XP (1) ProcessInput (1) DirectShow filter (1) Alessandro Angeli (1) MediaFoundation (1) From: "chom" Each process has its own virtual you need to know *a lot* about executable code to manage that. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm kinginvolves re and I already gave you several pointers on how to do that. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm Alessandro has video support for a wide variety of streaming media formats supported by players based on DirectShow, DirectX Media Objects (DMO), or Media Foundation (MF) filter technology. How citrix is able to format does not really matter. Of course a decoder can be any of: 1. a DirectShow filter in a DirectShow graph 2. a DMO in a DirectShow graph 3. a VCM codec in a DirectShow graph 4. an ACM codec in a DirectShow graph 5. a DMO in the WMReader
have since you are trying to connect its pin. Always the 36th? - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm Sorry not connect the filters manually, to make sure of what fails and where. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm I am the graph builder will not insert additional filters in between if necessary. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm Hi back. . Information on environnement, I work with VS2008, in multibyte configuration. DirectSHow BaseClasses has been compiled with the same configuration (I have compile the four version : multibyte 40*test.avi It will create 40 graphs all playing test.avi. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm From: "Nicolas the code in a remote desktop session, maybe through a virtual machine? - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm nop, physical even knows whether there is an audio stream. That would be useful. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm From: "Nicolas an RDP redirector then? Does it end up in the complete graph? - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm nop, in
cpp). Create it the same way as before: new, QueryInterface(), use, Release(). - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm Thanks for the PropertyPag. This is what I do with the registered Filters I create with CLSID (pFilter is the registered Filter) ISpecifyPropertyPages *pProp; HRESULT hr = pFilter-> QueryInterface(IID_ISpecifyPropertyPages, (void * *)&pProp); if (SUCCEEDED(hr)) { / / Get the filter's name and IUnknown pointer. FILTER_INFO FilterInfo; hr = pFilter-> QueryFilterInfo(&FilterInfo); IUnknown *pFilterUnk; hr pFilter-> QueryInterface(IID_IUnknown, (void * *)&pFilterUnk); / / Show the page. CAUUID caGUID; hr = pProp-> GetPages(&caGUID); pProp-> Release OleCreatePropertyFrame() (only once, unless you also unregister the classes after every use). - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm I need lib and you do not need another copy in your own project. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm g_Template lokks a second. Any idea why? From: "itchy" Probably OnConnect() or OnActivate() fails. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm OnConnect() returns
Custom DVR Interface Using DirectShow C++ / VB I am fairly new to DirectShow and could use some thoughts on a solution for a interfacing to a software DVR to a file and have been able to play that file with VLC and simple DirectShow based players. I have found DirectShow filters that can play the file, they include an MPEGDemultiplexer and MPEG4Decoder. I have viewed built a first cut (experiment) at a solution. I have been able to construct a DirectShow solution by modifying the SDK sample async file source reader. The solution works (very crudely approach this problem of interfacing to the DVR. Win32 DirectX Video Discussions DVR software (1) DirectShow (1) Existing software (1) Source filter (1) Video data (1) From: "imsunburnt" [. . .] That depends on so it also depends on what exactly this third-party filter does. - - / / Alessandro Angeli / / MVP :: DirectShow / MediaFoundation / / mvpnews at riseoftheants dot com / / http: / / www.riseoftheants.com / mmx / faq.htm keywords: Custom, DVR, Interface, Using, DirectShow description: I am fairly new to DirectShow and could use some thoughts on a solution