From 36a7fa25337fb648ea606e7b2d6f50140513f4b0 Mon Sep 17 00:00:00 2001 From: Nikolaj Olsson Date: Sun, 30 May 2021 20:00:42 +0200 Subject: [PATCH] Work on wave --- src/libse/Common/WaveToVisualizer.cs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/libse/Common/WaveToVisualizer.cs b/src/libse/Common/WaveToVisualizer.cs index 2bcd3ba5c..13e1b40fc 100644 --- a/src/libse/Common/WaveToVisualizer.cs +++ b/src/libse/Common/WaveToVisualizer.cs @@ -356,7 +356,7 @@ namespace Nikse.SubtitleEdit.Core.Common string wavePeakName; if (trackNumber > 0) { - wavePeakName = MovieHasher.GenerateHash(videoFileName) + "-" + trackNumber + ".wav"; + wavePeakName = MovieHasher.GenerateHash(videoFileName) + "-" + trackNumber + ".wav"; } else { @@ -439,7 +439,7 @@ namespace Nikse.SubtitleEdit.Core.Common long fileSampleOffset = -delaySampleCount; int chunkSampleCount = _header.SampleRate / peaksPerSecond; byte[] data = new byte[chunkSampleCount * _header.BlockAlign]; - float[] chunkSamples = new float[chunkSampleCount]; + float[] chunkSamples = new float[chunkSampleCount * 2]; _stream.Seek(_header.DataStartPosition, SeekOrigin.Begin); @@ -489,14 +489,15 @@ namespace Nikse.SubtitleEdit.Core.Common } } - var value = valuePositive > Math.Abs(valueNegative) ? valuePositive : valueNegative; - chunkSamples[chunkSampleOffset] = value * sampleAndChannelScale; + chunkSamples[chunkSampleOffset] = valueNegative * sampleAndChannelScale; + chunkSampleOffset++; + chunkSamples[chunkSampleOffset] = valuePositive * sampleAndChannelScale; chunkSampleOffset++; } } // calculate peaks - peaks.Add(CalculatePeak(chunkSamples, fileReadSampleCount)); + peaks.Add(CalculatePeak(chunkSamples, fileReadSampleCount * 2)); } // save results to file