| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Task-number: QTBUG-76491
Change-Id: I7a22d6612848e25bb780d205c6cdbb314cd4762d
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|\
| |
| |
| | |
Change-Id: I82d63ba32a0c9f8b883d00ef1bd68df3a10da96c
|
| |\
| | |
| | |
| | | |
Change-Id: I03225f5e980a69246b046351f7d7d8e84f102ca0
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Currently it is not able to start camera without viewfinder.
For this purpose there is QAndroidCameraDataVideoOutput with SurfaceView
in order to be able to start the camera preview.
Implemented dummy QAbstractVideoSurface to render to it when no video
output is provided before starting the preview.
Task-number: QTBUG-73582
Fixes: QTBUG-73237
Change-Id: Ic76d247b5d5352e8539ba61271484e56d3a40fbd
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The application should only have one Camera object active
at a time for a particular hardware camera.
Since there is no way to determine that the camera has been already opened by
the same application, added a fix to prevent opening the camera if it
was already opened and not released.
Task-number: QTBUG-73582
Change-Id: Ide9ddea0c32489d86a613846ecf2e91ef94a776c
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since QMediaContent can contain only one content
and media resources are already deprecated,
canonicalUrl and canonicalRequest are a bit confusing and outdated.
Deprecated and replaced by QMediaContent::request() which already contains the url.
Change-Id: I418006e112f49466b0129bf1e6e1ae629c714538
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Iedfcb12f51d26843d062d443d11eef5959d1c4bd
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently if the application is inactive,
the state is postponed to be set and processed when the app becomes active.
This also postpones stateChanged() signal and saving the state value,
while it should be set (but not processed) immediately as done in another backends.
Added a fix to store the state and emit stateChanged regardless of
activity of the application.
When the application becames available, the state will be processed.
In case of an error while opening the camera:
- UnloadedState is emitted
- CameraError
- UnloadedStatus
Change-Id: Ie376d29366168a6b15eccea884f385070f94fe35
Task-number: QTBUG-73582
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
tests/auto/integration/qdeclarativevideooutput/tst_qdeclarativevideooutput.cpp
Done-with: Val Doroshchuk <valentyn.doroshchuk@qt.io>
Change-Id: I745dd948c1e98180115f85c17bef802351bbdb6b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the camera is ready for capture -> QMediaRecorder::LoadedStatus.
If CaptureVideo is changed to CaptureStillImage -> StoppedState and
UnloadedStatus.
If camera's status is StoppingStatus -> StoppedState and UnloadedStatus.
If camera's status is LoadingStatus -> LoadingStatus.
If recording is requested -> RecordingState and RecordingStatus.
If recording is audio-only -> immediately LoadedStatus, before start and
after stop.
Fixes tst_QCameraBackend::testVideoRecording
Task-number: QTBUG-73582
Change-Id: I976c4e3afab529e0949571c4002e9ceba74cac97
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes tst_QCameraBackend::testCaptureMode.
Change-Id: I2f6486102ebcbf7e1ab0feea8c13658772d5b90f
Fixes: QTBUG-73582
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Added using the headers from QNetworkRequest to be sent together with the request
for the data in MediaPlayer::setDataSource.
The MediaPlayer requires also a Context object, together with headers,
to resolve the Uri. It will try to find a content provider.
Since no content providers are implemented, this produces a warning:
"MediaPlayer: Couldn't open file on client side; trying server side: java.io.FileNotFoundException: No content provider"
Task-number: QTBUG-74073
Change-Id: I1566953b523e84400882ba9d3a968cec6b4a61cf
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Introduced custom and standard audio role controls using MediaPlayer.setAudioAttributes(AudioAttributes)
which added in API level 21.
Custom audio roles might contain a list of roles separated by comma.
E.g "CONTENT_TYPE_MOVIE,USAGE_ALARM", which means content type is movie
and usage is alarm.
[ChangeLog][Platform Specific Changes][Android] Implemented audio roles.
Task-number: QTBUG-73119
Change-Id: I281d1ce899d29f54d271516a1fca5f11c897fc90
Reviewed-by: Christian Strømme <christian.stromme@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ia13d887c3e3bf00b6ded5d052384fc5689b816fe
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
DeferredDelete events have implicitly higher priority,
which makes this event to be handled before MetaCall events.
See QSGSoftwareRenderThread::sync():
...
QCoreApplication::sendPostedEvents(nullptr, QEvent::DeferredDelete);
Where it processes deferred deletes and no meta calls will be delivered
even if they were requested before the deferred delete.
Task-number: QTBUG-67280
Change-Id: Iba23550d2cffb1cea1b4c2fe4c903078d9f2f046
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Id4521553c437efa66ad52b2e419b446184a0ec11
|
| |\
| | |
| | |
| | | |
Change-Id: Ic398983a0a680738487476150e28593665db3fb2
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The setDataSource(Context, Uri) is used for passing a Uri that refers
to data in a content provider. Whereas the path passed here is going to
be http/rtsp instead. This fixes the warning that comes up about it not
being able to open the path provided.
Task-number: QTBUG-50539
Change-Id: I79882fb6d6a5683b6b95f8f9d4e2af86ea916831
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
|
|\| |
| | |
| | |
| | | |
Change-Id: I600b0532f154dc885913f14a5d24261c0de93893
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Only possible on Android API level 23 or higher.
Task-number: QTBUG-61115
Change-Id: I147575ed0a48f84d4208978a67e0856918e65b3d
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change state to PlayingState only when media content has been provided.
Task-number: QTBUG-70653
Task-number: QTBUG-68998
Change-Id: Iad8fc2c964ff22e90de6eb9b84c82a0950d0b1ac
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
| |
When mapping video frame, data will be downloaded to QImage from frame buffer
with QImage::Format_RGBX8888 which is XBGR32 in Little Endian.
Thus added new pixel format QVideoFrame::Format_ABGR32.
Changed QVideoFrame::Format_BGR32 to QVideoFrame::Format_ABGR32.
Task-number: QTBUG-69968
Change-Id: I0f58d1a5b5cbdb5ab48ee5ad4d75f9b62f516333
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
If play() is called before any media is set, don't change the current state
to PlayingState.
This was inconsistent with the other backends, and required an unneeded
call to stop() when a media later got set.
Task-number: QTBUG-68998
Change-Id: I8281c7bf83e36e9a80f2136ca9fc2430c55e8bd6
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|
|
|
|
| |
Change-Id: I74ffd5bafaef9ebbe7f12600ad831c8deb58ae64
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: I5acdc7e0bd3729b80522dfff0f388cf2507fb111
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The change causes the video output to be shown upside down.
This reverts commit 2ec485482d185f92e4de33f634bc3ef9dd6c9188.
Task-number: QTBUG-64764
Change-Id: I9d3e63d2c0cce17d945b62ffead38ab5f58ace7f
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Icaf645e271b21320c4cb6269178d9e722092a263
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since the native notify* methods for QtCameraListener.java are executed
on different thread, there is a potential for a race condition when the
applicationStateChanged is received before the notify* signals,
which leads to the camera being release before the slots are executed.
Task-number: QTBUG-52366
Change-Id: Ifc82f3a75a7e88e4e76fac3edbf16bb9f138fde7
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ib509a8c90dd6c7229510a400612cc27a4957d015
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The default value for QVideoSurfaceFormat is TopToBottom, so we need
to change it.
Task-number: QTBUG-51213
Change-Id: I47826a60fbae57f3d30d358a9ab8f05b784aeebd
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I3b7601b4a97f8a2b1d2da6ef134f1577846ba713
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I17b3650a3df5688274151c1f2c4629e4a5062028
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the pre-dexed JAR files activated by the absence of the
bundled_jar_file CONFIG option, as versions of Android >= 5 no longer
support this deployment mechanism.
Now, the "bundled" JARs simply become normal JARs containing class
files, and are neither activated by a bundled_jar_file CONFIG entry nor
do they have a -bundled suffix in the file's base name.
Task-number: QTBUG-62995
Change-Id: Ib53cbfe1009aa7e37de109dc317a58968854bf59
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
Make sure that the frame being processed is still valid, that is, the
size is valid and correct, and that the frame buffer is accessible.
Task-number: QTBUG-60115
Change-Id: Ic64b6f7d45d92b7923d97d6ecdc630da31abee17
Reviewed-by: Michael Dippold <mike@dippold.com>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The camera should ask for permission before being used. Normally this
should be handle by the user, which can provide proper reasons for why
the camera is used. To verify that we are allowed to open the camera,
and as a good default, we'll check the permission and request access
if needed.
[ChangeLog][Android] Added run-time permission checks for accessing
the camera.
Task-number: QTBUG-55992
Change-Id: Ifb4e176728aab3076fdba292e17e17d33b1260a2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before API level 24 the display orientation (the preview) was always
set to 0. On newer versions of Android the clockwise rotation is set
to be either 0 or 180, depending on the hardware. Since we don't
want Android to apply transformation on our surface, we'll just
enforce that the display orientation is always set to 0.
Task-number: QTBUG-56536
Change-Id: Ie1aacda97540d5c97e6cbd8edb2afc53e7041e1e
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Check and request permission to record audio if needed.
[ChangeLog][Android] Added run-time permission checks for
media-recording.
Task-number: QTBUG-55992
Change-Id: I781e5a5447f1ad03c069b2171637525ae9108d78
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
|
|
|
|
|
|
|
|
| |
This will be used to check and request permissions at run-time.
Task-number: QTBUG-55992
Change-Id: I344859aeb05fecf09ac46064e9452787d615a8a1
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
|
|
|
|
|
|
|
| |
Adds logging category for the android plugin.
Change-Id: I0b0868fa7da4ce5426b3682ab40c4317afb79cd0
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/plugins/qnx/qnx.pro
sync.profile
Change-Id: I353a44578276264a9ffb80820d8c5a0babfa1638
|
| |\
| | |
| | |
| | | |
Change-Id: I6690c4161c57734ad03ee3e03311a3e62f181e89
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This way it can be used in a service
Task-number: QTBUG-54506
Change-Id: I2d75b69dfbf7b345322f7625baf544af2af200c5
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
qtmultimedia.pro
src/multimedia/playback/qmediaplayer.cpp
src/plugins/directshow/directshow.pro
tests/auto/integration/qmediaplayerbackend/BLACKLIST
Change-Id: I6dacdcbb223c1d12dd72eb308a67170983c709b3
|
| |\ \
| | |/
| |/|
| | | |
Change-Id: Ib038c5e3ebb48c0e46569a35d530fa5ceaf06a32
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I00b8444e00cbf3dc0d4a7c2ff8b83e217a8966f5
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This makes sure all mediaStatus changes are emitted, even when some
action is done on the media player as a result of a state change.
Task-number: QTBUG-49578
Change-Id: I89594da2c2efc71103a7aa64f598eea4097425f6
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
|
|\| |
| | |
| | |
| | | |
Change-Id: Ib8d05d6e21c7beb19f618cd1edc52d248b1e43b8
|
| |\|
| | |
| | |
| | | |
Change-Id: I3204cdf695f4b47730a88a7c41fc7a6de967b161
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Simplify the ownership of the OpenGL resources and make it simpler
to release individual resources as needed. Previously we would
reset the texture handle without releasing it back to the system, making
us leak texture each time the video output was reset.
Also, be consistent with the type used for the texture handle.
Task-number: QTBUG-54340
Change-Id: Ic3b3c7322677a909e51aa5983fa99ccf8b290302
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
On some devices and on the emulator, the preview callback must be
cleared before taking a picture to avoid a camera server freeze.
Task-number: QTBUG-54709
Change-Id: I9e4ad417fa08cddea7edfd232f5b5df40ada59ee
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|