专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

搭建自己的直播流媒体服务器SRS,以及SRSOBS直播推拉流

  一、前言
  目前,全球直播带货什么的,成为主流,那如何自己搭建一个直播服务器呢。
  首先需要一个流媒体服务器,搭建流媒体有很多种方式,如下:流媒体解决方案Live555(C)流媒体平台框架EasyDarwin(C,国产精品)实时流媒体播放服务器程序DarwinStreamingSrvr(C)Flash流媒体服务器Red5(Java)流媒体服务器OpenStreamingServer(Java)FMS流媒体服务器(Adobe,收费的)Wowza流媒体服务器(Java)开源流媒体平台FreeCast(Java)NgixRTMP插件SRSOBS这里介绍国产开源流媒体服务器SRS的搭建及使用。1。SRS简介
  SRS(SimpleRealtimeServer)是一个简单高效的实时视频服务器,是国人写的一款非常优秀的开源流媒体服务器软件,可用于直播录播视频客服等多种场景,其定位是运营级的互联网直播服务器集群。
  支持RTMPWebRTCHLSHTTPFLVSRTGB28181。
  官方网站:http:ossrs。netltszhcn
  目前版本为SRS4,属于稳定版,可用于生产环境2。SRS安装
  官方文档:http:ossrs。netltszhcndocsv4docgettingstarted
  安装主要有docker和源码安装,两种方式,都很简单。
  官方推荐使用Docker启动SRS,这是最简单也是最方便的方式。由于后续有些内容经常需要动到配置文件,所以我这里选择用源码安装的方式。
  1:下载源码gitcloneb4。0releasehttps:gitee。comossrssrs。git
  2:编译,注意需要切换到srstrunk目录
  cdsrstrunk。configuremake
  3:启动服务器
  。objssrscconfsrs。conf
  4:检查服务器状态检查SRS是否成功启动,可以打开http:localhost:8080,如我这里服务器地址为:192。168。152。100。所以浏览器输入:http:192。168。152。100:8080即可访问。
  当然,也可以用命令检查服务器状态。
  。etcinit。dsrsstatus或者看SRS的日志
  tailn30f。objssrs。log
  如下图,看到下面提示为正常启动。
  SRS(pid29588)isrunning。〔OK〕
  三、OBS推流RTMP
  推流可以选择FFmpeg或者OBS,如果对FFmpeg命令比较熟,可以选择这个,占用资源更少。
  我这里选择OBS,因为界面话更友好直观。
  OBS下载地址:https:obsproject。comdownload1:直播画面选择
  在来源中,选择要推送的画面,如果有摄像头或者摄像机,则添加视频采集设备,然后选择相应的摄像头名称即可。
  我这里没摄像头,选择自己的电脑桌面直播推送,及显示器采集。
  2:设置流媒体服务器
  在右下方的设置推流服务自定义。
  填写流媒体服务器地址,我这里是:rtmp:192。168。152。100live串流密钥随便填写即可,这里我填写的是:testlivestream。所以最后播放地址为:rtmp:192。168。152。100livetestlivestream
  3:推送直播画面
  配置完成后,点击开始推流即可推送画面。没有报错,说明推送成功,同时下方会有相关信息,如cpu之类的。
  在浏览器http:192。168。152。100:8080打开控制台,可以看到推送的流信息。
  点击预览,可以看到,刚才的推送画面了。后面加flv,是因为推流拉流都是用的RTMP。所以RTMP流的播放地址为:rtmp:192。168。152。100livetestlivestream。flv
  4:VLC播放器
  VCL是一个很强大的播放器,支持播放网络串流。
  所以可以直接用VCL播放测试。
  下载地址:https:www。videolan。orgindex。an。html
  下载安装后,打开媒体打开网络串流,输入播放地址即可观看直播画面。
  四、RTMP低延时配置
  以上基本的直播推流拉流,配置完成。但是测试,延迟还是很大。
  根据直播画面和本地时间对比,可以发现延迟差不多有6秒左右,不是很正常。RTMP流,正常延迟时间为1到3秒左右,所以还需要配置。1:默认配置文件
  由于我们以默认的配置文件启动,即srs。conf这个配置文件。默认配置文件如下:ubuntuubuntu:srstrunkcatconfsrs。confmainconfigforsrs。seefull。conffordetailconfig。listen1935;maxconnections1000;srslogtankfile;srslogfile。objssrs。log;daemonon;httpapi{enabledon;listen1985;}httpserver{enabledon;listen8080;dir。objsnginxhtml;}rtcserver{enabledon;listen8000;UDPportseehttps:ossrs。netltszhcndocsv4docwebrtcconfigcandidatecandidateCANDIDATE;}vhostdefaultVhost{hls{enabledon;}httpremux{enabledon;mount〔vhost〕〔app〕〔stream〕。flv;}rtc{enabledon;seehttps:ossrs。netltszhcndocsv4docwebrtcrtmptortcrtmptortcoff;seehttps:ossrs。netltszhcndocsv4docwebrtcrtctortmprtctortmpoff;}}
  2:更改配置文件
  根据官方文档,可以更改配置文件,低延迟配置,在vhostdefaultVhost添加以下配置。具体原理可以参考官方文档。
  tcpnodelayon;minlatencyon;play{gopcacheoff;queuelength10;mwlatency100;}publish{mroff;}最终配置文件为:listen1935;maxconnections1000;srslogtankfile;srslogfile。objssrs。log;daemonon;httpapi{enabledon;listen1985;}httpserver{enabledon;listen8080;dir。objsnginxhtml;}rtcserver{enabledon;listen8000;UDPportseehttps:ossrs。netltszhcndocsv4docwebrtcconfigcandidatecandidateCANDIDATE;}vhostdefaultVhost{hls{enabledon;}httpremux{enabledon;mount〔vhost〕〔app〕〔stream〕。flv;}rtc{enabledon;seehttps:ossrs。netltszhcndocsv4docwebrtcrtmptortcrtmptortcoff;seehttps:ossrs。netltszhcndocsv4docwebrtcrtctortmprtctortmpoff;}tcpnodelayon;minlatencyon;play{gopcacheoff;queuelength10;mwlatency100;}publish{mroff;}}3:重载配置文件测试
  配置完成后,reload重载配置,完成。
  。etcinit。dsrsreload
  然后再次用obs推流拉流,查看效果,延迟为2秒左右,在正常延迟范围内。
  五、RTMP推流webRTC拉流(RTMPtoRTC)
  上面测试有2秒的延迟,有没有更低延迟呢。有,就是webRTC。
  webRTC起初用于视频会议等及时通讯,现在越来越成熟,应用也越多,正常延迟为1秒之内。
  1:更改配置文件默认配置文件,有rtc的选项,是打开的,我们是RTMPtoRTC,所以还需要把rtmptortcoff改成rtmptortcon,即可。rtc{enabledon;seehttps:ossrs。netltszhcndocsv4docwebrtcrtmptortcrtmptortcon;seehttps:ossrs。netltszhcndocsv4docwebrtcrtctortmprtctortmpoff;}
  还有重要的一点,rtcserver里的candidate配置。如果是服务器是云服务器之类的。必须将CANDIDATE更改为公网IP,或者0。0。0。0(任何IP可访问)。我这里内网测试,所以无需更改。
  rtcserver{enabledon;listen8000;UDPportseehttps:ossrs。netltszhcndocsv4docwebrtcconfigcandidatecandidateCANDIDATE;}
  C音视频学习资料免费获取方法:关注音视频开发T哥,点击链接即可免费获取2023年最新C音视频开发进阶独家免费学习大礼包!
  2:重载配置测试
  。etcinit。dsrsreload
  由于vcl不支持webRTC格式串流,所以直接用控制台自动的webRTC播放器查看。播放地址为:webrtc:192。168。152。100livetestlivestream
  同时打开直播画面和本地画面。
  可以看到延迟在1秒之内,基本在500毫秒左右。六、HLS流
  HLS流,作为直播正常延迟10秒起步,所以也不推荐使用。如果要配置。只需在默认配置文件中,添加如下即可,原来只有一行enabledon;hls{enabledon;hlspath。objsnginxhtml;hlsfragment10;hlswindow60;}
  重载配置后,可用vcl播放器地址:http:192。168。152。100:8080livetestlivestream。m3u8
  延迟太大,可自行测试。七、DVR录制
  OBS也可以直接录制,但是有些需求,需要在服务器上直接录制文件,如API需求,所以在服务器开启DVR即可。
  1:更改配置文件SRS支持将RTMP流录制成FLV或MP4文件。DVR作为SRS3的核心功能,永远开启DVR,只需要在配置文件的vhostdefaultVhost加入以下内容即可dvr{enabledon;dvrapplyall;dvrplansegment;dvrpath。objsnginxhtml〔app〕〔2006〕〔01〕〔stream〕〔02〕〔15〕。〔04〕。〔05〕。〔999〕。mp4;dvrduration30;dvrwaitkeyframeon;timejitterfull;}
  参数说明:
  dvrapply:DVR的apply决定了是否对某个流开启dvr,默认的all是对所有开启
  dvrplan:可配置session和segment,session就是推流到停止推流为整段视频保存,dvrduration参数不生效。segment为分段报错,和dvrduration、dvrwaitkeyframe搭配使用。
  dvrduration:录制每个片段时常,如30,为30秒一个片段。
  dvrwaitkeyframe:按关键帧切。
  timejitter:时间戳抖动算法。full使用完全的时间戳矫正;zero只是保证从0开始;off不矫正时间戳。
  dvrpath:文件报错路径及命令方式。
  自定义DVR的路径和文件名以上默认即可,
  主要参数:dvrpath按自己需要改格式。
  1:没有变量,SRS1。0方式(自动添加〔stream〕。〔timestamp〕。flv作为文件名):dvrpath。objsnginxhtml〔app〕〔stream〕。〔timestamp〕。flv;生成的文件名及路径:。objsnginxhtmllivelivestream。1420254068776。flv;
  2:按流和年月日分目录,时间作为文件名dvrpath。objsnginxhtml〔app〕〔stream〕〔2006〕〔01〕〔02〕〔15〕。〔04〕。〔05〕。〔999〕。flv;生成的文件名及路径:。objsnginxhtmllivelivestream2015010310。57。30。776。flv;
  3:按流和年月分目录,日和时间作为文件名:dvrpath。objsnginxhtml〔app〕〔stream〕〔2006〕〔01〕〔02〕〔15〕。〔04〕。〔05〕。〔999〕。flv;生成的文件名及路径:。objsnginxhtmllivelivestream2015010310。57。30。776。flv;
  4:按vhostapp和年月分目录,流名称、日和时间作为文件名:dvrpath。objsnginxhtml〔app〕〔2006〕〔01〕〔stream〕〔02〕〔15〕。〔04〕。〔05〕。〔999〕。flv;生成的文件名及路径:。objsnginxhtmllive201501livestream0310。57。30。776。flv;
  5:按app分目录,流和时间戳作为文件名(SRS1。0方式):dvrpath。objsnginxhtml〔app〕〔stream〕。〔timestamp〕。flv;生成的文件名及路径:。objsnginxhtmllivelivestream。1420254068776。flv;
  如果需要录制MP4格式的,就把flv后缀,改成mp4即可。3:查看录制的文件
  改成后重载配置
  。etcinit。dsrsreload
  过一段时间,可以在。objsnginxhtmllive202209看到生成的文件。
  下载任意一个文件,播放可以看到录制的时间30秒左右。
  4:HttpCallback
  服务器端定制的实现方式,就是HTTP回调。如需要api回调的方式获取dvr,在配置文件加入以下即可。
  httphooks{enabledon;ondvrhttp:127。0。0。1:8085apiv1dvrs;}
  更详细的可自行参考官方文档:HTTPCallback八、小结
  以上基本的使用及搭建就完成了,如果还需要功能可自行参考官方文档。
  引用官方的那句话:
  对于新手来说,音视频的门槛真的非常高,SRS的目标是降低(不能消除)音视频的门槛,所以请一定要读完Wiki:https:ossrs。netltszhcndocsv4docintroduction
  作者:the丶only
  原文链接:https:blog。csdn。netweixin52270081articledetails126965944
  音视频开发把地球的故事讲给宇宙

DNF哥布林腰带涨价百倍脱销事件你还记得吗?后来怎么样了?记忆里应该是2012的事件对吧,起因就是因为一张徽章转换器的图,然后被商人恶意炒作抬价!没有什么值得关注的后续。还不知道这个徽章转换器是从哪出来的图,就因为这张图,当时几乎很多服务甲亢是很严重的病吗?放任不管行不行?医学小侦探告诉你现在条件好了,甲亢不算是什么特别严重的疾病,有很多女性都患有甲亢,都能够治疗。但是如果你放任不管,不及时治疗,是可以成为很严重的疾病的,其中影响最多的就是它会促进代如果让老师去参加高考会不会考上清华或者北大呢?俗话说有状元的徒弟,无状元的教师,你连这个朴素的道理都不懂吗?让教师去参加高考,不一定能考上清华或北大,而且我相信大部分高中老师都考不上,因为当年他们就读的师范大学,都不可与清华北你们学校的领导都是从什么样的老师中提拔的?那一年,我所在学校换了新校长,领导班子成员也大换血。一新校长有钱有能力有靠山,缺一不可。新校长原来是学校一语文老师,靠向多个学校推销学生资料,几年下来赚得盆满钵满。他头脑不是一般灵兰州牛肉面有多少外地人吃过?主食是面食的外地人,应该能接受兰州牛肉面。首先它便宜,快捷,是普通老百姓的选择。隔三差五,兰州人都要吃一顿兰州牛肉面,每天都吃的人不多。我在外地碰到兰州拉面,都要去吃,也曾经请同事运城怎么看待傅作义?没想到,天津一天就完了1月9日,林彪亲自和傅作义的代表周北峰,张东荪谈判。大部分时候是擅长言辞的罗荣桓再说,但林彪最后拍板说道,其他的可以再谈,傅作义务必将平津两市的军队立即开赴制助听器最多能补偿多少分贝听力?那要看您听损多少,助听器最大增益是根据助听器功率有关的,但是不管他可以补偿多少都要补偿在您听力的合理范围能否则过度放大会造成二次伤害这个要看机器的功率,功率补偿值是根据本人的听损值四川南充的房价还在涨吗?会不会跌?南充的房价会涨到多少?是很多在南充的人最为关心的,小编我关注房地产也有3年时间了!对于房价特别敏感。要讨论能涨多少,首先要看地区经济能支撑到什么程度!先分析四川南充到底有多牛?南充餐饮怪象商场越来越多,为何关门倒闭的餐馆也越来越多?我来说说我儿子的餐馆。儿子30岁,现在的年轻人总吃外卖,他以为外卖需求大,所以他就想要开一个餐馆,儿子找了个熟人合伙,一是自己资金不够,二是多个人好做事。因为没有经验,所以选择了加豆豉怎样炒才能出香?怎么做比较好吃?豆豉是爱吃肉的央玛玛最爱的一味调料之一,这里不是老干妈豆豉那类即食的,是调料哪种,央玛玛给您支招首先,豆豉要买永川豆豉,颗粒不太硬,也不太软。为什么央玛玛要这么说,因为有时候买的豆周末成都一日游请问你有什么好推荐的?谢谢邀请!一天的时间,建议你去新都玩一天。既然是休息,就放松来玩。车都不要开了,坐地铁三号线就可以到新都。上午可以去宝光寺,五元一张的门票。进去后,有兴趣的可以去七贤殿拜拜佛,去罗
国际观察中国绿色发展助力全球经济可持续复苏近日,商务部国际贸易经济合作研究院发布中国绿色贸易发展报告(2022)(简称报告),报告显示,2021年,中国绿色贸易额达到11610。9亿美元,超过欧盟成为全球第一大绿色贸易经济国家为了鼓励生娃操碎了心,如果再不生,你们的良心不会痛吗?不生孩子的人太自私了,国家真是为你们操碎了心。不想结婚,没问题,取消生育登记的婚姻条件限制没有优良种子,也没问题,多地倡议大学生捐精。绿色通道都打开了,如果再不生,你们对得起国家吗他将黑猩猩的性腺组织移植到人体上,为的是探索永恒的青春纵观历史,人类一直痴迷于寻求永恒的青春,试图寻找方法来减缓时钟的摆动。为了逃避死亡,青春之泉,长生不老药等等,这些故事一遍遍地被讲述着。从这些文字里,可以窥探到人类对永生的追求和渴汉史新疆正式纳入中华版图,是由曾经是囚徒流浪游侠帝王实现的西汉昭帝年间,长安有一游侠少年,名叫刘病已,他自带异象,每次到烧饼店买饼,他光顾的店铺立刻生意火爆,他自己却浑然不知,民间有人把他当作财神爷。他喜欢到处游玩斗鸡走狗广为结交。他虽养中外数字政府建设比较及启示大数据区块链人工智能等新兴技术在短短十多年间,经历了从科技创新到广泛扩散的深度转型,深刻影响人类经济社会发展和全球治理。世界各国加快数字化治理向纵深推进,数字政府正在成为全球公认的肥城助推民营经济走好新时代赶考路近年来,肥城市持续强化政策扶持,全市民营经济形成了以主导产业为依托,以园区建设为重点,以产业集群为方向,区域化布局专业化生产规模化经营的发展新格局。数据显示,2022年,肥城市总税封声十大经济影响力人物网络投票结束,汽车行业三位高管晋级终极PK封面新闻记者张海军1月18日,由封面新闻华西都市报主办的榜样中国2022四川十大经济影响力人物活动在成都正式启动,经过组委会筛选,来自全川的数百家企业和企业家代表,分别入围2022数字人民币无电支付安全吗?近日,数字人民币无网无电支付新功能上线,引发关注。部分安卓手机用户发现,在数字人民币App硬钱包的支付设置中新增了无网无电支付功能入口。数字人民币无网无电支付,顾名思义,就是在手机人民银行广州分行2022年广东社融增量破3。5万亿元对实体经济支持力度稳固本报记者秦玉芳广州报道据中国人民银行广州分行最新披露的2022年广东金融运行情况相关数据显示,2022年广东社会融资规模增量达3。5万亿元,占全国增量比重11。年末广东本外币贷款余卯足干劲拼经济丨网红山城为何人人在做这件事编者按当前,全省各地全力拼经济,记者蹲点采访温州各奋斗主体的新春开局实践,提炼拼字秘诀,记录拼字视角,探寻拼字劲道拼视角丨人物讲述最近,泰顺山城频频引发关注,这对搞旅游的人来说,无自中唐迄宋,商品经济的发展刺激着城市市场空间的不断扩张宋代以前,官方立市。市须设置于城市之中,唐代即曾明令诸非州县之所不得置市。在整个城市格局中,市是面积有限的商业区,以唐代长安城为例,其郭城之中总共有一百零八坊,而东西两市则仅合占四
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网