Aria
2.8.0
|
This class provides a cross-platform interface for playing short sound samples. More...
#include <ArSoundPlayer.h>
Static Public Member Functions | |
static ArRetFunctor2< bool, const char *, const char * > * | getPlayWavFileCallback () |
Return the static functor for playWavFile. | |
static ArFunctor * | getStopPlayingCallback () |
Return the static functor for stopPlaying(). | |
static bool | playNativeFile (const char *filename, const char *params) |
Play a file in some native file format for the compilation platform. | |
static bool | playSoundPCM16 (char *data, int numSamples) |
Play raw uncompressed PCM16 sound data. More... | |
static bool | playWavFile (const char *filename) |
static bool | playWavFile (const char *filename, const char *params) |
Play a WAV (Windows RIFF) file. More... | |
static void | setVolume (double v) |
Set a volume adjustment applied to all sounds right before playing. More... | |
static void | setVolumePercent (double pct) |
Set volume as a "percent" of normal, where 100% is normal or natural volume, 50% is increased by 50%, -50% is decreased by 50%, etc. More... | |
static void | stopPlaying () |
Cancel (interrupt) any current sound or file playback. | |
Static Protected Attributes | |
static int | ourPlayChildPID = -1 |
Only used on Linux. | |
static ArGlobalRetFunctor2< bool, const char *, const char * > | ourPlayWavFileCB |
static ArGlobalFunctor | ourStopPlayingCB |
static double | ourVolume = 1.0 |
This class provides a cross-platform interface for playing short sound samples.
(Currently implemented for Windows and Linux).
The volume (level) of audio output from a robot is determined by two things: the computer sound device mixer, and also the amplifier which drives the speakers. The computer's mixer can be adjusted through the operating system: on Linux, you can use the 'aumix' program to adjust the Master and PCM levels. On Windows, use the Windows mixer program. If on Linux, ArSoundPlayer also prodives the setVolume() method, which adjusts the volume of the sound before it is played.
|
static |
Play raw uncompressed PCM16 sound data.
The format of this data is numSamples samples of two bytes each. Each byte pair is a signed little endian integer. The sound will be played back at 16kHz, monaurally.
|
static |
Play a WAV (Windows RIFF) file.
filename | Name of the file to play |
params | ignored |
|
static |
Set a volume adjustment applied to all sounds right before playing.
(So this adjusts the volume in addition to, not instead of, the computer audio mixer). Any value less than or equal to 0 is no volume i.e. muted or no output.
|
static |
Set volume as a "percent" of normal, where 100% is normal or natural volume, 50% is increased by 50%, -50% is decreased by 50%, etc.
(-100.0% is no volume, or mute.)