added: make peakhold direction configurable
This commit is contained in:
parent
a19e535343
commit
b051549f6d
2 changed files with 28 additions and 9 deletions
|
@ -64,6 +64,7 @@ CBitVis::CBitVis(int argc, char *argv[])
|
||||||
m_hasaudio = false;
|
m_hasaudio = false;
|
||||||
m_scopesample = 0.0;
|
m_scopesample = 0.0;
|
||||||
m_scopesamples = 0;
|
m_scopesamples = 0;
|
||||||
|
m_peakup = false;
|
||||||
|
|
||||||
m_fontheight = 0;
|
m_fontheight = 0;
|
||||||
InitChars();
|
InitChars();
|
||||||
|
@ -75,7 +76,7 @@ CBitVis::CBitVis(int argc, char *argv[])
|
||||||
m_volumetime = GetTimeUs();
|
m_volumetime = GetTimeUs();
|
||||||
m_displayvolume = 0;
|
m_displayvolume = 0;
|
||||||
|
|
||||||
const char* flags = "f:d:p:a:m:o:";
|
const char* flags = "f:d:p:a:m:o:u";
|
||||||
int c;
|
int c;
|
||||||
while ((c = getopt(argc, argv, flags)) != -1)
|
while ((c = getopt(argc, argv, flags)) != -1)
|
||||||
{
|
{
|
||||||
|
@ -132,6 +133,10 @@ CBitVis::CBitVis(int argc, char *argv[])
|
||||||
|
|
||||||
m_mpdport = port;
|
m_mpdport = port;
|
||||||
}
|
}
|
||||||
|
else if (c == 'u') //peak hold goes up
|
||||||
|
{
|
||||||
|
m_peakup = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!m_address)
|
if (!m_address)
|
||||||
|
@ -627,18 +632,31 @@ void CBitVis::SendData(int64_t time)
|
||||||
{
|
{
|
||||||
pixel |= 3;
|
pixel |= 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (time - currpeak.time > 500000 && Round32(currpeak.value) > 0)
|
|
||||||
{
|
|
||||||
currpeak.value += 0.01f;
|
|
||||||
if (currpeak.value >= nrlines)
|
|
||||||
currpeak.value = 0.0f;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
line[x] = pixel;
|
line[x] = pixel;
|
||||||
}
|
}
|
||||||
data.SetData(line, sizeof(line), true);
|
data.SetData(line, sizeof(line), true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < m_nrcolumns; i++)
|
||||||
|
{
|
||||||
|
peak& currpeak = m_peakholds[i];
|
||||||
|
if (time - currpeak.time > 500000 && Round32(currpeak.value) > 0)
|
||||||
|
{
|
||||||
|
if (m_peakup)
|
||||||
|
{
|
||||||
|
currpeak.value += 0.5f;
|
||||||
|
if (currpeak.value >= nrlines)
|
||||||
|
currpeak.value = 0.0f;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
currpeak.value -= 0.5f;
|
||||||
|
if (currpeak.value <= 0.0f)
|
||||||
|
currpeak.value = 0.0f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t text[m_nrcolumns / 4 * m_fontheight];
|
uint8_t text[m_nrcolumns / 4 * m_fontheight];
|
||||||
|
|
|
@ -94,7 +94,8 @@ class CBitVis : public CThread
|
||||||
float value;
|
float value;
|
||||||
};
|
};
|
||||||
|
|
||||||
peak* m_peakholds;
|
peak* m_peakholds;
|
||||||
|
bool m_peakup;
|
||||||
|
|
||||||
CMutex m_socketlock;
|
CMutex m_socketlock;
|
||||||
CTcpClientSocket m_socket;
|
CTcpClientSocket m_socket;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue