summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opierec/main.cpp13
-rw-r--r--noncore/multimedia/opierec/opierec.pro30
-rw-r--r--noncore/multimedia/opierec/qtrec.cpp121
-rw-r--r--noncore/multimedia/opierec/qtrec.h7
-rw-r--r--noncore/multimedia/opierec/wavFile.cpp3
5 files changed, 127 insertions, 47 deletions
diff --git a/noncore/multimedia/opierec/main.cpp b/noncore/multimedia/opierec/main.cpp
index e36d050..714907c 100644
--- a/noncore/multimedia/opierec/main.cpp
+++ b/noncore/multimedia/opierec/main.cpp
@@ -13,6 +13,17 @@
#include <qpe/qpeapplication.h>
-#include <opie/oapplicationfactory.h>
+#ifdef PDAUDIO
+int main(int argc, char* argv[]) {
+ QPEApplication a(argc, argv);
+ QtRec qtrec;
+ a.showMainWidget( &qtrec);
+ return a.exec();
+}
+
+
+#else
+#include <opie/oapplicationfactory.h>
OPIE_EXPORT_APP( OApplicationFactory<QtRec> )
+#endif
diff --git a/noncore/multimedia/opierec/opierec.pro b/noncore/multimedia/opierec/opierec.pro
index b607c09..39fe493 100644
--- a/noncore/multimedia/opierec/opierec.pro
+++ b/noncore/multimedia/opierec/opierec.pro
@@ -1,2 +1,3 @@
-CONFIG = qt warn_on release
+#CONFIG = qt qtopia warn_on release pdaudio
+CONFIG = qt warn_on release opie
#CONFIG = qt warn_on release quick-app
@@ -16,11 +17,24 @@ SOURCES = adpcm.c \
waveform.cpp
-INCLUDEPATH += $(OPIEDIR)/include
-DEPENDPATH += $(OPIEDIR)/include
-#LIBS += -L/opt/buildroot-opie/output/staging/target/lib -lqpe -lpthread -ljpeg -lpng -lz
-LIBS += -lqpe -lpthread
INTERFACES =
-TARGET = opierec
-DESTDIR=$(OPIEDIR)/bin
-include ( $(OPIEDIR)/include.pro )
+contains(CONFIG, pdaudio) {
+# LIBS += -L/opt/buildroot-opie/output/staging/target/lib -lqpe -lpthread -ljpeg -lpng -lz
+ LIBS += -L$(QPEDIR)/lib -lqpe -lpthread -ljpeg -lpng -lz
+ INCLUDEPATH += $(QPEDIR)/include
+ DEPENDPATH += $(QPEDIR)/include
+ DEFINES += PDAUDIO
+ TARGET = qperec
+
+# DESTDIR=$(QPEDIR)/bin
+}
+
+contains(CONFIG, opie) {
+ INCLUDEPATH += $(OPIEDIR)/include
+ DEPENDPATH += $(OPIEDIR)/include
+ DESTDIR=$(OPIEDIR)/bin
+ LIBS += -lqpe -lpthread
+ TARGET = opierec
+ include ( $(OPIEDIR)/include.pro )
+}
+
diff --git a/noncore/multimedia/opierec/qtrec.cpp b/noncore/multimedia/opierec/qtrec.cpp
index aeab26d..bc6abcc 100644
--- a/noncore/multimedia/opierec/qtrec.cpp
+++ b/noncore/multimedia/opierec/qtrec.cpp
@@ -58,2 +58,12 @@ extern "C" {
+
+#ifdef PDAUDIO //ALSA
+#include <alsa/asoundlib.h>
+static int deviceSampleRates[8] = { 32000, 44100, 48000, 88200, 96000, 176400, 192000, -1 };
+static int deviceBitRates[] = { 8, 16, 24, 32, -1 };
+#else //OSS
+static int deviceSampleRates[6] = { 11025, 16000, 22050, 32000, 44100, -1 };
+static int deviceBitRates[] = { 8, 16, -1 };
+#endif
+
#if defined(QT_QWS_SL5XXX)
@@ -110,5 +120,5 @@ Device *soundDevice;
//fuckin fulgy here
-void quickRec()
-{
-//void QtRec::quickRec() {
+//void quickRec()
+//{
+void QtRec::quickRec() {
@@ -165,4 +175,6 @@ void quickRec()
adpcm_coder( sbuf, abuf, number/2, &encoder_state);
- bytesWritten = soundDevice->devWrite( filePara.fd , (short *)abuf, number/4);
- waveform->newSamples( (const short *)abuf, bytesWritten );
+
+ bytesWritten = ::write( filePara.fd , (short *)abuf, number/4);
+
+ waveform->newSamples( (const short *)abuf, bytesWritten );
@@ -195,3 +207,3 @@ void quickRec()
- number = soundDevice ->devRead( filePara.sd, (short *)inbuffer, BUFSIZE);
+ number = soundDevice->devRead( filePara.sd, (short *)inbuffer, BUFSIZE);
waveform->newSamples( inbuffer, number );
@@ -205,3 +217,3 @@ void quickRec()
- bytesWritten = soundDevice->devWrite( filePara.fd , inbuffer, number);
+ bytesWritten = ::write( filePara.fd , inbuffer, number);
@@ -272,4 +284,5 @@ void quickRec()
+void QtRec::playIt()
-void playIt()
+//void playIt()
{
@@ -571,11 +584,9 @@ void QtRec::init() {
//#ifndef QT_QWS_EBX
- sampleRateComboBox->insertItem( tr( "44100"));
- sampleRateComboBox->insertItem( tr( "32000"));
-//#endif
- sampleRateComboBox->insertItem( tr( "22050"));
- //#ifndef QT_QWS_VERCEL_IDR
- sampleRateComboBox->insertItem( tr( "16000"));
- sampleRateComboBox->insertItem( tr( "11025"));
- sampleRateComboBox->insertItem( tr( "8000"));
- //#endif
+ QString s;
+ int z = 0;
+ while( deviceSampleRates[z] != -1) {
+ sampleRateComboBox->insertItem( s.setNum( deviceSampleRates[z], 10));
+ z++;
+ }
+
@@ -611,5 +622,10 @@ void QtRec::init() {
bitRateComboBox = new QComboBox( false, bitGroup, "BitRateComboBox" );
- bitRateComboBox->insertItem( tr( "16" ) );
- bitRateComboBox->insertItem( tr( "8" ) );
- bitRateComboBox->setGeometry( QRect( 5, 20, 50, 25 ) );
+
+ z = 0;
+ while( deviceBitRates[z] != -1) {
+ bitRateComboBox->insertItem( s.setNum( deviceBitRates[z], 10) );
+ z++;
+ }
+
+ bitRateComboBox->setGeometry( QRect( 5, 20, 50, 25 ) );
@@ -846,6 +862,11 @@ void QtRec::initConfig() {
i = cfg.readNumEntry("bitrate",16);
- if(i == 16)
- bitRateComboBox->setCurrentItem( 0);
- else
- bitRateComboBox->setCurrentItem( 1);
+ if(i == 16)
+ bitRateComboBox->setCurrentItem( 1);
+ else if(i == 24)
+ bitRateComboBox->setCurrentItem( 2);
+ else if(i == 32)
+ bitRateComboBox->setCurrentItem( 3);
+ else
+ bitRateComboBox->setCurrentItem( 0);
+
filePara.resolution = i;
@@ -992,4 +1013,4 @@ bool QtRec::rec() { //record
- pthread_t thread1;
- pthread_create( &thread1, NULL, (void * (*)(void *))quickRec, NULL/* &*/);
+// pthread_t thread1;
+// pthread_create( &thread1, NULL, (void * (*)(void *))quickRec, NULL/* &*/);
toBeginningButton->setEnabled( false);
@@ -998,3 +1019,3 @@ bool QtRec::rec() { //record
startTimer(1000);
-// quickRec();
+ quickRec();
}
@@ -1055,2 +1076,18 @@ bool QtRec::setupAudio( bool b) {
+#ifdef PDAUDIO //ALSA
+ if( !b) { // we want to play
+ if( filePara.resolution == 16 || compressionCheckBox->isChecked() ) {
+ sampleformat = SND_PCM_FORMAT_S16;
+ filePara.resolution = 16;
+ } else if( filePara.resolution == 24 || compressionCheckBox->isChecked() ) {
+ sampleformat = SND_PCM_FORMAT_S24;
+ filePara.resolution = 24;
+ } else if( filePara.resolution == 32 || compressionCheckBox->isChecked() ) {
+ sampleformat = SND_PCM_FORMAT_S32;
+ filePara.resolution = 32;
+ } else {
+ sampleformat = SND_PCM_FORMAT_U8;
+ filePara.resolution = 8;
+ }
+#else
if( !b) {
@@ -1064,3 +1101,4 @@ bool QtRec::setupAudio( bool b) {
}
-
+#endif
+
stereo = filePara.channels;
@@ -1072,3 +1110,14 @@ bool QtRec::setupAudio( bool b) {
- if( !bitRateComboBox->isEnabled() || bitRateComboBox->currentText() == "16")
+#ifdef PDAUDIO //ALSA
+ if( !bitRateComboBox->isEnabled() || bitRateComboBox->currentText() == "16")
+ sampleformat = SND_PCM_FORMAT_S16;
+ else if( !bitRateComboBox->isEnabled() || bitRateComboBox->currentText() == "24")
+ sampleformat = SND_PCM_FORMAT_S24;
+ else if( !bitRateComboBox->isEnabled() || bitRateComboBox->currentText() == "32")
+ sampleformat = SND_PCM_FORMAT_S32;
+ else
+ sampleformat = SND_PCM_FORMAT_U8;
+
+#else
+ if( !bitRateComboBox->isEnabled() || bitRateComboBox->currentText() == "16")
sampleformat = AFMT_S16_LE;
@@ -1085,3 +1134,4 @@ bool QtRec::setupAudio( bool b) {
}
-
+#endif
+
stereo = filePara.channels;
@@ -1185,4 +1235,4 @@ bool QtRec::doPlay() {
startTimer( 1000);
- pthread_t thread2;
- pthread_create( &thread2, NULL, (void * (*)(void *))playIt, NULL/* &*/);
+// pthread_t thread2;
+// pthread_create( &thread2, NULL, (void * (*)(void *))playIt, NULL/* &*/);
@@ -1190,2 +1240,3 @@ bool QtRec::doPlay() {
toEndButton->setEnabled( false);
+ playIt();
@@ -1199,4 +1250,6 @@ void QtRec::changebitrateCombo(int i) {
int bits = 0;
- if( i == 0) { bits = 16; }
- else { bits=8; }
+ if( i == 1) { bits = 16; }
+ else if( i == 2) { bits = 24; }
+ else if( i == 3) { bits = 32; }
+ else { bits=8; }
cfg.writeEntry("bitrate", bits);
diff --git a/noncore/multimedia/opierec/qtrec.h b/noncore/multimedia/opierec/qtrec.h
index 93b9b5f..31cff9e 100644
--- a/noncore/multimedia/opierec/qtrec.h
+++ b/noncore/multimedia/opierec/qtrec.h
@@ -6,3 +6,3 @@ copyright 2002 by L.J. Potter ljp@llornkcor.com
#define QTREC_H
-#define VERSION 20030920
+#define VERSION 20040101
@@ -179,4 +179,5 @@ protected:
void showListMenu(QListViewItem * );
-// void quickRec();
-
+ void quickRec();
+ void playIt();
+
};
diff --git a/noncore/multimedia/opierec/wavFile.cpp b/noncore/multimedia/opierec/wavFile.cpp
index 987fa32..1d58bb3 100644
--- a/noncore/multimedia/opierec/wavFile.cpp
+++ b/noncore/multimedia/opierec/wavFile.cpp
@@ -49,3 +49,4 @@ bool WavFile::newFile() {
QString date;
- date = TimeString::dateString( QDateTime::currentDateTime(),false,true);
+ QDateTime dt = QDateTime::currentDateTime();
+ date = dt.toString();//TimeString::dateString( QDateTime::currentDateTime(),false,true);
date.replace(QRegExp("'"),"");