silverlight没有提供对Wav播放的支持,因此无法用MediaElement播放Wav文件,好在音频处理方面的牛人帮我们解决了这个问题,参考:http://blogs.msdn.com/b/gillesk/archive/2009/03/23/playing-back-wave-files-in-silverlight.aspx
从http://code.msdn.microsoft.com/wavmss 下载开发包(也可以从我这下载:http://files.cnblogs.com/rupeng/WaveMediaStreamSource1.0.0.0(SL%e6%92%ad%e6%94%beWAV).zip),把dll添加到项目引用中
WaveMediaStreamSource wavMss = new WaveMediaStreamSource(s);
try
{
mediaElement1.SetSource(wavMss);
}
catch (InvalidOperationException)
{
// This file is not wav file
}
就可以了。可以看得出来,Silverlight并不是不支持Silverlight,只是Silverlight内置的解码器不支持wav,只要熟悉音频、视频解码,就可以写出***MediaStreamSource来提供播放支持,这位。看了看WP7中的MediaElement也支持这样的扩展,这样做一个全能的播放器就是可以的了,豁然开朗呀。
如鹏网.Net培训班正在报名,有网络的地方就可以参加如鹏网的学习,学完就能高薪就业,点击此处了解
三年前只要懂“三层架构”就可以说“精通分层架构”;现在则需要懂IOC(AutoFac等)、CodeFirst、lambda、DTO等才值钱;
三年前只要会SQLServer就可以说自己“精通数据库开发”;现在则需还需要掌握MySQL等开源数据库才能说是“.Net开源”时代的程序员;
三年前只要会进行用户上传内容的安全性处理即可;现在则需要熟悉云存储、CDN等才能在云计算时代游刃有余;
三年前只要掌握Lucene.Net就会说自己“熟悉站内搜索引擎开发”;现在大家都用ElasticSearch了,你还用Lucene.Net就太老土了;
三年前发邮件还是用SmtpClient;现在做大型网站发邮件必须用云邮件引擎;
三年前缓存就是Context.Cache;现在则是Redis、Memcached的天下;
如鹏网再次引领.Net社区技术潮流!点击此处了解如鹏网.Net最新课程