Sound QML Type | Qt Multimedia 5.12.7

Qt 5.12 | Qt Multimedia | QML Types | Sound QML Type

Qt 5.12.7 Reference Documentation

# Sound QML Type

Define a variety of samples and parameters to be used for SoundInstance. More...

Import Statement: | import QtAudioEngine 1.1
Since: | Qt 5.0
Inherits: | Item

- List of all members, including inherited members

## Properties

- attenuationModel : string
- category : string
- name : string
- playType : enumeration

## Methods

- addPlayVariation(PlayVariation playVariation)
- QtAudioEngine::SoundInstance newInstance()
- play()
- play(gain)
- play(gain, pitch)
- play(position)
- play(position, velocity)
- play(position, velocity, direction)
- play(position, gain)
- play(position, velocity, gain)
- play(position, velocity, direction, gain)
- play(position, gain, pitch)
- play(position, velocity, gain, pitch)
- play(position, velocity, direction, gain, pitch)

## Detailed Description

Sound can be accessed through QtAudioEngine::AudioEngine::sounds with its unique name and must be defined inside AudioEngine or be added to it using AudioEngine.addSound() if Sound is created dynamically.

      Rectangle {
          color:"white"
          width: 300
          height: 500

          AudioEngine {
              id:audioengine

              AudioSample {
                  name:"explosion01"
                  source: "explosion-01.wav"
              }

              AudioSample {
                  name:"explosion02"
                  source: "explosion-02.wav"
              }

              Sound {
                  name:"explosion"
                  playType: Sound.Random
                  PlayVariation {
                      sample:"explosion01"
                      minPitch: 0.8
                      maxPitch: 1.1
                  }
                  PlayVariation {
                      sample:"explosion02"
                      minGain: 1.1
                      maxGain: 1.5
                  }
              }
          }
          MouseArea {
              anchors.fill: parent
              onPressed: {
                  audioengine.sounds["explosion"].play();
              }
          }
      }

## Property Documentation

attenuationModel : string

This property specifies which attenuation model this sound will apply.

category : string

This property specifies which AudioCategory this sound belongs to.

name : string

This property holds the name of Sound, must be unique among all sounds and only defined once.

playType : enumeration

This property holds the playType. It can be one of:

- Random - randomly picks up a play variation when playback is triggered
- Sequential - plays each variation in sequence when playback is triggered

The default value is Random.

## Method Documentation

addPlayVariation(PlayVariation playVariation)

Adds the given playVariation to sound. This can be used when the PlayVariation is created dynamically:

      import QtAudioEngine 1.1

      AudioEngine {
          id: engine

          Component.onCompleted: {
              var playVariation = Qt.createQmlObject('import QtAudioEngine 1.1; PlayVariation {}', engine);
              playVariation.sample = "sample";
              playVariation.minPitch = 0.8
              playVariation.maxPitch = 1.1

              var sound = Qt.createQmlObject('import QtAudioEngine 1.1; Sound {}', engine);
              sound.name = "example";
              sound.addPlayVariation(playVariation);
              engine.addSound(sound);
          }
      }

QtAudioEngine::SoundInstance newInstance()

Returns a new SoundInstance.

play()

Creates a new SoundInstance and starts playing. Position, direction and velocity are all set to `"0,0,0"`.

play(gain)

Creates a new SoundInstance and starts playing with the adjusted gain. Position, direction and velocity are all set to `"0,0,0"`.

play(gain, pitch)

Creates a new SoundInstance and starts playing with the adjusted gain and pitch. Position, direction and velocity are all set to `"0,0,0"`.

play(position)

Creates a new SoundInstance and starts playing with specified position. Direction and velocity are all set to `"0,0,0"`.

play(position, velocity)

Creates a new SoundInstance and starts playing with specified position and velocity. Direction is set to `"0,0,0"`.

play(position, velocity, direction)

Creates a new SoundInstance and starts playing with specified position, velocity and direction.

play(position, gain)

Creates a new SoundInstance and starts playing with specified position and adjusted gain. Direction and velocity are all set to `"0,0,0"`.

play(position, velocity, gain)

Creates a new SoundInstance and starts playing with specified position, velocity and adjusted gain. Direction is set to `"0,0,0"`.

play(position, velocity, direction, gain)

Creates a new SoundInstance and starts playing with specified position, velocity, direction and adjusted gain.

play(position, gain, pitch)

Creates a new SoundInstance and starts playing with specified position, adjusted gain and pitch. Direction and velocity are all set to `"0,0,0"`.

play(position, velocity, gain, pitch)

Creates a new SoundInstance and starts playing with specified position, velocity, adjusted gain and pitch. Direction is set to `"0,0,0"`.

play(position, velocity, direction, gain, pitch)

Creates a new SoundInstance and starts playing with specified position, velocity, direction, adjusted gain and pitch.