SoAudioDevice(3)

πŸ“¦ version 3.1.3, in fedora 43, fedora 44

πŸ’– SoAudioDevice β€” the manual page, but make it cute πŸ’–

okay bestie, welcome to SoAudioDevice(3), from the Library Functions Manual β€” this is the whole thing, no skips, no cap. 🎧✨


🌸 NAME 🌸

SoAudioDevice β€” the class that's literally here to control an audio device. that's the job. that's the whole vibe.


πŸŽ€ SYNOPSIS πŸŽ€

#include <Inventor/misc/SoAudioDevice.h>

✨ Public Member Functions ✨

SbBool init (const SbString &devicetype, const SbString &devicename)
SbBool enable ()
void disable ()
SbBool isEnabled ()
SbBool haveSound ()
void setGain (float gain)
void mute (SbBool mute=TRUE)

πŸ¦‹ Static Public Member Functions πŸ¦‹

static SoAudioDevice * instance ()

πŸ’… Detailed Description πŸ’…

so. the SoAudioDevice class is used to control an audio device. periodt.

it's the one responsible for initializing an audio device, plus enabling and disabling sound. and it's a singleton class β€” one of it, one of it only, main character energy fr. πŸ‘‘

good news for you, the application programmer: you do not need to use this class directly, because audio support is enabled by default and the default settings are, honestly, reasonable. she's already handling it. 🫢

Coin uses OpenAL (http://www.openal.org/, http://developer.soundblaster.com [Games section]) to render audio. OpenAL should work with any soundcard, and on most modern operating systems (including Unix, Linux, IRIX, *BSD, Mac OS X and Microsoft Windows). 2 speaker output is always available, and on some OS and soundcard combos, more advanced speaker configurations are supported too. On Microsoft Windows, OpenAL can use DirectSound3D to render audio, which means it supports any speaker configuration the current DirectSound3D driver supports. configuring speakers is done through the soundcard driver, and it's transparent to both Coin and OpenAL. no notes. 🌈


⭐ Member Function Documentation ⭐

🌟 SoAudioDevice * SoAudioDevice::instance () [static] 🌟

returns a pointer to the SoAudioDevice class, which is a singleton. the one and only. πŸ’«

🌟 SbBool SoAudioDevice::init (const SbString & devicetype, const SbString & devicename) 🌟

initializes the audio device. rn, the only supported devicetype is "OpenAL". the supported devicename depends on your OS and on the soundcards and drivers you've got installed. On Microsoft Windows, supported device names are "DirectSound3D", "DirectSound", and "MMSYSTEM". see the OpenAL documentation (available from http://www.openal.org/) for further info. πŸ“š

the application programmer may override the default setting by calling this method with the wanted device type and name. you got options, bestie.

the user can also control which devicename OpenAL uses by setting the COIN_SOUND_DRIVER_NAME environment variable. πŸ‘€ On Microsoft Windows, the default driver name is "DirectSound3D", which should normally be what the user wants. trust.

🌟 SbBool SoAudioDevice::enable () 🌟

enables sound πŸ”ŠπŸ”₯

🌟 void SoAudioDevice::disable () 🌟

disables sound. effectively silencing all audio output. 🀫 (dramatic but accurate β€” it's silencing all of it.)

🌟 SbBool SoAudioDevice::isEnabled () 🌟

returns TRUE if audio is enabled. βœ…

🌟 SbBool SoAudioDevice::haveSound () 🌟

returns true if the audio device has been initialized successfully. πŸŽ‰

not me noticing setGain and mute show up in the member function list up top without their own documentation entries down here β€” that's just how the page is, babes. the list is the list. πŸ’€

πŸ‘‘ Author πŸ‘‘

generated automatically by Doxygen for Coin from the source code. slay, robot. πŸ€–πŸ’–


and that's the whole page, no detail left behind, iykyk. this little love letter came to you from Coin, Version 3.1.3, and it's the SoAudioDevice(3) page β€” so if you ever need to look her up again, that's the name, that's the number, that's the date stamp. bye bestie, go make some noise πŸŽ΅πŸ¦‹βœ¨

πŸ“¦ where this page comes from