Unity +Webgl+AVProVideo+海康监控M3U8取码流+XChart

这篇具有很好参考价值的文章主要介绍了Unity +Webgl+AVProVideo+海康监控M3U8取码流+XChart。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

心路历程:博主接到任务:做一版可发布的webgl版的数字可视化项目。着重点就是海康监控与webgl的兼容问题,博主在网上搜了一堆方案,还是有可取的地方,为了方便以后使用,博主记录一下心路历程。博主博主第一次写日志,希望对广大网友有所帮助;

重要信息前置:以下是博主个人总结,希望有所帮助

1.webgl最大发布包大小上限2G

2.webgl不支持UMP视频播放插件(导致海康RTSP取码流就不能播放)

3.unity自带字体不支持,可使用TextMeshProUGUI插件

4.不支持多线程

5.不支持Debug调试

6.不支持socket通信,Newtonsoft.json,如果需要网络通信需要使用www或unitywebrequest,RestClient

7.颜色空间(Color Space)不支持Linear

8.不支持postprocess(后期)

9.不支持HDRP渲染通道

PS:由于webgl不支持UMP,博主到目前为止没有找到可支持播放rtsp取码流格式的unity插件,博主网搜了很多,都是利用VLCPlayer播放器(还有WebServer,RTSPtoWebServer/RTSPtoWeb.exe)进行播放视频,而不是内嵌在unity中,所以博主最终放弃了RTSP 和RTMP,如果有大大研发出了一款支持RTSP和RTMP取码流可发布webgl版的欢迎留言

1.webgl发布设置:

平台选择以及设置,直接上图:

unity m3u8,webgl,unity

 2.player settingsunity m3u8,webgl,unity

 unity m3u8,webgl,unity

 unity m3u8,webgl,unity

 unity m3u8,webgl,unity

 2.AVProVideo+播放海康视频流m3u8

        博主是按照这篇文章进行步步操作的,里面步骤很详细,着重点是4和5步骤,博主懒,就不写了。

直接上链接:(1条消息) Unity WebGL 播放视频流m3u8_菜菜ANY的博客-CSDN博客

3.场景模型的内存大小优化

      一听到优化博主就很头疼,更过分的是金主爸爸要求不能遮挡剔除,不能使用LOD,等等。。。    一个头两个大,博主就开始翻遍其它博主大大的日志,这几篇就很不错,网友们可以看看:

(1条消息) 基于Unity开发WebGL项目加载AB包(一)_unity webgl 资源加载_梵高先森丶的博客-CSDN博客

(1条消息) Unity中发布WebGL的内存_泼孩的博客-CSDN博客

博主在这里总结一下博主的优化方案:

方案1:减小模型材质贴图的maxsize,这个变化是很明显的,原理就是压缩图片,博主发现压缩之后模型也没有多大的区别,网友们参考即可,博主是没有办法了......

由于时间有限,博主是从模型的贴图进行优化的,以下两张图片,第一张是模型材质原贴图,

最大MaxSize是8192,内存大小42.7MB,一张贴图那么大,是不是很过分?博主发现模型同事给的材质贴图,法线贴图内存都好大,于是博主 改成了1024,图片内存瞬间变成了0.7MB。一张贴图减小那么多?那么整个场景呢?于是博主苦逼的开始了压缩图片的路程。。。。。。

最终打包出来原先2G多的webgl包,让博主压缩成了800MB的包。。。。。。

unity m3u8,webgl,unity

 unity m3u8,webgl,unity

 方案2:这个是针对模型同事或者会maya  max的程序猿们,需要在maya max里对模型进行减面,减面过程可自行百度,博主本次优化没有进行模型减面,因为博主压缩图片之后就够用了。

4.webgl发布读取StreamingAssets文件夹里的配置文件

PS:由于Webgl不支持IO,所以不可以使用JsonConvert.SerializeObject将对象重新序列化,WebGL仅仅支持Unity自身的序列化,不支持外部的其他序列化方式。

在这里可以参考一下这位博主大大的方案,【Unity3D日常开发】Unity3D中打包WEBGL后读取本地文件数据 (taodudu.cc)本人参考了UnityWebRequest网络请求的方法,在这里博主使用的RestClient.Request的请求方式直接获取的streamingAssets里的配置文件,直接上代码:(博主有时间会写一份详细的webgl读取streamingAssets里的配置文件)

 public override void Awake()
    {
        base.Awake();

        string path = Path.Combine(Application.streamingAssetsPath, "configURL.txt");

        RestClient.Request(new RequestHelper
        {
            Method = "GET",
            Uri = path,
        }).Then(mresponse =>
        {
            Debug.LogError(mresponse.Text);



        }).Catch(err => { Debug.LogError("--------------" + err.Message); });
    }

希望对大家有所帮助,仅以此文记录博主的历程。

以下是博主自己研发的项目,包含XChart2.5.0    AVProVideo     AssetBundle打包工具   自定义字体

百度网盘:链接:https://pan.baidu.com/s/17_U76eNkvEpf-HzwuOKirA 
提取码:1234 
--来自百度网盘超级会员V5的分享文章来源地址https://www.toymoban.com/news/detail-562638.html

到了这里,关于Unity +Webgl+AVProVideo+海康监控M3U8取码流+XChart的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 抓取m3u8视频

    视频url:https://www.9meiju.cc/mohuankehuan/shandianxiadibaji/1-1.html 打开网址分析当前视频是由多个片段组成还是单独一个视频 如果是一个单独视频,则找到网址,直接下载即可,如果为多个片段的视频,则需要找到片段的文件进行处理,本案例以m3u8为例 找到m3u8文件后进行下载,下载

    2024年02月11日
    浏览(46)
  • 直播m3u8源地址

    另存为.m3u即可使用,或者直接使用VLC播放网络串流,已剔除港澳台国外地址 使用,或者直接使用VLC播放网络串流,已剔除港澳台国外地址

    2024年02月03日
    浏览(51)
  • m3u8 文件格式详解

    M3U8 是 Unicode 版本的 M3U,用 UTF-8 编码。\\\"M3U\\\" 和 \\\"M3U8\\\" 文件都是苹果公司使用的 HTTP Live Streaming(HLS) 协议格式的基础,这种协议格式可以在 iPhone 和 Macbook 等设备播放。 上述文字定义来自于维基百科。可以看到,m3u8 文件其实是 HTTP Live Streaming(缩写为 HLS) 协议的部分内

    2023年04月09日
    浏览(42)
  • Scrapy 爬取m3u8视频

    爬取ts文件样式 合成的MP4文件 视频地址: [在线播放我独自升级 第03集 - 高清资源](https://www.physkan.com/ph/175552-8-3.html) 这里任务目标很明确 就是找m3u8文件 打开浏览器 进入开发者模式F12 搜索m3u8文件 查看 响应内容含有ts文件 的m3u8文件 再次查看 标头地址 即可 https://leshiyuncdn

    2024年04月15日
    浏览(34)
  • 【M3U8】python(流视频数据)

    现在大部分视频客户端都采用HTTP Live Streaming,而不是直接播放MP4等视频文件(HLS,Apple为了提高流播效率开发的技术)。HLS技术的特点是将流媒体切分为若干【TS片段】(比如几秒一段),然后通过一个【M3U8列表文件】将这些TS片段批量下载供客户端播放器实现实时流式播放

    2023年04月09日
    浏览(33)
  • DPlayer m3u8 视频禁止下载

    正常的 m3u8 格式视频通过控制台是无法下载的,但是可以通过插件下载,下面介绍如何规避这个问题。 思路: 后端生成一个一次性的密钥,前端放在请求头中 ,可以防止大部分插件下载。这里只说前端。 集成 DPlayer 播放器这里就不说了,网上一大推。

    2024年01月24日
    浏览(40)
  • uniapp m3u8格式视频加载

    uniapp一:mui-player:三方  h5 web app   uniapp 使用 mui-player 插件播放 m3u8/flv 视频流_翘翘红的博客-CSDN博客 uniapp 开发的h5项目,需要播放m3u8/flv后缀的视频,网上有很多视频插件,但是样式和效果不尽如人意,博主最后选择mui-player插件: 定制化稍微强一点以及有官方文档可以阅

    2024年02月12日
    浏览(43)
  • html5播放 m3u8

    注意:m3u8地址要为网络地址,直接把代码复制为html直接在本地打开,可能不行,需要放在nginx或者apache或者其他的web服务器上运行。

    2024年02月20日
    浏览(35)
  • 【爬虫】九、综合案例之m3u8文件

    视频网站常规处理方法: 用户上传视频–转码(处理视频)–切片处理(把单个文件进行拆分,一般把拆分好的文件放到M3U8、txt、json的文本中),用户在拖动进度条时则进入到某个分片中。 需要一个文件记录: 1.视频播放顺序。 2.视频存放路径。 抓取视频的方法: 1.找到

    2024年02月17日
    浏览(54)
  • python 批量下载m3u8的视频

     前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家:点击跳转 目录 一,猫抓获取视频地址 二,安装配置ffmpeg 1,windows使用 2,python使用 三,碧站视频 四,合并ts文件 1,背景 2,实现 4,缺点 五,下载m3u8视频 1,背景 2,实现V1 3,实

    2024年02月13日
    浏览(44)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包