| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: I70b363e614391ecce15ed55ef1267973c8b21355
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Saved a copy of texture id in IMFSampleVIdeoBuffer and init it on first
call.
Task-number: QTBUG-70672
Change-Id: Iaf8ff4f3faa952846eca5a764c88e57807d4d211
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-70672
Change-Id: I38c1e868dd05835489a49e6c29d9ad1a36a5f7a9
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Unindent the code or replace by switch ()
- Smaller fixups when reindenting (nullptr, use QStringView for
comparison against wchar_t)
Change-Id: I249cb00b9ebe375b089d8d53b10c2d16d5771680
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
- Replace by range-based for
Change-Id: Ie73bf5b6e1ebd90e4db653af0791ec88b68ed883
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Replace by reinterpret_cast<>.
Change-Id: Iebcac7858d875e2d6f53db21489d86beb19ba947
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
| |
- Use ' = default' for trivial constructors/destructors
- replace virtual by override or add override where applicable
- Replace trivial constructors by member initialization for simple structs
- Add Q_DISABLE_COPY where applicable
- Mark move assignment/move constructors as noexcept
- Remove unused member variables
Change-Id: I579fb69ebcd945b94de32b827d93e5a4dab4df97
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: I3d6e69f3f99b2f0a0e2c29ffdd02176e1f22304e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When ANGLE is used and video frames have GLTextureHandle handle type
black screen is shown while audio is working correctly.
Fixed a bug when opengl texture has not been ever creating.
Fixed a crash when releasing resources due to empty QOpenGLContext.
Also moved gl initialization related code to OpenGLResources.
Task-number: QTBUG-61407
Change-Id: Ifc92a4a2fa2e769494ef962203446a9b3e7dd86d
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Originally pixel aspect ratio was clearing (set to 1,1)
within renegotiating the media type.
Which caused samples with not standard pixel aspect ratio (1,1)
to be rendered with black squares on the top and the bottom.
(Original size was kept but PAR cleared)
Added a fix to keep PAR while adjusting the media type to optimal one
and set original PAR to QVideoSurfaceFormat.
Task-number: QTBUG-64438
Change-Id: I6d1a5c441b89bbd5cea86667cc570bb7eb19068b
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
evrcustompresenter.h(371,16): warning: private field 'm_sampleToPresent' is not used [-Wunused-private-field]
qwindowsaudiooutput.h(119,10): warning: private field 'resuming' is not used [-Wunused-private-field]
qwindowsaudiooutput.h(142,14): warning: private field 'result' is not used [-Wunused-private-field] ^
qwindowsaudiooutput.h(143,13): warning: private field 'header' is not used [-Wunused-private-field]
Change-Id: Iaf9e422678e6e53aeb3a0c0f7c1c52c1301a0b9d
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|/
|
|
|
|
|
|
| |
evrd3dpresentengine.cpp(52,11): warning: non-portable path to file '<QtGui/qguiapplication.h>'; specified path differs in case from file name on disk [-Wnonportable-include-path]
mfstream.cpp(233,13): warning: enumeration value 'msoBegin' not handled in switch [-Wswitch]
Change-Id: I5aeb253a11de964090123b1d2c61435e31d488f6
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes g++ warnings:
..\common\evr\evrhelpers.cpp: In function 'QVideoFrame::PixelFormat qt_evr_pixelFormatFromD3DFormat(D3DFORMAT)':
..\common\evr\evrhelpers.cpp:143:5: warning: case value '842094158' not in enumerated type 'D3DFORMAT {aka _D3DFORMAT}' [-Wswitch]
case D3DFMT_NV12:
..\common\evr\evrhelpers.cpp:145:5: warning: case value '842094169' not in enumerated type 'D3DFORMAT {aka _D3DFORMAT}' [-Wswitch]
case D3DFMT_YV12:
Change-Id: I11869144b34d848bd68434d3a062852608518978
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove QT_USE_NAMESPACE from headers and enclose headers/sources in
QT_BEGIN/END_NAMESPACE. Fixes MinGW build error:
qtbase/src/corelib/global/qtypeinfo.h:246:7: error: specialization of 'template<class T> class tn::QTypeInfo' in different namespace [-fpermissive]
class QTypeInfo<TYPE > \
^
qtbase/src/corelib/global/qtypeinfo.h:265:1: note: in expansion of macro 'Q_DECLARE_TYPEINFO_BODY'
Q_DECLARE_TYPEINFO_BODY(TYPE, FLAGS)
^
helpers\directshowmediatype.h:92:1: note: in expansion of macro 'Q_DECLARE_TYPEINFO'
Q_DECLARE_TYPEINFO(DirectShowMediaType, Q_MOVABLE_TYPE);
^
qtbase/src/corelib/global/qtypeinfo.h:57:7: error: from definition of 'template<class T> class tn::QTypeInfo' [-fpermissive]
class QTypeInfo
^
Task-number: QTBUG-60118
Change-Id: Idfe7a49b50a0046a5cb17630a3ec99615ec6150a
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|
|
|
|
| |
Change-Id: Ifa0c768e2f0299d31d3d52db975c896bdb2aab5e
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ieb1a3081907093e31e8c8b7f95993bb3b2173672
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use a switch on int instead of else if.
common\evr\evrcustompresenter.cpp: In member function 'virtual bool EVRCustomPresenter::event(QEvent*)':
common\evr\evrcustompresenter.cpp:1882:22: warning: comparison between 'enum QEvent::Type' and 'enum EVRCustomPresenter::PresenterEvents' [-Wenum-compare]
if (e->type() == StartSurface) {
^
common\evr\evrcustompresenter.cpp:1885:29: warning: comparison between 'enum QEvent::Type' and 'enum EVRCustomPresenter::PresenterEvents' [-Wenum-compare]
} else if (e->type() == StopSurface) {
^
common\evr\evrcustompresenter.cpp:1888:29: warning: comparison between 'enum QEvent::Type' and 'enum EVRCustomPresenter::PresenterEvents' [-Wenum-compare]
} else if (e->type() == PresentSample) {
Change-Id: I8533e2c6d9b0a01b7b95e1d8bb119b50d4aabd25
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Cross-compiling for mingw requires lowercase filenames.
Change-Id: I135deca455ca2ff6bb3969aca990fe9d1c2dd345
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The QAbstractVideoSurface was started only when calling play(), causing
frames received before (e.g. when pausing from stopped state) to not
be rendered.
The surface is now started as soon as a media type is agreed between
the EVR and the upstream element. Conversely, the surface is stopped
whenever the media type is cleared.
Change-Id: Ia96a07dbd277adce67de5a9cfbf9acc0d33b6497
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: If5d9ea0fb6187bb6f74881289ebb15a57eb82e0c
|
| |
| |
| |
| |
| |
| |
| |
| | |
This was causing QMediaPlayer to never go into the EndOfMedia state.
Task-number: QTBUG-50814
Change-Id: I8920cf93db37a834f67b9e0b4abcf5a4934dfe0e
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
|
|\|
| |
| |
| | |
Change-Id: I2e4e9cca01d63ed0d1e7f71c7a58322390696036
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-50510
Change-Id: Ide1b58061d0fcdd5caf8597af8cfaec2483d712b
Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
|
|/
|
|
|
|
|
|
|
|
|
| |
From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see
http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/
Updated license headers to use new LGPL header instead of LGPL21 one
(in those files which will be under LGPL v3)
Change-Id: I324f65c61171f36641472964d095d72e452afb3a
Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removed hard dependency to Angle; it's now required only when rendering
to a texture. If Angle is not used, the buffers are now mappable to
system memory.
This enables HW-accelerated video decoding in QML for non-ANGLE
builds. Note that the frame data have to do a round-trip through system
memory, which is not ideal but still faster than SW decoding.
Task-number: QTBUG-45593
Change-Id: Icc3503142df4e8dbb53b4e11f409b161fd2f9bde
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
| |
As for the window control, the existing code from the WMF plugin has
been refactored out and is now shared for both plugins.
This enables HW-accelerated video decoding in QML, QGraphicsVideoItem
and custom QAbstractVideoSurfaces (Angle is required).
Task-number: QTBUG-45593
Change-Id: I1d4dbf5695cdd4dbee93f9f4a957fa4d813aa85d
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
|
|
Reuse existing code from the WMF plugin, which already uses the EVR.
This enables HW-accelerated video decoding when using QMediaPlayer
with a QVideoWidget.
Task-number: QTBUG-45593
Change-Id: I757e4d53cd2c648aee6ba33a4851a8c6adc62843
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
|