---
name: "read_sound_input"
section: "3alleg4"
platform: "linux"
package: "allegro4-doc"
version: "2:4.4.3.1-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/read_sound_input/3alleg4"
---

# read\_sound\_input(3alleg4)

Retrieves the last recorded audio buffer. Allegro game programming library.

## NAME

read\_sound\_input - Retrieves the last recorded audio buffer. Allegro game programming library.

## SYNOPSIS

**#include \<allegro.h\>**

**int read\_sound\_input(void \*buffer);**

## DESCRIPTION

Retrieves the most recently recorded audio buffer into the specified  location. The buffer size can be obtained by checking the return value from start\_sound\_input(). You must be sure to call this function at regular intervals during the recording (typically around 100  times a second), or some data will be lost. If you are unable to do this  often enough from the mainline code, use the digi\_recorder() callback to  store the waveform into a larger buffer of your own.

Note: many cards produce a click or popping sound when switching between record and playback modes, so it is often a good idea to discard the first buffer after you start a recording. The waveform is always stored in unsigned format, with stereo data consisting of alternate left/right samples.

## RETURN VALUE

The function will return non-zero if a buffer has been copied or zero if no new data is yet available (you were too fast checking the input).

## SEE ALSO

**start\_sound\_input**(3alleg4)
