public XboxADPCM(Stream stream) : base(stream) { format = Reinterpret.Memory <XboxAdpcmFormat>(this["fmt "].ResourceData); data = this["data"].ResourceData; hasBeenSet = true; }
public XboxADPCM(short channels, int sampleRate) : base("WAVE") { format = new XboxAdpcmFormat(); format.ChannelCount = channels; format.BlockAlign = (short)(format.ChannelCount * 36); format.SampleRate = sampleRate; format.BytesPerSecond = (format.SampleRate * format.BlockAlign) >> 6; format.SignificantBitsPerSample = 4; format.CompressionCode = 105; format.ExtendedByteCount = 2; format.SamplesPerBlock = 64; AddBlock("fmt ", Reinterpret.Object(format)); }