Mercurial > sdl-ios-xcode
view docs/man3/SDL_AudioCVT.3 @ 864:0c892e99b65b
Date: Sun, 29 Feb 2004 20:28:27 +0200
From: Martin_Storsj
Subject: Slight bug in ESD and aRts
When I experimented with the ALSA-patch, I found a slight bug in the
Load{ESD,ARTS}Library-functions. The check of whether a function pointer
was correctly loaded looks like this right now:
*esd_functions[i].func = SDL_LoadFunction(esd_handle,
esd_functions[i].name);
if ( ! esd_functions[i].func )
Isn't that supposed to be ( ! *esd_functions[i].func )?
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Tue, 02 Mar 2004 12:45:22 +0000 |
parents | e5bc29de3f0a |
children | 546f7c1eb755 |
line wrap: on
line source
.TH "SDL_AudioCVT" "3" "Tue 11 Sep 2001, 22:58" "SDL" "SDL API Reference" .SH "NAME" SDL_AudioCVT\- Audio Conversion Structure .SH "STRUCTURE DEFINITION" .PP .nf \f(CWtypedef struct{ int needed; Uint16 src_format; Uint16 dest_format; double rate_incr; Uint8 *buf; int len; int len_cvt; int len_mult; double len_ratio; void (*filters[10])(struct SDL_AudioCVT *cvt, Uint16 format); int filter_index; } SDL_AudioCVT;\fR .fi .PP .SH "STRUCTURE DATA" .TP 20 \fBneeded\fR Set to one if the conversion is possible .TP 20 \fBsrc_format\fR Audio format of the source .TP 20 \fBdest_format\fR Audio format of the destination .TP 20 \fBrate_incr\fR Rate conversion increment .TP 20 \fBbuf\fR Audio buffer .TP 20 \fBlen\fR Length of the original audio buffer in bytes .TP 20 \fBlen_cvt\fR Length of converted audio buffer in bytes (calculated) .TP 20 \fBlen_mult\fR \fBbuf\fR must be \fBlen\fR*\fBlen_mult\fR bytes in size(calculated) .TP 20 \fBlen_ratio\fR Final audio size is \fBlen\fR*\fBlen_ratio\fR .TP 20 \fBfilters[10](\&.\&.)\fR Pointers to functions needed for this conversion .TP 20 \fBfilter_index\fR Current conversion function .SH "DESCRIPTION" .PP The \fBSDL_AudioCVT\fR is used to convert audio data between different formats\&. A \fBSDL_AudioCVT\fR structure is created with the \fI\fBSDL_BuildAudioCVT\fP\fR function, while the actual conversion is done by the \fI\fBSDL_ConvertAudio\fP\fR function\&. .PP Many of the fields in the \fBSDL_AudioCVT\fR structure should be considered private and their function will not be discussed here\&. .IP "\fBUint8 *\fP\fBbuf\fR" 10This points to the audio data that will be used in the conversion\&. It is both the source and the destination, which means the converted audio data overwrites the original data\&. It also means that the converted data may be larger than the original data (if you were converting from 8-bit to 16-bit, for instance), so you must ensure \fBbuf\fR is large enough\&. See below\&. .IP "\fBint\fP \fBlen\fR" 10This is the length of the original audio data in bytes\&. .IP "\fBint\fP \fBlen_mult\fR" 10As explained above, the audio buffer needs to be big enough to store the converted data, which may be bigger than the original audio data\&. The length of \fBbuf\fR should be \fBlen\fR*\fBlen_mult\fR\&. .IP "\fBdouble\fP \fBlen_ratio\fR" 10When you have finished converting your audio data, you need to know how much of your audio buffer is valid\&. \fBlen\fR*\fBlen_ratio\fR is the size of the converted audio data in bytes\&. This is very similar to \fBlen_mult\fR, however when the convert audio data is shorter than the original \fBlen_mult\fR would be 1\&. \fBlen_ratio\fR, on the other hand, would be a fractional number between 0 and 1\&. .SH "SEE ALSO" .PP \fI\fBSDL_BuildAudioCVT\fP\fR, \fI\fBSDL_ConvertAudio\fP\fR, \fI\fBSDL_AudioSpec\fR\fR ...\" created by instant / docbook-to-man, Tue 11 Sep 2001, 22:58