From d26eba2fad30b2bf23135d0e9b203fdee2a935b5 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sat, 27 Sep 2008 20:49:23 +0000 Subject: volume control api git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@568 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Output/alsa/outputalsa.h | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) (limited to 'src/plugins/Output/alsa/outputalsa.h') diff --git a/src/plugins/Output/alsa/outputalsa.h b/src/plugins/Output/alsa/outputalsa.h index a3bb817ee..abf7cb1e5 100644 --- a/src/plugins/Output/alsa/outputalsa.h +++ b/src/plugins/Output/alsa/outputalsa.h @@ -25,22 +25,27 @@ class OutputALSA; #include -extern "C" { +extern "C" +{ #include } #include +#include class OutputALSA : public Output { -Q_OBJECT + Q_OBJECT public: OutputALSA(QObject * parent = 0, bool useVolume = TRUE); ~OutputALSA(); bool initialize(); - bool isInitialized() const { return m_inited; } + bool isInitialized() const + { + return m_inited; + } void uninitialize(); void configure(quint32, int, int); void stop(); @@ -71,6 +76,29 @@ private: snd_pcm_uframes_t m_chunk_size; size_t m_bits_per_frame; + //alsa mixer + /*int setupMixer(QString card, QString device); + void parseMixerName(char *str, char **name, int *index); + int getMixer(snd_mixer_t **mixer, QString card); + snd_mixer_elem_t* getMixerElem(snd_mixer_t *mixer, char *name, int index); + snd_mixer_t *mixer; + snd_mixer_elem_t *pcm_element;*/ + bool m_use_mmap; +}; + +class VolumeControlALSA : public VolumeControl +{ + Q_OBJECT +public: + VolumeControlALSA(QObject *parent = 0); + ~VolumeControlALSA(); + + void setVolume(int left, int right) ; + +protected: + void volume(int *left, int *right); + +private: //alsa mixer int setupMixer(QString card, QString device); void parseMixerName(char *str, char **name, int *index); -- cgit v1.2.3-13-gbd6f