Winform中使用EasyPlayer-RTSP-Win开源组件实现播放RTSP视频流


场景

开源RTMP组件EasyPusher-Android+EasyDarwin实现APP推流给RTSP流媒体服务器:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/123349283

上面介绍了RTSP相关的开源组件,如果要在Windows中实现对RTSP视频流的播放,

可以使用开源组件EasyPlayer-RTSP-Win

https://github.com/tsingsee/EasyPlayer-RTSP-Win

EasyPlayer RTSP Windows 播放器是由TSINGSEE青犀开放平台开发和维护的一个完善的RTSP流媒体播放器项目,

视频编码支持H.264,H.265,MPEG4,MJPEG,音频支持G711A,G711U,G726,AAC,支持RTSP over TCP/UDP协议,

支持软/硬解码,是一套极佳的安防流媒体平台播放组件!EasyPlayer Windows版本经过了很多年的发展和迭代,

在很多商业项目中使用,已经非常稳定、完整,功能包括:直播、录像、抓图,

应该说是目前市面上功能性、稳定性和完整性最强的一款RTSP播放器!

国内大部分的RTSP/RTP协议的播放器都是基于ffmpeg做的(包括协议层和解码层),

但是在实际的RTSP/RTP项目实战过程中,由于各个厂家的自定义字段的不同,由诸多需要特殊兼容的地方,

而这正是ffmpeg类播放器无法做到的,EasyPlayer依托于庞大的EasyDarwin用户群体,

已经将国内几乎所有的摄像机厂家都适配了一遍,非常兼容,非常稳定!

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

1、将代码克隆到本地并使用VS打开

 

 

修改Form1的窗体与样式,去掉不需要的功能,这里只需要简单的实现rtsp视频流的播放,所以将其他解码方式等选择删除掉,

并且将右键菜单中截图和录像等功能也删除掉。

 

 

2、将页面加载之后的代码修改,默认解码方式设置为TCP,其他运行报错代码注释掉

        private void PlayerForm_Load(object sender, System.EventArgs e)
        {
            //获取进程名
            string str = this.GetType().Assembly.Location;
            this.Text = str;
            int LimitDayOut = PlayerSdk.EasyPlayer_Init();
            if (LimitDayOut >= 0)
                isInit = true;
            callBack = new PlayerSdk.MediaSourceCallBack(MediaCallback);
            isTCP = true;
            this.RightToLeft = RightToLeft.Inherit;
        }

 

3、重新生成解决方案

 

 

4、实现与上面博客联动的播放效果

 

 

5、实现播放海康威视摄像头效果

 

 

 

海康威视摄像头rtsp地址可以参考如下

Nginx搭建RTMP服务器+FFmpeg实现海康威视摄像头预览:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/121202130


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM