c# – 使用NAudio修剪mp3文件

是否可以使用NAudio修剪MP3文件?我正在寻找一种方法获取一个标准的mp3文件,并采取它的一部分,使其成为一个单独的MP3.

解决方法

从Nuget安装NAudio
PM> Install-Package NAudio

使用NAudio.Wave添加;并使用此代码

void Main()
{
     var mp3Path = @"C:\Users\Ronnie\Desktop\podcasts\hanselminutes_0350.mp3";  
     var outputPath = Path.ChangeExtension(mp3Path,".trimmed.mp3");

     TrimMp3(mp3Path,outputPath,TimeSpan.FromMinutes(2),TimeSpan.FromMinutes(2.5));
}

void TrimMp3(string inputPath,string outputPath,TimeSpan? begin,TimeSpan? end)
{
    if (begin.HasValue && end.HasValue && begin > end)
        throw new ArgumentOutOfRangeException("end","end should be greater than begin");

    using (var reader = new Mp3FileReader(inputPath))
    using (var writer = File.Create(outputPath))
    {           
        Mp3Frame frame;
        while ((frame = reader.ReadNextFrame()) != null)
        if (reader.CurrentTime >= begin || !begin.HasValue)
        {
            if (reader.CurrentTime <= end || !end.HasValue)
                writer.Write(frame.RawData,frame.RawData.Length);         
            else break;
        }
    }
}

快乐的小道.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...