zoukankan      html  css  js  c++  java
  • 网页无插件视频流媒体播放器EasyPlayer-RTSP在WPF框架播放不显示视频画面,该如何排查处理?

    TSINGSEE青犀视频根据不同的播放协议,拥有多种类型的视频流媒体播放器,以便满足用户在不同场景下的需求,比如EasyPlayer流媒体播放器,就包括有EasyPlayer-RTSP、EasyPlayer- RTMP、EasyPlayerPro 和EasyPlayer.js 等版本。以上播放器均核心基于ffmpeg,性能稳定、高效、可靠、可控,支持RTSP、RTMP、HTTP、HLS、UDP、RTP、File等多种流媒体协议播放。

    EasyPlayer的兼容性强且版本广泛,有很多用户都将EasyPlayer作为播放平台,集成进自己的服务器中。TSINGSEE青犀视频也在持续对旗下各类型的播放器进行功能优化和升级。

    近期有用户反馈,在WPF框架中,网页无插件视频流媒体播放器EasyPlayer-RTSP出现了播放时不显示画面的情况,如下图所示:

    上图中,中间的白色区域应该是显示视频的画面,但是此时使用EasyPlayer-RTSP播放器未出现视频图像。

    接到反馈后,TSINGSEE青犀视频技术团队第一时间进行了排查。

    首先,我们在EasyPlayer-RTSP设置回调函数,添加如下代码:

    从控制台我们可以看到,已有数据信息打印,这表明EasyPlayer-RTSP播放器可以拿到视频流,但是界面却没有渲染视频画面。

    因此,我们可以判断,可能是某个代码属性的设置问题。一番排查后发现,.cs文件不是导致该问题的原因。那么就有可能是因为.xaml文件的某个属性设置导致视频画面没有正常渲染。

    将.xaml文件里的内容全部节点都注释,只留下Image渲染视频。操作后发现,依然没有渲染出视频图像。

    此时问题的解决范围已经缩小到只剩下Windows这个节点的某个属性值。依据我们的经验判断,Xmlns和WindowStyle这两个属性也不是该问题的原因。

    于是我们又进行了一次调试,在调试过程中,找到了原因:AllowsTransparency="True"值导致了视频画面不渲染。因为AllowsTransparency的属性作用是:窗口透明,正是如此,所以出现了刚刚上文所述的播放器没有正常播放视频图像的现象。

    解决起来也很简单,将其改为False即可。修改后,EasyPlayer-RTSP播放器已经可以正常播放视频了。

    如果大家对我们的播放器感兴趣,可以查看我们以往的文章,了解更多的内容。同时也欢迎大家持续关注我们的更新,我们将不断更新更多的开发技巧和新功能拓展。

  • 相关阅读:
    vue-loader介绍和单页组件介绍
    webpack的插件 http-webpack-plugin。 webpack-dev-server
    webpack的介绍
    Axios 的基本使用
    如何使用 re模块的, spilt.
    为 JS 的字符串,添加一个 format 的功能。
    另一种分页器 不依赖Paginator模块的方法
    Socket初识
    网络协议
    双下方法补充以及异常处理
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/14743828.html
Copyright © 2011-2022 走看看