| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
We expect some basic capturing support to be there on all
our platforms.
Change-Id: I913f98562fdd47cf887c98edbefba6976ff211ba
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
| |
Change-Id: I23e0820dbf5a46a00c52f67ac58866741b79d07d
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
| |
Change-Id: Ia2aac9b59458c99aaf3ee34a480e52f9f425576b
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
| |
microseconds is a lot clearer than duration.
Change-Id: I9e3aa5b60cac8c16cb7466ed68bd98d4e6f1bc9f
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adjust API after code review.
Remove the audioFormat property. QAudioDecoder will now
always decode to the native format used in the encoded file.
QAudioBuffer will have the correct format set, and it's up to
the app to handle this correctly.
Remove state() and replace by isDecoding().
Change-Id: I6f2ac375d98b2d7c36aebaa729599f78699b1c7b
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove the configure.json and configure.pri files that
were used for the qmake-based configure.
Remove the .prev_*.cmake files that were a by-product of
configurejson2cmake.py.
Pick-to: 6.2
Task-number: QTBUG-89536
Change-Id: Ic49fc29fa36c98d15385d8c94542d5cdc5598520
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
| |
You need to swap all members.
Fixes: QTBUG-94565
Pick-to: 6.2
Change-Id: I0decfb3ea033bc358c39618a36d77ca9e0972e84
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
| |
Fixup the backend class and file names while we're
at it.
Change-Id: Ib0928dfebb6f127b7a43683b2907420c95af6599
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
| |
The enum is not really useful. Instead isActive() and error()
provide all the information required.
Change-Id: I2856c833745e79f74bb2a9d95f0ef65eafd24413
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
| |
a QFileDialog return file path as content://com.android.providers.media.documents
Change-Id: I0ceba5d8cd592c4e7323fdb10aec90d653290932
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
|
|
|
|
|
|
|
| |
Follow the existing pattern for jar files in Qt 6.
Change-Id: I0db5435e71743615ff6f4f7f850d0a57504346b6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
outputLocation is always set regardless of whether is it valid or not,
unless platform does not support encoding. If the output location
is not writable an errorOccured signal is emitted.
QNX and Android stored outputLocation in the capture session object.
This has been removed and instead a recording(QUrl location) call
is used to provide location information for the recording session.
Reset m_mediaRecorder after deleting in QAndroidCaptureSession::start
Change-Id: Ib1048410945aaf36532eb8606a4f9eb47460daf7
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
| |
Resets the active camera in the media device session when a
null camera is set in the capture session.
Change-Id: Id843ac556e98dab880720be13beed1bb9c621e0c
Reviewed-by: Piotr Srebrny <piotr.srebrny@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: I41957e8f8ba2d8ab59e206e14db349d6fbf13a6c
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removing isSupported condition as it is true when audio only format is
selected while flags indicate that video codec is required. The same
occurs when going from audio/video format to audio format.
Reset format if it does not support video while required.
Change-Id: I2c056d935351cfc7a471a7376fa51da320cdb353
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Remove the autoPlay property, and split up the setSource()
method into setSource(QUrl) and setSourceDevice(QIODevice)
for more clarity.
Change-Id: I3e973fb5b6aa50f192af898f1b07769a201c6845
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
That's really what it is, and how all other frameworks
name it. Shutter speed is a name that really only works
for old analog cameras.
Change-Id: I52fc5619dd9a853cabd3abef2ddec2e2b8cba119
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
| |
And take the opportunity to clean up variable naming as well.
Change-Id: I510cc8295b8d35554534a3c2ac9d83bf6f5a9d65
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
|
| |
Without it, the QML SoundEffect can't target a non default
device.
Change-Id: I114a1e712cdc4ff1bfdc4b131db97cbe4d6eb90f
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
| |
To be consistent across Qt Multimedia
Change-Id: Id0cea5bc1c844e43448107d1cf2a2b22ad297109
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
| |
This was only ever implemented to some extent for Android.
Remove for now, as it's not really an important feature and
can't be implemented properly on many of our platforms.
Change-Id: Idc4d21c857380088ca6d10d59a0e05d192899534
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
| |
Change-Id: Idad1154f0b4ae5d0737d04ed02a890952ed70b10
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
As per API review, fold this class into QMediaRecorder as that's
the only place where it is being used. This removes one level
of indirection from the API and also makes it possible to use
from QML.
Change-Id: Id9157df04512382cce28e89b082433ec67d36b28
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
| |
As per API review, this is the better name. Since we removed
the old QMediaRecorder class, the name is free as well.
Change-Id: I1ec9af3876af8b6957e20c13f9e225bf1e5032d5
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The class was only needed because of QMediaRecorder. Now
that that class is gone, we can move the enums into QMediaEncoder.
Also rename the State enum to RecorderState as per API review.
Change-Id: I2e0811e2c29f922265ac5a719226b647236e52b9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
| |
The class provides only minimal convenience over using
QMediaCaptureSession directly.
Change-Id: I706bb6821fbf8a7cc79a86819001ee1fd669733e
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Move the API for setting file format, quality and resolution
into QCameraImageCapture and get rid of the separate
QImageEncoderSettings class.
This simplifies our API and makes the QML integration easier.
Change-Id: Iaac2a6e3ff50c7379c44d70001db7c52d8cb0c90
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
| |
QAudioDevice is the only class using that enum, so it makes
more sense for the enum to live there.
Change-Id: I11e6768d1114d63e68d1956f7d6e62786524c291
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
| |
Change-Id: I43fa28f43f6717ea408d677b021db7a90ec1df1d
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
|
|
|
|
|
|
|
| |
a QFileDialog return file path as content://com.android.providers.media.documents
Change-Id: I2c10548b5314aba38f3affdb68e7fa0c1f5bb78c
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adjust QMediaPlayer to the new audio output architecture.
One now needs to explicitly add a QAudioOutput to the
media player to get audio playback. While this requires
two more lines of code to set up the media player, it does
make the API consistent between audio and video and also
consistent with what we have in QMediaCaptureSession.
Adjusted auto tests where required and ported all platforms.
Change-Id: I247e915e4862dee6d6bce367b83664b1d1d69726
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make it possible to select an audio output in the capture
session. This gives an audio monitor channel to monitor the
recording.
Currently only implemented on gstreamer.
Change-Id: I1da3d80c71253364c99ee49c770f8665527d01a0
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Convert the audioInput property to use a pointer to a QAudioInput
in line with the API changes planned. Not setting up a QAudioInput
implies that you do not get any audio.
Move the volume and muted properties over to QAudioInput, they should
really not be part of the QMediaCaptureSession.
Adjust the platform API accordingly and adjust implementations.
The Android adaptation is incomplete, but that was the case before as
well. This needs some refactoring to properly support setting devices
and adjusting volume/muted.
Dynamically adjusting to changes of the audio input device is not
yet implemented on Windows.
Change-Id: I2fb63b9e57908d6dc02130b8d534ef7ac1a1ac85
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Add those classes representing physical inputs/outputs to
be used together with QMediaPlayer and QMediaCaptureSession.
Introduce corresponding backend classes so that the class
can directly control what's happening on the backend side.
Change-Id: I9b25b2fb30791ef1a38211796917eb63d840db08
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
| |
MSVC doesn't like */* sequences :)
Change-Id: I4bebcea733f803b4cf21de184295836bc3651902
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
| |
Change-Id: I1e7097435ed4e7c5a69766db8a67aae99a7c57df
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
| |
Remove last usage of QtAndroidPrivate.
Change-Id: I9a30f92d84f51b0cb1d1d0298bf523be91d3e8e4
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: I6570ea084ccfa2034a2d6c98d0876e8c3e227148
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: I86d37b25783c844af92a6ef260547cb26848b1fb
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Also renaming QWindowsCameraSession to QWindowsMediaDeviceSession
and QWindowsCameraReader to QWindowsMediaDeviceReader, since the
device now may be an audio-only device as well.
Change-Id: I2e7b80b9400086749d3fdb8996e0f4bf642ea94d
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
|
| |
The argument has not been used since quite a while.
Change-Id: If62ee3ad7f93b49d1a8c19fd8fbd084f67c43033
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
| |
Those classes represent the physical device and it's properties, thus
that name fits best.
Change-Id: I0f45fc875ae6110452c1f2fb17f32adbe5155d01
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Don't hold a pointer to the QPlatformMediaDevice instance, as
the instance could get deleted when the QPlatformMediaIntegration
gets deleted.
Change-Id: Ieb3ba88a6efee55d6816eeea16e4f62edfcf0eac
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-91621
Change-Id: I0a096697f692378f8be7b942d06ee231c399319d
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The availableDevice function uses device enumerator to
find default device and devices friendly names. Removing
redundant CoInitialize/CoUninitialize as this is done
in constructor and destructor. Fixing a memleak in
OnDeviceAdded method.
Change-Id: I2ee8d52dd2d66e2df81f44fa99519a0c85bf49b0
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
|
|
|
|
|
|
| |
Change-Id: I95a27d372aae809b1201dbaa0dcd55e9262f1a12
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
| |
Change-Id: If852737b85d3ca95d55a852a3c50f80a5a09c61e
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The renaming is a part of some changes coming from an
API review that tries to solve the problem of not having
API symmetry between QCameraInfo/QCamera and QAudioDeviceInfo
where QAudioDevice is missing (so you can't select a nullptr
as the input/output device to disable it).
One issue is that QAudioInput/QAudioOutput are there for reading
and writing low level PCM data from an audio device. They as such
are not quite suitable as classes to use together with QMediaPlayer
or QMediaCaptureSession, as they allow direct writing of data
bypassing the player or capture pipeline.
To solve this, we renamve those classes to QAudioSource/Sink
(making it a bit more symmetric with QVideoSink). That opens up
our API space for a QAudioDevice class avoiding names that feel
like they are doing the same thing.
The patch also renames things on the backend side to keep
API and implementation consistent.
Change-Id: I9f6b4892d3eee4e252cb3782e681b0c3824f27e2
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
| |
Allows the resolution/frame rate to be selected and uses by default
a configuration with high resolution and high frame rates, instead
of using the default configuration, which may be of low quality.
Change-Id: I21aec48b438d99ea9b38b6257be2f16480523c71
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Inheriting from value classes is not a good principle for our APIs,
and it doesn't work for the QML side neither.
Instead, simply give QMediaEncoderSettings a QMediaFormat member.
Change-Id: Ib2cd8b04c09e89f8f57a91898ce987c199d66c75
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|