MythTV  master
Public Member Functions | Static Public Attributes | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | Static Private Attributes | List of all members
Spectrogram Class Reference

#include <mythplugins/mythmusic/mythmusic/visualize.h>

Inheritance diagram for Spectrogram:
[legend]
Collaboration diagram for Spectrogram:
[legend]

Public Member Functions

 Spectrogram (bool hist)
 
 ~Spectrogram () override
 
unsigned long getDesiredSamples (void) override
 
void resize (const QSize &size) override
 
void FFT (VisualNode *node)
 
bool processUndisplayed (VisualNode *node) override
 
bool process (VisualNode *node) override
 
bool draw (QPainter *p, const QColor &back=Qt::black) override
 
void handleKeyPress (const QString &action) override
 
- Public Member Functions inherited from VisualBase
 VisualBase (bool screensaverenable=false)
 
virtual ~VisualBase (void)
 
virtual void handleKeyPress ([[maybe_unused]] const QString &action)
 
virtual int getDesiredFPS (void)
 

Static Public Attributes

static QImage s_image {nullptr}
 
static int s_offset {0}
 

Static Protected Member Functions

static double clamp (double cur, double max, double min)
 

Protected Attributes

QImage * m_image
 
QSize m_sgsize {1920, 1080}
 
QSize m_size
 
MelScale m_scale
 
int m_fftlen {16 * 1024}
 
int m_color {0}
 
QVector< float > m_sigL
 
QVector< float > m_sigR
 
float * m_dftL { nullptr }
 
float * m_dftR { nullptr }
 
float * m_rdftTmp { nullptr }
 
AVTXContext * m_rdftContext { nullptr }
 
av_tx_fn m_rdft { nullptr }
 
std::array< int, 256 *6 > m_red {0}
 
std::array< int, 256 *6 > m_green {0}
 
std::array< int, 256 *6 > m_blue {0}
 
bool m_binpeak { true }
 
bool m_history { true }
 
bool m_showtext {false}
 
- Protected Attributes inherited from VisualBase
int m_fps {20}
 
bool m_xscreensaverenable {true}
 

Static Protected Attributes

static constexpr float kTxScale { 1.0F }
 

Static Private Attributes

static constexpr int kSGAudioSize { 1152 }
 

Additional Inherited Members

- Static Public Member Functions inherited from VisualBase
static void drawWarning (QPainter *p, const QColor &back, QSize size, const QString &warning, int fontsize=28)
 

Detailed Description

Definition at line 225 of file visualize.h.

Constructor & Destructor Documentation

◆ Spectrogram()

Spectrogram::Spectrogram ( bool  hist)

Definition at line 967 of file visualize.cpp.

◆ ~Spectrogram()

Spectrogram::~Spectrogram ( )
override

Definition at line 1048 of file visualize.cpp.

Member Function Documentation

◆ getDesiredSamples()

unsigned long Spectrogram::getDesiredSamples ( void  )
overridevirtual

Reimplemented from VisualBase.

Definition at line 1064 of file visualize.cpp.

◆ resize()

void Spectrogram::resize ( const QSize &  size)
overridevirtual

Implements VisualBase.

Definition at line 1056 of file visualize.cpp.

◆ FFT()

void Spectrogram::FFT ( VisualNode node)

◆ processUndisplayed()

bool Spectrogram::processUndisplayed ( VisualNode node)
overridevirtual

Reimplemented from VisualBase.

Definition at line 1139 of file visualize.cpp.

◆ process()

bool Spectrogram::process ( VisualNode node)
overridevirtual

Implements VisualBase.

Definition at line 1070 of file visualize.cpp.

◆ draw()

bool Spectrogram::draw ( QPainter *  p,
const QColor &  back = Qt::black 
)
overridevirtual

Implements VisualBase.

Definition at line 1306 of file visualize.cpp.

◆ handleKeyPress()

void Spectrogram::handleKeyPress ( const QString &  action)
override

Definition at line 1326 of file visualize.cpp.

◆ clamp()

double Spectrogram::clamp ( double  cur,
double  max,
double  min 
)
inlinestaticprotected

Definition at line 1300 of file visualize.cpp.

Referenced by processUndisplayed().

Member Data Documentation

◆ kSGAudioSize

constexpr int Spectrogram::kSGAudioSize { 1152 }
staticconstexprprivate

Definition at line 228 of file visualize.h.

Referenced by getDesiredSamples().

◆ s_image

QImage Spectrogram::s_image {nullptr}
static

Definition at line 242 of file visualize.h.

Referenced by Spectrogram().

◆ s_offset

int Spectrogram::s_offset {0}
static

Definition at line 243 of file visualize.h.

Referenced by process(), and processUndisplayed().

◆ m_image

QImage* Spectrogram::m_image
protected

Definition at line 247 of file visualize.h.

Referenced by draw(), process(), processUndisplayed(), and Spectrogram().

◆ m_sgsize

QSize Spectrogram::m_sgsize {1920, 1080}
protected

Definition at line 248 of file visualize.h.

Referenced by process(), processUndisplayed(), and Spectrogram().

◆ m_size

QSize Spectrogram::m_size
protected

Definition at line 249 of file visualize.h.

Referenced by draw(), and resize().

◆ m_scale

MelScale Spectrogram::m_scale
protected

Definition at line 250 of file visualize.h.

Referenced by process(), processUndisplayed(), and Spectrogram().

◆ m_fftlen

int Spectrogram::m_fftlen {16 * 1024}
protected

Definition at line 251 of file visualize.h.

Referenced by process(), processUndisplayed(), and Spectrogram().

◆ m_color

int Spectrogram::m_color {0}
protected

Definition at line 252 of file visualize.h.

Referenced by handleKeyPress(), processUndisplayed(), and Spectrogram().

◆ m_sigL

QVector<float> Spectrogram::m_sigL
protected

Definition at line 253 of file visualize.h.

Referenced by processUndisplayed(), and Spectrogram().

◆ m_sigR

QVector<float> Spectrogram::m_sigR
protected

Definition at line 254 of file visualize.h.

Referenced by processUndisplayed(), and Spectrogram().

◆ m_dftL

float* Spectrogram::m_dftL { nullptr }
protected

Definition at line 255 of file visualize.h.

Referenced by processUndisplayed(), Spectrogram(), and ~Spectrogram().

◆ m_dftR

float* Spectrogram::m_dftR { nullptr }
protected

Definition at line 256 of file visualize.h.

Referenced by processUndisplayed(), Spectrogram(), and ~Spectrogram().

◆ m_rdftTmp

float* Spectrogram::m_rdftTmp { nullptr }
protected

Definition at line 257 of file visualize.h.

Referenced by processUndisplayed(), Spectrogram(), and ~Spectrogram().

◆ kTxScale

constexpr float Spectrogram::kTxScale { 1.0F }
staticconstexprprotected

Definition at line 258 of file visualize.h.

Referenced by Spectrogram().

◆ m_rdftContext

AVTXContext* Spectrogram::m_rdftContext { nullptr }
protected

Definition at line 259 of file visualize.h.

Referenced by processUndisplayed(), Spectrogram(), and ~Spectrogram().

◆ m_rdft

av_tx_fn Spectrogram::m_rdft { nullptr }
protected

Definition at line 260 of file visualize.h.

Referenced by processUndisplayed(), and Spectrogram().

◆ m_red

std::array<int,256*6> Spectrogram::m_red {0}
protected

Definition at line 262 of file visualize.h.

Referenced by processUndisplayed(), and Spectrogram().

◆ m_green

std::array<int,256*6> Spectrogram::m_green {0}
protected

Definition at line 263 of file visualize.h.

Referenced by processUndisplayed(), and Spectrogram().

◆ m_blue

std::array<int,256*6> Spectrogram::m_blue {0}
protected

Definition at line 264 of file visualize.h.

Referenced by processUndisplayed(), and Spectrogram().

◆ m_binpeak

bool Spectrogram::m_binpeak { true }
protected

Definition at line 265 of file visualize.h.

Referenced by processUndisplayed().

◆ m_history

bool Spectrogram::m_history { true }
protected

Definition at line 266 of file visualize.h.

Referenced by handleKeyPress(), process(), processUndisplayed(), and Spectrogram().

◆ m_showtext

bool Spectrogram::m_showtext {false}
protected

Definition at line 267 of file visualize.h.

Referenced by handleKeyPress(), and process().


The documentation for this class was generated from the following files: