Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QSpatialSound Class Reference

\inmodule QtSpatialAudio More...

#include <qspatialsound.h>

+ Inheritance diagram for QSpatialSound:
+ Collaboration diagram for QSpatialSound:

Public Types

enum  Loops { Infinite = -1 , Once = 1 }
 Lets you control the sound playback loop using the following values: More...
 
enum class  DistanceModel { Logarithmic , Linear , ManualAttenuation }
 Defines how the volume of the sound scales with distance to the listener. More...
 

Public Slots

void play ()
 Starts playing back the sound.
 
void pause ()
 Pauses sound playback.
 
void stop ()
 Stops sound playback and resets the current position and current loop count to 0.
 
- Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
 

Signals

void sourceChanged ()
 
void loopsChanged ()
 
void autoPlayChanged ()
 
void positionChanged ()
 
void rotationChanged ()
 
void volumeChanged ()
 
void distanceModelChanged ()
 
void sizeChanged ()
 
void distanceCutoffChanged ()
 
void manualAttenuationChanged ()
 
void occlusionIntensityChanged ()
 
void directivityChanged ()
 
void directivityOrderChanged ()
 
void nearFieldGainChanged ()
 
- Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
 
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.
 

Public Member Functions

 QSpatialSound (QAudioEngine *engine)
 Creates a spatial sound source for engine.
 
 ~QSpatialSound ()
 Destroys the sound source.
 
void setSource (const QUrl &url)
 
QUrl source () const
 
int loops () const
 
void setLoops (int loops)
 
bool autoPlay () const
 
void setAutoPlay (bool autoPlay)
 
void setPosition (QVector3D pos)
 
QVector3D position () const
 
void setRotation (const QQuaternion &q)
 
QQuaternion rotation () const
 
void setVolume (float volume)
 
float volume () const
 
 Q_ENUM (DistanceModel)
 
void setDistanceModel (DistanceModel model)
 
DistanceModel distanceModel () const
 
void setSize (float size)
 
float size () const
 
void setDistanceCutoff (float cutoff)
 
float distanceCutoff () const
 
void setManualAttenuation (float attenuation)
 
float manualAttenuation () const
 
void setOcclusionIntensity (float occlusion)
 
float occlusionIntensity () const
 
void setDirectivity (float alpha)
 
float directivity () const
 
void setDirectivityOrder (float alpha)
 
float directivityOrder () const
 
void setNearFieldGain (float gain)
 
float nearFieldGain () const
 
QAudioEngineengine () const
 Returns the engine associated with this listener.
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
 
virtual bool event (QEvent *event)
 This virtual function receives events to an object and should return true if the event e was recognized and processed.
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 Filters events if this object has been installed as an event filter for the watched object.
 
QString objectName () const
 
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
 
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QBindable< QStringbindableObjectName ()
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
 
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
 
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
 
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
 
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
 
QThreadthread () const
 Returns the thread in which the object lives.
 
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
 
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
 
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 Kills the timer with timer identifier, id.
 
void killTimer (Qt::TimerId id)
 
template<typename T >
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
 
template<typename T >
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
 
template<typename T >
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const QObjectListchildren () const
 Returns a list of child objects.
 
void setParent (QObject *parent)
 Makes the object a child of parent.
 
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
 
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
 
bool disconnect (const QObject *receiver, const char *member=nullptr) const
 
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
 
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
 
bool setProperty (const char *name, QVariant &&value)
 
QVariant property (const char *name) const
 Returns the value of the object's name property.
 
QList< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () const
 Returns a pointer to the parent object.
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.
 

Properties

QUrl source
 The source file for the sound to be played.
 
QVector3D position
 Defines the position of the sound source in 3D space.
 
QQuaternion rotation
 Defines the orientation of the sound source in 3D space.
 
float volume
 Defines the volume of the sound.
 
DistanceModel distanceModel
 Defines distance model for this sound source.
 
float size
 Defines the size of the sound source.
 
float distanceCutoff
 Defines a distance beyond which sound coming from the source will cutoff.
 
float manualAttenuation
 Defines a manual attenuation factor if \l distanceModel is set to QSpatialSound::DistanceModel::ManualAttenuation.
 
float occlusionIntensity
 Defines how much the object is occluded.
 
float directivity
 Defines the directivity of the sound source.
 
float directivityOrder
 Defines the order of the directivity of the sound source.
 
float nearFieldGain
 Defines the near field gain for the sound source.
 
int loops
 Determines how many times the sound is played before the player stops.
 
bool autoPlay
 Determines whether the sound should automatically start playing when a source gets specified.
 
- Properties inherited from QObject
QString objectName
 the name of this object
 

Friends

class QAmbientSoundPrivate
 
class QSpatialSoundPrivate
 

Additional Inherited Members

- Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
 
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
 
template<typename Func1 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
 
bool isSignalConnected (const QMetaMethod &signal) const
 
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
 
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
 
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 

Detailed Description

\inmodule QtSpatialAudio

A sound object in 3D space.

QSpatialSound represents an audible object in 3D space. You can define its position and orientation in space, set the sound it is playing and define a volume for the object.

The object can have different attenuation behavior, emit sound mainly in one direction or spherically, and behave as if occluded by some other object.

Definition at line 17 of file qspatialsound.h.

Member Enumeration Documentation

◆ DistanceModel

enum class QSpatialSound::DistanceModel
strong

Defines how the volume of the sound scales with distance to the listener.

\value Logarithmic Volume decreases logarithmically with distance. \value Linear Volume decreases linearly with distance. \value ManualAttenuation Attenuation is defined manually using the \l manualAttenuation property.

Enumerator
Logarithmic 
Linear 
ManualAttenuation 

Definition at line 64 of file qspatialsound.h.

◆ Loops

Lets you control the sound playback loop using the following values:

\value Infinite Playback infinitely \value Once Playback once

Enumerator
Infinite 
Once 

Definition at line 42 of file qspatialsound.h.

Constructor & Destructor Documentation

◆ QSpatialSound()

QSpatialSound::QSpatialSound ( QAudioEngine * engine)
explicit

Creates a spatial sound source for engine.

The object can be placed in 3D space and will be louder the closer to the listener it is.

Definition at line 35 of file qspatialsound.cpp.

References engine().

+ Here is the call graph for this function:

◆ ~QSpatialSound()

QSpatialSound::~QSpatialSound ( )

Destroys the sound source.

Definition at line 44 of file qspatialsound.cpp.

Member Function Documentation

◆ autoPlay()

bool QSpatialSound::autoPlay ( ) const

Definition at line 520 of file qspatialsound.cpp.

References QBasicAtomicInteger< T >::loadRelaxed(), and QAmbientSoundPrivate::m_autoPlay.

+ Here is the call graph for this function:

◆ autoPlayChanged

void QSpatialSound::autoPlayChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setAutoPlay().

+ Here is the caller graph for this function:

◆ directivity()

float QSpatialSound::directivity ( ) const

Definition at line 405 of file qspatialsound.cpp.

References QSpatialSoundPrivate::directivity.

◆ directivityChanged

void QSpatialSound::directivityChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), setDirectivity(), and setDirectivityOrder().

+ Here is the caller graph for this function:

◆ directivityOrder()

float QSpatialSound::directivityOrder ( ) const

Definition at line 432 of file qspatialsound.cpp.

References QSpatialSoundPrivate::directivityOrder.

◆ directivityOrderChanged

void QSpatialSound::directivityOrderChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound().

+ Here is the caller graph for this function:

◆ distanceCutoff()

float QSpatialSound::distanceCutoff ( ) const

Definition at line 322 of file qspatialsound.cpp.

References QSpatialSoundPrivate::distanceCutoff, QAmbientSoundPrivate::engine, and QAudioEnginePrivate::get().

+ Here is the call graph for this function:

◆ distanceCutoffChanged

void QSpatialSound::distanceCutoffChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setDistanceCutoff().

+ Here is the caller graph for this function:

◆ distanceModel()

QSpatialSound::DistanceModel QSpatialSound::distanceModel ( ) const

Definition at line 273 of file qspatialsound.cpp.

References QSpatialSoundPrivate::distanceModel.

◆ distanceModelChanged

void QSpatialSound::distanceModelChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setDistanceModel().

+ Here is the caller graph for this function:

◆ engine()

QAudioEngine * QSpatialSound::engine ( ) const

Returns the engine associated with this listener.

Definition at line 588 of file qspatialsound.cpp.

References QAmbientSoundPrivate::engine.

Referenced by QSpatialSound().

+ Here is the caller graph for this function:

◆ loops()

int QSpatialSound::loops ( ) const

Definition at line 500 of file qspatialsound.cpp.

References QBasicAtomicInteger< T >::loadRelaxed(), and QAmbientSoundPrivate::m_loops.

+ Here is the call graph for this function:

◆ loopsChanged

void QSpatialSound::loopsChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setLoops().

+ Here is the caller graph for this function:

◆ manualAttenuation()

float QSpatialSound::manualAttenuation ( ) const

Definition at line 345 of file qspatialsound.cpp.

References QSpatialSoundPrivate::manualAttenuation.

◆ manualAttenuationChanged

void QSpatialSound::manualAttenuationChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setManualAttenuation().

+ Here is the caller graph for this function:

◆ nearFieldGain()

float QSpatialSound::nearFieldGain ( ) const

Definition at line 459 of file qspatialsound.cpp.

References QSpatialSoundPrivate::nearFieldGain.

◆ nearFieldGainChanged

void QSpatialSound::nearFieldGainChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setNearFieldGain().

+ Here is the caller graph for this function:

◆ occlusionIntensity()

float QSpatialSound::occlusionIntensity ( ) const

Definition at line 377 of file qspatialsound.cpp.

References QSpatialSoundPrivate::occlusionIntensity.

◆ occlusionIntensityChanged

void QSpatialSound::occlusionIntensityChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setOcclusionIntensity().

+ Here is the caller graph for this function:

◆ pause

void QSpatialSound::pause ( )
slot

Pauses sound playback.

Calling play() will continue playback.

Definition at line 543 of file qspatialsound.cpp.

References QAmbientSoundPrivate::pause().

Referenced by QQuick3DSpatialSound::pause().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ play

void QSpatialSound::play ( )
slot

Starts playing back the sound.

Does nothing if the sound is already playing.

Definition at line 535 of file qspatialsound.cpp.

References QAmbientSoundPrivate::play().

Referenced by QQuick3DSpatialSound::play().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ position()

QVector3D QSpatialSound::position ( ) const

Definition at line 67 of file qspatialsound.cpp.

References QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), and QSpatialSoundPrivate::pos.

+ Here is the call graph for this function:

◆ positionChanged

void QSpatialSound::positionChanged ( )
signal

Referenced by setPosition().

+ Here is the caller graph for this function:

◆ Q_ENUM()

QSpatialSound::Q_ENUM ( DistanceModel )

◆ rotation()

QQuaternion QSpatialSound::rotation ( ) const

Definition at line 87 of file qspatialsound.cpp.

References QSpatialSoundPrivate::rotation.

◆ rotationChanged

void QSpatialSound::rotationChanged ( )
signal

Referenced by setRotation().

+ Here is the caller graph for this function:

◆ setAutoPlay()

void QSpatialSound::setAutoPlay ( bool autoPlay)

Definition at line 525 of file qspatialsound.cpp.

References autoPlay, autoPlayChanged(), emit, QBasicAtomicInteger< T >::fetchAndStoreRelaxed(), and QAmbientSoundPrivate::m_autoPlay.

Referenced by QQuick3DSpatialSound::setAutoPlay().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setDirectivity()

void QSpatialSound::setDirectivity ( float alpha)

Definition at line 391 of file qspatialsound.cpp.

References QSpatialSoundPrivate::directivity, directivityChanged(), QSpatialSoundPrivate::directivityOrder, emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), qBound(), and QAmbientSoundPrivate::sourceId.

Referenced by QQuick3DSpatialSound::setDirectivity().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setDirectivityOrder()

void QSpatialSound::setDirectivityOrder ( float alpha)

Definition at line 418 of file qspatialsound.cpp.

References QSpatialSoundPrivate::directivity, directivityChanged(), QSpatialSoundPrivate::directivityOrder, emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), qMax(), and QAmbientSoundPrivate::sourceId.

Referenced by QQuick3DSpatialSound::setDirectivityOrder().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setDistanceCutoff()

void QSpatialSound::setDistanceCutoff ( float cutoff)

Definition at line 310 of file qspatialsound.cpp.

References QSpatialSoundPrivate::distanceCutoff, distanceCutoffChanged(), emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), and QSpatialSoundPrivate::updateDistanceModel().

Referenced by QQuick3DSpatialSound::setDistanceCutoff().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setDistanceModel()

void QSpatialSound::setDistanceModel ( DistanceModel model)

Definition at line 136 of file qspatialsound.cpp.

References QSpatialSoundPrivate::distanceModel, distanceModelChanged(), emit, model, and QSpatialSoundPrivate::updateDistanceModel().

Referenced by QQuick3DSpatialSound::setDistanceModel().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setLoops()

void QSpatialSound::setLoops ( int loops)

Definition at line 505 of file qspatialsound.cpp.

References emit, QBasicAtomicInteger< T >::fetchAndStoreRelaxed(), loops, loopsChanged(), and QAmbientSoundPrivate::m_loops.

Referenced by QQuick3DSpatialSound::setLoops().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setManualAttenuation()

void QSpatialSound::setManualAttenuation ( float attenuation)

Definition at line 334 of file qspatialsound.cpp.

References emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), QSpatialSoundPrivate::manualAttenuation, manualAttenuationChanged(), and QAmbientSoundPrivate::sourceId.

Referenced by QQuick3DSpatialSound::setManualAttenuation().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setNearFieldGain()

void QSpatialSound::setNearFieldGain ( float gain)

Definition at line 444 of file qspatialsound.cpp.

References emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), QSpatialSoundPrivate::nearFieldGain, nearFieldGainChanged(), qBound(), and QAmbientSoundPrivate::sourceId.

Referenced by QQuick3DSpatialSound::setNearFieldGain().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setOcclusionIntensity()

void QSpatialSound::setOcclusionIntensity ( float occlusion)

Definition at line 366 of file qspatialsound.cpp.

References emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), QSpatialSoundPrivate::occlusionIntensity, occlusionIntensityChanged(), QAmbientSoundPrivate::sourceId, and QSpatialSoundPrivate::wallOcclusion.

Referenced by QQuick3DSpatialSound::setOcclusionIntensity().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setPosition()

void QSpatialSound::setPosition ( QVector3D pos)

Definition at line 57 of file qspatialsound.cpp.

References emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), pos, QSpatialSoundPrivate::pos, positionChanged(), and QAmbientSoundPrivate::sourceId.

+ Here is the call graph for this function:

◆ setRotation()

void QSpatialSound::setRotation ( const QQuaternion & q)

Definition at line 78 of file qspatialsound.cpp.

References emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), QSpatialSoundPrivate::rotation, rotationChanged(), and QAmbientSoundPrivate::sourceId.

+ Here is the call graph for this function:

◆ setSize()

void QSpatialSound::setSize ( float size)

Definition at line 285 of file qspatialsound.cpp.

References emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), size, QSpatialSoundPrivate::size, sizeChanged(), and QSpatialSoundPrivate::updateDistanceModel().

Referenced by QQuick3DSpatialSound::setSize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setSource()

void QSpatialSound::setSource ( const QUrl & url)

Definition at line 469 of file qspatialsound.cpp.

References emit, QAmbientSoundPrivate::load(), sourceChanged(), url, and QAmbientSoundPrivate::url.

Referenced by QQuick3DSpatialSound::setSource().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setVolume()

void QSpatialSound::setVolume ( float volume)

Definition at line 100 of file qspatialsound.cpp.

References emit, QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), QAmbientSoundPrivate::sourceId, QAmbientSoundPrivate::volume, volume, volumeChanged(), and QSpatialSoundPrivate::wallDampening.

Referenced by QQuick3DSpatialSound::setVolume().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ size()

float QSpatialSound::size ( ) const

Definition at line 297 of file qspatialsound.cpp.

References QAmbientSoundPrivate::engine, QAudioEnginePrivate::get(), and QSpatialSoundPrivate::size.

+ Here is the call graph for this function:

◆ sizeChanged

void QSpatialSound::sizeChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setSize().

+ Here is the caller graph for this function:

◆ source()

QUrl QSpatialSound::source ( ) const

Definition at line 479 of file qspatialsound.cpp.

References QAmbientSoundPrivate::url.

◆ sourceChanged

void QSpatialSound::sourceChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setSource().

+ Here is the caller graph for this function:

◆ stop

void QSpatialSound::stop ( )
slot

Stops sound playback and resets the current position and current loop count to 0.

Calling play() will start playback at the beginning of the sound file.

Definition at line 552 of file qspatialsound.cpp.

References QAmbientSoundPrivate::stop().

Referenced by QQuick3DSpatialSound::stop().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ volume()

float QSpatialSound::volume ( ) const

Definition at line 111 of file qspatialsound.cpp.

References QAmbientSoundPrivate::volume.

◆ volumeChanged

void QSpatialSound::volumeChanged ( )
signal

Referenced by QQuick3DSpatialSound::QQuick3DSpatialSound(), and setVolume().

+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ QAmbientSoundPrivate

friend class QAmbientSoundPrivate
friend

Definition at line 120 of file qspatialsound.h.

◆ QSpatialSoundPrivate

friend class QSpatialSoundPrivate
friend

Definition at line 121 of file qspatialsound.h.

Property Documentation

◆ autoPlay

QSpatialSound::autoPlay
readwrite

Determines whether the sound should automatically start playing when a source gets specified.

The default value is true.

Definition at line 33 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::autoPlay(), and setAutoPlay().

◆ directivity

QSpatialSound::directivity
readwrite

Defines the directivity of the sound source.

A value of 0 implies that the sound is emitted equally in all directions, while a value of 1 implies that the source mainly emits sound in the forward direction.

Valid values are between 0 and 1, the default is 0.

Definition at line 29 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::directivity().

◆ directivityOrder

QSpatialSound::directivityOrder
readwrite

Defines the order of the directivity of the sound source.

A higher order implies a sharper localization of the sound cone.

The minimum value and default for this property is 1.

Definition at line 30 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::directivityOrder().

◆ distanceCutoff

QSpatialSound::distanceCutoff
readwrite

Defines a distance beyond which sound coming from the source will cutoff.

If the listener is further away from the sound object than the cutoff distance it won't be audible anymore.

Definition at line 26 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::distanceCutoff().

◆ distanceModel

QSpatialSound::distanceModel
readwrite

Defines distance model for this sound source.

The volume starts scaling down from \l size to \l distanceCutoff. The volume is constant for distances smaller than size and zero for distances larger than the cutoff distance.

See also
QSpatialSound::DistanceModel

Definition at line 24 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::distanceModel().

◆ loops

QSpatialSound::loops
readwrite

Determines how many times the sound is played before the player stops.

Set to QSpatialSound::Infinite to play the current sound in a loop forever.

The default value is 1.

Definition at line 32 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::loops(), and setLoops().

◆ manualAttenuation

QSpatialSound::manualAttenuation
readwrite

Defines a manual attenuation factor if \l distanceModel is set to QSpatialSound::DistanceModel::ManualAttenuation.

Definition at line 27 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::manualAttenuation().

◆ nearFieldGain

QSpatialSound::nearFieldGain
readwrite

Defines the near field gain for the sound source.

Valid values are between 0 and 1. A near field gain of 1 will raise the volume of the sound signal by approx 20 dB for distances very close to the listener.

Definition at line 31 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::nearFieldGain().

◆ occlusionIntensity

QSpatialSound::occlusionIntensity
readwrite

Defines how much the object is occluded.

0 implies the object is not occluded at all, 1 implies the sound source is fully occluded by another object.

A fully occluded object will still be audible, but especially higher frequencies will be dampened. In addition, the object will still participate in generating reverb and reflections in the room.

Values larger than 1 are possible to further dampen the direct sound coming from the source.

The default is 0.

Definition at line 28 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::occlusionIntensity().

◆ position

QSpatialSound::position
readwrite

Defines the position of the sound source in 3D space.

Units are in centimeters by default.

See also
QAudioEngine::distanceScale

Definition at line 21 of file qspatialsound.h.

◆ rotation

QSpatialSound::rotation
readwrite

Defines the orientation of the sound source in 3D space.

Definition at line 22 of file qspatialsound.h.

◆ size

QSpatialSound::size
readwrite

Defines the size of the sound source.

If the listener is closer to the sound object than the size, volume will stay constant. The size is also used to for occlusion calculations, where large sources can be partially occluded by a wall.

Definition at line 25 of file qspatialsound.h.

Referenced by setSize(), and QQuick3DSpatialSound::size().

◆ source

QSpatialSound::source
readwrite

The source file for the sound to be played.

Definition at line 20 of file qspatialsound.h.

Referenced by QQuick3DSpatialSound::source().

◆ volume

QSpatialSound::volume
readwrite

Defines the volume of the sound.

Values between 0 and 1 will attenuate the sound, while values above 1 provide an additional gain boost.

Definition at line 23 of file qspatialsound.h.

Referenced by setVolume(), and QQuick3DSpatialSound::volume().


The documentation for this class was generated from the following files: