46 lines
1.3 KiB
C
46 lines
1.3 KiB
C
/*
|
|
audio: audio output interface
|
|
|
|
This is what is left after separating out libout123.
|
|
|
|
copyright ?-2015 by the mpg123 project - free software under the terms of the LGPL 2.1
|
|
see COPYING and AUTHORS files in distribution or http://mpg123.org
|
|
initially written by Michael Hipp
|
|
*/
|
|
|
|
/*
|
|
* Audio 'LIB' defines
|
|
*/
|
|
|
|
|
|
#ifndef _MPG123_AUDIO_H_
|
|
#define _MPG123_AUDIO_H_
|
|
|
|
#include "compat/compat.h"
|
|
#include "mpg123.h"
|
|
#include "out123.h"
|
|
|
|
#define pitch_rate(rate) (param.pitch == 0 ? (rate) : (long) ((param.pitch+1.0)*(rate)))
|
|
#define bpitch_rate(rate) (param.pitch == 0 ? (rate) : (long) ((rate)/(param.pitch+1.0)))
|
|
|
|
|
|
void audio_cleanup(void);
|
|
int audio_setup(out123_handle *ao, mpg123_handle *mh);
|
|
int audio_prepare( out123_handle *ao, mpg123_handle *mh
|
|
, long rate, int channels, int encoding );
|
|
size_t audio_play(out123_handle *ao, void *buffer, size_t bytes);
|
|
|
|
mpg123_string* audio_enclist(void);
|
|
void print_capabilities(out123_handle *ao, mpg123_handle *mh);
|
|
|
|
/*
|
|
Twiddle audio output rate to yield speedup/down (pitch) effect.
|
|
The actually achieved pitch value is stored in param.pitch.
|
|
Returns 1 if pitch setting succeeded, 0 otherwise.
|
|
*/
|
|
int set_pitch(mpg123_handle *fr, out123_handle *ao, double new_pitch);
|
|
// Enable/disable software mute state.
|
|
int set_mute(out123_handle *ao, int mutestate);
|
|
|
|
#endif
|
|
|