QtCraft API C++ classes QML types Handbook

qc_audio

Sound output of the graphical client. More...

Classes

QcAudioEngine

Everything the graphical client hears: sound cues placed around the listener, UI sounds, the four ambience loops and the background music

QcAudioOutput

Plays the mixer through the default audio output of a QcAudioPlatform (the system's, QcSystemAudio, unless a test passes another)

QcAudioPlatform

What QcAudioOutput needs from the system's audio: the output devices, the formats they take and a sink that pulls the mixer

QcAudioPlatform::Device

An output device

QcAudioPlatform::Format

A format an output device takes

QcAudioPlatform::Opened

Result of open()

QcAudioRoute

Which output device the game should play through when the system's devices change (a headset switched on, a speaker unplugged): the system's default output, as long as there is one

QcAudioRoute::Decision

What to do with the output

QcAudioSinkHost

Audio sink and the device it pulls from, living on the audio thread of QcSystemAudio: Qt's sinks pull (and refill their buffers) on the thread that owns them, so a stalled GUI thread (a screen opening for the first time) would otherwise let the sound drop out

QcMixerDevice

Read-only device an audio sink pulls from: every read renders fresh interleaved stereo audio through render (a view of frames frames, valid until the next call), converted to the sink's sample format

QcSystemAudio

System's audio through Qt Multimedia: devices from QMediaDevices, and the sink on an audio thread of its own (QcAudioSinkHost), so a stalled GUI thread does not interrupt the sound

Detailed Description

Uses qc_common and qc_clientcore.