diff options
Diffstat (limited to 'src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp')
-rw-r--r-- | src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp b/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp index 2768c3ac7..7fab5b8cd 100644 --- a/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp +++ b/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp @@ -30,7 +30,7 @@ static Q_LOGGING_CATEGORY(qLcEvrD3DPresentEngine, "qt.multimedia.evrd3dpresenten class IMFSampleVideoBuffer: public QAbstractVideoBuffer { public: - IMFSampleVideoBuffer(QWindowsIUPointer<IDirect3DDevice9Ex> device, + IMFSampleVideoBuffer(QComPtr<IDirect3DDevice9Ex> device, IMFSample *sample, QRhi *rhi, QVideoFrame::HandleType type = QVideoFrame::NoHandle) : QAbstractVideoBuffer(type, rhi) , m_device(device) @@ -59,12 +59,12 @@ public: return {}; } else { - QWindowsIUPointer<IMFMediaBuffer> buffer; + QComPtr<IMFMediaBuffer> buffer; HRESULT hr = m_sample->GetBufferByIndex(0, buffer.address()); if (FAILED(hr)) return {}; - QWindowsIUPointer<IDirect3DSurface9> surface; + QComPtr<IDirect3DSurface9> surface; hr = MFGetService(buffer.get(), MR_BUFFER_SERVICE, IID_IDirect3DSurface9, (void **)(surface.address())); if (FAILED(hr)) return {}; @@ -106,18 +106,18 @@ public: } protected: - QWindowsIUPointer<IDirect3DDevice9Ex> m_device; - QWindowsIUPointer<IMFSample> m_sample; + QComPtr<IDirect3DDevice9Ex> m_device; + QComPtr<IMFSample> m_sample; private: - QWindowsIUPointer<IDirect3DSurface9> m_memSurface; + QComPtr<IDirect3DSurface9> m_memSurface; QVideoFrame::MapMode m_mapMode; }; class QVideoFrameD3D11Textures: public QVideoFrameTextures { public: - QVideoFrameD3D11Textures(std::unique_ptr<QRhiTexture> &&tex, QWindowsIUPointer<ID3D11Texture2D> &&d3d11tex) + QVideoFrameD3D11Textures(std::unique_ptr<QRhiTexture> &&tex, QComPtr<ID3D11Texture2D> &&d3d11tex) : m_tex(std::move(tex)) , m_d3d11tex(std::move(d3d11tex)) {} @@ -129,13 +129,13 @@ public: private: std::unique_ptr<QRhiTexture> m_tex; - QWindowsIUPointer<ID3D11Texture2D> m_d3d11tex; + QComPtr<ID3D11Texture2D> m_d3d11tex; }; class D3D11TextureVideoBuffer: public IMFSampleVideoBuffer { public: - D3D11TextureVideoBuffer(QWindowsIUPointer<IDirect3DDevice9Ex> device, IMFSample *sample, + D3D11TextureVideoBuffer(QComPtr<IDirect3DDevice9Ex> device, IMFSample *sample, HANDLE sharedHandle, QRhi *rhi) : IMFSampleVideoBuffer(std::move(device), sample, rhi, QVideoFrame::RhiTextureHandle) , m_sharedHandle(sharedHandle) @@ -154,7 +154,7 @@ public: if (!dev) return {}; - QWindowsIUPointer<ID3D11Texture2D> d3d11tex; + QComPtr<ID3D11Texture2D> d3d11tex; HRESULT hr = dev->OpenSharedResource(m_sharedHandle, __uuidof(ID3D11Texture2D), (void**)(d3d11tex.address())); if (SUCCEEDED(hr)) { D3D11_TEXTURE2D_DESC desc = {}; @@ -288,7 +288,7 @@ private: class OpenGlVideoBuffer: public IMFSampleVideoBuffer { public: - OpenGlVideoBuffer(QWindowsIUPointer<IDirect3DDevice9Ex> device, IMFSample *sample, + OpenGlVideoBuffer(QComPtr<IDirect3DDevice9Ex> device, IMFSample *sample, const WglNvDxInterop &wglNvDxInterop, HANDLE sharedHandle, QRhi *rhi) : IMFSampleVideoBuffer(std::move(device), sample, rhi, QVideoFrame::RhiTextureHandle) , m_sharedHandle(sharedHandle) @@ -298,12 +298,12 @@ public: std::unique_ptr<QVideoFrameTextures> mapTextures(QRhi *rhi) override { if (!m_texture) { - QWindowsIUPointer<IMFMediaBuffer> buffer; + QComPtr<IMFMediaBuffer> buffer; HRESULT hr = m_sample->GetBufferByIndex(0, buffer.address()); if (FAILED(hr)) return {}; - QWindowsIUPointer<IDirect3DSurface9> surface; + QComPtr<IDirect3DSurface9> surface; hr = MFGetService(buffer.get(), MR_BUFFER_SERVICE, IID_IDirect3DSurface9, (void **)(surface.address())); if (FAILED(hr)) @@ -320,7 +320,7 @@ public: private: HANDLE m_sharedHandle = nullptr; WglNvDxInterop m_wgl; - QWindowsIUPointer<IDirect3DTexture9> m_texture; + QComPtr<IDirect3DTexture9> m_texture; }; #endif @@ -482,7 +482,7 @@ HRESULT D3DPresentEngine::createD3DDevice() pp.Flags = D3DPRESENTFLAG_VIDEO; pp.PresentationInterval = D3DPRESENT_INTERVAL_DEFAULT; - QWindowsIUPointer<IDirect3DDevice9Ex> device; + QComPtr<IDirect3DDevice9Ex> device; hr = m_D3D9->CreateDeviceEx( adapterID, @@ -604,18 +604,18 @@ HRESULT D3DPresentEngine::createVideoSamples(IMFMediaType *format, QList<IMFSamp for (int i = 0; i < PRESENTER_BUFFER_COUNT; i++) { // texture ref cnt is increased by GetSurfaceLevel()/MFCreateVideoSampleFromSurface() // below, so it will be destroyed only when the sample pool is released. - QWindowsIUPointer<IDirect3DTexture9> texture; + QComPtr<IDirect3DTexture9> texture; HANDLE sharedHandle = nullptr; hr = m_device->CreateTexture(width, height, 1, D3DUSAGE_RENDERTARGET, (D3DFORMAT)d3dFormat, D3DPOOL_DEFAULT, texture.address(), &sharedHandle); if (FAILED(hr)) break; - QWindowsIUPointer<IDirect3DSurface9> surface; + QComPtr<IDirect3DSurface9> surface; hr = texture->GetSurfaceLevel(0, surface.address()); if (FAILED(hr)) break; - QWindowsIUPointer<IMFSample> videoSample; + QComPtr<IMFSample> videoSample; hr = MFCreateVideoSampleFromSurface(surface.get(), videoSample.address()); if (FAILED(hr)) break; |