diff options
Diffstat (limited to 'src/plugins')
24 files changed, 93 insertions, 153 deletions
diff --git a/src/plugins/directshow/camera/directshowcameraglobal.h b/src/plugins/directshow/camera/directshowcameraglobal.h index 8df387b4a..917ae2dc7 100644 --- a/src/plugins/directshow/camera/directshowcameraglobal.h +++ b/src/plugins/directshow/camera/directshowcameraglobal.h @@ -65,7 +65,7 @@ extern const CLSID CLSID_VideoInputDeviceCategory; extern const CLSID CLSID_SampleGrabber; extern const CLSID CLSID_CaptureGraphBuilder2; -#define SAFE_RELEASE(x) { if(x) x->Release(); x = NULL; } +#define SAFE_RELEASE(x) { if (x) x->Release(); x = nullptr; } typedef struct IFileSinkFilter *LPFILESINKFILTER; typedef struct IAMCopyCaptureFileProgress *LPAMCOPYCAPTUREFILEPROGRESS; diff --git a/src/plugins/directshow/camera/dscamerasession.cpp b/src/plugins/directshow/camera/dscamerasession.cpp index a237811ae..267e7a9a4 100644 --- a/src/plugins/directshow/camera/dscamerasession.cpp +++ b/src/plugins/directshow/camera/dscamerasession.cpp @@ -76,8 +76,8 @@ DSCameraSession::DSCameraSession(QObject *parent) , m_videoProbeControl(nullptr) , m_status(QCamera::UnloadedStatus) { - connect(this, SIGNAL(statusChanged(QCamera::Status)), - this, SLOT(updateReadyForCapture())); + connect(this, &DSCameraSession::statusChanged, + this, &DSCameraSession::updateReadyForCapture); m_deviceLostEventTimer.setSingleShot(true); connect(&m_deviceLostEventTimer, &QTimer::timeout, [&]() { @@ -331,10 +331,10 @@ void DSCameraSession::setImageProcessingParameter( return; } - IAMVideoProcAmp *pVideoProcAmp = NULL; + IAMVideoProcAmp *pVideoProcAmp = nullptr; HRESULT hr = m_graphBuilder->FindInterface( - NULL, - NULL, + nullptr, + nullptr, m_sourceFilter, IID_IAMVideoProcAmp, reinterpret_cast<void**>(&pVideoProcAmp) @@ -702,12 +702,12 @@ bool DSCameraSession::createFilterGraph() QString errorString; HRESULT hr; - IMoniker* pMoniker = NULL; - ICreateDevEnum* pDevEnum = NULL; - IEnumMoniker* pEnum = NULL; + IMoniker* pMoniker = nullptr; + ICreateDevEnum* pDevEnum = nullptr; + IEnumMoniker* pEnum = nullptr; // Create the filter graph - hr = CoCreateInstance(CLSID_FilterGraph,NULL,CLSCTX_INPROC, + hr = CoCreateInstance(CLSID_FilterGraph, nullptr, CLSCTX_INPROC, IID_IGraphBuilder, reinterpret_cast<void**>(&m_filterGraph)); if (FAILED(hr)) { errorString = tr("Failed to create filter graph"); @@ -715,7 +715,7 @@ bool DSCameraSession::createFilterGraph() } // Create the capture graph builder - hr = CoCreateInstance(CLSID_CaptureGraphBuilder2, NULL, CLSCTX_INPROC, + hr = CoCreateInstance(CLSID_CaptureGraphBuilder2, nullptr, CLSCTX_INPROC, IID_ICaptureGraphBuilder2, reinterpret_cast<void**>(&m_graphBuilder)); if (FAILED(hr)) { @@ -731,7 +731,7 @@ bool DSCameraSession::createFilterGraph() } // Find the Capture device - hr = CoCreateInstance(CLSID_SystemDeviceEnum, NULL, + hr = CoCreateInstance(CLSID_SystemDeviceEnum, nullptr, CLSCTX_INPROC_SERVER, IID_ICreateDevEnum, reinterpret_cast<void**>(&pDevEnum)); if (SUCCEEDED(hr)) { @@ -743,10 +743,10 @@ bool DSCameraSession::createFilterGraph() IMalloc *mallocInterface = 0; CoGetMalloc(1, (LPMALLOC*)&mallocInterface); //go through and find all video capture devices - while (pEnum->Next(1, &pMoniker, NULL) == S_OK) { + while (pEnum->Next(1, &pMoniker, nullptr) == S_OK) { BSTR strName = 0; - hr = pMoniker->GetDisplayName(NULL, NULL, &strName); + hr = pMoniker->GetDisplayName(nullptr, nullptr, &strName); if (SUCCEEDED(hr)) { QString output = QString::fromWCharArray(strName); mallocInterface->Free(strName); @@ -762,13 +762,13 @@ bool DSCameraSession::createFilterGraph() pMoniker->Release(); } mallocInterface->Release(); - if (NULL == m_sourceFilter) + if (nullptr == m_sourceFilter) { if (m_sourceDeviceName.contains(QLatin1String("default"))) { pEnum->Reset(); // still have to loop to discard bind to storage failure case - while (pEnum->Next(1, &pMoniker, NULL) == S_OK) { + while (pEnum->Next(1, &pMoniker, nullptr) == S_OK) { IPropertyBag *pPropBag = 0; hr = pMoniker->BindToStorage(nullptr, nullptr, IID_IPropertyBag, @@ -813,7 +813,7 @@ bool DSCameraSession::createFilterGraph() // Null renderer. Input connected to the sample grabber's output. Simply // discard the samples it receives. - hr = CoCreateInstance(cLSID_NullRenderer, NULL, CLSCTX_INPROC, + hr = CoCreateInstance(cLSID_NullRenderer, nullptr, CLSCTX_INPROC, IID_IBaseFilter, (void**)&m_nullRendererFilter); if (FAILED(hr)) { errorString = tr("Failed to create null renderer"); @@ -931,10 +931,10 @@ void DSCameraSession::updateImageProcessingParametersInfos() return; } - IAMVideoProcAmp *pVideoProcAmp = NULL; + IAMVideoProcAmp *pVideoProcAmp = nullptr; const HRESULT hr = m_graphBuilder->FindInterface( - NULL, - NULL, + nullptr, + nullptr, m_sourceFilter, IID_IAMVideoProcAmp, reinterpret_cast<void**>(&pVideoProcAmp) @@ -1041,10 +1041,10 @@ void DSCameraSession::disconnectGraph() { // To avoid increasing the memory usage every time the graph is re-connected it's // important that all filters are released; also the ones added by the "Intelligent Connect". - IEnumFilters *enumFilters = NULL; + IEnumFilters *enumFilters = nullptr; if (SUCCEEDED(m_filterGraph->EnumFilters(&enumFilters))) { - IBaseFilter *filter = NULL; - while (enumFilters->Next(1, &filter, NULL) == S_OK) { + IBaseFilter *filter = nullptr; + while (enumFilters->Next(1, &filter, nullptr) == S_OK) { m_filterGraph->RemoveFilter(filter); enumFilters->Reset(); filter->Release(); @@ -1061,8 +1061,8 @@ static bool qt_frameRateRangeGreaterThan(const QCamera::FrameRateRange &r1, cons void DSCameraSession::updateSourceCapabilities() { HRESULT hr; - AM_MEDIA_TYPE *pmt = NULL; - VIDEOINFOHEADER *pvi = NULL; + AM_MEDIA_TYPE *pmt = nullptr; + VIDEOINFOHEADER *pvi = nullptr; VIDEO_STREAM_CONFIG_CAPS scc; IAMStreamConfig* pConfig = 0; diff --git a/src/plugins/directshow/camera/dsimagecapturecontrol.cpp b/src/plugins/directshow/camera/dsimagecapturecontrol.cpp index 2a6a794d5..e4d2eee30 100644 --- a/src/plugins/directshow/camera/dsimagecapturecontrol.cpp +++ b/src/plugins/directshow/camera/dsimagecapturecontrol.cpp @@ -47,16 +47,16 @@ DSImageCaptureControl::DSImageCaptureControl(DSCameraSession *session) : QCameraImageCaptureControl(session) , m_session(session) { - connect(m_session, SIGNAL(imageExposed(int)), - this, SIGNAL(imageExposed(int))); - connect(m_session, SIGNAL(imageCaptured(int,QImage)), - this, SIGNAL(imageCaptured(int,QImage))); - connect(m_session, SIGNAL(imageSaved(int,QString)), - this, SIGNAL(imageSaved(int,QString))); - connect(m_session, SIGNAL(readyForCaptureChanged(bool)), - this, SIGNAL(readyForCaptureChanged(bool))); - connect(m_session, SIGNAL(captureError(int,int,QString)), - this, SIGNAL(error(int,int,QString))); + connect(m_session, &DSCameraSession::imageExposed, + this, &DSImageCaptureControl::imageExposed); + connect(m_session, &DSCameraSession::imageCaptured, + this, &DSImageCaptureControl::imageCaptured); + connect(m_session, &DSCameraSession::imageSaved, + this, &DSImageCaptureControl::imageSaved); + connect(m_session, &DSCameraSession::readyForCaptureChanged, + this, &DSImageCaptureControl::readyForCaptureChanged); + connect(m_session, &DSCameraSession::captureError, + this, &DSImageCaptureControl::error); connect(m_session, &DSCameraSession::imageAvailable, this, &DSImageCaptureControl::imageAvailable); } diff --git a/src/plugins/directshow/camera/dsvideodevicecontrol.cpp b/src/plugins/directshow/camera/dsvideodevicecontrol.cpp index 2c1fab764..7285d0fb3 100644 --- a/src/plugins/directshow/camera/dsvideodevicecontrol.cpp +++ b/src/plugins/directshow/camera/dsvideodevicecontrol.cpp @@ -129,10 +129,10 @@ void DSVideoDeviceControl::updateDevices() deviceList->clear(); - ICreateDevEnum* pDevEnum = NULL; - IEnumMoniker* pEnum = NULL; + ICreateDevEnum* pDevEnum = nullptr; + IEnumMoniker* pEnum = nullptr; // Create the System device enumerator - HRESULT hr = CoCreateInstance(CLSID_SystemDeviceEnum, NULL, + HRESULT hr = CoCreateInstance(CLSID_SystemDeviceEnum, nullptr, CLSCTX_INPROC_SERVER, IID_ICreateDevEnum, reinterpret_cast<void**>(&pDevEnum)); if (SUCCEEDED(hr)) { @@ -142,12 +142,12 @@ void DSVideoDeviceControl::updateDevices() if (S_OK == hr) { pEnum->Reset(); // go through and find all video capture devices - IMoniker* pMoniker = NULL; + IMoniker* pMoniker = nullptr; IMalloc *mallocInterface = 0; CoGetMalloc(1, (LPMALLOC*)&mallocInterface); - while (pEnum->Next(1, &pMoniker, NULL) == S_OK) { + while (pEnum->Next(1, &pMoniker, nullptr) == S_OK) { BSTR strName = 0; - hr = pMoniker->GetDisplayName(NULL, NULL, &strName); + hr = pMoniker->GetDisplayName(nullptr, nullptr, &strName); if (SUCCEEDED(hr)) { QString output(QString::fromWCharArray(strName)); mallocInterface->Free(strName); diff --git a/src/plugins/directshow/common/directshowbasefilter.cpp b/src/plugins/directshow/common/directshowbasefilter.cpp index 2792dc3c6..d64021ed6 100644 --- a/src/plugins/directshow/common/directshowbasefilter.cpp +++ b/src/plugins/directshow/common/directshowbasefilter.cpp @@ -46,9 +46,9 @@ QT_BEGIN_NAMESPACE DirectShowBaseFilter::DirectShowBaseFilter() : m_mutex(QMutex::Recursive) , m_state(State_Stopped) - , m_graph(NULL) - , m_clock(NULL) - , m_sink(NULL) + , m_graph(nullptr) + , m_clock(nullptr) + , m_sink(nullptr) { } @@ -57,7 +57,7 @@ DirectShowBaseFilter::~DirectShowBaseFilter() { if (m_clock) { m_clock->Release(); - m_clock = NULL; + m_clock = nullptr; } } @@ -217,7 +217,7 @@ HRESULT DirectShowBaseFilter::JoinFilterGraph(IFilterGraph *pGraph, LPCWSTR pNam m_filterName = QString::fromWCharArray(pName); m_graph = pGraph; - m_sink = NULL; + m_sink = nullptr; if (m_graph) { if (SUCCEEDED(m_graph->QueryInterface(IID_PPV_ARGS(&m_sink)))) diff --git a/src/plugins/directshow/common/directshoweventloop.cpp b/src/plugins/directshow/common/directshoweventloop.cpp index fbc7b8cee..843a78422 100644 --- a/src/plugins/directshow/common/directshoweventloop.cpp +++ b/src/plugins/directshow/common/directshoweventloop.cpp @@ -69,8 +69,8 @@ DirectShowEventLoop::DirectShowEventLoop(QObject *parent) : QObject(parent) , m_postsHead(0) , m_postsTail(0) - , m_eventHandle(::CreateEvent(0, 0, 0, 0)) - , m_waitHandle(::CreateEvent(0, 0, 0, 0)) + , m_eventHandle(::CreateEvent(nullptr, FALSE, FALSE, nullptr)) + , m_waitHandle(::CreateEvent(nullptr, FALSE, FALSE, nullptr)) { } diff --git a/src/plugins/directshow/common/directshowglobal.h b/src/plugins/directshow/common/directshowglobal.h index 5f391710e..d98dd36ee 100644 --- a/src/plugins/directshow/common/directshowglobal.h +++ b/src/plugins/directshow/common/directshowglobal.h @@ -64,7 +64,7 @@ template <typename T> T *com_new(const IID &clsid) T *object = 0; return CoCreateInstance( clsid, - NULL, + nullptr, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&object)) == S_OK ? object @@ -76,7 +76,7 @@ template <typename T> T *com_new(const IID &clsid, const IID &iid) T *object = 0; return CoCreateInstance( clsid, - NULL, + nullptr, CLSCTX_INPROC_SERVER, iid, reinterpret_cast<void **>(&object)) == S_OK diff --git a/src/plugins/directshow/common/directshowmediatypeenum.cpp b/src/plugins/directshow/common/directshowmediatypeenum.cpp index 10623a246..56716ed75 100644 --- a/src/plugins/directshow/common/directshowmediatypeenum.cpp +++ b/src/plugins/directshow/common/directshowmediatypeenum.cpp @@ -50,7 +50,7 @@ DirectShowMediaTypeEnum::DirectShowMediaTypeEnum(DirectShowPin *pin) } DirectShowMediaTypeEnum::DirectShowMediaTypeEnum(const QList<DirectShowMediaType> &types) - : m_pin(NULL) + : m_pin(nullptr) , m_mediaTypes(types) , m_index(0) { diff --git a/src/plugins/directshow/common/directshowpin.cpp b/src/plugins/directshow/common/directshowpin.cpp index 508a9b21d..617cc2cf2 100644 --- a/src/plugins/directshow/common/directshowpin.cpp +++ b/src/plugins/directshow/common/directshowpin.cpp @@ -52,7 +52,7 @@ DirectShowPin::DirectShowPin(DirectShowBaseFilter *filter, const QString &name, , m_filter(filter) , m_name(name) , m_direction(direction) - , m_peerPin(NULL) + , m_peerPin(nullptr) { } @@ -76,11 +76,11 @@ HRESULT DirectShowPin::Connect(IPin *pReceivePin, const AM_MEDIA_TYPE *pmt) if (pd == m_direction) return VFW_E_INVALID_DIRECTION; - if (pmt != NULL && DirectShowMediaType::isPartiallySpecified(pmt)) { + if (pmt != nullptr && DirectShowMediaType::isPartiallySpecified(pmt)) { // If the type is fully specified, use it hr = tryConnect(pReceivePin, pmt); } else { - IEnumMediaTypes *enumMediaTypes = NULL; + IEnumMediaTypes *enumMediaTypes = nullptr; // First, try the receiving pin's preferred types if (SUCCEEDED(pReceivePin->EnumMediaTypes(&enumMediaTypes))) { @@ -108,13 +108,13 @@ HRESULT DirectShowPin::tryMediaTypes(IPin *pin, const AM_MEDIA_TYPE *partialType if (FAILED(hr)) return hr; - AM_MEDIA_TYPE *mediaType = NULL; + AM_MEDIA_TYPE *mediaType = nullptr; ULONG mediaCount = 0; HRESULT hrFailure = VFW_E_NO_ACCEPTABLE_TYPES; for (; enumMediaTypes->Next(1, &mediaType, &mediaCount) == S_OK;) { - if (mediaType && (partialType == NULL || DirectShowMediaType::isCompatible(mediaType, partialType))) { + if (mediaType && (partialType == nullptr || DirectShowMediaType::isCompatible(mediaType, partialType))) { hr = tryConnect(pin, mediaType); if (FAILED(hr) && (hr != E_FAIL) @@ -157,8 +157,8 @@ HRESULT DirectShowPin::tryConnect(IPin *pin, const AM_MEDIA_TYPE *type) if (FAILED(hr)) { connectionEnded(); m_peerPin->Release(); - m_peerPin = NULL; - setMediaType(NULL); + m_peerPin = nullptr; + setMediaType(nullptr); return hr; } @@ -197,8 +197,8 @@ HRESULT DirectShowPin::ReceiveConnection(IPin *pConnector, const AM_MEDIA_TYPE * if (FAILED(hr)) { connectionEnded(); m_peerPin->Release(); - m_peerPin = NULL; - setMediaType(NULL); + m_peerPin = nullptr; + setMediaType(nullptr); return hr; } @@ -218,9 +218,9 @@ HRESULT DirectShowPin::Disconnect() return hr; m_peerPin->Release(); - m_peerPin = NULL; + m_peerPin = nullptr; - setMediaType(NULL); + setMediaType(nullptr); return S_OK; } @@ -380,8 +380,8 @@ HRESULT DirectShowPin::setActive(bool active) DirectShowOutputPin::DirectShowOutputPin(DirectShowBaseFilter *filter, const QString &name) : DirectShowPin(filter, name, PINDIR_OUTPUT) - , m_allocator(NULL) - , m_inputPin(NULL) + , m_allocator(nullptr) + , m_inputPin(nullptr) { } @@ -393,8 +393,8 @@ HRESULT DirectShowOutputPin::completeConnection(IPin *pin) if (!pin) return E_POINTER; - Q_ASSERT(m_inputPin == NULL); - Q_ASSERT(m_allocator == NULL); + Q_ASSERT(m_inputPin == nullptr); + Q_ASSERT(m_allocator == nullptr); HRESULT hr = pin->QueryInterface(IID_PPV_ARGS(&m_inputPin)); if (FAILED(hr)) @@ -423,7 +423,7 @@ HRESULT DirectShowOutputPin::completeConnection(IPin *pin) } m_allocator->Release(); - m_allocator = NULL; + m_allocator = nullptr; } // Otherwise, allocate its own allocator @@ -441,7 +441,7 @@ HRESULT DirectShowOutputPin::completeConnection(IPin *pin) } m_allocator->Release(); - m_allocator = NULL; + m_allocator = nullptr; } return hr; @@ -455,12 +455,12 @@ HRESULT DirectShowOutputPin::connectionEnded() return hr; m_allocator->Release(); - m_allocator = NULL; + m_allocator = nullptr; } if (m_inputPin) { m_inputPin->Release(); - m_inputPin = NULL; + m_inputPin = nullptr; } return S_OK; @@ -485,7 +485,7 @@ HRESULT DirectShowOutputPin::EndOfStream() DirectShowInputPin::DirectShowInputPin(DirectShowBaseFilter *filter, const QString &name) : DirectShowPin(filter, name, PINDIR_INPUT) - , m_allocator(NULL) + , m_allocator(nullptr) , m_flushing(false) , m_inErrorState(false) { @@ -502,7 +502,7 @@ HRESULT DirectShowInputPin::connectionEnded() return hr; m_allocator->Release(); - m_allocator = NULL; + m_allocator = nullptr; } return S_OK; diff --git a/src/plugins/directshow/common/directshowpin.h b/src/plugins/directshow/common/directshowpin.h index 5e513d002..6370fd367 100644 --- a/src/plugins/directshow/common/directshowpin.h +++ b/src/plugins/directshow/common/directshowpin.h @@ -56,7 +56,7 @@ public: virtual ~DirectShowPin(); QString name() const { return m_name; } - bool isConnected() const { return m_peerPin != NULL; } + bool isConnected() const { return m_peerPin != nullptr; } virtual bool isMediaTypeSupported(const AM_MEDIA_TYPE *type) = 0; virtual QList<DirectShowMediaType> supportedMediaTypes(); diff --git a/src/plugins/directshow/common/directshowpinenum.cpp b/src/plugins/directshow/common/directshowpinenum.cpp index 20fa93d6e..a340c0903 100644 --- a/src/plugins/directshow/common/directshowpinenum.cpp +++ b/src/plugins/directshow/common/directshowpinenum.cpp @@ -55,7 +55,7 @@ DirectShowPinEnum::DirectShowPinEnum(DirectShowBaseFilter *filter) } DirectShowPinEnum::DirectShowPinEnum(const QList<IPin *> &pins) - : m_filter(NULL) + : m_filter(nullptr) , m_pins(pins) , m_index(0) { diff --git a/src/plugins/directshow/common/directshowsamplegrabber.cpp b/src/plugins/directshow/common/directshowsamplegrabber.cpp index fec59b538..254066d4e 100644 --- a/src/plugins/directshow/common/directshowsamplegrabber.cpp +++ b/src/plugins/directshow/common/directshowsamplegrabber.cpp @@ -75,7 +75,7 @@ public: STDMETHODIMP QueryInterface(REFIID riid, void **ppvObject) override { - if (NULL == ppvObject) + if (nullptr == ppvObject) return E_POINTER; if (riid == IID_IUnknown /*__uuidof(IUnknown) */ ) { @@ -120,7 +120,7 @@ DirectShowSampleGrabber::DirectShowSampleGrabber(QObject *p) , m_callbackType(CallbackMethod::BufferCB) { // Create sample grabber filter - HRESULT hr = CoCreateInstance(cLSID_SampleGrabber, NULL, CLSCTX_INPROC, iID_ISampleGrabber, reinterpret_cast<void **>(&m_sampleGrabber)); + HRESULT hr = CoCreateInstance(cLSID_SampleGrabber, nullptr, CLSCTX_INPROC, iID_ISampleGrabber, reinterpret_cast<void **>(&m_sampleGrabber)); if (FAILED(hr)) { qCWarning(qtDirectShowPlugin, "Failed to create sample grabber"); diff --git a/src/plugins/directshow/common/directshowutils.cpp b/src/plugins/directshow/common/directshowutils.cpp index d1c1d42ab..48d5dbd8d 100644 --- a/src/plugins/directshow/common/directshowutils.cpp +++ b/src/plugins/directshow/common/directshowutils.cpp @@ -117,7 +117,7 @@ bool DirectShowUtils::getPin(IBaseFilter *filter, PIN_DIRECTION pinDirection, IP enumPins->Reset(); IPin *nextPin = nullptr; - while (enumPins->Next(1, &nextPin, NULL) == S_OK) { + while (enumPins->Next(1, &nextPin, nullptr) == S_OK) { const ScopedSafeRelease<IPin> releasePin { &nextPin }; PIN_DIRECTION currentPinDir; *hrOut = nextPin->QueryDirection(¤tPinDir); diff --git a/src/plugins/directshow/dsserviceplugin.cpp b/src/plugins/directshow/dsserviceplugin.cpp index 727a11b55..f92e37c00 100644 --- a/src/plugins/directshow/dsserviceplugin.cpp +++ b/src/plugins/directshow/dsserviceplugin.cpp @@ -78,7 +78,7 @@ static int g_refCount = 0; void addRefCount() { if (++g_refCount == 1) - CoInitialize(NULL); + CoInitialize(nullptr); } void releaseRefCount() diff --git a/src/plugins/directshow/player/directshowevrvideowindowcontrol.cpp b/src/plugins/directshow/player/directshowevrvideowindowcontrol.cpp index fc1058d57..57d88326c 100644 --- a/src/plugins/directshow/player/directshowevrvideowindowcontrol.cpp +++ b/src/plugins/directshow/player/directshowevrvideowindowcontrol.cpp @@ -43,7 +43,7 @@ DirectShowEvrVideoWindowControl::DirectShowEvrVideoWindowControl(QObject *parent) : EvrVideoWindowControl(parent) - , m_evrFilter(NULL) + , m_evrFilter(nullptr) { } @@ -59,7 +59,7 @@ IBaseFilter *DirectShowEvrVideoWindowControl::filter() m_evrFilter = com_new<IBaseFilter>(clsid_EnhancedVideoRenderer); if (!setEvr(m_evrFilter)) { m_evrFilter->Release(); - m_evrFilter = NULL; + m_evrFilter = nullptr; } } diff --git a/src/plugins/directshow/player/directshowioreader.cpp b/src/plugins/directshow/player/directshowioreader.cpp index 3482cee02..c10d9a239 100644 --- a/src/plugins/directshow/player/directshowioreader.cpp +++ b/src/plugins/directshow/player/directshowioreader.cpp @@ -96,7 +96,7 @@ DirectShowIOReader::DirectShowIOReader( { moveToThread(device->thread()); - connect(device, SIGNAL(readyRead()), this, SLOT(readyRead())); + connect(device, &QIODevice::readyRead, this, &DirectShowIOReader::readyRead); } DirectShowIOReader::~DirectShowIOReader() diff --git a/src/plugins/directshow/player/directshowplayerservice.cpp b/src/plugins/directshow/player/directshowplayerservice.cpp index 5f7c65ad0..f5249e191 100644 --- a/src/plugins/directshow/player/directshowplayerservice.cpp +++ b/src/plugins/directshow/player/directshowplayerservice.cpp @@ -137,7 +137,7 @@ DirectShowPlayerService::DirectShowPlayerService(QObject *parent) , m_pendingTasks(0) , m_executingTask(0) , m_executedTasks(0) - , m_taskHandle(::CreateEvent(0, 0, 0, 0)) + , m_taskHandle(::CreateEvent(nullptr, FALSE, FALSE, nullptr)) , m_eventHandle(0) , m_graphStatus(NoMedia) , m_stream(0) @@ -210,8 +210,8 @@ QMediaControl *DirectShowPlayerService::requestControl(const char *name) if (!m_videoRendererControl && !m_videoWindowControl) { m_videoRendererControl = new DirectShowVideoRendererControl(m_loop); - connect(m_videoRendererControl, SIGNAL(filterChanged()), - this, SLOT(videoOutputChanged())); + connect(m_videoRendererControl, &DirectShowVideoRendererControl::filterChanged, + this, &DirectShowPlayerService::videoOutputChanged); return m_videoRendererControl; } @@ -299,6 +299,7 @@ void DirectShowPlayerService::load(const QMediaContent &media, QIODevice *stream releaseGraph(); m_url = media.canonicalUrl(); + m_stream = stream; m_error = QMediaPlayer::NoError; m_errorString = QString(); diff --git a/src/plugins/directshow/player/videosurfacefilter.cpp b/src/plugins/directshow/player/videosurfacefilter.cpp index 74d59231c..4702d5908 100644 --- a/src/plugins/directshow/player/videosurfacefilter.cpp +++ b/src/plugins/directshow/player/videosurfacefilter.cpp @@ -222,16 +222,16 @@ HRESULT VideoSurfaceInputPin::Receive(IMediaSample *pMediaSample) VideoSurfaceFilter::VideoSurfaceFilter(QAbstractVideoSurface *surface, DirectShowEventLoop *loop, QObject *parent) : QObject(parent) , m_loop(loop) - , m_pin(NULL) + , m_pin(nullptr) , m_surface(surface) , m_bytesPerLine(0) , m_surfaceStarted(false) , m_renderMutex(QMutex::Recursive) , m_running(false) - , m_pendingSample(NULL) + , m_pendingSample(nullptr) , m_pendingSampleEndTime(0) - , m_renderEvent(CreateEvent(NULL, FALSE, FALSE, NULL)) - , m_flushEvent(CreateEvent(NULL, TRUE, FALSE, NULL)) + , m_renderEvent(CreateEvent(nullptr, FALSE, FALSE, nullptr)) + , m_flushEvent(CreateEvent(nullptr, TRUE, FALSE, nullptr)) , m_adviseCookie(0) , m_EOS(false) , m_EOSDelivered(false) @@ -616,7 +616,7 @@ void VideoSurfaceFilter::clearPendingSample() if (m_pendingSample) { qCDebug(qLcRenderFilter, "clearPendingSample"); m_pendingSample->Release(); - m_pendingSample = NULL; + m_pendingSample = nullptr; } } diff --git a/src/plugins/gstreamer/mediacapture/qgstreameraudioencode.cpp b/src/plugins/gstreamer/mediacapture/qgstreameraudioencode.cpp index 40294214a..6a0816343 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreameraudioencode.cpp +++ b/src/plugins/gstreamer/mediacapture/qgstreameraudioencode.cpp @@ -50,16 +50,6 @@ QGstreamerAudioEncode::QGstreamerAudioEncode(QObject *parent) :QAudioEncoderSettingsControl(parent) , m_codecs(QGstCodecsInfo::AudioEncoder) { - for (const QString& codecName : m_codecs.supportedCodecs()) { - GstElementFactory *factory = gst_element_factory_find(m_codecs.codecElement(codecName).constData()); - - if (factory) { - m_streamTypes.insert(codecName, - QGstreamerMediaContainerControl::supportedStreamTypes(factory, GST_PAD_SRC)); - - gst_object_unref(GST_OBJECT(factory)); - } - } } QGstreamerAudioEncode::~QGstreamerAudioEncode() @@ -247,5 +237,5 @@ GstElement *QGstreamerAudioEncode::createEncoder() QSet<QString> QGstreamerAudioEncode::supportedStreamTypes(const QString &codecName) const { - return m_streamTypes.value(codecName); + return m_codecs.supportedStreamTypes(codecName); } diff --git a/src/plugins/gstreamer/mediacapture/qgstreameraudioencode.h b/src/plugins/gstreamer/mediacapture/qgstreameraudioencode.h index 04de602ad..0cfbb4e91 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreameraudioencode.h +++ b/src/plugins/gstreamer/mediacapture/qgstreameraudioencode.h @@ -86,8 +86,6 @@ private: QMap<QString, QMap<QString, QVariant> > m_options; - QMap<QString, QSet<QString> > m_streamTypes; - QAudioEncoderSettings m_audioSettings; }; diff --git a/src/plugins/gstreamer/mediacapture/qgstreamermediacontainercontrol.cpp b/src/plugins/gstreamer/mediacapture/qgstreamermediacontainercontrol.cpp index 05f1c8af5..33351476d 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreamermediacontainercontrol.cpp +++ b/src/plugins/gstreamer/mediacapture/qgstreamermediacontainercontrol.cpp @@ -47,47 +47,11 @@ QGstreamerMediaContainerControl::QGstreamerMediaContainerControl(QObject *parent :QMediaContainerControl(parent) , m_containers(QGstCodecsInfo::Muxer) { - QSet<QString> allTypes; - - for (const QString& formatName : supportedContainers()) { - GstElementFactory *factory = gst_element_factory_find(m_containers.codecElement(formatName).constData()); - if (factory) { - if (formatName == QByteArray("raw")) { - m_streamTypes.insert(formatName, allTypes); - } else { - QSet<QString> types = supportedStreamTypes(factory, GST_PAD_SINK); - m_streamTypes.insert(formatName, types); - allTypes.unite(types); - } - - gst_object_unref(GST_OBJECT(factory)); - } - } } -QSet<QString> QGstreamerMediaContainerControl::supportedStreamTypes(GstElementFactory *factory, GstPadDirection direction) -{ - QSet<QString> types; - const GList *pads = gst_element_factory_get_static_pad_templates(factory); - for (const GList *pad = pads; pad; pad = g_list_next(pad)) { - GstStaticPadTemplate *templ = (GstStaticPadTemplate*)pad->data; - if (templ->direction == direction) { - GstCaps *caps = gst_static_caps_get(&templ->static_caps); - for (uint i=0; i<gst_caps_get_size(caps); i++) { - GstStructure *structure = gst_caps_get_structure(caps, i); - types.insert( QString::fromUtf8(gst_structure_get_name(structure)) ); - } - gst_caps_unref(caps); - } - } - - return types; -} - - QSet<QString> QGstreamerMediaContainerControl::supportedStreamTypes(const QString &container) const { - return m_streamTypes.value(container); + return m_containers.supportedStreamTypes(container); } QString QGstreamerMediaContainerControl::containerExtension() const diff --git a/src/plugins/gstreamer/mediacapture/qgstreamermediacontainercontrol.h b/src/plugins/gstreamer/mediacapture/qgstreamermediacontainercontrol.h index 5c730b21d..02c7346b1 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreamermediacontainercontrol.h +++ b/src/plugins/gstreamer/mediacapture/qgstreamermediacontainercontrol.h @@ -68,14 +68,11 @@ public: QSet<QString> supportedStreamTypes(const QString &container) const; - static QSet<QString> supportedStreamTypes(GstElementFactory *factory, GstPadDirection direction); - QString containerExtension() const; private: QString m_format; QGstCodecsInfo m_containers; - QMap<QString, QSet<QString> > m_streamTypes; }; QT_END_NAMESPACE diff --git a/src/plugins/gstreamer/mediacapture/qgstreamervideoencode.cpp b/src/plugins/gstreamer/mediacapture/qgstreamervideoencode.cpp index 6b4dbe4b7..62d9bbd8c 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreamervideoencode.cpp +++ b/src/plugins/gstreamer/mediacapture/qgstreamervideoencode.cpp @@ -49,15 +49,6 @@ QGstreamerVideoEncode::QGstreamerVideoEncode(QGstreamerCaptureSession *session) :QVideoEncoderSettingsControl(session), m_session(session) , m_codecs(QGstCodecsInfo::VideoEncoder) { - for (const QString& codecName : supportedVideoCodecs()) { - GstElementFactory *factory = gst_element_factory_find(m_codecs.codecElement(codecName).constData()); - if (factory) { - m_streamTypes.insert(codecName, - QGstreamerMediaContainerControl::supportedStreamTypes(factory, GST_PAD_SRC)); - - gst_object_unref(GST_OBJECT(factory)); - } - } } QGstreamerVideoEncode::~QGstreamerVideoEncode() @@ -303,5 +294,5 @@ QPair<int,int> QGstreamerVideoEncode::rateAsRational() const QSet<QString> QGstreamerVideoEncode::supportedStreamTypes(const QString &codecName) const { - return m_streamTypes.value(codecName); + return m_codecs.supportedStreamTypes(codecName); } diff --git a/src/plugins/gstreamer/mediacapture/qgstreamervideoencode.h b/src/plugins/gstreamer/mediacapture/qgstreamervideoencode.h index bc6636012..a35e2b456 100644 --- a/src/plugins/gstreamer/mediacapture/qgstreamervideoencode.h +++ b/src/plugins/gstreamer/mediacapture/qgstreamervideoencode.h @@ -90,7 +90,6 @@ private: QVideoEncoderSettings m_videoSettings; QMap<QString, QMap<QString, QVariant> > m_options; - QMap<QString, QSet<QString> > m_streamTypes; }; QT_END_NAMESPACE |