WMF: fixed unresolved topologies when using the custom MediaSink.
When using our custom MediaSink with RGB formats, Media Foundation fails sometimes to resolve the topology. Inserting ourselves a ColorConverter transform in the topology resolves the problem. The ColorConverter transform cannot handle dynamic frame size changes (this can happen with H264 videos for example) so we also need to insert a Resizer transform to handle transparently frame size changes. Change-Id: Id7f37a0af65f142fbe6d420ad7b2c1ac2156c21b Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
This commit is contained in:
committed by
The Qt Project
parent
381bfe879c
commit
02add40392
@@ -231,6 +231,8 @@ private:
|
||||
IMFTopologyNode *m_audioSampleGrabberNode;
|
||||
|
||||
IMFTopology *insertMFT(IMFTopology *topology, TOPOID outputNodeId);
|
||||
bool insertResizer(IMFTopology *topology);
|
||||
void insertColorConverter(IMFTopology *topology, TOPOID outputNodeId);
|
||||
MFTransform *m_videoProbeMFT;
|
||||
QList<MFVideoProbeControl*> m_videoProbes;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user