从内存中播放wav/mp3

11

我正在播放来自文件的MP3 / WAV音频以创建推动效果。 但是,在基于Atom CPU的平板电脑上,当我触摸按钮时会出现延迟。

我将尝试从内存中播放wav/mp3而不是文件系统。 有人可以给出代码片段或线索吗?

System.Media.SoundPlayer player = new System.Media.SoundPlayer();
player.SoundLocation = System.Windows.Forms.Application.StartupPath + "\\beep-7.wav";
player.Play();
1个回答

18

像这样的?

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();
    }
}

我想使用Windows Media Player组件从内存中播放mp4。我可以使用这个示例吗? - topcool

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接