summaryrefslogtreecommitdiffstats
path: root/src/plugins/audiocapture/audiocapturesession.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2016-08-13 13:53:51 +0200
committerLiang Qi <liang.qi@qt.io>2016-08-13 13:53:59 +0200
commit820205e604a5f281238c23464638fdff72b969d1 (patch)
treec6f6723449d1b11e8d540752e50e3c2e11613f33 /src/plugins/audiocapture/audiocapturesession.cpp
parent03d55888942feac26054978ce4e7c6edd4611eda (diff)
parentc30eeb5b7486caa31cdb0f9279de2f78fed89c54 (diff)
Merge remote-tracking branch 'origin/5.6' into 5.7
Diffstat (limited to 'src/plugins/audiocapture/audiocapturesession.cpp')
-rw-r--r--src/plugins/audiocapture/audiocapturesession.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/plugins/audiocapture/audiocapturesession.cpp b/src/plugins/audiocapture/audiocapturesession.cpp
index 19347dca9..e4a9688e8 100644
--- a/src/plugins/audiocapture/audiocapturesession.cpp
+++ b/src/plugins/audiocapture/audiocapturesession.cpp
@@ -349,11 +349,12 @@ void AudioCaptureSession::stop()
file.stopProbes();
file.close();
if (m_wavFile) {
- qint32 fileSize = file.size()-8;
+ qint32 fileSize = file.size();
file.open(QIODevice::ReadWrite | QIODevice::Unbuffered);
file.read((char*)&header,sizeof(CombinedHeader));
- header.riff.descriptor.size = fileSize; // filesize-8
- header.data.descriptor.size = fileSize-44; // samples*channels*sampleSize/8
+ header.riff.descriptor.size = fileSize - 8; // The RIFF chunk size is the file size minus
+ // the first two RIFF fields (8 bytes)
+ header.data.descriptor.size = fileSize - 44; // dataSize = fileSize - headerSize (44 bytes)
file.seek(0);
file.write((char*)&header,sizeof(CombinedHeader));
file.close();