mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-06-09 17:35:45 -04:00
File Input: fixed wrong times display on file seek when sample count exceeds int limit (use of int64 and uint64)
This commit is contained in:
@@ -144,9 +144,9 @@ void FileSourceInput::seekFileStream(int seekPercentage)
|
||||
|
||||
if ((m_ifstream.is_open()) && m_fileSourceThread && !m_fileSourceThread->isRunning())
|
||||
{
|
||||
int seekPoint = ((m_recordLength * seekPercentage) / 100) * m_sampleRate;
|
||||
quint64 seekPoint = ((m_recordLength * seekPercentage) / 100) * m_sampleRate;
|
||||
m_fileSourceThread->setSamplesCount(seekPoint);
|
||||
seekPoint *= 4; // + sizeof(FileSink::Header)
|
||||
seekPoint *= (m_sampleSize == 24 ? 8 : 4); // + sizeof(FileSink::Header)
|
||||
m_ifstream.clear();
|
||||
m_ifstream.seekg(seekPoint + sizeof(FileRecord::Header), std::ios::beg);
|
||||
}
|
||||
@@ -276,7 +276,7 @@ void FileSourceInput::setCenterFrequency(qint64 centerFrequency)
|
||||
}
|
||||
}
|
||||
|
||||
std::time_t FileSourceInput::getStartingTimeStamp() const
|
||||
quint64 FileSourceInput::getStartingTimeStamp() const
|
||||
{
|
||||
return m_startingTimeStamp;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user