silverlight   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了WP7 播放音乐大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

由于在XNA中每33fp就会更新画面一次,所以在Silverlight Application中需要透过指定一个定期执行 FrameworkDispatcher.update() 的事件。 //设置定时器 DispatcherTimer timer = new DispatcherTimer(); timer.Interval = TimeSpan.
@H_450_13@

由于在XNA中每33fp就会更新画面一次,所以在Silverlight Application中需要透过指定一个定期执行 FrameworkDispatcher.update() 的事件。

        //设置定时器
        DispatcherTimer timer = new DispatcherTimer();
        timer.Interval = TimeSpan.FromMilliseconds(33);
        timer.Tick += delegate { try { FrameworkDispatcher.update(); } catch { } };
        timer.Start();


一.音频:一般用来播放一些很短的wav格式的音频,但是在Silverlight中也一样要用MediaElement来播放,所以可以利用 XNA中的Audio来播放这些短信的音效。需要将音频文件流读入到内存中,进行播放。并且要设定好SoundEffect中的SampleRate的取值范围(8000-48000Hz)

SoundEffect sound = new SoundEffect(Stream.ToArray(),8000,AudioChAnnels.Mono);
SoundEffecTinstance inst = sound.CreateInstance();
inst.Play();

二.音乐:在silveright中,播放mp3音乐也同样要用到MediaElement控件,但是要用来做背景音乐,就显的有点不太合适了,所以可用XNA提供的Song和MediaPlayer类来加载并播放背景音乐,并且也很好控制。

1.通过Song创建音频对象,并通过MediaPlayer播放。

        try
        {
            //创建音频对象
            Song song = Song.FromUri("Music",new Uri("/Song/yule.mp3",UriKind.RelativE));
            //设置为循环播放
            MediaPlayer.IsRepeaTing = true;
            //启动播放
            MediaPlayer.Play(song);
        }
        catch (System.Exception eX)
        {
            //创建音频对象失败,uri错误时
        }

2.音频暂停,复位,停止。

        //暂停
        MediaPlayer.Pause();
        //复位
        MediaPlayer.Resume();
        //停止
        MediaPlayer.Stop();

3.设置音频播放的音量。

        //音量取值范围为[0,1],认值为0.85,设置为0.5
        MediaPlayer.Volume = 0.5F;

  通过Song和MediaPlayer可以播放多种格式的音频,并且使用也相当的简单方便。不过同样需要引入XNA库,并且通过Song.FromUri创建Song对象的音频文件只能是资源文件,不能是独立存储中的文件。对于独立存储中的文件,暂时还没有找到创建Song对象的API,还期望同大家一同探讨。


三.Microphone用来在silverlight中录制声音。

using Microsoft.Xna.Framework.Audio;
_Microphone.bufferReady += new EventHandler<EventArgs>(_Microphone_BufferReady);
_Microphone.GetData(buffer);
_Microphone.Start();
_Microphone.Stop();


这是可能还会报错

最重要的是加入的本地MP3文件需要设置为内容

WP7 播放音乐



  

       尝试了所有使用Silverlight on WP7播放音频流的方法,总结了一下它们各自的特点。   1、MediaElement   优点:Silverlight自带控件,@L_497_17@mp3和部分视频格式,方便控制。   缺点:不支持wav格式,需自行编写解码器(MediaStreamsource)。   适用场合:前台播放。   相关代码:无,参MSDN即可。   2、Song+MediaPlayer   优点:小巧轻便简单易用支持格式多,可直接从Uri中加载。   缺点:需启用XNA Framework。   适用场合:后台播放完整音频。   相关代码:   song = Song.FromUri("music",new Uri("badapple.mp3",UriKind.RelativE));MediaPlayer.Play(song);   3、SoundEffect+SoundEffecTinstance   优点:可同时播放多段音频,支持简单的音效处理。   缺点:需启用XNA Framework,且仅支持wav文件。   适用场合:后台播放多音频片段,并需要音效处理。   相关代码:   soundEffect = SoundEffect.FromStream(stream);soundEffecTinstance = soundEffect.CreateInstance();soundEffecTinstance.Play();   4、SoundEffect+DynamicSoundEffecTinstance   优点:在3的基础上,DynamicSoundEffecTinstance支持buffer机制(BufferNeeded事件和SubmitBuffer方法)。   缺点:需启用XNA Framework,且仅支持wav文件,另外DynamicSoundEffecTinstance的buffer只支持byte[]格式,同时对wav的格式有所要求(参       资料[1])。   适用场合:后台播放音频片段,并需要支持buffer机制。   相关代码:懒得写了,请自行研究。

大佬总结

以上是大佬教程为你收集整理的WP7 播放音乐全部内容,希望文章能够帮你解决WP7 播放音乐所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。