mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-06-02 06:04:39 -04:00
Refactor common code into WavFileRecord class
This commit is contained in:
@@ -21,7 +21,6 @@
|
||||
#include <QDebug>
|
||||
#include <QNetworkReply>
|
||||
#include <QBuffer>
|
||||
#include <QRegExp>
|
||||
|
||||
#include "SWGDeviceSettings.h"
|
||||
#include "SWGFileInputSettings.h"
|
||||
@@ -111,44 +110,16 @@ void FileInput::openFileStream()
|
||||
{
|
||||
// Some WAV files written by SDR tools have auxi header
|
||||
m_centerFrequency = header.m_auxi.m_centerFreq;
|
||||
m_startingTimeStamp = QDateTime(QDate(
|
||||
header.m_auxi.m_startTime.m_year,
|
||||
header.m_auxi.m_startTime.m_month,
|
||||
header.m_auxi.m_startTime.m_day
|
||||
), QTime(
|
||||
header.m_auxi.m_startTime.m_hour,
|
||||
header.m_auxi.m_startTime.m_minute,
|
||||
header.m_auxi.m_startTime.m_second,
|
||||
header.m_auxi.m_startTime.m_milliseconds
|
||||
)).toMSecsSinceEpoch() / 1000;
|
||||
m_startingTimeStamp = header.getStartTime().toMSecsSinceEpoch() / 1000;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Attempt to extract time and frequency from filename
|
||||
QRegExp dateTimeRE("([12][0-9][0-9][0-9]).?([01][0-9]).?([0-3][0-9]).?([0-2][0-9]).?([0-5][0-9]).?([0-5][0-9])");
|
||||
if (dateTimeRE.indexIn(m_settings.m_fileName) != -1)
|
||||
{
|
||||
m_startingTimeStamp = QDateTime(QDate(
|
||||
dateTimeRE.capturedTexts()[1].toInt(),
|
||||
dateTimeRE.capturedTexts()[2].toInt(),
|
||||
dateTimeRE.capturedTexts()[3].toInt()
|
||||
), QTime(
|
||||
dateTimeRE.capturedTexts()[4].toInt(),
|
||||
dateTimeRE.capturedTexts()[5].toInt(),
|
||||
dateTimeRE.capturedTexts()[6].toInt()
|
||||
)).toMSecsSinceEpoch() / 1000;
|
||||
}
|
||||
// Attempt to extract centre frequency from filename
|
||||
QRegExp freqkRE("(([0-9]+)kHz)");
|
||||
QRegExp freqRE("(([0-9]+)Hz)");
|
||||
if (freqkRE.indexIn(m_settings.m_fileName))
|
||||
{
|
||||
m_centerFrequency = freqkRE.capturedTexts()[2].toLongLong() * 1000LL;
|
||||
}
|
||||
else if (freqRE.indexIn(m_settings.m_fileName))
|
||||
{
|
||||
m_centerFrequency = freqRE.capturedTexts()[2].toLongLong();
|
||||
// Attempt to extract start time and frequency from filename
|
||||
QDateTime startTime;
|
||||
if (WavFileRecord::getStartTime(m_settings.m_fileName, startTime)) {
|
||||
m_startingTimeStamp = startTime.toMSecsSinceEpoch() / 1000;
|
||||
}
|
||||
WavFileRecord::getCenterFrequency(m_settings.m_fileName, m_centerFrequency);
|
||||
}
|
||||
m_sampleSize = header.m_bitsPerSample;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user