aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Output/pulseaudio/outputpulseaudio.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-05-02 09:11:23 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-05-02 09:11:23 +0000
commit0f7c8bfbce24019d41a2e0de795d4f7e435c4aca (patch)
tree3b76347b3cdd2b116893d2e81a7a742b3dfc5f48 /src/plugins/Output/pulseaudio/outputpulseaudio.cpp
parent734470a08a900d5e7a4c9e92a3b5f39d0749485f (diff)
downloadqmmp-0f7c8bfbce24019d41a2e0de795d4f7e435c4aca.tar.gz
qmmp-0f7c8bfbce24019d41a2e0de795d4f7e435c4aca.tar.bz2
qmmp-0f7c8bfbce24019d41a2e0de795d4f7e435c4aca.zip
pulse audio plugin: 32-bit samples support
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@925 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Output/pulseaudio/outputpulseaudio.cpp')
-rw-r--r--src/plugins/Output/pulseaudio/outputpulseaudio.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/plugins/Output/pulseaudio/outputpulseaudio.cpp b/src/plugins/Output/pulseaudio/outputpulseaudio.cpp
index ba92c7e7f..7243c7c04 100644
--- a/src/plugins/Output/pulseaudio/outputpulseaudio.cpp
+++ b/src/plugins/Output/pulseaudio/outputpulseaudio.cpp
@@ -50,7 +50,20 @@ OutputPulseAudio::~OutputPulseAudio()
void OutputPulseAudio::configure(quint32 freq, int chan, int prec)
{
pa_sample_spec ss;
- ss.format = PA_SAMPLE_S16LE;
+
+ switch (prec)
+ {
+ case 8:
+ ss.format = PA_SAMPLE_U8;
+ break;
+ case 32:
+ ss.format = PA_SAMPLE_S32LE;
+ break;
+ case 16:
+ default:
+ ss.format = PA_SAMPLE_S16LE;
+ }
+
ss.channels = chan;
ss.rate = freq;
int error;
@@ -69,7 +82,7 @@ void OutputPulseAudio::configure(quint32 freq, int chan, int prec)
qWarning("OutputPulseAudio: pa_simple_new() failed: %s", pa_strerror(error));
return;
}
- qDebug("OutputPulseAudio: frequency=%d, channels=%d", uint(freq), chan);
+ qDebug("OutputPulseAudio: frequency=%d, channels=%d, bits=%d", uint(freq), chan, prec);
Output::configure(freq, chan, prec);
}