Jump to content

Qt for HarmonyOS/qtohosextras doc/Audio Stream Usage Hint Example: Difference between revisions

From Qt Wiki
Add code snippets to example pages (QTFOROH-2307)
Drop manual breadcrumb, MediaWiki renders it automatically (QTFOROH-2307)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
< [[Qt_for_HarmonyOS/qtohosextras_doc|Qt for HarmonyOS / qtohosextras doc]]
= Audio Stream Usage Hint Example =
= Audio Stream Usage Hint Example =


Line 31: Line 29:
'''Note: '''The target object must be a QSoundEffect or QSound instance; other object types are rejected with an error log. The example sets the hint before starting playback.
'''Note: '''The target object must be a QSoundEffect or QSound instance; other object types are rejected with an error log. The example sets the hint before starting playback.


* [[Qt_for_HarmonyOS/qtohosextras_doc/Audio_Stream_Usage_Hint_Example|multimedia/audiostreamusagehint/resources.qrc]]
Files:
 
* [[Qt_for_HarmonyOS/qtohosextras_doc/Audio_Stream_Usage_Hint_Example_-_audiostreamusagehint.pro|multimedia/audiostreamusagehint/audiostreamusagehint.pro]]
* [[Qt_for_HarmonyOS/qtohosextras_doc/Audio_Stream_Usage_Hint_Example_-_main.cpp|multimedia/audiostreamusagehint/main.cpp]]
* [[Qt_for_HarmonyOS/qtohosextras_doc/Audio_Stream_Usage_Hint_Example_-_resources.qrc|multimedia/audiostreamusagehint/resources.qrc]]


[[Category:Qt for HarmonyOS]]
[[Category:Qt for HarmonyOS]]

Latest revision as of 05:20, 17 September 2026

Audio Stream Usage Hint Example

Demonstrates tagging Qt sound playback with an OHOS audio stream usage hint.


A combo box lists all QtOhosExtras::Multimedia::AudioStreamUsageHint values. Two buttons play a bundled sound either through QSoundEffect or through QSound; before playback the selected hint is applied with Multimedia::setAudioStreamUsageHintProperty(). The hint influences how the system routes the audio and which volume policy applies.

For QSoundEffect the hint is set before the source is assigned and playback starts:

     auto *soundEffect = new QSoundEffect(this);
     QtOhosExtras::Multimedia::setAudioStreamUsageHintProperty(soundEffect, selectedAudioRole());
     soundEffect->setSource(QUrl(QString::fromLatin1("qrc:/test.wav")));
     soundEffect->setLoopCount(1);

The same function works for QSound:

     auto *sound = new QSound(QString::fromLatin1(":/test.wav"), this);
     QtOhosExtras::Multimedia::setAudioStreamUsageHintProperty(sound, selectedAudioRole());

Note: The target object must be a QSoundEffect or QSound instance; other object types are rejected with an error log. The example sets the hint before starting playback.

Files: