Qt 5.5.0 Multimedia Backends: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Created page with " For most features, Qt Multimedia builds upon the multimedia framework of the underlying system. Therefore there are several multimedia backends based on different technologie...")
 
(Mac OS => OS X)
 
Line 16: Line 16:
! DirectShow (Windows)  
! DirectShow (Windows)  
! Media Foundation (Windows)  
! Media Foundation (Windows)  
! AV Foundation (Mac OS / iOS)  
! AV Foundation (OS X / iOS)  
! GStreamer (Unix)  
! GStreamer (Unix)  
! Android  
! Android  
Line 137: Line 137:
! DirectShow (Windows)  
! DirectShow (Windows)  
! Media Foundation (Windows)  
! Media Foundation (Windows)  
! AV Foundation (Mac OS / iOS)  
! AV Foundation (OS X / iOS)  
! GStreamer (Unix)  
! GStreamer (Unix)  
! Android  
! Android  
Line 294: Line 294:
! DirectShow (Windows)  
! DirectShow (Windows)  
! Media Foundation (Windows)  
! Media Foundation (Windows)  
! AV Foundation (Mac OS / iOS)  
! AV Foundation (OS X / iOS)  
! GStreamer (Unix)  
! GStreamer (Unix)  
! Android  
! Android  
Line 378: Line 378:
! DirectShow (Windows)  
! DirectShow (Windows)  
! Media Foundation (Windows)  
! Media Foundation (Windows)  
! AV Foundation (Mac OS / iOS)  
! AV Foundation (OS X / iOS)  
! GStreamer (Unix)  
! GStreamer (Unix)  
! Android  
! Android  
Line 400: Line 400:
Here is the list of the current audio backends:
Here is the list of the current audio backends:
* Windows Multimedia
* Windows Multimedia
* CoreAudio (Mac OS / iOS)
* CoreAudio (OS X / iOS)
* PulseAudio (Unix)
* PulseAudio (Unix)
* Alsa (Unix)
* Alsa (Unix)

Latest revision as of 10:40, 12 August 2015

For most features, Qt Multimedia builds upon the multimedia framework of the underlying system. Therefore there are several multimedia backends based on different technologies and APIs. The glue between platform specific libraries and Qt Multimedia is contained in a plugin. There are currently three kinds of plugins in Qt Multimedia:

  • MediaService plugins, to provide media player, camera, radio, and recording features
  • Audio plugins, to provide low-latency audio support
  • PlaylistFormat plugins, to support a specific playlist file format

Plugins do not necessarily implement all possible features and different backends have different capabilities. The following tables give an overview of what is supported by each backend in Qt 5.5.0.

MediaService plugins

Supported media player features by backend

DirectShow (Windows) Media Foundation (Windows) AV Foundation (OS X / iOS) GStreamer (Unix) Android BlackBerry WinRT
MediaPlayer control X X X X X X X
URL source (local and remote) X X X X X X X
Stream source X X X X
Metadata X X partial X X X
Playback rate X X X X X X
Track selection X
HW decoding Only when using Angle X X X X
Video window control X X X X X
Video widget control X X
Video renderer control (includes OpenGL textures) X X X X X X X
Audio probe X X
Video Probe X X

Supported camera features by backend

DirectShow (Windows) Media Foundation (Windows) AV Foundation (OS X / iOS) GStreamer (Unix) Android BlackBerry WinRT
Camera control X X X X X X
Video window control X
Video widget control X X
Video renderer control (includes OpenGL textures) X X X X X X
Audio probe
Video probe X X
ViewFinder settings X X X X
Image capture X X X X X X
Capture destination File File File, Buffer File, Buffer File, Buffer File
Image settings resolution resolution resolution, quality resolution, quality resolution
Zoom X (only iOS >= 7.0) X X X
Flash X X (depends on HW platform, not available on desktop Linux) X X
Focus mode, custom point mode, custom point, focus zones (depends on HW platform, not available on desktop Linux) mode, custom point, focus zones mode, custom point, focus zones
Exposure Only iOS >= 8.0: ISO, ShutterSpeed, compensation Scene mode, compensation, ISO, aperture, ShutterSpeed (depends on HW platform, not available on desktop Linux) Scene mode, compensation Scene mode
Image Processing White Balance, Contrast, Brightness, Saturation (depends on HW platform, not available on desktop Linux) White Balance White Balance
Locks Focus, Exposure, White Balance (depends on HW platform, not available on desktop Linux) Focus, Exposure, White Balance Focus, Exposure, White Balance

Supported recording features by backend

DirectShow (Windows) Media Foundation (Windows) AV Foundation (OS X / iOS) GStreamer (Unix) Android BlackBerry WinRT
Record camera X X X X
Record audio Fallback to audio backend Fallback to audio backend Fallback to audio backend X X Fallback to audio backend
Audio probe X X X X X
Video probe X X
MetaData writer X
Audio encoder settings X X X
Video encoder settings X X X
Container settings X X

Supported audio decoding features by backend

DirectShow (Windows) Media Foundation (Windows) AV Foundation (OS X / iOS) GStreamer (Unix) Android BlackBerry WinRT
Decode audio X X

Audio plugins

Audio backends implement QAudioInput, QAudioOutput, QAudioDeviceInfo and QSoundEffect

Here is the list of the current audio backends:

  • Windows Multimedia
  • CoreAudio (OS X / iOS)
  • PulseAudio (Unix)
  • Alsa (Unix)
  • OpenSL ES (Android)
  • QNX

PlaylistFormat plugins