summaryrefslogtreecommitdiff
path: root/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp')
-rw-r--r--src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp36
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;