| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Usually, single channel is not declared in this way, but in some cases
it seems to occur on users side.
Let's handle the corner case without adding the ambiguous mapping
to channelMap.
Task-number: QTBUG-113256
Change-Id: I6c17741ba339bc229536aff1691a147d7a805db5
Reviewed-by: Doris Verria <doris.verria@qt.io>
(cherry picked from commit 8f577b49b4aaa33c989cde644cc1376aacaa783f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Window capture tests are not available on macOS CI due to permissions.
Running the blacklisted tests without permissions wastes time and
causes random crashes.
Let's skip the tests to unlock CI.
Change-Id: Id732d85f1ad578d819f9a6c34e8fb0250bb2bc62
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 36d26779c74a222cff5e95bd3f4b873595b1c93f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The tests revealed occasional failure to start window capturing on
Windows UWP platform. This was worked around using a retry loop when
the error occurred.
Fixes: QTBUG-115749
Change-Id: Id86c17f1b84fc9ba07e026ed6015cb2cc659a213
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit f9e58abcd2f7ac2abf2b6e6fa38ac5c5cc11a0c2 with
manual resolution of build issues)
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, if hardware texture sharing is disabled decoder is still
being set up for it, which results in an erroneous behavior. This patch
disables decoder setup in this case which leads to default FFmpeg
initialization for frames context.
Task-number: QTBUG-108427
Change-Id: Ibef4af04bce655088ad40bc0e7131d04bc76abb9
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 45be9f75b7002363b673ebb8e2ce11086145258f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a preparation for including nvenc/nvdec to linux and
maybe windows. The related commit includes nvdec/nvenc to
linux build, windows is to be investigated.
codereview.qt-project.org/c/qt/qt5/+/496374
In some cases ffmpeg doesn't filter not available hw accelerated
codecs.
We need our own filter to enshure the best codec selection and
not expose non-working functionality.
Some implementation details:
* Hw devices are tested on the first initialization.
* Ffmpeg logging should be disabled on the testing stage in order
not to spam with errors.
* Codecs for invalid hw devices are filtered.
Task-number: QTBUG-115471
Change-Id: I0992f9d4ff37b59a5625ffea4bd208455fc9f1ac
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
(cherry picked from commit 1e4b642fa5ba9250803092b855024ed5bb335072)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
| |
Change-Id: Ie9316a5f16a47fe9f4026c5ca948f7bae561d84a
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
* av1_nvenc was not added
* global_quality is deprecated for nvenc
Change-Id: I5d51643f597522d78e2fa3f147cad02c9245ee0e
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
(cherry picked from commit fdf84d45259acb7cbad7d612ea02c1ee6f025659)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For FFMpeg-backend on Android, YUV_420_888 format is used. YUV_420_888
is a RAW frame that does not contain any Exif data. Data cannot be
taken directly from the picture, but some data can be extracted from
CaptureResult.
This commit includes adding some Exif data to the photo taken on
FFmmpeg-backend.
Task-number: QTBUG-113020
Change-Id: Ic331d653b78eacc17929b9980fd977435774756a
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 0f6c9b3d6cd9cd9155c832ad32d47525806e1b0b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
| |
Change-Id: Ie43d2bb6bed8d1a5daa12817c22e2e56f70e05f3
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Amend fa6f7bf67df6980d45c66c9018a42c154399b8f0 to fix builds
with older FFmpeg versions, some of the defines are available
only after FFmpeg n4.4.
Change-Id: I2a86699a06e4e260051682f8deac2d03e9c7480c
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 7adc9509d3f4a08d81a9fbf40334bdbb14e48c01)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
| |
Change-Id: Iba5d5e8f23b215ba354dbb69272a9eddeeadc833
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The build failure is not reproduced on CI but can be reproduced
locally if adding additional deps to the ffmpeg build.
In this case, deps may contain '-L:/usr/.../arm64-linux-gnu',
the prev regex found -l in the middle of the path and caused
a compilation error.
Change-Id: I56c229513a1d3752804d3da08e08785738feee0a
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
(cherry picked from commit a6864238d4d4d3ca2764c36829eb2b029d175ff3)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Dumping of specific flags is very useful for investigation of
ffmpeg hw acceleration features.
Change-Id: Ica313fce870d222f16e7a8af7b53562e2734ad22
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit fa6f7bf67df6980d45c66c9018a42c154399b8f0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since Qt6, Android-backend started to use QImageWriter for saving
pictures on device. This makes photos do not contain Exif data. Exif
data were lost during QVideoFrame creation. Also QImageWriter does not
support it at all (QTBUG-28330).
To bring those metadata back, Android-backend will save photos from
whole bytes array using QFile.
Task-number: QTBUG-113020
Change-Id: I7e5625a2943ee7edef24cbab223c617e317606b1
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit af2321f6bf8e404f8bbd8eb1391e16a9da2b0a9a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
When updating Camera Characteristics, we should first clear current list
of supported flash modes.
Fixes: QTBUG-115843
Change-Id: I25adbd82612100080e189e93097f0132496cddb0
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 7ad75617eab2e3e6b6a2b4143ea15cdba9035bc9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
We shouldn't write a trailer if the header has got failed.
Change-Id: I6ba7469196682123a3191963351a236fd9abdbb5
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
(cherry picked from commit ed5e09af3f99ef252f17955bf94b2df4c529124c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* use acquire-release memory order instead of default mem-seq.
The strict sequeintial order is not needed if not having
special sync requirements; the order might be a bottle-neck
if widely used in many threads.
In the future, it might be investigated and optimized
with relaxed operations in some cases.
* use QAtomic instead of std::atomic, since QAtomic has
explicit convenient methods and std::atomic sets
the mem-seq order by default.
Change-Id: Iabd9c1bc072db491e0eba7eacaf8f4ea8343cee4
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit d64c490eb977258fd30e7a78cfed1ad6d86d3f3f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a media file is missing per stream duration data, the mediaplayer
slider operations to scroll in video would restart the video from start.
The cause of the issue was that the mediaplayer duration was calculated
from the stream durations and became 0.
The ffmpeg demuxer already has more advanced heuristics to calculate the
media file duration, and this patch fixes the issue by also taking the
media file duration into account.
Fixes: QTBUG-115747
Change-Id: I906f62c15ffdccadf1da07a75a109961d897b1b0
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 42107b9d263802d361451c00c8b623fcd45e6922)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Under some circumstances wglGetExtensionsStringARB() may return null
pointer (unfortunately, it's still not clear why exactly this might
happen). As a result we get a crash in a subsequent strstr() call.
So for now we just add a simple null pointer check here to avoid the
crash.
Fixes: QTBUG-109710
Change-Id: Ia77ff7b4490f4b817ddddabfdc14750bd69118d0
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 58e0ca625808cb91424d1be05ce3725fb746818f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
The Windows UWP window capture backend failed to release its frame
buffer when stopping capture. This patch fixes this issue.
Change-Id: I0accfd1a6f350438bf51f0bd18f5ea64e5ba1557
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
(cherry picked from commit 302cf88fcb780ac0c366eea570cff84ee197a33c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It seems that auto-focus mode cannot be set to CONTINUOUS_PICTURE on
some devices. In such case, when trying to set AF_TRIGGER_START, Auto
Focus state will never change from INACTIVE[0]
If CONTROL_AF_MODE cannot be set to CONTINUOUS_PICTURE, just take a
photo without triggering auto-focus.
[0]https://developer.android.com/reference/android/hardware/camera2/CaptureResult#CONTROL_AE_STATE
Fixes: QTBUG-115842
Change-Id: I783e34c0971934904e7f19654cd5505ffc221f68
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 79cc5daf960a8ed293ec21da1744d5041af5230f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* use std::unique_ptr for finalization
* remove extra static cast
* remove unused headers
Change-Id: Ie924cc60e6b87ebc6a64be77eb4cb82884b69ef2
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
(cherry picked from commit b9fb4cb19b767f749439b46d3eb6f80212d719a2)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* We shouldn't accept any frames after calling Encoder::finalize.
The flag 'isRecording' was designed to handle it, the crash
happened because we didn't set it to false. Actually,
we don't need the flag, if we connect media frames handler directly.
* Let's use a common approach for connecting media with media frames
sources to handlers.
Direct connection is already used for videoframes; it's safe in this
case becasue we perform disconnection and waiting for frames on the
finalization.
Note, AutoConnection to this is a bit of pessimization in this case,
Audio and Video encoders are designed to accept frames directly.
Task-number: QTBUG-113247
Change-Id: I2869653b5f3000caf57d261e9bea6f866f358988
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
(cherry picked from commit 711abaff51aa972a53122d061d6576134ef0019b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* handle setting invalid frame size, that is possible with some
ffmpeg codecs (wav) on recording.
* fix the rare race condition of storing bufferSize between
twice loading of bufferSize on data writing.
Task-number: QTBUG-113247
Change-Id: I1cddbc47b2b7b5a45ca39f202543229f136547f2
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 29657e7db96fd7db1ff58fdbbed2dbc3644fc96b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
| |
Change-Id: Ie1b4559d637ddf4ee9a8d2ea5acc2062607f0c6e
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The type is exported as a value type using the normal approach with
QML_FOREIGN + QML_NAMED_ELEMENT. It does not contain any enums, so it
does not make sense to use QML_FOREIGN_NAMESPACE to export them.
This commit partly reverts 24c854fff9af00461b0920074b23d156e345a804.
Change-Id: Ie46f4ac134e04c30a115093e9319d1d101b0b411
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 440c69346614bddc26b029983b2a4550e280d41b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For some of the QtMultimedia types we need to export both the type as
a value type, and also its enums into a namespace.
With the pre-existing approach this results into duplicated entries
in the qmltypes file, which confuses Qt Design Studio.
Fix it by introducing a dummy derived class for each of such types, and
using this derived type to export the enums.
This patch fixes exports for the following classes:
* QAudioDevice
* QCameraDevice
* QMediaFormat
* QMediaMetaData
Fixes: QTBUG-115360
Fixes: QTBUG-115563
Fixes: QTBUG-115564
Fixes: QTBUG-115566
Change-Id: I9073ec8317e1ef4f5f2a613406c750f1d1cd6d4e
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 16ab1dd1d13b6644476e2bc33ac9cb2310903c32)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We declare 0xFF alpha channel in formats XRGB, BGRX, etc, but
on some linux systems it's 0xff in xImage.
The patch fixes the problem and suggests SIMD
optimizations for intel platforms that makes a difference
with 4K displays. With the optimizations, the overhead is not so
big comparing with memcpy.
We have a test that covers the case, it failed on some machines.
Change-Id: I78927ea58159ae67bbf993f30b8dec45f617edc1
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
(cherry picked from commit 3ac997f0b34a28af2e754fccdb8671d89ebe22d9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The error is:
The link interface of target "Qt6::QFFmpegMediaPlugin" contains:
VAAPI::VAAPI
but the target was not found.
Task-number: QTBUG-115763
Change-Id: Ie1cbacdc719d51d88fb08b251c0315487b1ce563
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 1c811b5918daa908f725cdae4933b0aca347eb42)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ffmpeg Encoder was leaving the encoded file open after finalization.
This left the file locked until process termination, and was causing
a memory leak.
The issue prevented deleting files recorded by the 'recorder' sample
application without first closing the application.
Fixes: QTBUG-115810
Change-Id: I4b0ed796c689482e9274e21bd5a1045a62642240
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 653d90270e576a52d296493038e3ed563075c36f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Change audio to media in MediaPlayer playbackRate property description, added a link
to the equivalent C++ property for more detail.
Fixes: QTBUG-115122
Change-Id: Ic45fe94c8dcf993cb8573140d0daa7031ef62066
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
(cherry picked from commit 7b198813d20548505701131d1745118b2ad78155)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
AndroidTextureThread should properly clean itself instead of expecting
the owner to do it. It is needed especialy when AndroidTextureThread
will be shared.
Change-Id: I55603e73da5b3621385c7ce72b51242763dd1b4c
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
(cherry picked from commit c59c642181a8bd265817793e0e44d87aaf6c01e5)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Let's filter possible end frame handling.
Change-Id: Ib46b131f85afe2fc27ab144d573e0b8bd5e4daf2
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit fb9b9a313d856a196ba3c5aae53299457f8dfe01)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
| |
Change-Id: I7c6119aca717795aa9f4170123517a20b2fdd67d
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
We print AVRational in several places, let's reuse the code.
Change-Id: Idbadae656af54337350bb7872d75f309592b010d
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
(cherry picked from commit a992f2dc2fbe71f114ca4b7d69689c745d754e0e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Current implementation reset active camera pointer after activeChanged
is emitted, but that's incorrect because during this process it's used
in QWindowsCamera::isActive to return current active state. The fix is
to reset the active camera before the signal is emitted.
Task-number: QTBUG-114174
Change-Id: Icc4b8da794d8a7a91bda5a9126ba226158e9ad8f
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 9bd10b941b035cacab2ef3ff7f7530517c5418fc)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For such codecs selected time base should match
1 / frame_rate, it was set just frame_rate in the previous impl.
Also, in the patch we set an adjusted frame rate to the codec context.
Change-Id: I33ced3fdd908dbc016b2638387939ad32bd6f030
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
(cherry picked from commit fa1fcce7dae95753f21586a47e6a37ab77d5c773)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2 objects were not deleted.
* resampler leaked anyway
* codec context might be deleted by ffmpeg,
the documentation recommends to delete it.
Since the variable was touched, it was renamed to proper name.
Change-Id: I94965e83b060b8db251b13c8c0d923cddf804741
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
(cherry picked from commit 9cda4c7a5906630d4a3306dae4cefd8331751685)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
| |
Change-Id: I3a97cf173d8cdd1014689040937ffdb5a28c3d26
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
(cherry picked from commit 213e32ff5d3c674413049684cbccc9b6e5fb3b4c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Dynamically allocated VideoFrameEncoder::Data is not need for this
case, let's simplify and move all members to the class.
Change-Id: I7bfa8f6a92ba0a449dd84843109b1344c86ad5bd
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
(cherry picked from commit 87adcdcf6ffa7d026b22917249fbbee1e5fd1dfd)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Processing events in such places causes unexpected behavior,
including postponed objects deleting.
As result, we got spurious crashes on CI.
The crutch with events processing was added many years ago by
unknown reason; the destructor is definitely a bad place for it.
Change-Id: I0f31598947e6eb098b58244c617ff5eb05186176
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 0ecfced06cc46a0dd16c9aae281a8ee3ad3ac87e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
The changes are in
codereview.qt-project.org/c/qt/qtmultimedia/+/493480
Change-Id: I86517cc874d05815a28a6af4e68bc200cfb667bf
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 972410607f9d788f32ec27ba5d9c6c1f893fc5cf)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
| |
We should notifiy users when we cannot start video encoder.
Change-Id: Ia8e5256de001c940830279e1c0ce230fa7b9d483
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit ee77de75d8129c45720fadfc37aabc07e914c50d)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some ffmpeg video encoders create packets where dts (decoding time)
overtakes pts (presentation time).
Muxer doesn't accept such packets.
Shifting dts down fixes the problem.
Change-Id: Ia27d15650a0d9a8c273229dc4516e18551264676
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit 49bf21047413fab156345b9f788d2332ba8c61dd)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The patch prevents possible memory leaks.
QQueue has been replaced with std::queue since it has compilation
issues with non-copiable objects.
Change-Id: I013c877076616d1386132a391b09c715880cdf6a
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
(cherry picked from commit 072cfbc82c9121a629f53e16de1cd791d8a291a8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
| |
Change-Id: Ic51036b4a4eac2990082bc5bad2cdcba1bf46de5
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
(cherry picked from commit a4eb6897e6cbbe43c561d19448317654a0f3d245)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* QTimer fwd declaration
* std::unique_ptr<QTimer> instead of raw ptr
* timeout slot instead of lambda
* add warning, for checking on CI
Change-Id: Ib5954c5f0d58341d82dccd76cbf2856303077987
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit f98e3a2acc3a31b67b7ca1ba4041ae276bfbe741)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
h264_mf get failed with odd resolution.
We should investigate and include more codecs to the fix.
Change-Id: I39482955f2e31f2d16d4add1a66f5e5d8c4afb46
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
(cherry picked from commit 32b1136869803e0404a5312a083d767c88831ef8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
We should wait for finishing all jobs before codecs reset.
Optimized solution might be implemented in the future.
Change-Id: I16024b052facd1959c47769bb3deb87af091e83d
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
(cherry picked from commit 9fce0c9744285f0e086d7434cfcd477071690e15)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
We should consider user-specific value,
not only the frame rate of the source.
Change-Id: I0424d7ac2c803c1cf92cf5b028c89197b86d59b3
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
(cherry picked from commit 998a3874b37840320ca5b1e7451218415fa0e847)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|