mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-27 06:38:44 -05:00
Correct a flaw in soft-keying of CW ID.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5514 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
b6a887e9aa
commit
753c52165e
@ -180,8 +180,16 @@ qint64 Modulator::readData (char * data, qint64 maxSize)
|
||||
m_phi += m_dphi;
|
||||
if (m_phi > m_twoPi) m_phi -= m_twoPi;
|
||||
|
||||
qint16 sample ((SOFT_KEYING ? qAbs (m_ramp - 1) :
|
||||
(m_ramp ? 32767 : 0)) * qSin (m_phi));
|
||||
qint16 sample=0;
|
||||
float amp=32767.0;
|
||||
if(m_ramp!=0) {
|
||||
float x=qSin(float(m_phi));
|
||||
if(SOFT_KEYING) {
|
||||
amp=qAbs(qint32(m_ramp));
|
||||
if(amp>32767.0) amp=32767.0;
|
||||
}
|
||||
sample=round(amp*x);
|
||||
}
|
||||
|
||||
if (int (j) <= icw[0] && j < NUM_CW_SYMBOLS) // stop condition
|
||||
{
|
||||
@ -198,16 +206,9 @@ qint64 Modulator::readData (char * data, qint64 maxSize)
|
||||
// adjust ramp
|
||||
if ((m_ramp != 0 && m_ramp != std::numeric_limits<qint16>::min ()) || level != m_cwLevel)
|
||||
{
|
||||
// either ramp has terminated at max/min or direction
|
||||
// has changed
|
||||
// either ramp has terminated at max/min or direction has changed
|
||||
m_ramp += RAMP_INCREMENT; // ramp
|
||||
}
|
||||
|
||||
// if (m_cwLevel != level)
|
||||
// {
|
||||
// qDebug () << "@m_ic:" << m_ic << "icw[" << j << "] =" << icw[j] << "@" << framesGenerated << "in numFrames:" << numFrames;
|
||||
// }
|
||||
|
||||
m_cwLevel = level;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user