SRS命令】的更多相关文章

下载源码: git clone https://github.com/ossrs/srs.git 编译: cd srs/trunk ./configure && make 开启服务: ./objs/srs -c conf/srs.conf 停止服务: ./scripts/stop.sh 编译时安装FFmpeg: ./configure --with-ffmpeg…
一.背景 搭建流媒体服务的方式一般会采用nginx+rtmp和srs服务两种,前者是nginx加上插件所用,而后者是专门为了为了流媒体而生,在这一节中我们将从头搭建srs流媒体服务 二. 运行环境 为了此服务后期部署到生产环境中,笔者采用docker方式来搭建此服务,docker目前属于基础性软件了,在本文中就不再细述如何安装,大家可以去www.docker.com下载安装包安装即可:一般正式的生产环境中我们通常使用Linux系统作为服务器,所以我本文中同样使用了Linux系统,不过我选择了我比…
前文 讲述了JMeter分布式运行脚本,以更好的达到预设的性能测试(并发)场景.同时,在前文的第一章节中也提到了 JMeter 命令行(非GUI)模式,那么此文就继续前文,针对 JMeter 的命令行模式进行详细解说. 一.应用场景 1.无需交互界面或受环境限制(linux text model) 2.远程或分布式执行 3.持续集成,通过shell脚本或批处理命令均可执行,生成的测试结果可被报表生成模块直接使用,便于生成报告 二.命令行模式优点 1.节约系统资源:无需启动界面,节约系统资源 2.…
前面一篇文章简单的介绍了下如何利用SRS自带的播放地址进行观看RTMP直播流,也就是说是使用SRS的内置demo进行Test,但是进行视频直播肯定不可能使用那样的去开发,不开源的东西肯定不好用.由于在研究的过程中很少关于C#方面的资料,大部分都是自己慢慢磨出来的.觉得那些刚开始入门的人很有帮助,所以决定贴出来,方便那些刚入门的学者,因为毕竟有些资料写的太专业,而且有些刚入门的虽说写的很详尽,但是没有一个完整的概念,很难理解,本文着重讲解下如何使用C#进行编码推送RTMP至服务器,以及取流播放.让…
为SRS流媒体服务器添加HLS加密功能(附源码) 之前测试使用过nginx的HLS加密功能,会使用到一个叫做nginx-rtmp-module的插件,但此插件很久不更新了,网上搜索到一个中国制造的叫做SRS的流媒体服务器,比较活跃,而且据说这个流媒体服务器的性能和功能都强大不少,但遗憾的是没有HLS加密功能.问原作者没有回复,所以还是自己动手,丰衣足食吧,花了几个晚上的时间自己参考nginx-rtmp实现了一下.代码放到了github上. 功能介绍 几个新添加的参数配置项 hls_keys on…
GDAL——命令使用专题——gdalsrsinfo命令  前言 GDAL(Geospatial Data Abstraction Library)是一个在X/MIT许可协议下的开源栅格空间数据转换库.它利用抽象数据模型来表达所支持的各种文件格式.它还有一系列命令行工具来进行数据转换和处理. 主要针对:ogrinfo命令.gdalinfo命令.gdalsrsinfo命令.gdallocationinfo命令.gdal_translate命令.gdaltransform命令 等.这一节讨论gdals…
GDAL——命令使用专题——ogrinfo命令 前言 GDAL(Geospatial Data Abstraction Library)是一个在X/MIT许可协议下的开源栅格空间数据转换库.它利用抽象数据模型来表达所支持的各种文件格式.它还有一系列命令行工具来进行数据转换和处理. OGR是GDAL项目的一个分支,功能与GDAL类似,只不过它提供对矢量数据的支持. 这一篇就讲讲常见的CDAL相关命令操作,使用好GDAL的相关命令,能够让你事半功倍.有人会说,现在都可视化操作了,还用啥命令.但是当你…
SRS(Simple RTMP Server)  是国人写的一款非常优秀的开源流媒体服务器软件,可用于直播/录播/视频客服等多种场景,其定位是运营级的互联网直播服务器集群. 一.安装 官网提供了3种安装方式: 从源码编译安装.利用docker(学习用) .直接下载安装包安装 相信很多人主要目的是出于学习srs如何使用,对c++语言本身可能并不擅长,所以本文仅介绍"如何利用安装包"安装部署. 先从官网下载最新的稳定发布版本(目前是2.0r6) http://ossrs.net/srs.r…
SRS全称Simple RTMP Server,定位是运营级的互联网直播服务器集群,是一个非常简单就可以推送rtmp视频流的服务器. github主页:https://github.com/ossrs/srs 目前稳定版为2.0,3.0版本正在开发中,2.0的文档为:https://github.com/ossrs/srs/wiki/v2_CN_Home,文档为中文版,里面内容和组件介绍也很清晰,开发srs的大牛也是中国人,看到这里不禁自豪一番^-^. 下面介绍srs的安装和基本配置: 操作系统…
1. 搭建RTMP服务器 1> 获取开源代码SRS. git clone https://github.com/ossrs/srs 下载源码后,按照如下文档安装https://github.com/ossrs/srs/wiki/v1_CN_SampleRTMP 2> 编译SRS cd srs/trunk ./configure && make 3> 编写SRS配置文件.详细参考RTMP分发 将以下内容保存为文件,比如conf/rtmp.conf,服务器启动时指定该配置文件…
最近由于公司开发的需要--互动会议,开始研究直播中的技术.由于自身没有接触过虚拟机导致在研究的过程中遇到了很大的问题,首先官方GitHub给出的文档并没有清晰的指出编译是需要通过何种方式进行编译?以下是个人研究的过程,这边只是做一个笔记,并不代表权威的技术解读文档,大神请略过. 1.https://github.com/ossrs/srs/wiki/v2_CN_Home     这边是官方给出的Github: 2.要使用SRS服务器首先需要对SRS进行搭建,而搭建的前提就是要进行编译,官方这点是…
srs.txt ubuntu 18.04 安装 srs 1. 上传srs_40.7z和h2ws.7z到linux服务器,然后远程ssh连接 (假设登陆用户名是bob,linux服务器ip是192.168.0.50) $ scp *.7z bob@192.168.0.50:~ $ ssh bob@192.168.0.50 2. 安装编译依赖 $ sudo apt install gcc make python p7zip-full -y 3. 解压 $ 7z x srs_40.7z; 7z x h…
这段时间一直在搞RTMP流媒体直播项目,期间踩过很多坑,刚开始是用的nginx-rtmp作为流媒体转发服务器,但是效果并不尽人意,推拉流不稳定,特别是拉流,速度特别慢,平均要十多秒才能拉到流,并且交互并不是那么友好,比如说刚断开再立即拉流的话,很难拉到流,还有就是播放延时的问题,最少延时5秒,后面使用了srs来做,效果就好很多了,不仅解决了nginx-rtmp的不友好操作,也提升了性能和效率,延时也降低了,最低的时候延时1秒不到,不同的播放器有会有所差别,目前用过ffplay ,potplaye…
环境说明:ubuntu 16.04 当前目录为~/. 一. 下载 git clone https://github.com/ossrs/srs.git 二.部署SRS 关闭防火墙,执行如下命令. ufw disable //关闭防火墙 cd srs/trunk ./configure && make //编译文件 ./objs/srs -c conf/srs.conf // 启动srs服务 ps -ef | grep srs //查看服务是否启动成功 输入cd 3rdparty进入第三方组…
1. 安装 1.1 github 获取源码 git clone https://github.com/ossrs/srs.git 1.2 编译 1.2.1 关闭防火墙和 selinux 先关闭防火墙,防止有时候启动没有问题,但是就是看不了. Centos6.x 下关闭防火墙和 selinux 的命令: # disable the firewall sudo /etc/init.d/iptables stop sudo /sbin/chkconfig iptables off selinux也需要…
1. 综述 SRS 关于 HLS 的具体配置可见: HLS部署实例 SRS 关于 hls 的配置文件内容如下: listen 1935; max_connections 1000; daemon off; srs_log_tank console; vhost __defaultVhost__ { hls { enabled on; hls_fragment 10; hls_window 60; hls_path ./objs/nginx/html; hls_m3u8_file [app]/[s…
1. 综述 首先,推流直播的配置文件如下: # rtmp.conf listen 1935; max_connections 1000; daemon off; srs_log_tank console; vhost __defaultVhost__ { } 搭建的简陋直播步骤如下: 启动 srs:./obj/srs -c ./conf/rtmp.conf; 设置并开启 obs 推流,obs 的视频来源随便,可以直接是视频获取设备或本地文件,此外 obs 的设置如下图: 注:必须填 "流名称&q…
首先使用 obs 推流符合如下流程:参考自 Hanvision Makito X cann't publish to SRS.. FFMPEG: C/S: Handshake C: ConnectApp() tcUrl=xxx S: Ack Size 2500,000 S: Set Peer Bandwidth 2500,000 S: Set Chunk Size 60,000 C: Set Chunk Size 60,000 S: ConnectApp() _result S: onBWDon…
1. connect('live') 2. SrsRtmpServer::connect_app 位于 srs_rtmp_stack.cpp.在 SRS 的 RTMP 连接处理线程 conn 中,当与客户端 handshake 完成后,即调用该函数接收客户端第一个 RTMP 消息:connect.如上图. int SrsRtmpServer::connect_app(SrsRequest* req) { int ret = ERROR_SUCCESS; SrsCommonMessage* msg…
由 SRS之RTMP的TCP线程 分析可知,SRS 接受客户端的连接后创建了一个线程:conn,用于处理与客户端的 RTMP 连接. 本文的分析是基于该配置文件的: listen 1935; max_connections 1000; daemon off; srs_log_tank console; vhost __defaultVhost__ { } 该配置文件仅使能 rtmp 直播推流功能. 1. 关系图 2. RTMP 连接处理线程 conn 之主循环 2.1 conn 的线程函数: S…
本文分析的是 SRS 针对 rtmp 的端口建立的 tcp 线程.具体建立过程: SRS之监听端口的管理:RTMP RTMP 的 TCP 线程中各个类之间 handler 的关系图 1. RTMP之TCP线程:SrsThread::thread_fun void* SrsThread::thread_fun(void* arg) { SrsThread* obj = (SrsThread*)arg; srs_assert(obj); /* 进入线程主循环 */ obj->thread_cycle…
1. 类定义 1.1 SrsConfig 类 /** * the config service provider. * for the config supports reload, so never keep the reference cross st-thread, * that is, never save the SrsConfDirective* get by any api of config, * for it maybe free in the reload st-thread…
按照默认的配置编译启动后,发现 stream caster 不起作用,启动时报如下警告: [-- ::][][] stream caster: off 原因是编译SRS时没有打开StreamCaster支持,需要使用如下命令: ./configure --with-stream-caster 链接如下: https://github.com/ossrs/srs/wiki/v2_CN_Streamer make完再重新启动SRS即可.…
下载代码 地址:https://github.com/ossrs/srs-gb28181 https://github.com/ossrs/srs-gb28181.git 注意:使用的是含有gb28181的GitHub仓库地址.若是使用其他的仓库地址,比如:https://github.com/ossrs/srs.git,这种在编译过程中不确定configure命令是否含有./configure --with-gb28181参数,没有的话则不能使用这个仓库的源码 我这边是直接在线下载的一个zip…
cmder cmder是一个增强型命令行工具,不仅可以使用windows下的所有命令,更爽的是可以使用linux的命令,shell命令. 安装包 安装包链接 下载后,直接解压即用. 修改命令提示符λ为$ 进入解压后的cmder的目录,进入vendor,打开init.bat文件. 修改第15行的代码 @prompt $E[1;32;40m$P$S{git}{hg}$S$_$E[1;30;40m{lamb}$S$E[0m 改为: @prompt $E[1;32;40m$P$S{git}{hg}$S$…
 下面所列的是常见的参数(选项)义: --help,-h                              显示帮助信息 --version,-V                       显示版本信息 -v                                              繁琐模式(显示命令完整的执行过程) -i                                               交谈模式(指定界面) -l               …
2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高,很有必要写个深入浅出的系列文章,本节内容帮助你入门.我将可能用Windows做开发环境,也可能用Linux/Mac,但是所有的dotnet CLI命令都是跨平台的,我们在windows/Linux/mac平台上开发跨平台的应用. 安装.NET Core .NET Core 包括.NET Core Runti…
MVVM模式解析和在WPF中的实现(三) 命令绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中的实现(三)命令绑定 MVVM模式解析和在WPF中的实现(四)事件绑定 MVVM模式解析和在WPF中的实现(五)View和ViewModel的通信 MVVM模式解析和在WPF中的实现(六)用依赖注入的方式配置ViewModel并注册消息 0x00 命令绑定要达到的效果 命令绑定要关注的核心就是两个方…
异常处理汇总-数据库系列  http://www.cnblogs.com/dunitian/p/4522990.html 一般都是清理垃圾清理过头了,把不该删的目录删了 网上说法: 问题描述: 1.sqlserver 打开表提示:目录名称无效 2.在执行sql语句时提示:在执行批处理时出现错误.错误消息为: 目录名无效 3.所有的数据库都存在1跟2的问题 问题分析: 1.操作系统重装或进行过系统镜像还原,导致temp目录下的文件夹丢失. 2.杀毒软件误删. 3.被人为或其他软件删除. 解决方案:…
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 收缩前 图形化演示: 不仅仅可以收缩日记文件,数据库文件也是可以收缩的,只不过日记收缩比较明显点(为什么这么大?这么浪费?===>你还记得你建库时候的filegrowth了吗) 效果立竿见影 补充:(如果你感觉日记还是很大就用这种方法) 先改成简单 重复上面收缩步骤,完成后再改成完整 命令行演示: use [master] go --alter database [BigValues]…