# sound.cpp File Reference

Handling of playing sounds. More...

`#include "stdafx.h"`
`#include "landscape.h"`
`#include "mixer.h"`
`#include "newgrf_sound.h"`
`#include "fios.h"`
`#include "window_gui.h"`
`#include "vehicle_base.h"`
`#include "base_media_func.h"`

Go to the source code of this file.

## Defines

#define | SET_TYPE "sounds"
#define | PANNING_LEVELS 16

## Functions

static void | OpenBankFile (const char *filename)
static bool | SetBankSource (MixerChannel *mc, const SoundEntry *sound)
void | InitializeSound ()
static void | StartSound (SoundID sound_id, int panning, uint volume)
| assert_compile (lengthof(_vol_factor_by_zoom)==ZOOM_LVL_COUNT)
void | SndCopyToPool ()
static void | SndPlayScreenCoordFx (SoundID sound, int left, int right, int top, int bottom)
| Decide 'where' (between left and right speaker) to play the sound effect.
void | SndPlayTileFx (SoundID sound, TileIndex tile)
void | SndPlayVehicleFx (SoundID sound, const Vehicle *v)
void | SndPlayFx (SoundID sound)

## Variables

static SoundEntry | _original_sounds [ORIGINAL_SAMPLE_COUNT]
MusicFileSettings | msf
static const byte | _vol_factor_by_zoom [] = {255, 190, 134, 87}
static const byte | _sound_base_vol []
static const byte | _sound_idx []
static const char *const | _sound_file_names [] = { "samples" }
| Names corresponding to the sound set's files.

## Detailed Description

Handling of playing sounds.

Definition in file sound.cpp.

## Function Documentation

static void SndPlayScreenCoordFx | ( | SoundID | sound,
|  | int | left,
|  | int | right,
|  | int | top,
|  | int | bottom |
| ) |  |  | `[static]`

Decide 'where' (between left and right speaker) to play the sound effect.

Parameters:

  | sound | Sound effect to play
  | left | Left edge of virtual coordinates where the sound is produced
  | right | Right edge of virtual coordinates where the sound is produced
  | top | Top edge of virtual coordinates where the sound is produced
  | bottom | Bottom edge of virtual coordinates where the sound is produced

Definition at line 228 of file sound.cpp.

References Window::viewport, ViewPort::virtual_height, ViewPort::virtual_left, ViewPort::virtual_top, and ViewPort::virtual_width.

## Variable Documentation

const byte _sound_base_vol[]`[static]`

Initial value:

     {
      128,  90, 128, 128, 128, 128, 128, 128,
      128,  90,  90, 128, 128, 128, 128, 128,
      128, 128, 128,  80, 128, 128, 128, 128,
      128, 128, 128, 128, 128, 128, 128, 128,
      128, 128,  90,  90,  90, 128,  90, 128,
      128,  90, 128, 128, 128,  90, 128, 128,
      128, 128, 128, 128,  90, 128, 128, 128,
      128,  90, 128, 128, 128, 128, 128, 128,
      128, 128,  90,  90,  90, 128, 128, 128,
       90,
    }

Definition at line 184 of file sound.cpp.

const byte _sound_idx[]`[static]`

Initial value:

     {
       2,  3,  4,  5,  6,  7,  8,  9,
      10, 11, 12, 13, 14, 15, 16, 17,
      18, 19, 20, 21, 22, 23, 24, 25,
      26, 27, 28, 29, 30, 31, 32, 33,
      34, 35, 36, 37, 38, 39, 40,  0,
       1, 41, 42, 43, 44, 45, 46, 47,
      48, 49, 50, 51, 52, 53, 54, 55,
      56, 57, 58, 59, 60, 61, 62, 63,
      64, 65, 66, 67, 68, 69, 70, 71,
      72,
    }

Definition at line 197 of file sound.cpp.