Unity Universal Media Player(UMP) rtsp接实时监控方法+打包项目其他设备观看播放报错解决办法

这篇具有很好参考价值的文章主要介绍了Unity Universal Media Player(UMP) rtsp接实时监控方法+打包项目其他设备观看播放报错解决办法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

这篇是在unity使用rtsp数据流接监控画面的方法和打包后踩坑问题解决记录

1. 背景说明

2.在unity项目中播放监控方法

3.打包项目exe后遇到问题及解决方案总结

方法一:

方法二:

方法三:

方法四:

方法五:

4. 链接整合


这篇是在unity使用rtsp数据流接监控画面的方法和打包后踩坑问题解决记录

---------------------------------------------------------------------------------------------------------------------------------

1. 背景说明

海康威视的监控

做项目时用的电脑和监控不在一个局域网,对方监控视频只能局域网查看,所以远程了局域网内的电脑进行测试

---------------------------------------------------------------------------------------------------------------------------------

2.在unity项目中播放监控方法

Unity Editor使用的是2021.3.27f1版本

---------------------------------------------------------------------------------------------------------------------------------
Universal Media Player插件不要用旧版(比如1.7.1)!!!!!!!!

在淘宝上直接买个2.0.3版本

---------------------------------------------------------------------------------------------------------------------------------

导入UMP插件package后,Universal Media Player那个文件夹要保证在Assets下面。

---------------------------------------------------------------------------------------------------------------------------------

创建一个空对象,添加Universal Media Player组件

创建一个raw image对象,拖进前面UMP组件里

---------------------------------------------------------------------------------------------------------------------------------

3.打包项目exe后遇到问题及解决方案总结

遇到的各种问题有:

1.打包后运行没有视频画面

2.在其他设备上运行播放没有视频画面

3.打包Debug版的exe报错显示,can‘t find lib...

---------------------------------------------------------------------------------------------------------------------------------

方法一:

Preference -> Player Settings -> configuration ->xxxxx 选择  .Net.4.x (.Net Framework)

这个方法其实是最终帮助我解决问题的步骤,相信各位应该已经看了各种网上的解决方案都试过了,所以在此将这个放在方法一,首先修改此设置尝试

---------------------------------------------------------------------------------------------------------------------------------

方法二:

首先保证rtsp数据流地址没有写错

举例:rtsp:/admin:Admin123/xxx.xxx.xx.xx:554/101

admin是用户名;   Admin123是密码;   xxx.xxx.xx.xx是地址;   默认端口号一般是554;  

101表示的是通道1的主码流

如果是通道n的主码流就是 .../n01

如果是子码流就是 .../n02;

---------------------------------------------------------------------------------------------------------------------------------

方法三:

其次保证这个rtsp数据流确实能打开正常观看,

建议先下载一个VLC尝试打开这个数据流查看是否能观看,方法如下:

打开   文件 -> 网络数据流,输入MRL,点击播放,有画面就是正常的

---------------------------------------------------------------------------------------------------------------------------------

方法四:

打开Universal Media Player文件夹 Resource文件夹下面的UMPSettings.dll,

查看Inspector里的Use Installed VLC选项是否勾选,如果勾选了表示会使用已经安装好的VLC,如果你的电脑上没有VLC,那么就看不了,最好不勾选。

(解决方案来源https://blog.csdn.net/f402455894/article/details/125798362)

---------------------------------------------------------------------------------------------------------------------------------

方法五:

(这个方法旧版本插件用不了,刚开始使用的1.7.1版本的UMP,后来更改为2.0.3)

VLC获取使用的是绝对路径,发送到其他电脑shang肯定是找不到的,所以将这个路径下面的文件UMPPostBuilds.cs进行修改
......\Assets\UniversalMediaPlayer\Editor\UMPPostBuilds.cs

里面的一个BuildWindowsPlayer64(string path, UMPSettings settings)方法
修改为下面这个。

public static void BuildWindowsPlayer64(string path, UMPSettings settings)
    {
        string buildPath = Path.GetDirectoryName(path);
        string dataPath = buildPath + "/" + Path.GetFileNameWithoutExtension(path) + "_Data";
 
        if (!string.IsNullOrEmpty(buildPath))
        {
            if (!settings.UseExternalLibs)
            {
                CopyPlugins(settings.AssetPath + "/Plugins/Win/x86_64/plugins/", dataPath + "/Plugins/plugins/");
                string[] files = Directory.GetFiles(dataPath + "/Plugins/x86_64/");
                foreach (string str in files)
                {
                    string file = Path.GetFileName(str);
                    Debug.LogError(file);
                    File.Copy(str, dataPath + "/Plugins/" + file);
                }
                Directory.Delete(dataPath + "/Plugins/x86_64/", true);
            }
            else
            {
                if (File.Exists(dataPath + "/Plugins/" + UMPSettings.LIB_VLC_NAME + ".dll"))
                    File.Delete(dataPath + "/Plugins/" + UMPSettings.LIB_VLC_NAME + ".dll");
 
                if (File.Exists(dataPath + "/Plugins/" + UMPSettings.LIB_VLC_CORE_NAME + ".dll"))
                    File.Delete(dataPath + "/Plugins/" + UMPSettings.LIB_VLC_CORE_NAME + ".dll");
            }
        }
        Debug.Log("Standalone Windows (x86_x64) build is completed: " + path);
    }

 (解决方案来源https://blog.csdn.net/f402455894/article/details/125798362)

4. 链接整合

https://www.cnblogs.com/AranNice/p/16378805.html

https://blog.csdn.net/f402455894/article/details/125798362文章来源地址https://www.toymoban.com/news/detail-719249.html

到了这里,关于Unity Universal Media Player(UMP) rtsp接实时监控方法+打包项目其他设备观看播放报错解决办法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • VUE+webrtc-streamer 实现实时视频播放(监控设备-rtsp)

    下图则启动成功,此时在浏览器访问127.0.0.1:8000可以看到本机监控画面 地址:https://github.com/mpromonet/webrtc-streamer/releases 注意:第三步在本机启动服务所以 new WebRtcStreamer(id,serverUrl)中URL传入127.0.0.1端口可 文章参考链接:https://blog.csdn.net/liona_koukou/article/details/126605137

    2024年02月02日
    浏览(55)
  • VUE+webrtc-streamer实现实时视频播放(监控设备-rtsp)

    首先说明目前我只完成了本地测试,因还没确定技术选型所以暂无项目应用,先做一下储备,后续项目应用的话这篇文章会持续更新。 监控设备播放效果如下:基于公司环境测试了大华和海康的监控设备(H264编码)可以正确播放 1、下载webrtc-streamer,本机测试我下载的最新

    2024年02月01日
    浏览(36)
  • Unity3d C#利用本地网页快速打开萤石云监控视频流(ezopen)实现云台,声音等控制,支持WebGL平台,替代UMP播放(含源码)

    之前我介绍了替代Universal?Media?PlayerUMP播放石云监控视频流(ezopen)的功能,效果还是很明显的,笔者的测试是差不多3-5秒就能打开监控画面,不过稍微遗憾的是,之前的功能是iframe打开石云提供的播放网页的形式,功能基本只有画质切换,声音开关等;具体可以移步查看(https

    2024年02月13日
    浏览(55)
  • c# 视频播放之Windows Media Player

    最近想给软件加个视频播放功能,在网上看有好几个方式,最后决定用 Windows Media Player 和Vlc.DotNet.Forms。 这篇文章主要讲Windows Media Player,它的优点:代码简单,视频操作功能都有,能播放网络和本地视频。缺点:需要电脑安装视频对应的解码器,适应性很差,只适合自己玩

    2024年01月23日
    浏览(43)
  • 测试C#调用Windows Media Player组件

      新建基于.net framework的Winform项目,可以通过添加引用的方式选择COM组件中的Windows Media Player组件,如下图所示:   也可以在VS2022的工具箱空白处点右键,选择“选择项…”菜单。   在弹出的选择工具箱项窗口中,切换到COM组件页签,然后选择Windows Media Player组件,如

    2024年02月08日
    浏览(42)
  • UE4的视频播放(Media Player)

    首先将需要播放的视频拖入。 创建Media Player和Media Texture。 创建Material,将材质改为User Interface。 在UI界面,创建Image,将这个材质装入。 在人物Pawn界面添加Media Sound组件并将小电视拖入。 在对应UI界面实现对应播放逻辑即可完成播放。 注意此处需调用 Media Sound 的函数,而不

    2024年02月08日
    浏览(39)
  • linux系统媒体播放器(media player)大全

    是一种软件程序,可以使用它来播放多种类型的媒体文件,如音频和视频等。 常见的媒体播放器有 Windows Media Player、QuickTime Player、iTunes、RealPlayer 等。它们通常可以播放多种格式的音视频文件,如 MP3、WMA、AAC、AVI、MP4、FLV 等等,为用户提供各种音视频娱乐体验。 媒体播放器

    2024年02月11日
    浏览(43)
  • VUE3+TS+VITE+webrtc-streamer实现实时视频播放(监控设备-rtsp,进来保你成)

    目录 1、下载webrtc-streamer,下载最新window版本  2、解压下载包  3、双击webrtc-streamer.exe启动服务  4、引入webrtc-streamer         1、将下载包中html文件夹下webrtcstreamer.js文件和html/libs文件夹下adapter.min.js文件复制到VUE项目public目录下 2、在index.html文件里引入这两个js文件 5、使

    2024年02月05日
    浏览(38)
  • Python环境找不到vlc —— 要先安装VLC Media Player

    发现是导入vlc有问题 https://pypi.org/project/python-vlc/ vlc的说明中有一句话:Note that it relies on an already present install of VLC. 于是先安装VLC Media Player,再运行项目,就不报错了。 刚刚已经说了结论,那么是如何发现结论的呢? 首先运行 conda list 和 pip list 命令,输出的结果中都有 p

    2024年02月10日
    浏览(96)
  • 【小沐学C++】C++ 实现视频文件播放(Windows Media Player、MFC、C#)

    无为也,则用天下而有余;有为也,则为天下用而不足。 https://docs.microsoft.com/en-us/windows/win32/wmp/about-the-windows-media-player-sdk Microsoft Windows Media Player 软件开发工具包 (SDK) 提供了用于自定义 Windows Media Player 和 Windows Media Player Mobile 以及使用 Windows Media Player ActiveX 控件和 Windo

    2024年02月06日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包