aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Output
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-03-05 14:25:03 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-03-05 14:25:03 +0000
commitd0175f9a6b22c72642d43819ce873d03be3f455f (patch)
tree1a4ab7f60ec5d922ad5864852e8787daf5be9340 /src/plugins/Output
parentc1c9c6be73a86b910b25069907e204cc6e7ed6e0 (diff)
downloadqmmp-d0175f9a6b22c72642d43819ce873d03be3f455f.tar.gz
qmmp-d0175f9a6b22c72642d43819ce873d03be3f455f.tar.bz2
qmmp-d0175f9a6b22c72642d43819ce873d03be3f455f.zip
added item skip limit
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@820 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Output')
-rw-r--r--src/plugins/Output/oss/outputoss.cpp18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/plugins/Output/oss/outputoss.cpp b/src/plugins/Output/oss/outputoss.cpp
index 51e36e90f..49a4c5793 100644
--- a/src/plugins/Output/oss/outputoss.cpp
+++ b/src/plugins/Output/oss/outputoss.cpp
@@ -129,6 +129,7 @@ void OutputOSS::configure(long freq, int chan, int prec, int rate)
// we need to configure
if (freq != m_frequency || chan != m_channels || prec != m_precision)
{
+ qDebug("OutputOSS: frequency=%d, channels=%d, bits=%d", freq, chan, prec);
// we have already configured, but are changing settings...
// reset the device
resetDSP();
@@ -157,11 +158,18 @@ void OutputOSS::configure(long freq, int chan, int prec, int rate)
}
- ioctl(m_audio_fd, SNDCTL_DSP_SETFMT, &p);
- ioctl(m_audio_fd, SNDCTL_DSP_SAMPLESIZE, &prec);
- int stereo = (chan > 1) ? 1 : 0;
- ioctl(m_audio_fd, SNDCTL_DSP_STEREO, &stereo);
- ioctl(m_audio_fd, SNDCTL_DSP_SPEED, &freq);
+ if (ioctl(m_audio_fd, SNDCTL_DSP_SETFMT, &p) == -1)
+ qWarning("OutputOSS: can't set audio format");
+ /*if(ioctl(m_audio_fd, SNDCTL_DSP_SAMPLESIZE, &prec) == -1)
+ qDebug("OutputOSS: can't set audio format");*/
+ /*int stereo = (chan > 1) ? 1 : 0;
+ ioctl(m_audio_fd, SNDCTL_DSP_STEREO, &stereo);*/
+ if (ioctl(m_audio_fd, SNDCTL_DSP_SPEED, &m_channels) == -1)
+ qWarning("OutputOSS: can't set number of channels");
+ if (chan != m_channels)
+ qWarning("OutputOSS: can't set number of channels, using %d instead", m_channels);
+ if (ioctl(m_audio_fd, SNDCTL_DSP_SPEED, &freq) == -1)
+ qWarning("OutputOSS: can't set audio format");
}
m_rate = rate;