开发者

Play wav/mp3 from memory

I play mp3/wav from file to create a push effect. However on an Atom CPU based tablet PC, there is a delay when I touch the button.

I'll try to play wav/mp3 from memory instead of file system. Can anyone give a code snippet or a clue?

System.Media.SoundPlayer player = new System.Media.SoundPla开发者_运维问答yer();
player.SoundLocation = System.Windows.Forms.Application.StartupPath + "\\beep-7.wav";
player.Play();


Something like this?

public class MediaPlayer
{
    System.Media.SoundPlayer soundPlayer;

    public MediaPlayer(byte[] buffer)
    {
        var memoryStream = new MemoryStream(buffer, true);
        soundPlayer = new System.Media.SoundPlayer(memoryStream);
    }

    public void Play()
    {
        soundPlayer.Play();
    }

    public void Play(byte[] buffer)
    {
        soundPlayer.Stream.Seek(0, SeekOrigin.Begin);
        soundPlayer.Stream.Write(buffer, 0, buffer.Length);
        soundPlayer.Play();
    }
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜