Skip to content

Commit

Permalink
Don't write extraSize WAV-header field for PCM data
Browse files Browse the repository at this point in the history
  • Loading branch information
SFGrenade authored Dec 21, 2023
1 parent 94f4ea6 commit d994add
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions NAudio.Core/Wave/WaveFormats/WaveFormat.cs
Original file line number Diff line number Diff line change
Expand Up @@ -302,14 +302,24 @@ public override int GetHashCode()
/// <param name="writer">the output stream</param>
public virtual void Serialize(BinaryWriter writer)
{
writer.Write((int)(18 + extraSize)); // wave format length
if(Encoding == WaveFormatEncoding.Pcm)
{
writer.Write((int)(16)); // wave format length
}
else
{
writer.Write((int)(18 + extraSize)); // wave format length
}
writer.Write((short)Encoding);
writer.Write((short)Channels);
writer.Write((int)SampleRate);
writer.Write((int)AverageBytesPerSecond);
writer.Write((short)BlockAlign);
writer.Write((short)BitsPerSample);
writer.Write((short)extraSize);
if(Encoding != WaveFormatEncoding.Pcm)
{
writer.Write((short)extraSize);
}
}

/// <summary>
Expand Down

0 comments on commit d994add

Please sign in to comment.