Multimedia 概述
Qt 提供多媒体支持通过
Qt Multimedia
module. The Qt Multimedia module provides a rich feature set that enables you to easily take advantage of a platform's multimedia capabilities, such as media playback and the use of camera devices.
特征
Here are some things you can do with the Qt Multimedia APIs:
-
Access raw audio devices for input and output.
-
Play low latency sound effects.
-
Play 3D spatial audio.
-
Play media files in playlists (such as compressed audio or video files).
-
Record audio and compress it.
-
使用摄像头 (包括取景器) 捕获图像 录制影片
-
Decode audio media files into memory for processing.
The Qt Multimedia APIs are categorized into three main components. More information specific to each component is available in the overview pages. You can also take a look at some
recipes
.
For some quick recipes, see this table:
|
用例
|
范例
|
QML 类型
|
C++ 类
|
|
播放音效
|
|
SoundEffect
|
QSoundEffect
|
|
Playing 3D sound
|
audiopanning
|
SpatialSound
,
AudioEngine
|
QSpatialSound
,
QAudioEngine
|
|
播放编码音频 (MP3 AAC 等)
|
player
|
MediaPlayer
|
QMediaPlayer
|
|
Playing raw audio data with low latency
|
audiooutput
,
|
|
QAudioSink
|
|
访问原生音频输入数据
|
spectrum
,
audiosource
|
|
QAudioSource
|
|
录制编码音频数据
|
audiorecorder
|
CaptureSession
,
AudioInput
,
MediaRecorder
|
QMediaCaptureSession
,
QAudioInput
,
QMediaRecorder
|
|
Discovering audio and video devices
|
audiodevices
|
MediaDevices
,
audioDevice
,
cameraDevice
|
QMediaDevices
,
QAudioDevice
,
QCameraDevice
|
|
视频回放
|
player
,
mediaplayer
|
MediaPlayer
,
VideoOutput
,
Video
|
QMediaPlayer
,
QVideoWidget
,
QGraphicsVideoItem
|
|
Capturing audio and video
|
camera
,
|
recorder
|
CaptureSession
,
Camera
,
AudioInput
VideoOutput
|
QMediaCaptureSession
,
QCamera
,
QAudioInput
,
QVideoWidget
|
|
捕获照片
|
camera
,
|
recorder
|
CaptureSession
,
Camera
,
ImageCapture
|
QMediaCaptureSession
,
QCamera
,
QImageCapture
|
|
捕获影片
|
camera
,
|
recorder
|
CaptureSession
,
Camera
,
MediaRecorder
|
QMediaCaptureSession
,
QCamera
,
QMediaRecorder
|
局限性
The Qt Multimedia APIs build upon the multimedia framework of the underlying platform. This can mean that support for various codecs, or containers will vary between machines. This support depends on what the end user has installed. See
Supported Media Formats
for more detail.
先前版本的变化
If you previously used Qt Multimedia in Qt 5, see
Changes to Qt Multimedia
for more information on what has changed, and what you might need to change when porting code to Qt 6.
参考文档编制