summaryrefslogtreecommitdiffstats
path: root/src/plugins/mediaservices/directshow/mediaplayer/directshowiosource.cpp
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-02-27 13:06:40 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-02-27 13:06:40 (GMT)
commit9a83cfb179f98824f024193afafff6c4a767f45e (patch)
tree24fab037a403b8d2d19b046b4f71354a9c96fb43 /src/plugins/mediaservices/directshow/mediaplayer/directshowiosource.cpp
parent6396e7a15079cb157caef319348a0bcd0b95a6a7 (diff)
parentebcb027f9211de8dbd64fba46c3b3fca3494a0fc (diff)
downloadQt-9a83cfb179f98824f024193afafff6c4a767f45e.zip
Qt-9a83cfb179f98824f024193afafff6c4a767f45e.tar.gz
Qt-9a83cfb179f98824f024193afafff6c4a767f45e.tar.bz2
Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-multimedia-staging into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-multimedia-staging: Rebuild configure.exe Make the Direct Show media service compile with a Qt namespace. Make the Direct Show media service compile with mingw. QT7; Fix warnings. Qt namespace fixes. Fixed QTMoview object leak. QMediaContent: Add a convenience method to retrieve the QNetworkRequest. Use the monitor color space for video output. Test for the existance of the Windows Media SDK in configure. Try to start media playback on all load state changes. Remove all uses of __uuidof from the Direct Show media service. QT7; Add support for setting cookies when loading a movie.
Diffstat (limited to 'src/plugins/mediaservices/directshow/mediaplayer/directshowiosource.cpp')
-rw-r--r--src/plugins/mediaservices/directshow/mediaplayer/directshowiosource.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/plugins/mediaservices/directshow/mediaplayer/directshowiosource.cpp b/src/plugins/mediaservices/directshow/mediaplayer/directshowiosource.cpp
index 1dca465..7b66d56 100644
--- a/src/plugins/mediaservices/directshow/mediaplayer/directshowiosource.cpp
+++ b/src/plugins/mediaservices/directshow/mediaplayer/directshowiosource.cpp
@@ -121,6 +121,10 @@ void DirectShowIOSource::setAllocator(IMemAllocator *allocator)
// IUnknown
HRESULT DirectShowIOSource::QueryInterface(REFIID riid, void **ppvObject)
{
+ // 2dd74950-a890-11d1-abe8-00a0c905f375
+ static const GUID iid_IAmFilterMiscFlags = {
+ 0x2dd74950, 0xa890, 0x11d1, {0xab, 0xe8, 0x00, 0xa0, 0xc9, 0x05, 0xf3, 0x75}};
+
if (!ppvObject) {
return E_POINTER;
} else if (riid == IID_IUnknown
@@ -128,7 +132,7 @@ HRESULT DirectShowIOSource::QueryInterface(REFIID riid, void **ppvObject)
|| riid == IID_IMediaFilter
|| riid == IID_IBaseFilter) {
*ppvObject = static_cast<IBaseFilter *>(this);
- } else if (riid == IID_IAMFilterMiscFlags) {
+ } else if (riid == iid_IAmFilterMiscFlags) {
*ppvObject = static_cast<IAMFilterMiscFlags *>(this);
} else if (riid == IID_IPin) {
*ppvObject = static_cast<IPin *>(this);
@@ -414,8 +418,8 @@ HRESULT DirectShowIOSource::tryConnect(IPin *pin, const AM_MEDIA_TYPE *type)
} else if (!m_allocator) {
hr = VFW_E_NO_TRANSPORT;
- if (IMemInputPin *memPin = com_cast<IMemInputPin>(pin)) {
- if ((m_allocator = com_new<IMemAllocator>(CLSID_MemoryAllocator))) {
+ if (IMemInputPin *memPin = com_cast<IMemInputPin>(pin, IID_IMemInputPin)) {
+ if ((m_allocator = com_new<IMemAllocator>(CLSID_MemoryAllocator, IID_IMemAllocator))) {
ALLOCATOR_PROPERTIES properties;
if (memPin->GetAllocatorRequirements(&properties) == S_OK
|| m_allocator->GetProperties(&properties) == S_OK) {