标签: mediaelement

MediaElement可播放哪些类型的视频?

我正在寻找有关什么决定MediaElement可以播放的媒体格式的详细信息,我似乎无法找到任何明确的来源.我读过某个地方,如果它可以在WMP MediaElement中播放,那么可以播放它.这是真的?如果是,那么我的下一个问题是我在哪里可以找到WMP的功能和限制?WPF MediaElement和WMP 之间的联系在哪里?我正在寻找对WPF中这些组件和视频播放的更好理解,并且到目前为止还很难在网上找到任何东西.

.net wpf video mediaelement windows-media-player

6
推荐指数
1
解决办法
2805
查看次数

WPF MediaElement(MediaFailed,慢动作视频)的稳定性问题,那里有解决方法吗?

我有几个问题:

  • 在重新启动应用程序之前,媒体无法播放并继续失败
  • 音频正常播放但视频处于慢动作状态,在重新启动应用程序之前无法正常播放.
  • 除了应用程序重启之外,没有办法重新初始化.(我知道)
  • 没有真正可靠的方法来了解视频是否正在渲染.我可以观察位置来验证它正在播放,但它不能保证有任何视频输出.

我在我的WPF应用程序中运行了两个扩展版MediaElement的实例,这取决于它们的稳定性.经过多次测试后,我得出结论,由于仅使用GPU进行解码,它是MediaKit和vlcdotnet之上性能最高的视频播放器.我已经在WVC1(Windows Media Video AP @ l3 VC-1)中编码了视频,用于1080p质量和相对较小的文件大小.最终在几次播放后,视频将无法播放,此时MediaFailed事件将被触发,然后在应用程序重新启动之前完全停止工作.

我的理解是,当它像这样失败时,它是底层Windows Media Player OCX控件中的核心故障,除了完整的应用程序重启之外,它无法以任何方式修复.有没有人为这些问题找到任何可靠的解决方法?妈妈在微软论坛上说过这个词......

wpf mediaelement

6
推荐指数
1
解决办法
1939
查看次数

ViewModel中的MediaElement.play()

我正在努力解决以下问题:

我正在使用MVVM patern构建WP8应用程序.我在view.xaml上有一个媒体元素,以及在我的viewmodel.cs中控制这个媒体元素的逻辑(例如,播放,停止,暂停和音量).

如何使用绑定从我的viewmodel在此媒体元素上播放声音.不破坏MvvM的目的和结构.

(PS:我看过以下帖子,但我不确定如何实现它?链接到帖子)

c# binding mediaelement mvvm windows-phone-8

6
推荐指数
1
解决办法
3358
查看次数

SmoothStreamingMediaElement.Play() - 抛出异常但播放器启动

当我设置我的SmoothStreamingSource然后调用.Play()时,我得到以下异常...

"没有源设置时,不允许播放."

奇怪的是,如果我处理这个异常(如下面的代码所示),视频就会开始播放.奇?根据msdn,SmoothStreamingSource属性自动设置Source属性,所以我不应该得到异常.单步执行代码确认在设置SmoothStreamingSource属性后设置了Source属性.

如果这是内部更大问题的标志,我宁愿不只是处理异常并继续我的快乐方式.

怎么了?我的代码......

try
        {
            Uri uri = (Uri)((Button)source).Tag;

            smoothStreamingMediaElement1.SmoothStreamingSource = uri;

            if (smoothStreamingMediaElement1.SmoothStreamingSource != null)
                MessageBox.Show(smoothStreamingMediaElement1.SmoothStreamingSource.ToString());
            else
                MessageBox.Show("SmoothStreamingSource is NULL");

            smoothStreamingMediaElement1.Play();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
Run Code Online (Sandbox Code Playgroud)

silverlight mediaelement smooth-streaming

5
推荐指数
1
解决办法
1245
查看次数

MediaElement 和 RTSP

MediaElement 支持 RTSP 吗?

我有一个流正在运行,我可以通过以下方式使用 VLC 播放器使用该流:

rtsp://192.168.1.17:554/stream

但是,当尝试使用 Windows Media Player 时,我无法播放它。这就引出了一个问题,MediaElement 支持 RTSP 吗?

我正在 .NET 4.0 上使用 WPF。

wpf mediaelement rtsp

5
推荐指数
1
解决办法
7730
查看次数

MediaElement是否仅在嵌入XAML代码时播放?

我有一个声音播放器类,根本没有任何视觉效果,我正在尝试使用a MediaElement播放我的声音.在所有测试项目中,它MediaElement都嵌入在XAML代码中,它工作正常.但是,在我的仅代码版本中,即使文件已经完全加载(我可以在调试器中看到),它根本不会播放任何内容.我正在做以下事情:

public class MySoundPlayer
{
    private MediaElement player = new MediaElement();

    public MySoundPlayer()
    {
        player.LoadedBehavior = MediaState.Manual;
        player.UnloadedBehavior = MediaState.Stop;
        player.Volume = 1.0;
        player.MediaEnded  += player_MediaEnded;
        player.MediaOpened += playerr_MediaOpened;
        player.MediaFailed += player_MediaFailed;
    }

    private void player_MediaEnded(object sender, EventArgs e)
    {
        player.Stop();
        Debug.WriteLine("Stopped");
     }

    private void player_MediaOpened(object sender, EventArgs e)
    {
        Debug.WriteLine("Opened");
    }

    private void player_MediaFailed(object sender, ExceptionRoutedEventArgs e)
    {
        Debug.WriteLine("Failed");
    }

    public void PlayFile(string fileName, bool loop)
    {
        player.Source = new Uri(fileName, UriKind.RelativeOrAbsolute);
        player.Play();
        player.Volume = …
Run Code Online (Sandbox Code Playgroud)

c# audio wpf xaml mediaelement

5
推荐指数
1
解决办法
4147
查看次数

为什么MediaElement有时会无声地失败,我该如何纠正呢?

在我的WPF项目中,我创建了一个包含多个MediaElements播放视频的视图.有时,在一个或所有MediaElements之间的任何地方都将无法播放分配给它们的视频,而是显示黑色矩形,或根本不显示.发生这种情况时不会发生MediaFailed事件.MediaOpened事件会在所有MediaElements上出现,即使他们不播放视频也是如此.

我已经为我的显卡安装了最新的驱动程序,这对此问题没有任何影响.

是否有一个程序可用于确保每个MediaElement始终如一地播放?

示例源代码如下.包含视频文件的完整示例项目位于github,网址https://github.com/duggulous/MediaElementIssueExample

MainWindow.xaml

<Window x:Class="VideoDemo.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="1920" Width="1080">
<Grid Name="rootContainer" Background="Pink">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="404" />
            <ColumnDefinition Width="136" />
            <ColumnDefinition Width="136" />
            <ColumnDefinition Width="134" />
            <ColumnDefinition Width="270" />
        </Grid.ColumnDefinitions>

        <Grid.RowDefinitions>
            <RowDefinition Height="270" />
            <RowDefinition Height="30" />
            <RowDefinition Height="412" />
            <RowDefinition Height="416"/>
            <RowDefinition Height="526"/>
            <RowDefinition Height="264"/>
        </Grid.RowDefinitions>

    <MediaElement x:Name="panel1" Margin="-1" 
                Grid.Column="0" Grid.Row="0"
                Grid.ColumnSpan="2" Grid.RowSpan="2" 
                Source="media/1-ekg.mp4"
                MediaOpened="panel1_MediaOpened"
                MediaFailed="panel1_MediaFailed"
                MediaEnded="panel1_MediaEnded"/>

    <MediaElement x:Name="panel2" Margin="-1"
                Grid.Column="2" Grid.Row="0" 
                Grid.ColumnSpan="3" Grid.RowSpan="1"
                Source="media/2-star.mp4"
                MediaOpened="panel1_MediaOpened"
                MediaFailed="panel1_MediaFailed"
                MediaEnded="panel1_MediaEnded"/>

    <MediaElement x:Name="panel3" Margin="-1"
                Grid.Column="0" Grid.Row="2" 
                Grid.ColumnSpan="2" …
Run Code Online (Sandbox Code Playgroud)

c# wpf video mediaelement ms-media-foundation

5
推荐指数
1
解决办法
1411
查看次数

如何添加mediaelement搜索栏

我有电视连续剧项目,我正在使用mediaelement.但我需要帮助寻求酒吧.如何添加?如何制作像MediaPlayerLauncher一样的搜索栏滑块?

我试着这样想:

<Grid x:Name="LayoutRoot" Background="Transparent">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>

    <!--TitlePanel contains the name of the application and page title-->

    <!--ContentPanel - place additional content here-->
    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
        <MediaElement x:Name="player1" MediaOpened="player1_MediaOpened" CurrentStateChanged="player1_CurrentStateChanged" />
        <ListBox x:Name="alternatifliste" FontSize="20" FontStyle="Italic" FontWeight="Bold" Foreground="White" Margin="677,98,10,153" SelectionChanged="alternatifliste_SelectionChanged" />

    </Grid>

    <Button x:Name="play" Content="play" HorizontalAlignment="Left" Margin="94,336,0,0" Grid.Row="1" VerticalAlignment="Top" Click="play_Click"/>
    <Button x:Name="stop" Content="stop" HorizontalAlignment="Left" Margin="331,336,0,0" Grid.Row="1" VerticalAlignment="Top" Click="stop_Click"/>
    <Slider Name="timelineSlider"  Margin="0,68,0,244" Grid.Row="1" ValueChanged="timelineSlider_ValueChanged" />
</Grid>
Run Code Online (Sandbox Code Playgroud)

我的项目: 我的项目

İts代码:

private void player1_MediaOpened(object sender, RoutedEventArgs e)
{
    TimeSpan ts …
Run Code Online (Sandbox Code Playgroud)

c# xaml mediaelement seekbar windows-phone-8

5
推荐指数
1
解决办法
3835
查看次数

C# WPF MediaElement:视频质量差

我实际上开发了一个媒体播放器,并使用了 MediaElement 控件。但是,我对视频质量有很大的问题。对于某些视频,图像变得模糊和像素化。

使用 MediaElement

使用 Windows 应用程序

如您所见,Windows 和带有 MediaElement 的视频播放器的视频质量完全不同。

该视频是一个简单的 .avi ...

有没有办法提高视频质量?

c# wpf video mediaelement

5
推荐指数
0
解决办法
558
查看次数

Safari 11 mediaElement ['srcObject'] = mediaStream引发类型错误

我正在尝试使用此库(RTCMulticonnection)实现WebRTC,并且Type Error在Safari Tech Preview 11中尝试在视频mediaElement上设置“ srcObject” 时遇到了。

相关代码:

if (isSafari) {

    //I've tried the 4 ways below to set the srcObject but all cause a Type Error

      // mediaElement['srcObject'] = window.URL.createObjectURL(stream); throws type error
      // mediaElement['srcObject'] = stream; throws type error
      // mediaElement['src'] = window.URL.createObjectURL(stream);
      // mediaElement.srcObject = stream; // throws type error
}
Run Code Online (Sandbox Code Playgroud)

当我打印时mediaElement,我得到:<video></video>

当我打印时stream,我得到一个MediaStream对象。

MediaStream {streamid: "722cfcc7-0687-4265-b266-e81b2abf8398", idInstance: "{\"audio\":{\"mandatory\":{},\"optional\":[{\"bandwidth\":…\":[{\"bandwidth\":4194304},{\"facingMode\":\"user\"}]}}", isVideo: 1, isAudio: false, type: "local", …}
Run Code Online (Sandbox Code Playgroud)

错误 …

safari mediaelement webrtc mediastream rtcmulticonnection

5
推荐指数
0
解决办法
639
查看次数