summaryrefslogtreecommitdiff
authorzecke <zecke>2003-10-07 13:02:55 (UTC)
committer zecke <zecke>2003-10-07 13:02:55 (UTC)
commit75f35445e9f3ec2f730f779d67f4189296bd9c5e (patch) (side-by-side diff)
tree58d137879aefe506af087f5a75e29f60b5aaae0a
parentd72a9cfe61cbc0910373e4604220021ebbcedaeb (diff)
downloadopie-75f35445e9f3ec2f730f779d67f4189296bd9c5e.zip
opie-75f35445e9f3ec2f730f779d67f4189296bd9c5e.tar.gz
opie-75f35445e9f3ec2f730f779d67f4189296bd9c5e.tar.bz2
instead of testing for QWS_EBX we now define OPIE_NO_SOUND_PCM_READ_BITS.
If your platform does not have that ioctl define it
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opierec/device.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/noncore/multimedia/opierec/device.cpp b/noncore/multimedia/opierec/device.cpp
index f9a80c5..11071d8 100644
--- a/noncore/multimedia/opierec/device.cpp
+++ b/noncore/multimedia/opierec/device.cpp
@@ -1,15 +1,15 @@
// device.cpp
#include "device.h"
#include <qpe/config.h>
#include <qpe/qcopenvelope_qws.h>
-
+#include <qpe/custom.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/ioctl.h>
#include <sys/soundcard.h>
#include <unistd.h>
#include<sys/wait.h>
@@ -21,17 +21,17 @@
//extern QtRec *qperec;
Device::Device( QObject * parent, const char * dsp, const char * mixr, bool record )
: QObject( parent)
{
dspstr = (char *)dsp;
mixstr = (char *)mixr;
-
+
devForm=-1;
devCh=-1;
devRate=-1;
if( !record){ //playing
qDebug("setting up DSP for playing");
flags = O_WRONLY;
} else { //recording
@@ -139,17 +139,17 @@ int Device::openDevice( int flags) {
perror ("Error creating pipe");
exit(1);
}
switch (pid = fork()) {
case -1:
perror("The fork failed!");
break;
case 0: {
- */
+ */
if (( sd = ::open( dspstr, flags)) == -1) {
perror("open(\"/dev/dsp\")");
QString errorMsg="Could not open audio device\n /dev/dsp\n"
+(QString)strerror(errno);
qDebug(errorMsg);
return -1;
}
@@ -171,40 +171,40 @@ exit(1);
*/
/* close(pipefd[0]);
write(pipefd[1], message, sizeof(message));
close(pipefd[1]);
// qDebug("%d",soundDevice->sd );
_exit(0);
}
default:
- // pid greater than zero is parent getting the child's pid
+ // pid greater than zero is parent getting the child's pid
printf("Child's pid is %d\n",pid);
QString s;
close(pipefd[1]);
read(pipefd[0], message, sizeof(message));
s = message;
close(pipefd[0]);
-
+
// while(wait(NULL)!=pid)
// ;
printf("child %ld terminated normally, return status is zero\n", (long) pid);
*/
// filePara.sd=(long) pid;
/* QFile f2("/pid");
f2.open(IO_ReadOnly);
QTextStream t(&f2);
// for(int f=0; f < t.atEnd() ;f++) {
s = t.readLine();
// }
*/
// bool ok;
// sd = s.toInt(&ok, 10);
// qDebug("<<<<<<<<<<<<<>>>>>>>>>>>>"+s);
-
+
// f2.close();
// }
::close(mixerHandle );
qDebug("open device %s", dspstr);
qDebug("success! %d",sd);
return sd;
}
@@ -285,17 +285,17 @@ int Device::getDeviceRate() {
perror("ioctl(\"SNDCTL_PCM_READ_RATE\")");
}
return dRate;
}
int Device::getDeviceBits() {
int dBits=0;
-#ifndef QT_QWS_EBX // zaurus doesnt have this
+#if !defined(OPIE_NO_SOUND_PCM_READ_BITS) // zaurus doesnt have this
if (ioctl( sd, SOUND_PCM_READ_BITS, &dBits) == -1) {
perror("ioctl(\"SNDCTL_PCM_READ_BITS\")");
}
#endif
return dBits;
}
int Device::getDeviceChannels() {
@@ -303,17 +303,17 @@ int Device::getDeviceChannels() {
if (ioctl( sd, SOUND_PCM_READ_CHANNELS, &dCh) == -1) {
perror("ioctl(\"SNDCTL_PCM_READ_CHANNELS\")");
}
return dCh;
}
int Device::getDeviceFragSize() {
int frag_size;
-
+
if (ioctl( sd, SNDCTL_DSP_GETBLKSIZE, &frag_size) == -1) {
qDebug("no fragsize");
} else
qDebug("driver says frag size is %d", frag_size);
return frag_size;
}
bool Device::setFragSize(int frag) {