建设网站需要的资金清单咨询公司的成本费用有哪些

diannao/2026/1/21 8:53:19/文章来源:
建设网站需要的资金清单,咨询公司的成本费用有哪些,网站建设步骤图,宁波公司排名一、前言 最近将推流程序完善了很多功能#xff0c;尤其是增加了对多种流媒体服务程序的支持#xff0c;目前支持mediamtx、LiveQing、EasyDarwin、nginx-rtmp、ZLMediaKit、srs、ABLMediaServer等#xff0c;其中经过大量的对比测试#xff0c;个人比较建议使用mediamtx和…一、前言 最近将推流程序完善了很多功能尤其是增加了对多种流媒体服务程序的支持目前支持mediamtx、LiveQing、EasyDarwin、nginx-rtmp、ZLMediaKit、srs、ABLMediaServer等其中经过大量的对比测试个人比较建议使用mediamtx和ZLMediaKit因为这两者支持的格式众多不仅同时支持rtsp/rtmp推流还支持各种格式rtsp/rtmp/hls/flv/ws-flv/webrtc等拉流涵盖面非常全而且拉流的画面非常流畅在局域网没有出现花屏的现象对视频文件、视频流支持都非常友好。 为了增强程序的拓展性以便适应后期增加其他流媒体服务器程序特意将流媒体服务程序的信息用配置文件存取来可以自行增删改推流和拉流对应的端口都可以自行修改这样非常适用于一台电脑多种流媒体服务通过配置不同的端口来保证同时推流到多个流媒体服务程序比如windows系统554端口很可能被系统的进程占用所以需要更改为其他端口在流媒体服务程序对应的配置文件更改后还需要在推流程序对应的配置文件中修改这样后期如果增加了其他的流媒体服务程序只需要在配置文件增加即可程序会自动读取并加载到下拉框。 二、效果图 三、体验地址 国内站点https://gitee.com/feiyangqingyun国际站点https://github.com/feiyangqingyun个人作品https://blog.csdn.net/feiyangqingyun/article/details/97565652体验地址https://pan.baidu.com/s/1d7TH_GEYl5nOecuNlWJJ7g 提取码01jf 文件名bin_video_push。 四、功能特点 支持各种本地视频文件和网络视频文件。支持各种网络视频流网络摄像头协议包括rtsp、rtmp、http。支持将本地摄像头设备推流可指定分辨率和帧率等。支持将本地桌面推流可指定屏幕区域和帧率等。自动启动流媒体服务程序默认mediamtx原rtsp-simple-server可选用srs、EasyDarwin、LiveQing、ZLMediaKit等。可实时切换预览视频文件可切换视频文件播放进度切换到哪里就推流到哪里。推流的清晰度和质量可调。可动态添加文件、目录、地址。视频文件自动循环推流如果视频源是视频流在掉线后会自动重连。网络视频流自动重连重连成功自动继续推流。网络视频流实时性极高延迟极低延迟时间大概在100ms左右。极低CPU占用4路主码流推流只需要占用0.2%CPU。理论上常规普通PC机器推100路毫无压力主要性能瓶颈在网络。推流可选推流到rtsp/rtmp两种推流后的数据支持直接rtsp/rtmp/hls/webrtc四种方式访问可以直接浏览器打开看实时画面。可以推流到外网服务器然后通过手机、电脑、平板等设备播放对应的视频流。每个推流都可以手动指定唯一标识符方便拉流/用户无需记忆复杂的地址没有指定则按照策略随机生成hash值。自动生成测试网页直接打开播放可以看到实时效果自动按照数量对应宫格显示。推流过程中可以在表格中切换对应推流项实时预览正在推流的视频并可以切换视频文件的播放进度。音视频同步推流符合264/265/aac格式的自动原数据推流不符合的自动转码再推流会占用一定CPU。转码策略支持三种自动处理符合要求的原数据/不符合的转码仅限文件文件类型的转码视频所有转码。表格中实时显示每一路推流的分辨率和音视频数据状态灰色表示没有输入流黑色表示没有输出流绿色表示原数据推流红色表示转码后的数据推流。自动重连视频源自动重连流媒体服务器保证启动后推流地址和打开地址都实时重连只要恢复后立即连上继续采集和推流。提供循环推流示例一个视频源同时推流到多个流媒体服务器比如打开一个视频同时推流到抖音/快手/B站等可以作为录播推流列表循环非常方便实用。根据不同的流媒体服务器类型自动生成对应的rtsp/rtmp/hls/flv/ws-flv/webrtc地址用户可以直接复制该地址到播放器或者网页中预览查看。编码视频格式可以选择自动处理源头是264就264/源头是265就265转H264强制转264转H265强制转265。支持Qt4/Qt5/Qt6任意版本支持任意系统windows/linux/macos/android/嵌入式linux等。 五、相关代码 QListQString VideoPushUrl::listPushType QListQString(); QListQString VideoPushUrl::listPullType QListQString(); QListint VideoPushUrl::listPullPort QListint();void VideoPushUrl::initServerInfo() {listPushType.clear();listPullType.clear();listPullPort.clear();listPushType mediamtx mediamtx mediamtx mediamtx;listPullType rtsp rtmp hls webrtc;listPullPort 8554 1935 8888 8889;listPushType LiveQing LiveQing LiveQing LiveQing LiveQing;listPullType rtmp hls flv ws-flv webrtc;listPullPort 10085 18000 18000 18000 18000;listPushType EasyDarwin;listPullType rtsp;listPullPort 5541;listPushType nginx-rtmp;listPullType rtmp;listPullPort 1935;listPushType ZLMediaKit ZLMediaKit ZLMediaKit ZLMediaKit ZLMediaKit ZLMediaKit;listPullType rtsp rtmp hls flv ws-flv webrtc;listPullPort 554 1935 80 80 80 80;listPushType srs srs srs srs;listPullType rtmp hls flv webrtc;listPullPort 1935 8080 8080 8080;listPushType ABLMediaServer ABLMediaServer ABLMediaServer ABLMediaServer ABLMediaServer;listPullType rtsp rtmp hls flv ws-flv;listPullPort 554 1935 9088 8088 6088; }void VideoPushUrl::initServerInfo(const QString fileName) {listPushType.clear();listPullType.clear();listPullPort.clear();QFile file(fileName);if (file.open(QFile::ReadOnly | QFile::Text)) {while (!file.atEnd()) {QString content file.readLine();content.replace(\r, );content.replace(\n, );if (content.isEmpty()) {continue;}QStringList list content.split(,);if (list.count() 3) {listPushType list.at(0);listPullType list.at(1);listPullPort list.at(2).toInt();}}} }QStringList VideoPushUrl::getPushType() {QStringList types;foreach (QString type, listPushType) {if (!types.contains(type)) {types type;}}return types; }QString VideoPushUrl::getPushPath(const QString pushUrl) {//(rtsp:, , 127.0.0.1:5541) (rtsp:, , 127.0.0.1:5541, live) (rtsp:, , 127.0.0.1:5541, live/test)QString path /;QStringList list pushUrl.split(/);int count list.count();//从第三位开始后面所有的都是资源目录for (int i 3; i count; i) {path path list.at(i) /;}//末尾的斜杠去掉return path.mid(0, path.length() - 1); }int VideoPushUrl::getPullPort(const QString pushType, const QString pullType) {int port 80;int count listPushType.count();for (int i 0; i count; i) {if (listPushType.at(i) pushType listPullType.at(i) pullType) {port listPullPort.at(i);break;}}return port; }//各种拉流协议分析 https://www.cnblogs.com/xi-jie/p/14031604.html QString VideoPushUrl::getPullUrl(const QString pushUrl, const QString pushType, const QString pullType, const QString ip, const QString flag) {//找到对应服务器类型和拉流类型的端口int port getPullPort(pushType, pullType);//资源目录(可以为空)QString path getPushPath(pushUrl);//去掉特殊字符比如?QString name flag.split(?).first();//根据服务器类型获取对应的地址QString url QString(://%1:%2%3/%4).arg(ip).arg(port).arg(path).arg(name);if (pushType mediamtx) {//同时支持rtsp/rtmp推拉流(非常棒)if (pullType rtsp) {url rtsp url;} else if (pullType rtmp) {url rtmp url;} else if (pullType hls) {url http url;} else if (pullType webrtc) {url http url;}} else if (pushType LiveQing) {//只支持rtmp推流if (pullType rtmp) {url QString(rtmp://%1:%2/hls/%3).arg(ip).arg(port).arg(name);} else if (pullType hls) {url QString(http://%1:%2/hls/%3/%3_live.m3u8).arg(ip).arg(port).arg(name);} else if (pullType flv) {url QString(http://%1:%2/flv/hls/%3.flv).arg(ip).arg(port).arg(name);} else if (pullType ws-flv) {url QString(ws://%1:%2/ws-flv/hls/%3.flv).arg(ip).arg(port).arg(name);} else if (pullType webrtc) {url QString(webrtc://%1:%2/rtc/hls/%3).arg(ip).arg(port).arg(name);}} else if (pushType EasyDarwin) {//只支持rtsp推流拉流if (pullType rtsp) {url rtsp url;}} else if (pushType nginx-rtmp) {//只支持rtmp推流拉流if (pullType rtmp) {url rtmp url;}} else if (pushType ZLMediaKit) {//同时支持rtsp/rtmp推拉流(名气最大/用户最多)if (pullType rtsp) {url rtsp url;} else if (pullType rtmp) {url rtmp url;} else if (pullType hls) {url http url /hls.m3u8;} else if (pullType flv) {url http url .live.flv;} else if (pullType ws-flv) {url ws url .live.flv;} else if (pullType webrtc) {}} else if (pushType srs) {//不支持rtsp推流拉流(以前支持/后面都移除了)if (pullType rtmp) {url rtmp url;} else if (pullType hls) {url http url .m3u8;} else if (pullType flv) {url http url .flv;} else if (pullType webrtc) {url webrtc url;}} else if (pushType ABLMediaServer) {//支持rtsp/rtmp推流拉流(目前还不稳定/兼容性不够好)if (pullType rtsp) {url rtsp url;} else if (pullType rtmp) {url rtmp url;} else if (pullType hls) {url http url .m3u8;} else if (pullType flv) {url http url .flv;} else if (pullType ws-flv) {url ws url .flv;}} else if (pushType Monibuca) {//支持rtsp/rtmp推流拉流(拉流格式众多/各种插件/性能很强劲/具体有待验证)if (pullType rtsp) {url rtsp url;} else if (pullType rtmp) {url rtmp url;} else if (pullType hls) {url QString(http://%1:%2/hls%3/%4.m3u8).arg(ip).arg(port).arg(path).arg(name);} else if (pullType flv) {url QString(http://%1:%2/hdl%3/%4.flv).arg(ip).arg(port).arg(path).arg(name);} else if (pullType ws-flv) {url QString(ws://%1:%2/jessica%3/%4.flv).arg(ip).arg(port).arg(path).arg(name);} else if (pullType webrtc) {url QString(webrtc://%1:%2/webrtc/play%3/%4).arg(ip).arg(port).arg(path).arg(name);}}return url; }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/89680.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

响应式网站怎么样深圳市手机网站建设企业

覆盖索引:查询使用了索引,并且需要返回的列,在索引里面都可以找到,减少select*的使用 1、using index condition Extra 为using index condition 表明查找使用了索引,但是需要回表查询(也就是先二级索引&…

建设网站的一般过程中信建设有限责任公司 电话

导言 生成式 AI 正在改变企业的运作方式,并加快创新的步伐。总体而言,人工智能正在改变企业利用技术的方式。生成式 AI 技术包括微调和部署大型语言模型(LLM),并允许开发人员访问这些模型以执行提示和对话。负责在 Kub…

怎样用电脑做网站四川网站营销seo什么价格

文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用。接着对数字证书做一个详细的解释,并讨论一下windows中数字证书的管理,最后演示使用makecert生成…

WordPress插件Discuz企业网站seo模板

看网上的 win R 然后终端输入什么删除的,照做了都没有删掉 有火绒的可以试试: 拖进去就删掉了 很好使

专业邯郸做网站ftp 转 wordpress

1.打开终端,输入: sudo apt-get updata 输入root用户密码 2.更新完毕后,输入 sudo apt-get install mysql-server ubuntu14.04安装中间会让你设置密码,输入密码后点击确认(mysql123) 3.安装结束后,查看端口号是否开启 …

珠海网站搜索引擎优化app推广渠道有哪些

如果循环条件满足的时候,则程序会一直执行下去。如果需要强制跳出循环,则需要使用跳转语句来完成。PHP8的跳转语句包括break语句、continue语句和goto语句。 1、break语句 break语句的作用是完全终止循环,包括while、do…while、for、switch…

新乡专业做淘宝网站百度做app的网站

什么是物联网智能控制器? 物联网智能控制器是蜂窝物联自主研发的一种远程测控设备(RTU),负责对现场信号、工业设备的监测和控制。本质上是一个模块化封装的微型计算机设备,将相应的一些功能进行了封装,无需进行电路设计和硬件程序…

电商网站设计的企业网址大全hao123

安装office时,提示某项注册表无法写入,请查看是否有管理员权限 大概就是这个意思,记不清楚了,解决办法: 首先如果你确认软件没有问题并且是用管理员帐户登录的话,请关闭防火墙与杀毒软件,重试&a…

如何去做一个网站网站建设西街

JUnit中的断言(Assert)有哪些类型? JUnit提供了多种断言类型来帮助测试代码的正确性。常见的断言类型包括: 1、assertEquals: 用于检查两个值是否相等。如果不相等,测试失败。 2、assertTrue和assertFal…

企业网站设计建设长春网站布局如何修改

收藏 难度:简单 标签:暂无标签 题目描述 孩纸,珍惜吧!这可能会是有史以来最简单的题目了、 有这样的函数F(i)i*i*i*i3*i*i*i2*i*i8*i9;请你找出他所有的整数函数值。 嘻嘻,不是这么的难题 !…

无锡网站建设网网络营销推广部做什么

第 一 部分 高级篇 第 1 章 Explain 查看执行计划 在 clickhouse 20.6 版本之前要查看 SQL 语句的执行计划需要设置日志级别为 trace 才能可以看到,并且只能真正执行 sql,在执行日志里面查看。在 20.6 版本引入了原生的执行计划的语法。在 20.6.3 版本成…

青岛做公司网站企业网站设计的重要性

今天给大家介绍IDEA开发工具如何配置devtools热加载工具。1、devtools原理介绍spring-boot-devtools是spring为开发者提供的热加载工具包。主要原理是使用了两个ClassLoader类加载器,一个Classloader加载那些不会改变的类(第三方Jar包)&#…

网站备案 不关站wordpress配置发信

项目地址:https://github.com/leVirve/lsun-room/tree/master 发表时间:2018 icpr 场景理解,在现实交互的众多方面中,因其在增强现实(AR)等应用中的相关性而得到广泛关注。场景理解可以分为几个子任务&…

网站程序 制作网站建设需求说明书怎么写

Problem: 167. 两数之和 II - 输入有序数组 文章目录 题目描述思路复杂度Code 题目描述 思路 1.定义左、右指针left、right分别指向数组索引为0和索引为nums.length - 1,定义结果数组int[] res new int[2]用于存储索引; 2.查找:当判断numbers[left] nu…

网站建设推广专家吉林企业建站系统费用

35.如图所示,SWA、SWB、SWC都运行RSTP,SWB上的GEO/O/2端口和SWC上的GEO/0/1端其端口角色为? A.backup端口.Alternative端口 B.Alternative端口、Backup端口 C.Root端口、Designate端口 D.Backup端口、Root端口 答案:A 注释: 一个链路(冲突域…

网站建设与推广协议万网服务器

前言: 本文学习视频是B站点击率第一的凡亿教育《Altium Designer 20 19(入门到精通全38集)四层板智能车PCB设计视频教程》,视频地址:Altium Designer 20 19(入门到精通全38集)四层板智能车PCB设…

电力公司在哪个网站做推广最好小程序网址链接提取

pytorch_car_caring 排坑记录 任务踩坑回顾简单环境问题代码版本问题症状描述解决方法 cuda问题(异步问题)症状描述解决方法 任务 因为之前那个MPC代码跑出来的效果不理想,看了一天代码,大概看明白了,但要做改进还要有…

域外网站系统定制开发

为了响应国家号召、推动分布式存储技术落地、防御行业风险,中国分布式存储产业联盟启动,全国从事IPFS以及分布式存储从业者对行业风险及联盟成立的必要性达成了高度共识,目前有36家以上的IPFS分布式存储行业企业填写了联盟申请表。几位国内知…

多用户建站平台网站建设基本流程包括哪几个

声明 因为这份文档我是边做边写的,遇到问题重新装了好几次所以IP会很乱 ESXI主机为192.168.20.10 VCSA为192.168.20.7,后台为192.168.20.7:5480 后期请自行对应,后面的192.168.20.57请对应192.168.20.7,或根据自己的来 第一阶段…

wordpress snape龙岗优化网站建设

点击蓝字关注我们咳咳。C11 加入了线程库,从此告别了标准库不支持并发的历史。然而 c 对于多线程的支持还是比较低级,稍微高级一点的用法都需要自己去实现,譬如线程池、信号量等。线程池(thread pool)这个东西,在面试上多次被问到…