summaryrefslogtreecommitdiffstats
path: root/src/multimedia/platform/darwin/mediaplayer/avfmediaplayercontrol.mm
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of one layer of indirection in the backendLars Knoll2021-03-021-224/+0
| | | | | | | | | | QMediaPlatformPlayerInterface didn't do anything anymore but to create a QMediaPlayerControl. So we might as well remove that layer. Change-Id: I1481188384d5eb25c845317835c44ec0be8c9099 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Rework how to set a video output surfaceLars Knoll2021-02-171-0/+5
| | | | | | | | | | | | | | | | | | | | Setting a video output should not require QMediaService anymore. Reverse the logic, by making QAbstractVideoSurface the primary interface. Use runtime method lookup to get a pointer to the video surface from QVideoWidget/QGraphicsVideoItem. QAbstractVideoSurface is now the primary interface for setting up a video output. We will need to add some API there to allow for windows/fullscreen rendering. With this change, QVideoRendererControl/QVideoWindowControl can also be retired as an abstraction layer in the longer term. Change-Id: Iedff18c6b95fedc7cb914075a8c84081080deab1 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Rework the metadata handlingLars Knoll2021-02-121-0/+11
| | | | | | | | | | | 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 the mediaChanged() signal from the media player controlLars Knoll2021-01-291-3/+0
| | | | | | | | | The front end has full control over this and handles the signal emission there. Change-Id: Icf1b164ce67d1f2036c106461302d53924c03ea1 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add support for selecting the audio output in QMediaPlayerLars Knoll2021-01-221-0/+19
| | | | | | | | | | | | | | | | Add API to select the audio output devive in QMediaPlayer. Implement it where possible. The gstreamer implementation still has issues, on rare occasions, the video stops playing when changing the audio output. There seems to be a race condition somewhere. Windows partially works, but the output device will not get updated after playback started. Change-Id: Ic6e99f7d2e3452915a9870dce45e2e01b079d3c2 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Move the macOS/iOS specific code into one subfolderLars Knoll2021-01-221-0/+192
Move both the avfoundation and coreaudio code into a common platform/darwin folder. Change-Id: Ia5fc0bd12acb5c3763ad62f6482a0f25b3ad1b89 Reviewed-by: Doris Verria <doris.verria@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>