当前位置: 首页 > news >正文

公司企业免费网站系统旅行社网站营销建设

公司企业免费网站系统,旅行社网站营销建设,做个购物网站多少钱,物联网是什么一、背景 项目集成网络摄像头实现直播功能需要用到ffmpeg处理rtmp视频流进行web端播放 通过网上资源找到大神的springboot项目实现了rtmp视频流转为http请求进行视频中转功能#xff0c;其底层利用javacv的FFmpegFrameGrabber进行拉流、推流#xff0c;进而实现了视频中转。 …一、背景 项目集成网络摄像头实现直播功能需要用到ffmpeg处理rtmp视频流进行web端播放 通过网上资源找到大神的springboot项目实现了rtmp视频流转为http请求进行视频中转功能其底层利用javacv的FFmpegFrameGrabber进行拉流、推流进而实现了视频中转。 在此感谢大神提供的码云项目EasyMedia: Springboot、netty实现的http-flv、websocket-flv直播点播支持rtsp、h264、h265、rtmp等多种源h5纯js播放不依赖flash不需要nginx等第三方拉流服务 二、问题 项目运行起来后各方面都正常选取了有信号的视屏流地址均可以正常播放但是将并发数量增加并且有一部分存在无信号的情况时拉流功能被阻塞。 通过排查定位发现FFmpegFrameGrabber对象的start方法并不支持多线程访问也就是说同时来了多个请求时它会内部形成阻塞队列进行等待。 这就导致当大量请求同时进入时它会按照阻塞的情况进行处理而我们多线程的请求访问将失去意义。就算将超时时间设置的极短5秒、3秒等当十几二十个请求同时进入时它也会按照等差数列进行堆叠最后一个请求的等待时长将是请求数量*平均每个的处理时长假设有20个请求平局每个请求设置超时未5秒最后一个请求将会等待100秒。 然而请求时轮训访问的时间只会越来越久于是开始寻求解决方案。 三、解决 该模式为典型的线程安全阻塞处理逻辑所以我们去查找FFmpegFrameGrabber是否有非阻塞的方法或者可以实现非阻塞的逻辑即可。 查找API发现了同样入坑的友军解决方案也是简单粗暴 将start();改为startUnsafe();即可解决问题。 笔者将超时时间设置为10秒从日志可以看到多个请求同时进入时实现了异步操作同时开始了拉流操作进而解决了阻塞的问题。 四、总结 问题的解决其实很简单但是从出现问题到定位问题历时很长。 首先是对这份开源代码的不太理解每次阅读个大概就匆匆跳过导致对整个流程总是一知半解在浪费了大半天时间后才决定静下心来从头梳理下代码逻辑。其次是对问题的根源没有抓准没有将详细的日志梳理分析只是大概的定位到多线程执行阻塞。最后在定位到问题对应的代码行后仍然无法进一步处理工欲善其事必先利其器笔者未实现熟悉相关API只是定位到后才开始各种上网搜寻如此一来反而又耽误了一些时间。 总之结果是好的历时两天解决了这个问题所以写个笔记记录一下供需要的孩子们参阅。
http://www.dnsts.com.cn/news/245211.html

相关文章:

  • 做烘焙网站网站admin后台界面模板
  • 自己做的网站怎么设置关键词长汀网站建设
  • 做门窗网站南京网站建设咨询
  • 建网站培训机构天津网站建设找哪家
  • 简洁游戏企业网站漳州公司建设网站
  • 如何做淘宝二手网站权威发布海报
  • 山西免费网站建设百度智能小程序
  • 杏坛网站建设wordpress插件中文网
  • 秦皇岛网站关键词网页制作与网站开发 实验报告
  • 各地网站备案做网站要用什么语言
  • 旅游 网站建设个人网站做外链方法
  • 做壁纸壁的网站有什么福州 网站建设价格
  • 深圳坪山网站制作公司网站推广营销的意义
  • 网站里 动效是用什么做的个人备案的网站能做什么
  • 网站怎么做能让人搜到设计医院网站建设
  • 深圳苏州企业网站建设服务商细谈电商网站外链建设的策略
  • 恶意镜像网站程序上海企业信息查询公示系统
  • 网站建设需要懂什么语言百度推广怎么收费标准案例
  • 万网虚拟云空间怎么建设网站网站建设 海口
  • 瑞典网站后缀高德地图vr全景怎么打开
  • 自做业务网站广州网站优化渠道
  • windows.net做网站广东省住房和城乡建设厅官网查证
  • 流媒体 网站开发写软文的平台有哪些
  • 个人网站示例做淘宝客网站域名是别人的
  • 湖州城市投资建设集团网站Godaddy优惠码网站怎么做的
  • 上海 网站撤销备案免费做淘宝客网站有哪些
  • 网站排名优化的技巧广州免费领养猫咪
  • 做网站法人拍照背景做视频网站要什么
  • 报考建设八大员官方网站凡科网营销推广
  • 网站建设后台系统有哪些少儿编程培训