diff options
author | Lars Knoll <lars.knoll@qt.io> | 2021-01-04 12:31:09 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2021-01-22 06:58:14 +0000 |
commit | cfaa21174e72dc00d073f3d6f6ce7f68330afff9 (patch) | |
tree | d925688c02c5e6d9c596ba46be58ff2db6032078 /src/plugins/wmf | |
parent | c355d98b045834a494e9fda634388f82c8f625a9 (diff) |
Merge QAbstractPlanarVideoOutput into QAbstractVideoOutput
And while we're at it, sanitize the signature of the virtual
map() method.
Change-Id: I8feb09e1dd6abdd9f480e202568ff84e6c3c08a9
Reviewed-by: Doris Verria <doris.verria@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/plugins/wmf')
-rw-r--r-- | src/plugins/wmf/player/mfvideorenderercontrol.cpp | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/src/plugins/wmf/player/mfvideorenderercontrol.cpp b/src/plugins/wmf/player/mfvideorenderercontrol.cpp index 7b121255f..212533009 100644 --- a/src/plugins/wmf/player/mfvideorenderercontrol.cpp +++ b/src/plugins/wmf/player/mfvideorenderercontrol.cpp @@ -74,29 +74,27 @@ namespace m_buffer->Release(); } - uchar *map(MapMode mode, int *numBytes, int *bytesPerLine) + MapData map(MapMode mode) override { + MapData mapData; if (m_mapMode == NotMapped && mode != NotMapped) { BYTE *bytes; DWORD length; HRESULT hr = m_buffer->Lock(&bytes, NULL, &length); if (SUCCEEDED(hr)) { - if (numBytes) - *numBytes = int(length); - - if (bytesPerLine) - *bytesPerLine = m_bytesPerLine; - + mapData.nBytes = qsizetype(length); + mapData.nPlanes = 1; + mapData.bytesPerLine[0] = m_bytesPerLine; + mapData.data[0] = reinterpret_cast<uchar *>(bytes); m_mapMode = mode; - return reinterpret_cast<uchar *>(bytes); } else { qWarning("Faild to lock mf buffer!"); } } - return 0; + return mapData; } - void unmap() + void unmap() override { if (m_mapMode == NotMapped) return; @@ -104,7 +102,7 @@ namespace m_buffer->Unlock(); } - MapMode mapMode() const + MapMode mapMode() const override { return m_mapMode; } |