diff options
author | josepma <josepma@gmail.com> | 2016-11-01 00:54:47 +0100 |
---|---|---|
committer | josepma <josepma@gmail.com> | 2016-11-01 00:54:47 +0100 |
commit | e53ca01d2aff56848fecc937954ac351fa0abd2c (patch) | |
tree | 4eee8e308fe73d8ae4a1ebdddb76d483147ddf2f /src/recording | |
parent | 5bbe8fef234900c3f6cfa14f7d38932a09fbba02 (diff) |
Bug #1415720 save wav/aiff in 16/24 or 32bit float
Diffstat (limited to 'src/recording')
-rw-r--r-- | src/recording/recordingmanager.cpp | 80 | ||||
-rw-r--r-- | src/recording/recordingmanager.h | 10 |
2 files changed, 45 insertions, 45 deletions
diff --git a/src/recording/recordingmanager.cpp b/src/recording/recordingmanager.cpp index af6a39baff..4d65486177 100644 --- a/src/recording/recordingmanager.cpp +++ b/src/recording/recordingmanager.cpp @@ -23,10 +23,10 @@ RecordingManager::RecordingManager(UserSettingsPointer pConfig, EngineMaster* pE m_iNumberOfBytesRecorded(0), m_iNumberOfBytesRecordedSplit(0), m_split_size(0), - m_split_time(0), + m_split_time(0), m_iNumberSplits(0), - m_secondsRecorded(0), - m_secondsRecordedSplit(0) { + m_secondsRecorded(0), + m_secondsRecordedSplit(0) { m_pToggleRecording = new ControlPushButton(ConfigKey(RECORDING_PREF_KEY, "toggle_recording")); connect(m_pToggleRecording, SIGNAL(valueChanged(double)), this, SLOT(slotToggleRecording(double))); @@ -34,7 +34,7 @@ RecordingManager::RecordingManager(UserSettingsPointer pConfig, EngineMaster* pE m_recReady = new ControlProxy(m_recReadyCO->getKey(), this); m_split_size = getFileSplitSize(); - m_split_time = getFileSplitTime(); + m_split_time = getFileSplitTime(); // Register EngineRecord with the engine sidechain. @@ -84,22 +84,22 @@ void RecordingManager::slotToggleRecording(double v) { } void RecordingManager::startRecording(bool generateFileName) { - QString encodingType = m_pConfig->getValueString( - ConfigKey(RECORDING_PREF_KEY, "Encoding")); - - if(generateFileName) { - m_iNumberOfBytesRecorded = 0; - m_secondsRecorded=0; - m_split_size = getFileSplitSize(); - m_split_time = getFileSplitTime(); - if (m_split_time < 999999999) { - qDebug() << "Split time is:" << m_split_time; - } - else { - qDebug() << "Split size is:" << m_split_size; - } - - m_iNumberSplits = 1; + QString encodingType = m_pConfig->getValueString( + ConfigKey(RECORDING_PREF_KEY, "Encoding")); + + if(generateFileName) { + m_iNumberOfBytesRecorded = 0; + m_secondsRecorded=0; + m_split_size = getFileSplitSize(); + m_split_time = getFileSplitTime(); + if (m_split_time < 999999999) { + qDebug() << "Split time is:" << m_split_time; + } + else { + qDebug() << "Split size is:" << m_split_size; + } + + m_iNumberSplits = 1; // Append file extension. QString date_time_str = formatDateTimeForFilename(QDateTime::currentDateTime()); m_recordingFile = QString("%1.%2") @@ -113,12 +113,12 @@ void RecordingManager::startRecording(bool generateFileName) { m_pConfig->set(ConfigKey(RECORDING_PREF_KEY, "Path"), m_recordingLocation); m_pConfig->set(ConfigKey(RECORDING_PREF_KEY, "CuePath"), m_recording_base_file +".cue"); - m_recReady->set(RECORD_READY); + m_recReady->set(RECORD_READY); - } else { + } else { // This is only executed if filesplit occurs. ++m_iNumberSplits; - m_secondsRecorded+=m_secondsRecordedSplit; + m_secondsRecorded+=m_secondsRecordedSplit; QString new_base_filename = m_recording_base_file +"part"+QString::number(m_iNumberSplits); m_recordingLocation = new_base_filename + "." +encodingType.toLower(); @@ -126,11 +126,11 @@ void RecordingManager::startRecording(bool generateFileName) { m_pConfig->set(ConfigKey(RECORDING_PREF_KEY, "CuePath"), new_base_filename +".cue"); m_recordingFile = QFileInfo(m_recordingLocation).fileName(); - m_recReady->set(RECORD_SPLIT_CONTINUE); + m_recReady->set(RECORD_SPLIT_CONTINUE); - } - m_iNumberOfBytesRecordedSplit = 0; - m_secondsRecordedSplit=0; + } + m_iNumberOfBytesRecordedSplit = 0; + m_secondsRecordedSplit=0; } void RecordingManager::stopRecording() @@ -140,7 +140,7 @@ void RecordingManager::stopRecording() m_recordingFile = ""; m_recordingLocation = ""; m_iNumberOfBytesRecorded = 0; - m_secondsRecorded = 0; + m_secondsRecorded = 0; } @@ -172,14 +172,14 @@ void RecordingManager::slotDurationRecorded(quint64 duration) if(m_secondsRecordedSplit != duration) { m_secondsRecordedSplit = duration; - if(duration >= m_split_time) - { - qDebug() << "Splitting after " << duration << " seconds"; - // Dont generate a new filename. - // This will reuse the previous filename but append a suffix. - startRecording(false); - } - emit(durationRecorded(getRecordedDurationStr(m_secondsRecorded+m_secondsRecordedSplit))); + if(duration >= m_split_time) + { + qDebug() << "Splitting after " << duration << " seconds"; + // Dont generate a new filename. + // This will reuse the previous filename but append a suffix. + startRecording(false); + } + emit(durationRecorded(getRecordedDurationStr(m_secondsRecorded+m_secondsRecordedSplit))); } } // Copy from the implementation in enginerecord.cpp @@ -194,10 +194,10 @@ void RecordingManager::slotBytesRecorded(int bytes) { // auto conversion to long m_iNumberOfBytesRecorded += bytes; - m_iNumberOfBytesRecordedSplit += bytes; + m_iNumberOfBytesRecordedSplit += bytes; if(m_iNumberOfBytesRecordedSplit >= m_split_size) { - qDebug() << "Splitting after " << m_iNumberOfBytesRecorded << " bytes written"; + qDebug() << "Splitting after " << m_iNumberOfBytesRecorded << " bytes written"; // Dont generate a new filename. // This will reuse the previous filename but append a suffix. startRecording(false); @@ -263,12 +263,12 @@ quint64 RecordingManager::getFileSplitSize() long RecordingManager::getFileSplitTime() { QString fileSizeStr = m_pConfig->getValueString(ConfigKey(RECORDING_PREF_KEY, "FileSize")); - if(fileSizeStr == SPLIT_60MIN) + if(fileSizeStr == SPLIT_60MIN) return 60*60; else if(fileSizeStr == SPLIT_74MIN) return 74*60; else if(fileSizeStr == SPLIT_80MIN) - return 8;//0*60; //TODO: TEST!. Restore the correct value after that. + return 80*60; else if(fileSizeStr == SPLIT_120MIN) return 120*60; else // Do not limit by time for the rest. diff --git a/src/recording/recordingmanager.h b/src/recording/recordingmanager.h index 5b9d58c4b2..2b553889d9 100644 --- a/src/recording/recordingmanager.h +++ b/src/recording/recordingmanager.h @@ -70,7 +70,7 @@ class RecordingManager : public QObject ControlPushButton* m_pToggleRecording; quint64 getFileSplitSize(); - long getFileSplitTime(); + long getFileSplitTime(); UserSettingsPointer m_pConfig; QString m_recordingDir; @@ -86,11 +86,11 @@ class RecordingManager : public QObject quint64 m_iNumberOfBytesRecorded; quint64 m_iNumberOfBytesRecordedSplit; quint64 m_split_size; - long m_split_time; + long m_split_time; int m_iNumberSplits; - long m_secondsRecorded; - long m_secondsRecordedSplit; - QString getRecordedDurationStr(quint64 duration); + long m_secondsRecorded; + long m_secondsRecordedSplit; + QString getRecordedDurationStr(quint64 duration); }; #endif // RECORDINGMANAGER_H |