aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Output/jack
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-04-19 15:39:21 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2013-04-19 15:39:21 +0000
commitbf5722c868e1fa72980c5050c56effe66a70662e (patch)
tree197e636855623fca22976cb819d49de3e1166a54 /src/plugins/Output/jack
parentc6a6477388f34ef87cc75fc6d719e8de99d2c0f6 (diff)
downloadqmmp-bf5722c868e1fa72980c5050c56effe66a70662e.tar.gz
qmmp-bf5722c868e1fa72980c5050c56effe66a70662e.tar.bz2
qmmp-bf5722c868e1fa72980c5050c56effe66a70662e.zip
jack plugin: fixed 24/32 samples support
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3403 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Output/jack')
-rw-r--r--src/plugins/Output/jack/outputjack.cpp18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/plugins/Output/jack/outputjack.cpp b/src/plugins/Output/jack/outputjack.cpp
index 9d8a0eace..6adf9a907 100644
--- a/src/plugins/Output/jack/outputjack.cpp
+++ b/src/plugins/Output/jack/outputjack.cpp
@@ -50,13 +50,27 @@ OutputJACK::~OutputJACK()
bool OutputJACK::initialize(quint32 freq, int chan, Qmmp::AudioFormat format)
{
qDebug("OutputJACK: initialize");
- if(JACK_Open(&jack_device, AudioParameters::sampleSize(format)*8, (unsigned long *)&freq, chan))
+ int bits = 0;
+ Qmmp::AudioFormat input_format = Qmmp::PCM_S8;
+ switch(format)
+ {
+ case Qmmp::PCM_S8:
+ bits = 8;
+ input_format = Qmmp::PCM_S8;
+ break;
+ default:
+ bits = 16;
+ input_format = Qmmp::PCM_S16LE;
+ }
+
+
+ if(JACK_Open(&jack_device, bits, (unsigned long *)&freq, chan))
{
m_inited = false;
return false;
}
m_inited = true;
- configure(freq, chan, format);
+ configure(freq, chan, input_format);
return true;
}