summaryrefslogtreecommitdiffstats
path: root/src/imports
Commit message (Collapse)AuthorAgeFilesLines
* And finally kill QMediaServiceLars Knoll2021-02-173-2/+1
| | | | | | | | | This removes the past piece of the old service architecture from Qt Multimedia. Change-Id: I607f82a546b2a2e29024b987fed3ba6e3645ae48 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of QMediaService for the capture interfaceLars Knoll2021-02-176-10/+20
| | | | | | Change-Id: I69a3d379bd2f1adbc4d583fd8eadcd3eb624a3af Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Kill QMediaSource and QMediaSinkLars Knoll2021-02-172-21/+1
| | | | | | | | Those aren't used anymore, get rid of them. Change-Id: I5a17f18a3c87c2c13a9009b1f99ef9e708f7636a Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove QMediaSource inheritance from QCameraLars Knoll2021-02-173-27/+8
| | | | | | | | | With this, QMediaSource and QMediaSink are now obsolete and unused. Change-Id: I5356739fc58e2c79d741a19229c6bbd205ba0a73 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove the QMediaSource inheritance from QMediaPlayerLars Knoll2021-02-173-120/+109
| | | | | | Change-Id: I564aecdbb11df268b40fba6f53c6e2624b056a13 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix QML VideoOutput elementLars Knoll2021-02-171-0/+1
| | | | | | | | | | Requires a bit of plumming to get this to work. This is currently not ideal, and will require some further work. Change-Id: I5126e8ac0ba1db383d4694c3ab80b67a395a5464 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of QCamera::CaptureModeLars Knoll2021-02-172-43/+2
| | | | | | | | | | | Whether we capture still images or Video should only depend on the outputs we have attached to the camera (QMediaRecoder and QCameraImageCapture). There's no need for a separate enum here. Change-Id: I852f5c752abd1184680ca868cb90e995d6d68b27 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Rework the metadata handlingLars Knoll2021-02-128-372/+351
| | | | | | | | | | | Get rid of metadata reader and writer controls. Instead use a simple cross platform value class to store meta data. The backend can then convert to and from whatever the native API expects. Change-Id: I7cf84bfbe8eef2a88615a52ba5afeec50a0652c8 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove camera locking APILars Knoll2021-02-123-153/+0
| | | | | | | | | | | | | QCamera::lock()/unlock() is something that's not needed these days anymore. cameras will automatically focus anyway, there's no real reason to lock the focus (or other properties) to some specific value in 99% of the cases. Plus it wasn't supported on Linux or macOS/iOS anyway. Change-Id: I437d29cbb768da3ece42eea8d753eeafa0c534ae Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove unused filesLars Knoll2021-02-121-0/+1
| | | | | | Change-Id: I127875f36c5e08dfe23071ac111247c566e405ac Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Don't use QMediaService anymore to get the camera controlsLars Knoll2021-02-091-1/+0
| | | | | | | | Instead retrieve them from the camera control. Change-Id: Ic996a672f102f7dc3fc5e3b73f977d3864e9a129 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Get rid of QCameraImageCapture::DriveModeLars Knoll2021-02-091-0/+1
| | | | | | | | | Nothing but single image capture was ever implemented, so the whole API was unused. Change-Id: I429040d3e2d74bddd6b76649ca6680acc9db126e Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Clean up zooming APILars Knoll2021-02-092-69/+24
| | | | | | | | | | | There is very little point these days in having properties for both optical and digital zoom. Most mobile cameras don't have a real optical zoom, but instead combine different cameras with different focal lengths. Change-Id: Icac48d949e767d7f3105c4d330e15273fe715fbe Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Use the new QMediaEncoderSettings in QMediaRecorderLars Knoll2021-02-092-75/+75
| | | | | | | | | | | | | Switch the backends for Android (compiles but untested), AFFoundation and GStreamer over to use the new QMediaEncoderSettings. Get rid of the old *EncoderControl classes and associated infrastructure. Change-Id: Ic75ff43eab55aeb0ab53d7248f7f5ff70b14c05f Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* New API for handling media formats and codecsLars Knoll2021-02-091-1/+0
| | | | | | | | | | | | | | | | Implement a new API for handling media formats and codecs. The API gives better control to discover supported file formats and codecs for encoding and decoding. QMediaRecorder will be moved over to use the new API in a subsequent commit. Android only has stubs implemented currently, as I can't test anything beyond simple compilation. Change-Id: Iff5f044f87c97f83d9151b10d7a78709822e077a Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of QCameraViewFinderSettingsLars Knoll2021-01-297-295/+37
| | | | | | | | | | The outputs should control the camera settings that are required. Before one could define resolutions and framerates in several places, not it's the requested outputs that define it. Change-Id: Iab76abac84480e6200b9fc5b058fc2a02b0a8ce0 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Cleanup resolution and frameRate handlingLars Knoll2021-01-291-2/+7
| | | | | | | | | | | The Camera determines the available resolutions and framerates. There's no point routing requests around that through the backend again, if we can get it from QCameraInfo in the first place. Change-Id: Ie00285811202bf93799155736de149c37561fd31 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove QAudioProbe and QVideoProbeLars Knoll2021-01-291-0/+1
| | | | | | | | | | | | | | They worked very inconsistently between platforms (or not at all) and made the implementation quite a bit more complex. Longer term they will get replaced by adding the possibility to have multiple audio/video outputs and implementing monitoring output classes that can deliver QAudioBuffers and QVideoFrames to the app. Change-Id: Ic5b4506e7392d352d33b51f01ff0d5169d7b5129 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Cleanup QCameraInfoLars Knoll2021-01-293-16/+6
| | | | | | | | | | | | | | | | | | | Various API changes to QCameraInfo: * Remove the camera orientation from our API This is an implementation detail that should never be exposed to the user. For fixed cameras it's uninteresting and for mobile cameras, we can use the physical orientation of the device to create a stream that is oriented the correct way. * Add a QVideoFormat class describing a video format * Add a QList<QVideoFormat> videoFormats() * Add a QList<QSize> photoResolutions() * Implement the API for gstreamer and macOS. Change-Id: I9ffd9caeb6d07a6f267608a6bd794d99699fffbb Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of QVideoDeviceSelectorControlLars Knoll2021-01-291-26/+10
| | | | | | | | | | | Move the camera selection into QCameraControl directly and give it a more decent API using QCameraInfo. Remove the QCamer(name) constructor, as it could lead to invalid cameras being constructed. Change-Id: Ieb26f62684080eaf9a10770ec7df2cde2996bcff Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Completely remove the old plugin infrastructureLars Knoll2021-01-292-2/+0
| | | | | | | | | Now that nothing relies on QMediaServiceProvider* anymore, get rid of those classes. Change-Id: I30d4e878598b7af63f9a5b8cc3cf7cf3daa37f6a Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Start using the new QMediaPlatformPlayerInterfaceLars Knoll2021-01-291-0/+2
| | | | | | | | And get rid of the corresponding service plugins. Change-Id: I4b5b694e0cae93ba116a2dd58efd5ad8a2eb0743 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Don't define QT_DISABLE_DEPRECATED_BEFORE to 0Lars Knoll2021-01-292-4/+0
| | | | | | | | | | Remove those defines, they cause the cmake build to break as we get the define set from the global Qt configuration code in qtbase. Change-Id: I09b5848a0023c96bbf46a9208b14149bd3d4602a Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove some dead codeLars Knoll2021-01-291-1/+0
| | | | | | Change-Id: I9871d37bb9c1963026bd9e8e05c7222f7e6a21fc Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add find modules for 3rd party libraries and fix CMake filesDoris Verria2021-01-283-3/+58
| | | | | | | | | Detect gstreamer, avfoundation, pulseaudio, alsa, mmrenderer and wmf with cmake. Regenerate and adjust configure.cmake and CMakeLists.txt files accordingly. Change-Id: I550136909498d3870e0babd6294652774a718f64 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove the static methods from QCameraInfoLars Knoll2021-01-222-9/+15
| | | | | | | | Those do now live in QMediaDeviceManager. Change-Id: If7ee7358b290ab783e9c07ede30ad3839328e954 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add a QMediaDeviceInfo class to enumerate input/output devicesLars Knoll2021-01-222-7/+8
| | | | | | | | | | | | | | | | | Use this as the starting point for a new QPA like backend infrastructure. Refactor places that use the device information to use the new infrastructure. Cleanup the audio subsystem part and port it over to the new infrastructure. Android and QNX are not ported yet. Change-Id: I99c459c998f1f05e1c40ad30c700011e41cef533 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of the QMediaServiceFeaturesInterfaceLars Knoll2021-01-221-1/+1
| | | | | | | | Replace it by one virtual method in the media player control. Change-Id: I18778d2f56b9af8a16418c30c75c973e54b6add8 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of QMediaContentLars Knoll2021-01-223-23/+21
| | | | | | | | | There's no need for it without playlist support in QMediaPlayer. Simply replace it with a QUrl. Change-Id: I28421772b106dad67d321f2c7053558ebfe2a592 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove playlist support from QMediaPlayerLars Knoll2021-01-223-100/+2
| | | | | | | | | | Playlists can be trivially supported on top of QMediaPlayer, as the modified player example shows. There's no need to have all this complexity in QMediaPlayer itself. Change-Id: Iacdd58f7736809606669d150b1ba6046813b2207 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Clean up QCamera error enumLars Knoll2021-01-223-18/+3
| | | | | | | | | We only really need two error values, the others don't make a whole lot of sense. Change-Id: I8f798b1ed930ea876442390776528a32b3532e30 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Rename QMediaObject to QMediaSourceLars Knoll2021-01-226-111/+111
| | | | | | | | That actually describes what those classes are. Change-Id: I9ce01707bb260ff6452359e211f2c22b5740e61b Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of the bindableInterface in QCameraImageCaptureLars Knoll2021-01-222-5/+5
| | | | | | | | | This class can only ever bind to a QCamera object, so let's make that explicit in the API. Change-Id: Idbc54a6d58a31ad934dcadc9e7d4fc76a0436a47 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Merge the viewfindersettingscontrol into QCameraControlLars Knoll2021-01-212-2/+1
| | | | | | Change-Id: I6410cc5fa9e787454a3ed61723b26238012aea6e Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Modernize code baseLars Knoll2021-01-214-13/+13
| | | | | | | | | Run clang-tidy over the code base with some code modernization options. Change-Id: I9e74d1225bce333e74224e3b92c02c7e9884d8f5 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Merge QCameraFlashControl into QCameraExposureControlLars Knoll2021-01-212-9/+6
| | | | | | | | | | They are exposwed through one class on the front-end side, no need to complicate the API with several interfaces on the backend side. Change-Id: I4ecdc96edf71353f1b6d31cab92b7df064033e9a Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove unused QCamerExposureControl::FlashPower/FlashCompensationLars Knoll2021-01-211-2/+1
| | | | | | Change-Id: I6f78042885441966809fabe0dd038e23eb14ebdb Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Kill QCameraExposure::MeteringModeLars Knoll2021-01-215-118/+1
| | | | | | | | This was not implemented in any of our plugins. Change-Id: I3118d56016d6b77e45a2ed911a630ca70ff1da3d Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Doris Verria <doris.verria@qt.io>
* Initial Cmake port for qtmultimediaDoris Verria2021-01-203-0/+59
| | | | | | Fixes: QTBUG-89540 Change-Id: I2cf8d0edae2769a53cadd667ab5ac4f9cb754a50 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Clean up playlist handlingLars Knoll2021-01-202-33/+11
| | | | | | | | | Remove the whole plugin infrastructure and all the complexity that came with it and some other architectural decisions. Change-Id: I86bc2f1a5bddf5ba90881990c5cf49463d12ed65 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove Radio QML typeLars Knoll2021-01-201-268/+0
| | | | | | | | The C++ implementation has been removed earlier already. Change-Id: I926ccdc770e5ec8d277995f134a01cb53b2f0662 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of the unused resource policy and availability controlLars Knoll2021-01-206-57/+1
| | | | | | | | | The only implementation of this was using some Nokia specific library, that hasn't existed since 2012 anymore. Change-Id: Ieaec2176ad8e4fc170bb5254944fffc41edccefa Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix compilationLars Knoll2021-01-201-1/+1
| | | | | | | | Adjust to changes in QQmlListProperty Change-Id: I2cc4c82a39a41dbda864e88bf08894a4d61ce993 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Replace calls to removed qmlRegisterType overloadsMarcel Krems2020-08-311-3/+3
| | | | | Change-Id: I3cb5a7839dc1648efdf1f4a9a317d7c52232495a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Remove AudioEngineVaL Doroshchuk2020-08-0330-6734/+0
| | | | | | | Task-number: QTBUG-74423 Fixes: QTBUG-84596 Change-Id: I21184ee24cbcbd5091e3466b132301e80bfad7d8 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Fix ambiguous in QRandomGenerator::global()->boundedVaL Doroshchuk2020-07-201-1/+1
| | | | | | | call of overloaded ‘bounded(qsizetype)’ is ambiguous Change-Id: Ie0f5a0394627345aca7c0a4a028d1048cf0405cf Reviewed-by: Val Doroshchuk <valentyn.doroshchuk@qt.io>
* Add ; to Q_UNUSEDLars Schmertmann2020-06-281-1/+1
| | | | | | | | 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-251-1/+1
| | | | | | Task-number: QTBUG-84469 Change-Id: Id8d07836a66e4d9223341483bfe0ed251ba2806c Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Remove Radio supportVaL Doroshchuk2020-06-106-1267/+0
| | | | | | Fixes: QTBUG-84592 Change-Id: I3b9e51689fd542c35cb57cf6c51a141aec3034df Reviewed-by: Christian Strømme <christian.stromme@qt.io>
* Remove QT_DEPRECATED APIVaL Doroshchuk2020-06-044-37/+0
| | | | | | Change-Id: I2aa2334f7408164bf288d82b28e4e6aff9a2503b Fixes: QTBUG-84593 Reviewed-by: Liang Qi <liang.qi@qt.io>