【问题标题】:WPF: How to play a videoWPF:如何播放视频
【发布时间】:2014-05-10 08:01:40
【问题描述】:

我尝试使用标准 MediaElement 控件播放文件,但我根本无法让它出现,也无法在 Windows 8.1 上播放。我尝试将我的文件转换为各种格式。它从 Mac 开始是一个 MP4 文件,然后我使用 ffmpeg 将其转换为 WMV,然后再转换为 MPG。这些文件都不会播放。我愿意将它转换为动画 GIF,如果有一种可靠的方式来播放它。任何帮助表示赞赏。我正在使用 Microsoft 提供的示例 XAML 代码,并尝试了 StackOverflow 中的一些 XAML 示例。

【问题讨论】:

    标签: c# wpf xaml video mediaelement


    【解决方案1】:

    支持 Mp4 格式,它应该可以工作。试试其他视频。你在使用 mediaelement 类吗?

    用你的视频文件名试试这个

    同时调试以检查是否触发了上述事件。

    如果仍然无法正常工作,请详细阅读此article,看看您缺少什么。

    【讨论】:

      【解决方案2】:

      不确定您是否遇到与我相同的问题,但在遇到一些令人困惑的问题后,我得到了 .mpg 文件和 .wmv 文件。

      <MediaElement Grid.Row="0" Source="VideoElements\Wildlife.wmv" Name="myMediaElement" 
      Width="450" Height="250" Opacity="1" Volume="1" LoadedBehavior="Manual" 
      UnloadedBehavior="Stop" Stretch="Fill" />
      
      <Image Source="images\ui_play.gif" MouseDown="OnMouseDownPlayMedia" Margin="5" />
      
      
      void OnMouseDownPlayMedia(object sender, MouseButtonEventArgs args)
      {
        // The Play method will begin the media if it is not currently active or  
        // resume media if it is paused. This has no effect if the media is 
        // already running.
        myMediaElement.Play();
      }
      

      你可以试试这个代码,看看你能不能让它工作。如果没有,我会检查我是否做了其他事情:P 但请记住将您的文件构建操作设置为“嵌入式资源”以使其正常工作。

      【讨论】:

        【解决方案3】:

        很难说没有看到您的任何代码。几个月前,我从本教程中获得了视频:Playing video

        这是其中最基本的sn-p:

        <Window x:Class="WpfTutorialSamples.Audio_and_Video.MediaPlayerVideoSizeSample"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="MediaPlayerVideoSizeSample" Height="500" Width="500" SizeToContent="WidthAndHeight">
        <Grid>
            <MediaElement Source="http://hubblesource.stsci.edu/sources/video/clips/details/images/hst_1.mpg" Name="mePlayer" Stretch="None" />
        </Grid>
        

        我在 MediaElement.Source 中使用磁盘上文件的完整路径(例如:C:\Videos\SomeVideo.mp4),它适用于少数扩展名,包括 .mp4 和 .wmv。

        如果这对您不起作用,请尝试在调试时查看 Visual Studio 的输出窗口。您可能会在其中看到一些异常或消息,说明为什么事情不适合您。

        【讨论】:

          【解决方案4】:

          您必须在 XAML 中添加 Mediaelment:

          <MediaElement LoadedBehavior="Manual" Name="MediaPlayer" Height="200" Visibility="Visible"
                                        Source="{Binding VidoPath}" /> 
          

          谢谢

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-08-13
            • 2017-02-27
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-08-31
            相关资源
            最近更新 更多