- 18 Oct, 2019 - 1 commit
-
-
Val Doroshchuk authored
Since for Android GStreamer is distributed in archives, and should be staticlly linked, so by default it is not built and should be explicitly enabled within configuring by -gstreamer option. (currently it is auto and enabled if gstreamer exists) ("libs" of the gstreamer library in configure.json is empty to prevent any libs to be added while building any code that uses gstreamer library) Some base gst archives are fully included to Qt5MultimediaGstTools. Users would need to just use: QT += multimediagsttools-private Before building, GSTREAMER_ROOT_ANDROID env var should be set to point to gst binaries. Also all necessary plugins must be registered in user's code by GST_PLUGIN_STATIC_DECLARE/GST_PLUGIN_STATIC_REGISTER macros after QGstUtils::initializeGst(). and e.g. project file might contain: INCLUDEPATH += $$(GSTREAMER_ROOT_ANDROID)/armv7/include/ \ $(GSTREAMER_ROOT_ANDROID)/armv7/include/gstreamer-1.0 \ $(GSTREAMER_ROOT_ANDROID)/armv7/include/glib-2.0 \ $(GSTREAMER_ROOT_ANDROID)/armv7/lib/glib-2.0/include LIBS += -L$$(GSTREAMER_ROOT_ANDROID)/armv7/lib/ \ -L$$(GSTREAMER_ROOT_ANDROID)/armv7/lib/gstreamer-1.0 \ __here_list_of_plugins__ See video/android/gstreamer example Change-Id: Ie4e586fa8489f1bd23622763f5578abed1729272 Task-number: QTBUG-72125 Reviewed-by:
Andy Shaw <andy.shaw@qt.io> Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
- 15 Oct, 2019 - 1 commit
-
-
Qt Forward Merge Bot authored
Conflicts: src/multimedia/video/qvideoframe.cpp src/plugins/directshow/player/directshowplayercontrol.cpp Change-Id: I00840245e35861cf4fe1d62789815ca125b2052a
-
- 10 Oct, 2019 - 1 commit
-
-
VaL Doroshchuk authored
Format_ABGR32 was introduced together with gst opengl support. And is supposed to be used with QT_GSTREAMER_USE_OPENGL_PLUGIN=1, Which should be fine for Raspberry Pi, but suddenly does not work for iMX boards. RPI's omxh264dec provides buffers in RGBA format, and corresponding textures will be created using GL_RGBA. Since we return Format_ABGR32 as supported format, which is RGBA, no conversion is needed and everything was ok. But for iMX, imxvpudec provides buffers in I420 format. And textures will be created using GL_RED with only 1 plane. Following patch https://bugzilla.gnome.org/show_bug.cgi?id=779067 requests RGBA too. Since incaps contains I420 and RGBA, and we say that we support RGBA, this leads to use buffers in I420 but *passthrough* in gst_gl_color_convert_element_prepare_output_buffer(). Since incaps and outcaps contain the same video format. No conversion will be done there and textures will be rendered incorrectly. Removing support of Format_ABGR32 from texture video node will cause to ignore requested RGBA from DIRECTVIV and perform converting, I420->BGRx on iMX and RGBA->BGRA on RPI. QT_GSTREAMER_USE_OPENGL_PLUGIN should be used together with decoders that use gpu memory. Otherwise some converting/uploading operations will be done which will also introduce some performance issues, so not recommended to be used for iMX. Change-Id: I8f037316c40587c81b2116c43a7262c6a70a5b44 Fixes: QTBUG-78855 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
- 08 Oct, 2019 - 7 commits
-
-
Ratchanan Srirattanamet authored
QDeclarativeCameraViewfinder connects to QCamera's statusChanged() to update its chached settings when the status becomes LoadedStatus or ActiveStatus. However, it's updated after QDeclarativeCamera has signaled cameraStatusChanged because QDeclarativeCameraViewfinder connects the that signal after QDeclarativeCamera, making those connected to cameraSignalChanged still receiving old values despite camera.cameraStatus already changed. This commit moves the creation of QDeclarativeCameraViewfinder into the constructor of QDeclarativeCamera, before the later connects to signals. This make values in camera.viewfinder reflects the correct value by the time cameraStatusChanged is signaled. A side effect of this change is that camera.viewfinder.resolutionChanged and similar signals will be signaled before camera.cameraStatusChanged. This might not be as bad as it seems; if the user of resolutionChanged checks camera.cameraStatus, the value will be correct anyway as it's not cached. Change-Id: Ief0c3d55e441cc872d37de937ba54fed0f2b877d Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
Val Doroshchuk authored
After changing sequence in QVideoFrame, need to fix qConvertFuncs Change-Id: Ie022676a66d9c47a1b89cf5ef61c2146921a2a0b Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Val Doroshchuk authored
Additional to bf6ac0 commit, need to fix convert funcs Change-Id: I8eb82234557489e66bc179e1696afc154332b656 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Val Doroshchuk authored
When qrc media content is set, it allocates and opens QFile. If the same content is set again, the url remains the same, but it creats new QFile, and need to update by new stream. Change-Id: Iee6c50135bb8304177affbe70b27d24898fc5b5c Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Val Doroshchuk authored
When qrc media content is set, it allocates and opens QFile. If the same content is set again, the url remains the same, but it creats new QFile, and need to update DirectShowIOReader by new stream. Change-Id: If3f5c187c4e2987e1a593b45f9a46c3c1b77ce45 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
VaL Doroshchuk authored
If remote source is requested to play but there is a limitation in network bandwidth, StalledMedia status is never emitted, also the playback is not resumed after buffer gets full again. Based on AVPlayerItem.playbackLikelyToKeepUp introduced changing the media status and resuming the playback. Task-number: QTBUG-49806 Change-Id: If8aa10a1ea2cee2a40c679871b836d2dca622fcd Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Qt Forward Merge Bot authored
Conflicts: src/multimedia/configure.json Change-Id: Ie887a5f4d718cb3e082b0e2ee996c6687af330cb
-
- 07 Oct, 2019 - 2 commits
-
-
Joerg Bornemann authored
This amends commit f0ea2641 . Fixes: QTBUG-79014 Change-Id: Ib04d844ef64e335785408dc8d7e512a5a3651655 Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
Albert Astals Cid authored
* Add const & to function parameters * Add const & to variables assigned from functions returning const & Change-Id: Idc141bd48f37eae92a4d1775caade3c977a42391 Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
- 02 Oct, 2019 - 3 commits
-
-
VaL Doroshchuk authored
* Get real physical address of video frame data and provide it to imx6 vivante videonode to prevent memory leak from kernel. By default qtmultimedia does not depend on gstreamer-imx, but the plugin should exist on imx platform. So gstreamer_imxcommon will be disabled. And should be manually enabled in yocto receipt. Change-Id: I6e75746a2ba651d12bdd7697ae483699aad450fc Fixes: QTBUG-73084 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Val Doroshchuk authored
Fixes: QTBUG-45064 Change-Id: I6b4a7a4b92affe80fc288e08d514092ac3d6899a Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Ratchanan Srirattanamet authored
Some element can return caps with same resolution/framerate but different features. gst_simplify_caps() won't de-duplicate this, resulting in duplicated entries for the same resolution/framerate. This commit add calls to also remove features from the caps in addition to setting name to video/x-raw. The GST_CHECK_VERSION macro is added to maintain compatibility with earlier version of Gstreamer without GstCapsFeatures. [ChangeLog][CameraBin] Fixed duplicated entries in supported resolution/ framerate if the underlying element uses caps' features. Change-Id: I15101899eb0369925013ccc1d925afb890a01205 Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
- 01 Oct, 2019 - 8 commits
-
-
BogDan Vatra authored
Fixes: QTBUG-78616 Change-Id: Iad36d650530602e0e6d6504776a793e69b40bb4e Reviewed-by:
Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
-
VaL Doroshchuk authored
[ChangeLog] QRadioTuner and QRadioData classes are now deprecated. Task-number: QTBUG-75943 Change-Id: I54023ad344c494f4cddb62503ab47612a8b367e9 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Val Doroshchuk authored
If the playback is already stopped, and after that new position is requested twice, e.g. stop(); setPosition(0); setPosition(0); this causes the playback to start. Need to postpone setting of new position until play is requested. Also no need to emit positionChanged when position is not changed. Fixes: QTBUG-68778 Change-Id: Ib62942ee155d9c8ed2310132dcc6b501dfef1a04 Reviewed-by:
Christian Strømme <christian.stromme@qt.io>
-
VaL Doroshchuk authored
Currently if custom pipeline is set, old playbin elements are destroyed. And if normal url is passed again after the custom pipeline, it is unable to play. Because no playbin elements exist anymore. Adding a fix to recreate playbin elements if "not a pipeline url" is passed. Fixes: QTBUG-78079 Change-Id: I8b3498c4660639f5d757b322a136846ee82fdc28 Reviewed-by:
Christian Strømme <christian.stromme@qt.io>
-
Qt Forward Merge Bot authored
Conflicts: src/multimedia/video/qvideoframe.h Change-Id: I8458c4138be05f661d6528116cbc6b18298f0a91
-
Val Doroshchuk authored
Media status should be emitted before any error. Since error can cause changing the media and changing to new media status. Fixes BFAIL : tst_QMediaPlayerBackend::playlistObject() Compared values are not the same Actual (mediaStatusSpy.count()): 4 Expected (6) : 6 Task-number: QTBUG-46368 Change-Id: I8eb82e7a551d78abd143baa594cfda9bacd7e544 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Val Doroshchuk authored
Fixed tests about start times. Since DirectShow can provide frames with negative start time, also from the beginning, also pixels can vary, e.g. (rgb) 255:0:0 would be 230:19:19 after decoding. Task-number: QTBUG-46368 Change-Id: I025f7cf9238ddf9ba2a04f63e3e54b77f3cceafe Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Val Doroshchuk authored
When QDeclarativeVideoOutput::releaseResources() is called, means the window is going to be destroyed and it is too late to use scheduleRenderJob() to clear filters. This beforeSynchronizingJobs will not be handled in this case. Which produces a leak of filter's runnable. Fixes: QTBUG-51588 Change-Id: I71ec351463a2c4136d8b7e241d61e628a1b0c64b Reviewed-by:
Timur Pocheptsov <timur.pocheptsov@qt.io>
-
- 30 Sep, 2019 - 3 commits
-
-
Kai Koehne authored
Task-number: QTBUG-78690 Change-Id: I50424fa744d13dbd9417d4bbd4752a30f7197ff0 Reviewed-by:
Kai Koehne <kai.koehne@qt.io> Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
Rolf Eike Beer authored
Change-Id: I2fc8d9c8b951092498f11a4a31c6c890df9d7495 Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
Rolf Eike Beer authored
Change-Id: I9aab0c5c20f97bc45fa26cc3a0faf6cf10c916d2 Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
- 27 Sep, 2019 - 3 commits
-
-
Val Doroshchuk authored
YVU formats are likely not supported by the codecs and the pipeline will not be negotiated in this case. Fixes BFAIL : tst_QMediaPlayerBackend::surfaceTest(YVU formats) 'surface.m_totalFrames >= 25' returned FALSE. (Expected >= 25, got 0) Task-number: QTBUG-46368 Change-Id: I6bf1a5822481a018549fe58aaf5fe79c79ff8456 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Val Doroshchuk authored
Need to flush when at least one frame is probed and stop is called, EOS or QMediaPlayer is destroyed. Fixes BFAIL : tst_QMediaPlayerBackend::probes() '(probeHandler.isVideoFlushCalled)' returned FALSE. () Task-number: QTBUG-46368 Change-Id: I09ebd6608c9a1b8a0a0707d83200d75ddb435734 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io>
-
Ratchanan Srirattanamet authored
Commit 84d0d876 (CameraBin: Postpone fetching supported viewfinder settings) checks if the camera is in LoadedStatus before fetching supported viewfinder settings. However, if viewfinder settings is never requested or not (yet) available during LoadedStatus, it won't try to fetch it at e.g. ActiveStatus. In that case, requesting supported viewfinder settings never works. [ChangeLog][CameraBin] CameraBin plugin now fetches supported viewfinder settings at status higher or equal to LoadedStatus if it has not been fetched. Change-Id: Ibd32c25feac9b1a133945e754d26181937190a24 Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
- 26 Sep, 2019 - 1 commit
-
-
VaL Doroshchuk authored
Change-Id: Id10ba45b3e98834b568a6bbc4139b2acf4de6302 Reviewed-by:
Paul Wicking <paul.wicking@qt.io>
-
- 25 Sep, 2019 - 1 commit
-
-
VaL Doroshchuk authored
Since ABGR32 was introduced in 5.13.0 but placed in the middle of the list, which breaks enum values. [ChangeLog] In Qt 5.13.0 binary compatibility was broken for usage of the enum QVideoFrame::PixelFormat by introducing QVideoFrame::Format_ABGR32. To minimize the impact of this, the break has been reverted, thus introducing a binary compatibility break with earlier Qt 5.13.x versions, but restoring compatibility with all earlier versions of Qt 5. Change-Id: I3c490f2fc30f3b6914306b2d496724f12729338e Reviewed-by:
Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
-
- 24 Sep, 2019 - 2 commits
-
-
VaL Doroshchuk authored
Change-Id: I21afcf6302b18fd3a879fa95ef2c872bcb8a3376 Reviewed-by:
Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
-
VaL Doroshchuk authored
Change-Id: I1eef99cd490f9febb7854f9a490d8ea369897a2c Reviewed-by:
Paul Wicking <paul.wicking@qt.io>
-
- 23 Sep, 2019 - 1 commit
-
-
Simon Hausmann authored
After commit 4d289edb14aeb4976218cc306bfc514e37521b82 in qtbase, MinGW is not building with debug-and-release anymore. So similar to the change in qtbase, the .pro files need adjusting for the placement of the plugins to be scoped to debug-and-release configurations. Task-number: QTBUG-78561 Change-Id: I0a5fc029307ba48c8f40f7553a7f583450337690 Reviewed-by:
Cristian Adam <cristian.adam@qt.io> Reviewed-by:
Liang Qi <liang.qi@qt.io>
-
- 21 Sep, 2019 - 3 commits
-
-
VaL Doroshchuk authored
Decided to update only docs that the class is obsolete. QT_DEPRECATED_SINCE is not needed. Also due to deprecation warnings (produced e.g. by Q_DECLARE_METATYPE), QT_DEPRECATED_X is not used. NOTE, QMediaResource will be removed from Qt 6 Change-Id: I24c6b58f90315880839dd137cab3108809a63760 Reviewed-by:
Andy Shaw <andy.shaw@qt.io>
-
Qt Forward Merge Bot authored
-
Qt Forward Merge Bot authored
Change-Id: I2ba97d82a57172656f6549f368ee51f718f9cdf8
-
- 19 Sep, 2019 - 1 commit
-
-
Rolf Eike Beer authored
Change-Id: I0069b96f00830cd441b60bef5847b1543ba2c1af Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
- 18 Sep, 2019 - 1 commit
-
-
Rolf Eike Beer authored
Only the Q_PRIVATE_SLOTs remain. Change-Id: Id3daf8275e8510a99a7089d4a537d06a123b6a27 Reviewed-by:
VaL Doroshchuk <valentyn.doroshchuk@qt.io>
-
- 12 Sep, 2019 - 1 commit
-
-
Qt Forward Merge Bot authored
-