---
name: "SDL::AudioCVT"
section: "3pm"
platform: "linux"
package: "libsdl-perl"
version: "2.548-5+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SDL::AudioCVT"
---

# SDL::AudioCVT(3pm)

## NAME

SDL::AudioCVT -- Audio Conversion Structure

## CATEGORY

Core, Audio, Structure

## SYNOPSIS

## DESCRIPTION

The `"SDL::AudioCVT"` is used to convert audio data between different formats. A `"SDL::AudioCVT"` structure is created with the  `"SDL::AudioCVT-"`build\> function, while the actual conversion is done by the `"SDL::Audio::convert_audio"` function.

## METHODS

### new

This constructor returns an empty `"SDL::AudioCVT"` structure.

### build

```
 $cvt = SDL::AudioCVT->build( $src_format, $src_channels, $src_rate
                              $dst_format, $dst_channels, $dst_rate );
```

Before an `"SDL::AudioCVT"` structure can be used to convert audio data it must be initialized with source and destination information.

`"src_format"` and `"dst_format"` are the source and destination format of the conversion. (For information on audio formats see  `"SDL::AudioSpec"`). `"src_channels"` and `"dst_channels"` are the number of channels in the source and destination formats.  Finally, `"src_rate"` and `"dst_rate"` are the frequency or samples-per-second of the source and destination formats. Once again,  see `"SDL::AudioSpec"`.

Currently (SDL-1.2.11) only rate conversions of 2x and (1/2)x with x \> 0 are done, nearing the requested rate conversion.

See `"SDL::Audio::convert_audio"`.

### needed

Set to one if the conversion is possible

### src\_format

Audio format of the source

### dest\_format

Audio format of the destination

### rate\_incr

Rate conversion increment

### len

Length of the original audio buffer in bytes

### len\_cvt

Length of converted audio buffer in bytes (calculated)

### len\_mult

`"buf"` must be `"len*len_mult"` bytes in size (calculated)

### len\_ratio

Final audio size is `"len*len_ratio"`

## AUTHORS

See "AUTHORS" in SDL.
