view mixer.h @ 23968:a9c0184eedcb

r23687: Implemented tv://[<channel>][/<input_id>] url syntax r23748: Leave out (no) prefix from option names for consistency. r23852: af channels example for ffdca to ALSA reordering r23856: small wording improvement r23897: Experimental negative panscan values r23898: Set -vo gl slice-height default to 0 r23917: Document -rawvideo format="format string" r23920 + r23924: Teletext support r23926: update man page with v4l2 a/v outputs r23978: add possibly incorrect subfont entry r23982: i_certify_that_my_video_stream_does_not_use_b_frames is gone. r23984: Added FIXME skeletons for missing lavc options.
author kraymer
date Wed, 01 Aug 2007 09:55:57 +0000
parents 88bed2131f19
children 21a1dc062bc5
line wrap: on
line source

#ifndef MPLAYER_MIXER_H
#define MPLAYER_MIXER_H

#include "libaf/af.h"
#include "libao2/audio_out.h"

extern char * mixer_device;
extern char * mixer_channel;
extern int soft_vol;
extern float soft_vol_max;

typedef struct mixer_s {
    ao_functions_t *audio_out;
    af_stream_t *afilter;
    int volstep;
    int muted;
    float last_l, last_r;
} mixer_t;

void mixer_getvolume(mixer_t *mixer, float *l, float *r);
void mixer_setvolume(mixer_t *mixer, float l, float r);
void mixer_incvolume(mixer_t *mixer);
void mixer_decvolume(mixer_t *mixer);
void mixer_getbothvolume(mixer_t *mixer, float *b);
void mixer_mute(mixer_t *mixer);
void mixer_getbalance(mixer_t *mixer, float *bal);
void mixer_setbalance(mixer_t *mixer, float bal);

//extern void mixer_setbothvolume( int v );
#define mixer_setbothvolume(m, v) mixer_setvolume(m, v, v)

#endif /* MPLAYER_MIXER_H */