C#:利用CSCore写一个轻量级音频播放器

一、前言

前段时间想用C#写一个音频播放器,找来找去找到一个音频开源库:CSCore,发现有挺多家网站采用了它的底层库,它支持的音频格式也挺全。

 

CSCore 是一个完全用 C# 编写的免费 .NET 音频库。 尽管它仍然是一个相当年轻的项目,但它提供了大量功能,例如播放或捕获音频、编码或解码许多不同的编解码器、效果等等。

CSCore 基于一个可扩展的架构,它允许您无需努力即可满足您的需求。 您可以构建音乐播放器、语音聊天、录音机等! 支持的平台:仅限 Windows、linux 和 mac 实验版(参见 https://github.com/filoe/cscore/tree/netstandard)。--摘自Github官网

参考了一下它的Demo,特此记录一下编写的过程。编写的时候可以参考它的在线文档

 二、编写

首先打开Visual Studio,打开项目-管理NuGet程序包,搜索CSCore并安装;

 支持.NET Framework 4.0及以上,在.NET Core中导入会提示不兼容,不过好像也可以正常用。

先封装一个MusicPlayer类

namespace AudioPlayer
{
    /// <summary>
    /// 封装音频播放器
    /// </summary>
    public class MusicPlayer : Component
    {
        private ISoundOut _soundOut;
        private IWaveSource _waveSource;

		public event EventHandler<PlaybackStoppedEventArgs> PlaybackStopped;
        /// <summary>
        /// 获取播放器的播放状态
        /// </summary>
        public PlaybackState PlaybackState
        {
            get
            {
                if (_soundOut != null)
                    return _soundOut.PlaybackState;
                return PlaybackState.Stopped;
            }
        }
        /// <summary>
        /// 目前播放音频的位置
        /// </summary>
        public TimeSpan Position
        {
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值