mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-12-24 11:40:31 -05:00
Change output sample rate to 48 kHz.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@2700 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
4895feb95f
commit
4829eeb76e
@ -1,4 +1,4 @@
|
|||||||
//---------------------------------------------------------------- MainWindow
|
//--------------------------------------------------------------- MainWindow
|
||||||
#include "mainwindow.h"
|
#include "mainwindow.h"
|
||||||
#include "ui_mainwindow.h"
|
#include "ui_mainwindow.h"
|
||||||
#include "devsetup.h"
|
#include "devsetup.h"
|
||||||
|
@ -564,10 +564,10 @@ p, li { white-space: pre-wrap; }
|
|||||||
<string>Tx +</string>
|
<string>Tx +</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="minimum">
|
<property name="minimum">
|
||||||
<number>1000</number>
|
<number>500</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="maximum">
|
<property name="maximum">
|
||||||
<number>2000</number>
|
<number>20000</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="value">
|
<property name="value">
|
||||||
<number>1500</number>
|
<number>1500</number>
|
||||||
|
16
soundout.cpp
16
soundout.cpp
@ -1,6 +1,6 @@
|
|||||||
#include "soundout.h"
|
#include "soundout.h"
|
||||||
|
|
||||||
#define FRAMES_PER_BUFFER 256
|
#define FRAMES_PER_BUFFER 1024
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#include <portaudio.h>
|
#include <portaudio.h>
|
||||||
@ -39,23 +39,25 @@ extern "C" int d2aCallback(const void *inputBuffer, void *outputBuffer,
|
|||||||
static double snr;
|
static double snr;
|
||||||
static double fac;
|
static double fac;
|
||||||
static int ic=0;
|
static int ic=0;
|
||||||
|
static int ncall=0;
|
||||||
static int isym0=-99;
|
static int isym0=-99;
|
||||||
static short int i2;
|
static short int i2;
|
||||||
int isym;
|
int isym;
|
||||||
|
|
||||||
|
ncall++;
|
||||||
if(udata->bRestart) {
|
if(udata->bRestart) {
|
||||||
// Time according to this computer
|
// Time according to this computer
|
||||||
qint64 ms = QDateTime::currentMSecsSinceEpoch() % 86400000;
|
qint64 ms = QDateTime::currentMSecsSinceEpoch() % 86400000;
|
||||||
int mstr = ms % (1000*udata->ntrperiod );
|
int mstr = ms % (1000*udata->ntrperiod );
|
||||||
if(mstr<1000) return 0;
|
if(mstr<1000) return 0;
|
||||||
ic=(mstr-1000)*12;
|
ic=(mstr-1000)*48;
|
||||||
udata->bRestart=false;
|
udata->bRestart=false;
|
||||||
}
|
}
|
||||||
isym=ic/udata->nsps;
|
isym=ic/(4*udata->nsps); //Actual fsample=48000
|
||||||
if(isym>=85) return 0;
|
if(isym>=85) return 1;
|
||||||
baud=12000.0/udata->nsps;
|
baud=12000.0/udata->nsps;
|
||||||
freq=udata->ntxfreq + itone[isym]*baud;
|
freq=udata->ntxfreq + itone[isym]*baud;
|
||||||
dphi=twopi*freq/12000.0;
|
dphi=twopi*freq/48000.0;
|
||||||
if(udata->txsnrdb < 0.0) {
|
if(udata->txsnrdb < 0.0) {
|
||||||
snr=pow(10.0,0.05*(udata->txsnrdb-1.0));
|
snr=pow(10.0,0.05*(udata->txsnrdb-1.0));
|
||||||
fac=3000.0;
|
fac=3000.0;
|
||||||
@ -98,7 +100,7 @@ void SoundOutThread::run()
|
|||||||
outParam.suggestedLatency=0.05;
|
outParam.suggestedLatency=0.05;
|
||||||
outParam.hostApiSpecificStreamInfo=NULL;
|
outParam.hostApiSpecificStreamInfo=NULL;
|
||||||
|
|
||||||
paerr=Pa_IsFormatSupported(NULL,&outParam,12000.0);
|
paerr=Pa_IsFormatSupported(NULL,&outParam,48000.0);
|
||||||
if(paerr<0) {
|
if(paerr<0) {
|
||||||
qDebug() << "PortAudio says requested output format not supported.";
|
qDebug() << "PortAudio says requested output format not supported.";
|
||||||
qDebug() << paerr << m_nDevOut;
|
qDebug() << paerr << m_nDevOut;
|
||||||
@ -116,7 +118,7 @@ void SoundOutThread::run()
|
|||||||
paerr=Pa_OpenStream(&outStream, //Output stream
|
paerr=Pa_OpenStream(&outStream, //Output stream
|
||||||
NULL, //No input parameters
|
NULL, //No input parameters
|
||||||
&outParam, //Output parameters
|
&outParam, //Output parameters
|
||||||
12000.0, //Sample rate
|
48000.0, //Sample rate
|
||||||
FRAMES_PER_BUFFER, //Frames per buffer
|
FRAMES_PER_BUFFER, //Frames per buffer
|
||||||
paClipOff, //No clipping
|
paClipOff, //No clipping
|
||||||
d2aCallback, //output callbeck routine
|
d2aCallback, //output callbeck routine
|
||||||
|
Loading…
Reference in New Issue
Block a user