summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Update dependencies on 'dev' in qt/qtmultimediaVaL Doroshchuk2020-06-307-17/+5
| | | | | Change-Id: I463d3a1541cee1fcf4a6b6d1e2e1eac85fbfc682 Reviewed-by: Val Doroshchuk <valentyn.doroshchuk@qt.io>
* IMX: Prepare vivante plugin for RHIVaL Doroshchuk2020-06-3012-72/+141
| | | | | | Task-number: QTBUG-78678 Change-Id: I61a62b71f5731949a7e1094efc854bd3d7d1aa6a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Remove android video nodeVaL Doroshchuk2020-06-307-433/+0
| | | | | | | | Since it uses gl texture, which can be replaced by default sg video node. Task-number: QTBUG-74423 Change-Id: Id00748ccf18595d8ea782378c512c7fca6fe0229 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Android: Use current gl context as shareVaL Doroshchuk2020-06-301-2/+6
| | | | | | | | | | | | | If a video surface contains gl context, it is now used as a share. Otherwise nothing is rendered. The gl context is set when updatePaintNode is called for the video output quick item. Also context's offscreen window now should be on the same thread as the surface. Task-number: QTBUG-78678 Change-Id: I8f2bdd56a5ce209edc206b74ffa5c48e34e7218f Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Don't map QMemoryVideoBuffer when there is no data insideVaL Doroshchuk2020-06-302-1/+13
| | | | | | | Pick-to: 5.15 Task-number: QTBUG-85202 Change-Id: If40af4af211af86311c0e04a8bdd0627dc34a939 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* Add ; to Q_UNUSEDLars Schmertmann2020-06-2858-122/+122
| | | | | | | | This is required to remove the ; from the macro with Qt 6. Task-number: QTBUG-82978 Change-Id: I5466906d759a7cc046d77a21e2c647a4b938d070 Reviewed-by: Val Doroshchuk <valentyn.doroshchuk@qt.io>
* Use QList instead of QVectorJarek Kobus2020-06-2530-81/+78
| | | | | | Task-number: QTBUG-84469 Change-Id: Id8d07836a66e4d9223341483bfe0ed251ba2806c Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Remove winrt pluginVal Doroshchuk2020-06-2535-6713/+1
| | | | | | | | WinRT has been removed already Task-number: QTBUG-74423 Change-Id: Ia1269a52f02a24ba67e08e6cc1f451ba50b55fdd Reviewed-by: Val Doroshchuk <valentyn.doroshchuk@qt.io>
* Quick: Remove EGL video nodeVaL Doroshchuk2020-06-245-377/+0
| | | | | | | Not supported in RHI Change-Id: Iad0a360c9378ffbfe57070881fc94d807b3d1235 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Remove wasapi pluginVal Doroshchuk2020-06-2416-2374/+0
| | | | | | | | Requires WinRT support Task-number: QTBUG-74423 Change-Id: Ice9788df3e503c4c111bc6524c509e93dbf407c5 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Quick: Fix padded video frame when bytes per line > widthVaL Doroshchuk2020-06-151-7/+7
| | | | | Change-Id: I625bb06f81ce9860d49d7998cc49c304f2d6b848 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Doc: minor fixes re the camera documentationAndy Shaw2020-06-153-1/+3
| | | | | | Pick-to: 5.15 Change-Id: I8fbff45f5ebae681ab37cfd0ab0acb79eec88864 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* Qt6: Port QtMultimedia from QStringRef to QStringViewKarsten Heimrich2020-06-119-14/+15
| | | | | | Task-number: QTBUG-84319 Change-Id: Ic342142dd17591159ee84139157e5ed613b03682 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove Radio supportVaL Doroshchuk2020-06-1058-6264/+10
| | | | | | Fixes: QTBUG-84592 Change-Id: I3b9e51689fd542c35cb57cf6c51a141aec3034df Reviewed-by: Christian Strømme <christian.stromme@qt.io>
* Quick: Allow to build with -no-openglVaL Doroshchuk2020-06-105-10/+38
| | | | | Change-Id: I927998b9ffa80a324636855c5dcc92cb57e9d520 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Introduce QAbstractVideoBuffer::MTLTextureHandleVal Doroshchuk2020-06-1013-66/+155
| | | | | | | | | | | | | | | | Added MTLTextureHandle to render metal textures. Is used by default if rhi is enabled for metal backend. Also fixed the frame renderer to create new opengl context and use provided one from the video surface as a share context. To remember, when the quick item is created and updatePaintNode is called, current gl context is set to the video surface as a property. When the frame renderer is ready, it extracts the gl context and uses it as a share one. Task-number: QTBUG-78678 Change-Id: I51ce666ca7c2adc10dd2c1d1dfed99cc9f596e2b Reviewed-by: Christian Strømme <christian.stromme@qt.io>
* CoreAudio: Don't apply audio category if it is not neededVal Doroshchuk2020-06-094-18/+12
| | | | | | | | | | | | | | | | | | If just devices are requested, no need to apply any categories with activation of audio device. Postpone setting category and activating audio until actual playing is requested. Categories/options for input devices: AVAudioSessionCategoryPlayAndRecord with AVAudioSessionCategoryOptionMixWithOthers For output: AVAudioSessionCategoryAmbient with no options. Pick-to: 5.15 Fixes: QTBUG-83776 Change-Id: I9364bdea2882bc23039817207eca62b311841ba6 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* GStreamer: Start playback when bufferedVaL Doroshchuk2020-06-091-1/+1
| | | | | | | | | | Regression since d8d072417b08dd75734b3f0aa86c3a49db934770 Pick-to: 5.15 Fixes: QTBUG-84556 Change-Id: I557ac7eb38ebdbb6c52e5348902ee8c3f1a91f07 Reviewed-by: <roman.valov@gmail.com> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* Follow QRhi create-destroy API updateLaszlo Agocs2020-06-041-2/+2
| | | | | | | 5697799 in qtbase changes build() to create(). Follow these changes. Change-Id: Icad272f8d3280c15ac4d8a635af90b4bf1fd1437 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* RHI: Remove gl code from video nodesVaL Doroshchuk2020-06-0447-1051/+79
| | | | | | | | Now QSGMaterialShader handles rhi textures too. Task-number: QTBUG-78678 Change-Id: I410185c80bd104741fd5b52deeb87eb97531410a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Update dependencies on 'dev' in qt/qtmultimediaVaL Doroshchuk2020-06-041-2/+2
| | | | | Change-Id: I942647d8ec8baad7ca910db83bc12c400010db42 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* Remove QT_DEPRECATED APIVaL Doroshchuk2020-06-048-96/+1
| | | | | | Change-Id: I2aa2334f7408164bf288d82b28e4e6aff9a2503b Fixes: QTBUG-84593 Reviewed-by: Liang Qi <liang.qi@qt.io>
* AVFoundation: fix playback of files with spaces in their namesNick Korotysh2020-06-021-7/+7
| | | | | | | | | | | | | | | | | Used QUrl::toEncoded() instead of QUrl::toString(). Usage of QUrl::toString() leads to URLs which can contain spaces and as result such URLs are not accepted by AVPlayer, and it remains in unknown state because AVFMediaPlayerSession::processLoadStateChange() is not called at all. And as result, QMediaPlayer waits media loading forever. [ChangeLog][Platform Specific Changes][AVFoundation] Fixed playback of files with spaces in their names. Fixes: QTBUG-84585 Pick-to: 5.15 Change-Id: I69e522d048d88310803a7040f114ee808c18720b Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
* Map QVideoFrame::Format_Y8=>QImage::Format_Grayscale8 in QVideoFrameVaL Doroshchuk2020-06-024-5/+9
| | | | | | | Pick-to: 5.15 Fixes: QTBUG-52455 Change-Id: I30582582935ae0a2c5094db995cba83b62adc767 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Vivante: Keep only one frameVaL Doroshchuk2020-05-310-0/+0
| | | | | | | | | | | | | The imx6 vivante implementation of videonode used by qtvideosink holds reference to two frames during rendering. It releases the first frame only when it receives the third frame. This makes jerky playback when frames are not coming at constant rate. It displays the previous frame during video playback. Change-Id: If306bdcd358fac46a1fd0000ccb068424aee813a Reviewed-by: Karim Pinter <karim.pinter@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit f48e16dc45cde8f634823c40aa573b18673cf13d)
* Merge "Merge remote-tracking branch 'origin/5.15' into dev"Qt Forward Merge Bot2020-05-2936-89/+659
|\
| * Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-05-2936-89/+659
| |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/multimedia/audiodecoder/audiodecoder.cpp examples/multimedia/audiodecoder/main.cpp src/multimedia/playback/qmediaplayer.cpp Change-Id: I8cf1293023c09069745aa3aa6df49b1e0a8a1c22
| | * Merge remote-tracking branch 'origin/5.15.0' into 5.15Qt Forward Merge Bot2020-05-149-7/+71
| | |\ | | | | | | | | | | | | Change-Id: I9525c18e6a29b8c6cbe3398264a096bde24eca10
| | | * Merge remote-tracking branch 'origin/5.14' into 5.15.0v5.15.0-rc2v5.15.0-rc1v5.15.0Qt Forward Merge Bot2020-04-277-7/+7
| | | |\ | | | | | | | | | | | | | | | Change-Id: I6df92f98db7c18dcecdc831d46748d8111dffacb
| | | | * Fix case of header file includes for building with mingw-w645.14Marius Kittler2020-04-266-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ie0e6599234c38c5e5a75b681a911f3728871861e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | | * WindowsAudio: Send stateChanged when QAudioOutput::reset() is calledVal Doroshchuk2020-04-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-83240 Change-Id: Iaa01ee4553f4c0c4d9a1ad829e65b40f13d3847d Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| | | * | Fix warning about QNetworkConfiguration being deprecatedThiago Macieira2020-04-231-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's going away in Qt 6.0. Task-number: QTBUG-83692 Change-Id: I9709abb1c3734e10a7defffd1607e1160da1e75c Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
| | | * | Merge 5.15 into 5.15.0Alexandru Croitor2020-04-235-7/+64
| | | |\ \ | | | | | | | | | | | | | | | | | | Change-Id: I98beddaeb5a0508f5790a9fed2ef74044a8043e9
| | | * | | Add changes file for Qt 5.15.0Antti Kokko2020-04-211-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I702f45ee8ab811b068ccde6de13cb754544e93e7 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| | * | | | Remove QRadioTuner from index pageKai Koehne2020-05-111-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It got deprecated in f1648c837b606cb Change-Id: I3f99a5373b0641f15e62ec4270e89c582e451fdb Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io> (cherry picked from commit c95aa0e1836f230b2ba3158c65d0767223dd1937) Reviewed-by: Qt Cherry-pick Bot
| | * | | | Vivante: Keep only one frameVaL Doroshchuk2020-05-112-8/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The imx6 vivante implementation of videonode used by qtvideosink holds reference to two frames during rendering. It releases the first frame only when it receives the third frame. This makes jerky playback when frames are not coming at constant rate. It displays the previous frame during video playback. Change-Id: If306bdcd358fac46a1fd0000ccb068424aee813a Reviewed-by: Karim Pinter <karim.pinter@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| | * | | | GStreamer: Fix reverse playbackVaL Doroshchuk2020-05-081-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Each gstreamer plugin is responsible for supporting reverse playback and also might require different start/stop types (GST_SEEK_TYPE_SET, GST_SEEK_TYPE_NONE, GST_SEEK_TYPE_END). Some plugins do not support it at all, e.g. wavparse. if rate > 0: change rate from current position to duration. else: change rate from current position to 0. Fixed also seeking with a negative rate. This should work for mp3 or some video formats too. Fixes: QTBUG-83945 Change-Id: I10a98186b9bc63d908667944aa4459da9e63e343 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * | | | Suppress QMediaNetworkAccessControl related deprecation warningsMårten Nordheim2020-04-271-0/+9
| | | |/ / | | |/| | | | | | | | | | | | | | | | | Change-Id: Ifb64b01463115f81b2edc4e486a3b0f52197e2a1 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
| | * | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-04-211-0/+45
| | |\ \ \ | | | | |/ | | | |/| | | | | | Change-Id: I275882053a3c21e31e05b1583183e87942c9d720
| | | * | Merge remote-tracking branch 'origin/5.14.2' into 5.14Qt Forward Merge Bot2020-04-211-0/+45
| | | |\ \ | | | | | | | | | | | | | | | | | | Change-Id: I4a121e41c79e6a05ac35954c679314893d6412de
| | | | * | Add changes file for Qt 5.14.2v5.14.2Antti Kokko2020-03-121-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | + 1cc4b7e28bf9f8f684bf17ed30a822aa6d1c6735 Doc: Explain that the camera consumes power in Camera.LoadedState + 8427c0be1c262293b27c8bca598108cfe882c84e Doc: Fix QCamera and Camera docs + d63921355aacf5cbd5189ffdbe4d23b9ff318bee Android: Fix loading multimedia plugins + 5e0c4d2fa253922a86378b150852a0ca8bdabc0d Android: JNI_OnLoad return JNI_VERSION_1_6 instead of JNI_VERSION_1_4 + 2d54cb4f460f2665da64e551927e6dbf153c68c1 GStreamer: Don't create encoding profile if container is not supported + 265bfb22e7f0f5333e584f6dd91926b8516e394e AVF: Always lock the capture device when start the camera + daac69f2f9e9ff9be06484dbdc10d139e83ab502 Bump version + 545d4aedc2af40182cd9141d014a02f919592cd9 AVF: Don't use deprecated AVPlayerItem::seekToTime::CMTime + e47ed7b88223c42dd20ef86b829061fcc4f1fc30 AVF: Only resume playback after a stalled buffer if really needed + cbdf4561f5cdb6ee95583f14a3769c3124228586 Android: Flush qrc to tmp file with original name + 7e64b859b6a663f42ee3067930ef132d9e7d2901 Fix false pulse audio dependency of libQt5MultimediaWidgets + aec140743b1a4110c327c46bdfbf15fcddb2dd17 AVF: Fix applying viewfinder settings for iOS + ad3d2afae99506a779ad758f4e7385c9f0b163ba AVF: Don't override AVPlayerLayer's bounds if already set + 19b111fa2f872e8c356ca130ce5a03ae52375934 Android: Fix invalid use of incomplete type 'QDir' + 12460a14bde44d1ff7bedd75bc87c7f22d096588 WMF: Fix memory leak in MFPlayerSession::getStreamType Change-Id: I287736bbe400983bad3966caab675a9386e075d8 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| | * | | | Merge "Merge remote-tracking branch 'origin/5.14' into 5.15"Qt Forward Merge Bot2020-04-203-6/+18
| | |\ \ \ \
| | | * | | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-04-203-6/+18
| | | |\| | | | | | | |_|/ | | | |/| | | | | | | | Change-Id: I160b25219c806d9d3a30644fa1a5e589c5aca039
| | | | * | Gstreamer: fix stream bufferingRoman Valov2020-04-201-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Gstreamer client should handle GST_MESSAGE_BUFFERING to play and pause streams based on buffer-percent value and Qt does it properly. However `updateSessionState` of QGstreamerPlayerControl was implemented to go back into playing state each time session state becomes paused. That behavior resulted into choppy stream playback. Fix with condition to un-pause playback only if it's already buffered. Fixes: QTBUG-83417 Change-Id: Ida4a9e2e196de00050bdc64725fa818c7e939785 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
| | | | * | GStreamer: Remove file when CaptureToBuffer is usedVaL Doroshchuk2020-04-201-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Capturing the image is handled by camerabin and it saves the image to a file. And we wanted to remove the file if capturing to buffer is requested, but the file is kept and not removed. Change-Id: I21404fc160bf275325deebf0f00b588de3493ee1 Fixes: QTBUG-82572 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| | | | * | GSTVideoRender: Update viewport on gst video buffer crop metadataStef Boerrigter2020-04-161-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the video buffer contains crop metadata update a viewport for the video frame format. Fixes: QTBUG-82448 Change-Id: Iace150c6c03b48662cc9f0112b45fbe6401d6061 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
| | * | | | Update connect to QSocketNotifier::activatedMårten Nordheim2020-04-201-1/+1
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The int-overload will in some cases truncate the descriptor. So it's being replaced. Task-number: QTBUG-70441 Change-Id: Iffee2c8b544e6d329d02c0afea6aa9db9de38ea4 Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
| | * | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-04-143-6/+17
| | |\| | | | | | | | | | | | | | | | | Change-Id: I9687c59d15cd816969f362d72b19f279a1a2d04e
| | | * | Fix clang warning about mixing || and |Thiago Macieira2020-04-091-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | || was definitely wrong. Even | would be wrong. ../qmultimedia_common/../qmultimedia_common/mockcameraflashcontrol.h:62:22: warning: use of logical '||' with constant operand [-Wconstant-logical-operand] return (mode || (QCameraExposure::FlashAuto | QCameraExposure::FlashOff | QCameraExposure::FlashOn | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Change-Id: Ibdc95e9af7bd456a94ecfffd1603e74da919abbc Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
| | | * | DirectShow: Use MEDIASUBTYPE_Y800 as QVideoFrame::Format_Y8Val Doroshchuk2020-04-082-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added MEDIASUBTYPE_Y800 with GUID: {30303859-0000-0010-8000-00AA00389B71} Fixes: QTBUG-83071 Change-Id: I2e51ae1d2ae62d4d4cd7f68eecc0605bdc8c7f3a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>