Improvements to Audio Recording II: Free up memory in SPAAACE!
This commit is contained in:
parent
34075514d2
commit
a1b7482a5b
2 changed files with 7 additions and 5 deletions
|
@ -74,7 +74,6 @@ AudioRecordingPopup::AudioRecordingPopup()
|
|||
m_playXSheetCB = new QCheckBox(tr("Sync with XSheet/Timeline"), this);
|
||||
m_timer = new QElapsedTimer();
|
||||
m_recordedLevels = QMap<qint64, double>();
|
||||
m_oldElapsed = 0;
|
||||
m_player = new QMediaPlayer(this);
|
||||
m_console = FlipConsole::getCurrent();
|
||||
|
||||
|
@ -294,7 +293,6 @@ void AudioRecordingPopup::onRecordButtonPressed() {
|
|||
m_comboSamplerate->setDisabled(true);
|
||||
m_comboSamplefmt->setDisabled(true);
|
||||
m_recordedLevels.clear();
|
||||
m_oldElapsed = 0;
|
||||
m_pausedTime = 0;
|
||||
m_startPause = 0;
|
||||
m_endPause = 0;
|
||||
|
@ -319,6 +317,7 @@ void AudioRecordingPopup::onRecordButtonPressed() {
|
|||
m_saveButton->setEnabled(true);
|
||||
m_playButton->setEnabled(true);
|
||||
}
|
||||
m_audioWriterWAV->freeup();
|
||||
m_audioLevelsDisplay->setLevel(-1);
|
||||
m_recordButton->setIcon(m_recordIcon);
|
||||
m_pauseRecordingButton->setDisabled(true);
|
||||
|
@ -626,6 +625,9 @@ void AudioRecordingPopup::hideEvent(QHideEvent *event) {
|
|||
if (TSystem::doesExistFileOrLevel(TFilePath(m_filePath.getQString()))) {
|
||||
TSystem::removeFileOrLevel(TFilePath(m_filePath.getQString()));
|
||||
}
|
||||
// Free up memory used in recording
|
||||
m_recordedLevels.clear();
|
||||
m_audioWriterWAV->freeup();
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
@ -794,6 +796,8 @@ bool AudioWriterWAV::save(const QString &filename)
|
|||
return true;
|
||||
}
|
||||
|
||||
void AudioWriterWAV::freeup() { m_barray.clear(); }
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// AudioLevelsDisplay Class
|
||||
//-----------------------------------------------------------------------------
|
||||
|
|
|
@ -18,7 +18,6 @@ class QPushButton;
|
|||
class QLabel;
|
||||
class AudioLevelsDisplay;
|
||||
class FlipConsole;
|
||||
class QAudioProbe;
|
||||
class QAudioBuffer;
|
||||
class QMediaPlayer;
|
||||
class QElapsedTimer;
|
||||
|
@ -42,13 +41,11 @@ class AudioRecordingPopup : public DVGui::Dialog {
|
|||
QCheckBox *m_playXSheetCB;
|
||||
int m_currentFrame;
|
||||
AudioLevelsDisplay *m_audioLevelsDisplay;
|
||||
QAudioProbe *m_probe;
|
||||
QMediaPlayer *m_player;
|
||||
TFilePath m_filePath;
|
||||
FlipConsole *m_console;
|
||||
QElapsedTimer *m_timer;
|
||||
QMap<qint64, double> m_recordedLevels;
|
||||
qint64 m_oldElapsed;
|
||||
qint64 m_startPause = 0;
|
||||
qint64 m_endPause = 0;
|
||||
qint64 m_pausedTime = 0;
|
||||
|
@ -103,6 +100,7 @@ public:
|
|||
void start();
|
||||
void stop();
|
||||
bool save(const QString &filename);
|
||||
void freeup();
|
||||
|
||||
qint64 readData(char *data, qint64 maxlen) override;
|
||||
qint64 writeData(const char *data, qint64 len) override;
|
||||
|
|
Loading…
Reference in a new issue