Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C语言媒体播放器_C#_Winforms_Soundplayer - Fatal编程技术网

C# C语言媒体播放器

C# C语言媒体播放器,c#,winforms,soundplayer,C#,Winforms,Soundplayer,我使用System.media.SoundPlayer类在C中制作了一个媒体播放器,但是有太多的限制,比如它只播放.wav文件,没有音量控制,也没有媒体进度条。那么有没有更好的内置类或自定义类呢。如果有,请说明。或者,即使有任何东西可以与它并行工作。您可以将WPF用作成熟的音频和视频播放器 它非常易于操作,并带来了Windows Media Player或多或少的所有功能。 如果使用Windows窗体,则可以轻松嵌入WPF控件 my optinion的唯一缺点是需要安装Windows Media

我使用System.media.SoundPlayer类在C中制作了一个媒体播放器,但是有太多的限制,比如它只播放.wav文件,没有音量控制,也没有媒体进度条。那么有没有更好的内置类或自定义类呢。如果有,请说明。或者,即使有任何东西可以与它并行工作。

您可以将WPF用作成熟的音频和视频播放器

它非常易于操作,并带来了Windows Media Player或多或少的所有功能。 如果使用Windows窗体,则可以轻松嵌入WPF控件

my optinion的唯一缺点是需要安装Windows Media Player。

您可以使用。上显示了一个示例


如果你想更多地控制播放,又不想把自己和WMP捆绑在一起,你可以考虑使用开源媒体库。

嘿,有这么多例子。你没有提供足够的信息。我想这些可能会帮助你开始


如果使用工具箱中可用的MediaElement,则无需担心文件扩展名

这里有一个片段可以帮助您:

private void button4_Click(object sender, RoutedEventArgs e)
    {
        OpenFileDialog ofd = new OpenFileDialog();
        ofd.AddExtension = true;
        ofd.DefaultExt = "*.*";
        ofd.Filter = "Media(*.*)|*.*";
        ofd.ShowDialog();
        mediaElement1.MediaOpened += new RoutedEventHandler(mediaElement1_MediaOpened);
        mediaElement1.Source = new Uri(ofd.FileName);
    }

    private void button1_Click(object sender, RoutedEventArgs e)
    {

        mediaElement1.Play();
    }

    private void button3_Click(object sender, RoutedEventArgs e)
    {
        mediaElement1.Stop();
    }

    private void button2_Click(object sender, RoutedEventArgs e)
    {
        mediaElement1.Pause();

    }

有关更多详细信息,请参阅:

如果需要更多控制,请使用NAudio或SharpDX。使用SharpDX,我构建了一个媒体播放器,可为不同区域驱动多个声卡,并可平滑淡出以播放终止的歌曲、躲避公告等。

MediaElement具有更多功能此WinForm、WPF或其他应用程序类型?@keyboardP它是WinForm
private void button4_Click(object sender, RoutedEventArgs e)
    {
        OpenFileDialog ofd = new OpenFileDialog();
        ofd.AddExtension = true;
        ofd.DefaultExt = "*.*";
        ofd.Filter = "Media(*.*)|*.*";
        ofd.ShowDialog();
        mediaElement1.MediaOpened += new RoutedEventHandler(mediaElement1_MediaOpened);
        mediaElement1.Source = new Uri(ofd.FileName);
    }

    private void button1_Click(object sender, RoutedEventArgs e)
    {

        mediaElement1.Play();
    }

    private void button3_Click(object sender, RoutedEventArgs e)
    {
        mediaElement1.Stop();
    }

    private void button2_Click(object sender, RoutedEventArgs e)
    {
        mediaElement1.Pause();

    }