QtMultimedia: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
'''English''' [[QtMultimedia Turkce|Türkçe]]
'''English''' [[QtMultimedia_Turkce|Türkçe]]


=QtMultimedia Module=
= QtMultimedia Module =


For a full overview of the QtMultimedia module please checkout the Multimedia Overview in the Qt documentation.
For a full overview of the QtMultimedia module please checkout the Multimedia Overview in the Qt documentation.


==Chart of backend completeness by platform==
== Chart of backend completeness by platform ==


{| class="infotable line"
{background:#009900}. |''. Interface |''. AVFoundation|''. QuickTime 7 |''. DirectShow |''. WMF |''. GStreamer |''. Android |''. Blackberry |<br />|[[Doc:QAudioDecoderControl]] | | | | | | | |<br />|[[Doc:QAudioEncoderSettingsControl]] | | | | | | | |<br />|[[Doc:QAudioInputSelectorControl]] | yes | | | | | | |<br />|[[Doc:QAudioOutputSelectorControl]] | | | | | | | |<br />|[[Doc:QCameraCaptureBufferFormatControl]] | | | | | | | |<br />|[[Doc:QCameraCaptureDestinationControl]] | | | | | | | |<br />|[[Doc:QCameraControl]] | yes | | | | | | |<br />|[[Doc:QCameraExposureControl]] | | | | | | | |<br />|[[Doc:QCameraFeedbackControl]] | | | | | | | |<br />|[[Doc:QCmaeraFlashControl]] | | | | | | | |<br />|[[Doc:QCameraFocusControl]] | | | | | | | |<br />|[[Doc:QCameraImageCaptureControl]] | yes | | | | | | |<br />|[[Doc:QCameraImageProcessingControl]] | | | | | | | |<br />|[[Doc:QCameraLocksControl]] | | | | | | | |<br />|[[Doc:QCameraViewFinderSettingsControl]] | | | | | | | |<br />|[[Doc:QCameraZoomControl]] | | | | | | | |<br />|[[Doc:QImageEncoderControl]] | | | | | | | |<br />|[[Doc:QMediaAudioProbeControl]] | | | | | | | |<br />|[[Doc:QMediaAvailabilityControl]] | | | | | | | |<br />|[[Doc:QMediaContainerControl]] | | | | | | | |<br />|[[Doc:QMediaGaplessPlaybackControl]] | | | | | | | |<br />|[[Doc:QMediaNetworkAccessControl]] | | | | | | | |<br />|[[Doc:QMediaPlayerControl]] | yes | yes | | | | | |<br />|[[Doc:QMediaPlayListControl]] | | | | | | | |<br />|[[Doc:QMediaPlayListSourceControl]] | | | | | | | |<br />|[[Doc:QMediaRecorderControl]] | yes | | | | | | |<br />|[[Doc:QMediaStreamControl]] | | | | | | | |<br />|[[Doc:QMediaVideoProbeControl]] | | | | | | | |<br />|[[Doc:QMetaDataReaderControl]] | partial | yes | | | | | |<br />|[[Doc:QMetaDataWriterControl]] | yes | | | | | | |<br />|[[Doc:QRadioDataControl]] | | | | | | | |<br />|[[Doc:QRadioTunerControl]] | | | | | | | |<br />|[[Doc:QVideoDeviceSelectorControl]] | yes | | | | | | |<br />|[[Doc:QVideoEncoderSettingsControl]] | | | | | | | |<br />|[[Doc:QVideoRendererControl]] | yes | yes | | | | | |<br />|[[Doc:QVideoWidgetControl]] | yes | yes | | | | | |<br />|[[Doc:QVideoWindowControl]] | | yes | | | | | |
|- style="background: #009900"
! Interface
! <span class="caps">AVF</span>oundation
! QuickTime 7
! DirectShow
! <span class="caps">WMF</span>
! GStreamer
! Android
! Blackberry
|-
|
[[doc/QAudioDecoderControl|QAudioDecoderControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QAudioEncoderSettingsControl|QAudioEncoderSettingsControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QAudioInputSelectorControl|QAudioInputSelectorControl]]
| yes
|
|
|
|
|
|
|-
|
[[doc/QAudioOutputSelectorControl|QAudioOutputSelectorControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraCaptureBufferFormatControl|QCameraCaptureBufferFormatControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraCaptureDestinationControl|QCameraCaptureDestinationControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraControl|QCameraControl]]
| yes
|
|
|
|
|
|
|-
|
[[doc/QCameraExposureControl|QCameraExposureControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraFeedbackControl|QCameraFeedbackControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCmaeraFlashControl|QCmaeraFlashControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraFocusControl|QCameraFocusControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraImageCaptureControl|QCameraImageCaptureControl]]
| yes
|
|
|
|
|
|
|-
|
[[doc/QCameraImageProcessingControl|QCameraImageProcessingControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraLocksControl|QCameraLocksControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraViewFinderSettingsControl|QCameraViewFinderSettingsControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QCameraZoomControl|QCameraZoomControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QImageEncoderControl|QImageEncoderControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaAudioProbeControl|QMediaAudioProbeControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaAvailabilityControl|QMediaAvailabilityControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaContainerControl|QMediaContainerControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaGaplessPlaybackControl|QMediaGaplessPlaybackControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaNetworkAccessControl|QMediaNetworkAccessControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaPlayerControl|QMediaPlayerControl]]
| yes
| yes
|
|
|
|
|
|-
|
[[doc/QMediaPlayListControl|QMediaPlayListControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaPlayListSourceControl|QMediaPlayListSourceControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaRecorderControl|QMediaRecorderControl]]
| yes
|
|
|
|
|
|
|-
|
[[doc/QMediaStreamControl|QMediaStreamControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMediaVideoProbeControl|QMediaVideoProbeControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QMetaDataReaderControl|QMetaDataReaderControl]]
| partial
| yes
|
|
|
|
|
|-
|
[[doc/QMetaDataWriterControl|QMetaDataWriterControl]]
| yes
|
|
|
|
|
|
|-
|
[[doc/QRadioDataControl|QRadioDataControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QRadioTunerControl|QRadioTunerControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QVideoDeviceSelectorControl|QVideoDeviceSelectorControl]]
| yes
|
|
|
|
|
|
|-
|
[[doc/QVideoEncoderSettingsControl|QVideoEncoderSettingsControl]]
|
|
|
|
|
|
|
|-
|
[[doc/QVideoRendererControl|QVideoRendererControl]]
| yes
| yes
|
|
|
|
|
|-
|
[[doc/QVideoWidgetControl|QVideoWidgetControl]]
| yes
| yes
|
|
|
|
|
|-
|
[[doc/QVideoWindowControl|QVideoWindowControl]]
|
| yes
|
|
|
|
|
|}


===Windows===
=== Windows ===


===Linux &amp; Embedded Linux===
=== Linux &amp; Embedded Linux ===


===OS X &amp; iOS===
=== OS X &amp; iOS ===


Multimedia support for apple products are provided by two plugins. The QuickTime 7 plugin is the legacy plugin, providing limited multimedia support to OS X 10.6, and is not actively developed. The <span class="caps">AVF</span>oundation plugin is available on OS X 10.7+ as well as iOS. This is the actively developed plugin and should be used where possible.
Multimedia support for apple products are provided by two plugins. The QuickTime 7 plugin is the legacy plugin, providing limited multimedia support to OS X 10.6, and is not actively developed. The AVFoundation plugin is available on OS X 10.7+ as well as iOS. This is the actively developed plugin and should be used where possible.


===Android===
=== Android ===


===Android Base-layer===
=== Android Base-layer ===


===Blackberry 10 (<span class="caps">QNX</span>)===
=== Blackberry 10 (QNX) ===


==QtMultimedia Plugin Interfaces==
== QtMultimedia Plugin Interfaces ==


QtMultimedia’s functionality for a given platform is defined using the Qt plugin system through the implementation of interfaces. These interfaces can be seen split several ways, but for our purposes they will be split between the high level and low level <span class="caps">API</span>’s.
QtMultimedia's functionality for a given platform is defined using the Qt plugin system through the implementation of interfaces. These interfaces can be seen split several ways, but for our purposes they will be split between the high level and low level API's.


===High-level Multimedia Interfaces: {| class="infotable line" ! Interface ! Description |- | [[doc/QAudioDecoderControl|QAudioDecoderControl]] | Access to the audio decoding functionality of a QMediaService |- | [[doc/QAudioEncoderSettingsControl|QAudioEncoderSettingsControl]] | Access to the settings of a media service that performs audio encoding |- | [[doc/QAudioInputSelectorControl|QAudioInputSelectorControl]] | Audio input selector media control |- | [[doc/QAudioOutputSelectorControl|QAudioOutputSelectorControl]] | Audio output selector media control |- | [[doc/QCameraCaptureBufferFormatControl|QCameraCaptureBufferFormatControl]] | Control for setting the capture buffer format |- | [[doc/QCameraCaptureDestinationControl|QCameraCaptureDestinationControl]] | Control for setting capture destination |- | [[doc/QCameraControl|QCameraControl]] | Abstract base class for classes that control still cameras or video cameras |- | [[doc/QCameraExposureControl|QCameraExposureControl]] | Allows controlling camera exposure parameters |- | [[doc/QCameraFeedbackControl|QCameraFeedbackControl]] | Allows controlling feedback (sounds etc) during camera operation |- | [[doc/QCameraFlashControl|QCameraFlashControl]] | Allows controlling a camera’s flash |- | [[doc/QCameraFocusControl|QCameraFocusControl]] | Supplies control for focusing related camera parameters |- | [[doc/QCameraImageCaptureControl|QCameraImageCaptureControl]] | Control interface for image capture services |- | [[doc/QCameraImageProcessingControl|QCameraImageProcessingControl]] | Abstract class for controlling image processing parameters, like white balance, contrast, saturation, sharpening and denoising |- | [[doc/QCameraLocksControl|QCameraLocksControl]] | Abstract base class for classes that control still cameras or video cameras |- | [[doc/QCameraViewfinderSettingsControl|QCameraViewfinderSettingsControl]] | Abstract class for controlling camera viewfinder parameters |- | [[doc/QCameraZoomControl|QCameraZoomControl]] | Supplies control for optical and digital camera zoom |- | [[doc/QImageEncoderControl|QImageEncoderControl]] | Access to the settings of a media service that performs image encoding |- | [[doc/QMediaAudioProbeControl|QMediaAudioProbeControl]] | Allows control over probing audio data in media objects |- | [[doc/QMediaAvailabilityControl|QMediaAvailabilityControl]] | Supplies a control for reporting availability of a service |- | [[doc/QMediaContainerControl|QMediaContainerControl]] | Access to the output container format of a QMediaService |- | [[doc/QMediaGaplessPlaybackControl|QMediaGaplessPlaybackControl]] | Access to the gapless playback related control of a QMediaService |- | [[doc/QMediaNetworkAccessControl|QMediaNetworkAccessControl]] | Allows the setting of the Network Access Point for media related activities |- | [[doc/QMediaPlayerControl|QMediaPlayerControl]] | Access to the media playing functionality of a QMediaService |- | [[doc/QMediaRecorderControl|QMediaRecorderControl]] | Access to the recording functionality of a QMediaService |- | [[doc/QMediaStreamsControl|QMediaStreamsControl]] | Media stream selection control |- | [[doc/QMediaVideoProbeControl|QMediaVideoProbeControl]] | Allows control over probing video frames in media objects |- | [[doc/QMetaDataReaderControl|QMetaDataReaderControl]] | Read access to the meta-data of a QMediaService’s media |- | [[doc/QMetaDataWriterControl|QMetaDataWriterControl]] | Write access to the meta-data of a QMediaService’s media |- | [[doc/QRadioDataControl|QRadioDataControl]] | Access to the <span class="caps">RDS</span> functionality of the radio in the QMediaService |- | [[doc/QRadioTunerControl|QRadioTunerControl]] | Access to the radio tuning functionality of a QMediaService |- | [[doc/QVideoDeviceSelectorControl|QVideoDeviceSelectorControl]] | Video device selector media control |- | [[doc/QVideoEncoderSettingsControl|QVideoEncoderSettingsControl]] | Access to the settings of a media service that performs video encoding |- | [[doc/QVideoRendererControl|QVideoRendererControl]] | Media control for rendering video to a QAbstractVideoSurface |- | [[doc/QVideoWindowControl|QVideoWindowControl]] | Media control for rendering video to a window |- | [[doc/QMediaControl|QMediaControl]] | Base interface for media service controls |- | [[doc/QMediaService|QMediaService]] | Common base class for media service implementations |}===
=== High-level Multimedia Interfaces:<br />|''. Interface |''. Description |<br />|[[Doc:QAudioDecoderControl]] | Access to the audio decoding functionality of a QMediaService |<br />|[[Doc:QAudioEncoderSettingsControl]] | Access to the settings of a media service that performs audio encoding |<br />|[[Doc:QAudioInputSelectorControl]] | Audio input selector media control |<br />|[[Doc:QAudioOutputSelectorControl]] | Audio output selector media control |<br />|[[Doc:QCameraCaptureBufferFormatControl]] | Control for setting the capture buffer format |<br />|[[Doc:QCameraCaptureDestinationControl]] | Control for setting capture destination |<br />|[[Doc:QCameraControl]] | Abstract base class for classes that control still cameras or video cameras |<br />|[[Doc:QCameraExposureControl]] | Allows controlling camera exposure parameters |<br />|[[Doc:QCameraFeedbackControl]] | Allows controlling feedback (sounds etc) during camera operation |<br />|[[Doc:QCameraFlashControl]] | Allows controlling a camera's flash |<br />|[[Doc:QCameraFocusControl]] | Supplies control for focusing related camera parameters |<br />|[[Doc:QCameraImageCaptureControl]] | Control interface for image capture services |<br />|[[Doc:QCameraImageProcessingControl]] | Abstract class for controlling image processing parameters, like white balance, contrast, saturation, sharpening and denoising |<br />|[[Doc:QCameraLocksControl]] | Abstract base class for classes that control still cameras or video cameras |<br />|[[Doc:QCameraViewfinderSettingsControl]] | Abstract class for controlling camera viewfinder parameters |<br />|[[Doc:QCameraZoomControl]] | Supplies control for optical and digital camera zoom |<br />|[[Doc:QImageEncoderControl]] | Access to the settings of a media service that performs image encoding |<br />|[[Doc:QMediaAudioProbeControl]] | Allows control over probing audio data in media objects |<br />|[[Doc:QMediaAvailabilityControl]] | Supplies a control for reporting availability of a service |<br />|[[Doc:QMediaContainerControl]] | Access to the output container format of a QMediaService |<br />|[[Doc:QMediaGaplessPlaybackControl]] | Access to the gapless playback related control of a QMediaService |<br />|[[Doc:QMediaNetworkAccessControl]] | Allows the setting of the Network Access Point for media related activities |<br />|[[Doc:QMediaPlayerControl]] | Access to the media playing functionality of a QMediaService |<br />|[[Doc:QMediaRecorderControl]] | Access to the recording functionality of a QMediaService |<br />|[[Doc:QMediaStreamsControl]] | Media stream selection control |<br />|[[Doc:QMediaVideoProbeControl]] | Allows control over probing video frames in media objects |<br />|[[Doc:QMetaDataReaderControl]] | Read access to the meta-data of a QMediaService's media |<br />|[[Doc:QMetaDataWriterControl]] | Write access to the meta-data of a QMediaService's media |<br />|[[Doc:QRadioDataControl]] | Access to the RDS functionality of the radio in the QMediaService |<br />|[[Doc:QRadioTunerControl]] | Access to the radio tuning functionality of a QMediaService |<br />|[[Doc:QVideoDeviceSelectorControl]] | Video device selector media control |<br />|[[Doc:QVideoEncoderSettingsControl]] | Access to the settings of a media service that performs video encoding |<br />|[[Doc:QVideoRendererControl]] | Media control for rendering video to a QAbstractVideoSurface |<br />|[[Doc:QVideoWindowControl]] | Media control for rendering video to a window |<br />|[[Doc:QMediaControl]] | Base interface for media service controls |<br />|[[Doc:QMediaService]] | Common base class for media service implementations | ===


===Low-level Multimedia Interfaces:===
=== Low-level Multimedia Interfaces: ===

Revision as of 10:46, 24 February 2015

English Türkçe

QtMultimedia Module

For a full overview of the QtMultimedia module please checkout the Multimedia Overview in the Qt documentation.

Chart of backend completeness by platform

{background:#009900}. |. Interface |. AVFoundation|. QuickTime 7 |. DirectShow |. WMF |. GStreamer |. Android |. Blackberry |
|Doc:QAudioDecoderControl | | | | | | | |
|Doc:QAudioEncoderSettingsControl | | | | | | | |
|Doc:QAudioInputSelectorControl | yes | | | | | | |
|Doc:QAudioOutputSelectorControl | | | | | | | |
|Doc:QCameraCaptureBufferFormatControl | | | | | | | |
|Doc:QCameraCaptureDestinationControl | | | | | | | |
|Doc:QCameraControl | yes | | | | | | |
|Doc:QCameraExposureControl | | | | | | | |
|Doc:QCameraFeedbackControl | | | | | | | |
|Doc:QCmaeraFlashControl | | | | | | | |
|Doc:QCameraFocusControl | | | | | | | |
|Doc:QCameraImageCaptureControl | yes | | | | | | |
|Doc:QCameraImageProcessingControl | | | | | | | |
|Doc:QCameraLocksControl | | | | | | | |
|Doc:QCameraViewFinderSettingsControl | | | | | | | |
|Doc:QCameraZoomControl | | | | | | | |
|Doc:QImageEncoderControl | | | | | | | |
|Doc:QMediaAudioProbeControl | | | | | | | |
|Doc:QMediaAvailabilityControl | | | | | | | |
|Doc:QMediaContainerControl | | | | | | | |
|Doc:QMediaGaplessPlaybackControl | | | | | | | |
|Doc:QMediaNetworkAccessControl | | | | | | | |
|Doc:QMediaPlayerControl | yes | yes | | | | | |
|Doc:QMediaPlayListControl | | | | | | | |
|Doc:QMediaPlayListSourceControl | | | | | | | |
|Doc:QMediaRecorderControl | yes | | | | | | |
|Doc:QMediaStreamControl | | | | | | | |
|Doc:QMediaVideoProbeControl | | | | | | | |
|Doc:QMetaDataReaderControl | partial | yes | | | | | |
|Doc:QMetaDataWriterControl | yes | | | | | | |
|Doc:QRadioDataControl | | | | | | | |
|Doc:QRadioTunerControl | | | | | | | |
|Doc:QVideoDeviceSelectorControl | yes | | | | | | |
|Doc:QVideoEncoderSettingsControl | | | | | | | |
|Doc:QVideoRendererControl | yes | yes | | | | | |
|Doc:QVideoWidgetControl | yes | yes | | | | | |
|Doc:QVideoWindowControl | | yes | | | | | |

Windows

Linux & Embedded Linux

OS X & iOS

Multimedia support for apple products are provided by two plugins. The QuickTime 7 plugin is the legacy plugin, providing limited multimedia support to OS X 10.6, and is not actively developed. The AVFoundation plugin is available on OS X 10.7+ as well as iOS. This is the actively developed plugin and should be used where possible.

Android

Android Base-layer

Blackberry 10 (QNX)

QtMultimedia Plugin Interfaces

QtMultimedia's functionality for a given platform is defined using the Qt plugin system through the implementation of interfaces. These interfaces can be seen split several ways, but for our purposes they will be split between the high level and low level API's.

High-level Multimedia Interfaces:
|. Interface |. Description |
|Doc:QAudioDecoderControl | Access to the audio decoding functionality of a QMediaService |
|Doc:QAudioEncoderSettingsControl | Access to the settings of a media service that performs audio encoding |
|Doc:QAudioInputSelectorControl | Audio input selector media control |
|Doc:QAudioOutputSelectorControl | Audio output selector media control |
|Doc:QCameraCaptureBufferFormatControl | Control for setting the capture buffer format |
|Doc:QCameraCaptureDestinationControl | Control for setting capture destination |
|Doc:QCameraControl | Abstract base class for classes that control still cameras or video cameras |
|Doc:QCameraExposureControl | Allows controlling camera exposure parameters |
|Doc:QCameraFeedbackControl | Allows controlling feedback (sounds etc) during camera operation |
|Doc:QCameraFlashControl | Allows controlling a camera's flash |
|Doc:QCameraFocusControl | Supplies control for focusing related camera parameters |
|Doc:QCameraImageCaptureControl | Control interface for image capture services |
|Doc:QCameraImageProcessingControl | Abstract class for controlling image processing parameters, like white balance, contrast, saturation, sharpening and denoising |
|Doc:QCameraLocksControl | Abstract base class for classes that control still cameras or video cameras |
|Doc:QCameraViewfinderSettingsControl | Abstract class for controlling camera viewfinder parameters |
|Doc:QCameraZoomControl | Supplies control for optical and digital camera zoom |
|Doc:QImageEncoderControl | Access to the settings of a media service that performs image encoding |
|Doc:QMediaAudioProbeControl | Allows control over probing audio data in media objects |
|Doc:QMediaAvailabilityControl | Supplies a control for reporting availability of a service |
|Doc:QMediaContainerControl | Access to the output container format of a QMediaService |
|Doc:QMediaGaplessPlaybackControl | Access to the gapless playback related control of a QMediaService |
|Doc:QMediaNetworkAccessControl | Allows the setting of the Network Access Point for media related activities |
|Doc:QMediaPlayerControl | Access to the media playing functionality of a QMediaService |
|Doc:QMediaRecorderControl | Access to the recording functionality of a QMediaService |
|Doc:QMediaStreamsControl | Media stream selection control |
|Doc:QMediaVideoProbeControl | Allows control over probing video frames in media objects |
|Doc:QMetaDataReaderControl | Read access to the meta-data of a QMediaService's media |
|Doc:QMetaDataWriterControl | Write access to the meta-data of a QMediaService's media |
|Doc:QRadioDataControl | Access to the RDS functionality of the radio in the QMediaService |
|Doc:QRadioTunerControl | Access to the radio tuning functionality of a QMediaService |
|Doc:QVideoDeviceSelectorControl | Video device selector media control |
|Doc:QVideoEncoderSettingsControl | Access to the settings of a media service that performs video encoding |
|Doc:QVideoRendererControl | Media control for rendering video to a QAbstractVideoSurface |
|Doc:QVideoWindowControl | Media control for rendering video to a window |
|Doc:QMediaControl | Base interface for media service controls |
|Doc:QMediaService | Common base class for media service implementations |

Low-level Multimedia Interfaces: