| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: I6df92f98db7c18dcecdc831d46748d8111dffacb
|
| |
| |
| |
| |
| | |
Change-Id: Ie0e6599234c38c5e5a75b681a911f3728871861e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| |
| |
| |
| |
| |
| | |
Fixes: QTBUG-83240
Change-Id: Iaa01ee4553f4c0c4d9a1ad829e65b40f13d3847d
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
It's going away in Qt 6.0.
Task-number: QTBUG-83692
Change-Id: I9709abb1c3734e10a7defffd1607e1160da1e75c
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
|
|\ \ |
|
| |\ \
| | |/
| | |
| | | |
Change-Id: I160b25219c806d9d3a30644fa1a5e589c5aca039
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
|\ \
| |/
| |
| | |
Change-Id: I9687c59d15cd816969f362d72b19f279a1a2d04e
|
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
|\ \
| |/
| |
| | |
Change-Id: Icb722ebe5b9b02791cf3593f2347e398deb837fe
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Receives a pointer to the IMFMediaTypeHandler interface.
The caller must release the interface.
Fixes: QTBUG-80037
Change-Id: I69682028a5deea256a79d5d067afe2e60e49c8c5
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
|\ \
| |/
| |
| | |
Change-Id: I3a719b4e4ba75da1784fb2bc5d6c014b1e6c54ac
|
| |
| |
| |
| |
| |
| |
| |
| | |
Since we are mapping from MEDIASUBTYPE_RGB24 to QVideoFormat::BGR24 then
we should make sure this returns the correct value from bytesPerLine.
Change-Id: I8cc31d29a03bf2c1d7682de32448db0db9656cc7
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Update it to use the new errorOccurred
Task-number: QTBUG-82605
Change-Id: Ia7f4f51917ac4694e54e47318cb477aa05c2929e
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
AVFCameraWindowControl is a renderer backend,
when QCamera viewfinder output set to QVideoWidget on macOS or iOS.
As it uses native API and lets the OS handle rendering pipeline,
it is an efficient alternative to default renderer backend.
Task-number: QTBUG-68779
Change-Id: I4d27022655a7d9f4ad7cf99c84b570a0c48cf10a
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
|\ \
| |/
| |
| | |
Change-Id: Ia1bc95c071d29653a85e753964d15826ce3706f8
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently requested IMediaSample might contain the end time that exceeds the
available bytes which causes returning an error in WaitForNext() and
stopping the playback.
Regarding to IAsyncReader::Request documentation:
The start and stop positions should match the alignment that was decided when the pins connected.
The stop position might exceed the real duration.
If so, the method rounds the stop position down to the actual alignment.
Fixes: QTBUG-77782
Change-Id: I644e25bfc6bb8f6d345b8424b79fb56490d82c0e
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
(cherry picked from commit 9e96fe2cbf79a44039de0edcc854050d84b87588)
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the sample is ready, the volume is applied to it and written back to
pulse's buffer.
When the volume is changed again, need to discard buffer with outdated volume,
and rewrite.
Change-Id: I51a6ab3ee1a5c799643a43c5628439c2d659f9fc
Fixes: QTBUG-79687
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Deprecation Notice] Camera::error() signal is deprecated in favor of errorOccurred().
Change-Id: Id80a3c72eec0529ef2f1e293e0afb503202a6d38
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
|\ \ |
|
| |\ \
| | |/
| | |
| | | |
Change-Id: I4ea49723c74c6dccf141b65f834b5d539d2ab9d7
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-82300
Change-Id: Ibbd960ef69b59e535af30ac10a238ddcf7634b66
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes two bugs:
- Once IdleState is entered (due to underflow), one would have to bring
the state to ActiveState manually before the backend would start
sending new data to ALSA. This behavior is unlike that of
QPulseAudioOutput, for example, which will automatically transition out
of IdleState once there is data present in the source device.
- Whilst in IdleState the audio output would would mark bytes as being
consumed from the source device, even though they were not actually
being sent to ALSA.
Change-Id: If5b4835df0f58b7b15f1800d3a0a1041f1ab845a
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Added docs for using QAbstractVideoSurface
and example how to use QVideoWidget.
Change-Id: I27a105a3859086e6fa5d8a19672ef791ce9e5cca
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Currently viewfinder resolution is overridden by image resolution.
Fixed to keep it separate.
Note, it might be not fully supported by gst camera implementation.
Change-Id: Ia04c7819da1410f41aee458d347408f94053170b
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QAbstractVideoSurface is waiting for the video frames in supported
pixel formats. See QAbstractVideoSurface::supportedPixelFormats().
If the surface does not support device's pixel format,
don't show the camera's viewfinder and don't return video frames
in unsupported formats.
Task-number: QTBUG-82264
Change-Id: I084674f4b093a751bc4f4941047b979766880963
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When AVPlayerLayer as a backend for AVFVideoWindowControl being resized,
macOS adds animation that interferes with Qt resize routines.
Disabling animation fixes visual flicks.
Task-number: QTBUG-82542
Change-Id: I20a5699431369bcc2da8719b8c4a0151273f9973
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
|/ /
| |
| |
| |
| |
| | |
Fixes: QTBUG-82299
Change-Id: I3516bb8bacd0df497ba4c76acd4e71d7b82ec9db
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Deprecation Notice] QCamera::error() (the signal) is deprecated; superseded by errorOccurred()
Change-Id: Ie3214689db7f46cf36ac696339ac42beb5b921d4
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: If033ba6dbd0653a3a7c3ad882047a8e71f1b24e8
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Bearer Management is going away
[ChangeLog][Deprecation Notice] Functions taking or returning
QNetworkConfiguration have been deprecated.
Change-Id: Iff2e6c5386e5c6ba9da81067ac643bd1eb0d7500
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The Qt version was added in 5.14 "for use as eventual replacement for
QString::SplitBehavior." Move another step closer to that goal.
Change-Id: I72aa0ccae06030043ba40f0f908826e5ca4a31ab
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-82253
Change-Id: I31080d4fcfeb3c955a503164327eb9b548381f70
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
|\ \
| |/
| |
| | |
Change-Id: I04934575bd661b80b1f012a7e825dcd753d26908
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Receives a pointer to the IMFMediaTypeHandler interface.
The caller must release the interface.
Fixes: QTBUG-80037
Change-Id: Id0222c9f8ee0f88db8cd53c9492dce053d0bfb35
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: Id0a2d380eae9adce441c9eb82367435894e7a7d8
Fixes: QTBUG-82370
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
AVPlayerLayer's bounds can be changed while resizing, and should not be
overridden by default/native size.
Fixes: QTBUG-65536
Change-Id: I771b13e58606663ded80df3665454007d28836b7
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
1. If a resolution of the viewfinder is requested to be changed,
it is not needed to check available formats for highResolutionStillImageDimensions
(since it is viewfinder resolution and not still images).
format.highResolutionStillImageDimensions returns the highest resolution still image
that can be produced by the format.
Using this format will cause wrong resolution in the viewfinder.
2. Seems iOS requires to call beginConfiguration/commitConfiguration to apply any changes.
commitConfiguration is currently called when the camera gets active.
In case if settings are changed after starting the camera, they will not be applied.
To fix that, added beginConfiguration/commitConfiguration.
Fixes: QTBUG-79935
Change-Id: I60b6e08887a82e4337a2a302b8e5513c65b26e61
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The assignment 'QT += multimedia-private' exports multimedia-private's
pulse audio dependencies. Fix this by using 'multimedia' as public
dependency and 'multimedia-private' as private dependency.
Fixes: QTBUG-62626
Change-Id: I156b705706567d9cde1dd0f44c75acb36938384d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
AVAssetResourceLoaderDelegate allows to load custom resources.
Implemented resourceLoader:shouldWaitForLoadingOfRequestedResource to read data
from QIODevice.
The device should be seekable, and already should have all data available.
Since there is a need to know total size of the stream.
So the media player will wait for QIODevice::readyRead before loading the resource.
Also it requires to have url together with the stream:
QMediaPlayer->setMedia(QUrl("does_not_matter.mp3"), buffer);
Since the backend uses extension to determine type of the stream.
Fixes: QTBUG-69101
Change-Id: I8ab0b69f668ccd67c42a8e5d5c1ad518d3306cce
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QOpenGL API should be used instead.
Task-number: QTBUG-74409
Fixes: QTBUG-81902
Change-Id: I80d09cba79248451cf211eabd87651301ae18b63
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
|
|\ \
| |/
| |
| | |
Change-Id: Ia0c325dc50b9a5a1cdd205609ba688ad9874f297
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since android.media.MediaPlayer does not support playing from data stream,
we create a temporary file and copy data to it.
Each such file contains unique name.
When the app is killed, dtor of QMediaPlayer is not called and thus
the temporary file is not deleted.
Also these files are located inside app's location, e.g.
/data/data/org.qtproject.example.app/files/, and no possibility to delete
them automatically.
Added a fix to rename the temporary file to original name which allows to keep
only one copy of the file when the app is killed.
Change-Id: I36c8bc4dd339fbf4091689a05f4d9c7febf046a5
Fixes: QTBUG-59517
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When AVFoundation reports that the media is now buffered, we only
should resume the playback if the QMediaPlayer is in the according
state.
Fixes: QTBUG-81912
Change-Id: Idba30ecf6c9c7b87a1c67896d89faa9a1bceae10
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
AVPlayerItem::seekToTime::CMTime is deprecated since 10.13
Also fixed to use accurate seeking by passing a time value of
kCMTimeZero for both toleranceBefore and toleranceAfter.
Fixes: QTBUG-81804
Change-Id: Ifafeb1fb5ca66ecba14d77abf315ebe6ffd45eab
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Will be moved to private API.
[ChangeLog] QMediaService and QMediaControl classes are now deprecated.
Task-number: QTBUG-75943
Change-Id: Ic40013ea52301cad812886e22940efa3b096f875
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Fixed to use negative playback rate.
Change-Id: I864e76710f2ea176262639d5e91059c71b9bb382
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|