■ OffsetSampleProvider 클래스의 DelayBy/Take/LeadOut 속성을 사용해 오디오 파일을 잘라내는 방법을 보여준다.
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
using System; using NAudio.Wave; using NAudio.Wave.SampleProviders; string targetAudioFilePath = @"d:\target.wav"; SignalGenerator generator = new SignalGenerator() { Gain = 0.2, Frequency = 500, Type = SignalGeneratorType.Sin }; OffsetSampleProvider provider = new OffsetSampleProvider(generator) { DelayBy = TimeSpan.FromSeconds(1), // 전위 1초 침묵 추가 Take = TimeSpan.FromSeconds(5), // 5초 재생 LeadOut = TimeSpan.FromSeconds(1) // 후위 1초 침묵 추가 }; WaveFileWriter.CreateWaveFile16(targetAudioFilePath, provider); |