-
RTMP流媒体服务
2020-02-25 10:16:43此服务是轻量级的、高性能的流媒体服务。可通过RTMP协议将本地文件、共享屏幕、本地音视频设备(摄像机,麦克风)等通过流转发的方式传输给flash播放器进行播放。基于c++开发,稳定可靠,代码跨平台,移植也相当方便...此服务是轻量级的、高性能的流媒体服务。可通过RTMP协议将本地文件、共享屏幕、本地音视频设备(摄像机,麦克风)等通过流转发的方式传输给flash播放器进行播放。基于c++开发,稳定可靠,代码跨平台,移植也相当方便,低延时。支持多种音视频格式的传输、支持RTSP转RTMP、同时支持RTSP/RTMP的转发
-
rtmp流媒体服务器搭建.zip
2020-08-13 13:33:32利用nginx-rtmp搭建Windows流媒体服务器,支持rtmp、hls协议播放。包含rtmp流媒体服务器搭建的工具和方法。 -
Nginx搭建rtmp流媒体服务器
2015-07-24 14:15:03Nginx搭建rtmp流媒体服务器详解与实例 -
在Ubuntu 14 上安装 Nginx-RTMP 流媒体服务器的教程
2020-09-14 21:58:18RTMP流媒体协议是 一套 Adobe 开发的音频视频实时传输协议;nginx-rtmp 是一个基于nginx的 RTMP服务模块,开源,免费,接下来通过本文给大家介绍在Ubuntu 14 上安装 Nginx-RTMP 流媒体服务器,需要的朋友可以参考下 -
读取H264文件到内存推流到RTMP流媒体服务器
2019-04-09 18:22:05纯C++代码,读取H264文件到内存推流到RTMP流媒体服务器,关键使用libRTMP库封装成RTMP协议格式!方便初学者 -
搭建Nginx-rtmp流媒体服务器+使用ffmpeg推流
2018-05-22 14:38:16搭建Nginx-rtmp流媒体服务器+使用ffmpeg推流 https://www.jianshu.com/p/06c2025edcd3 sudo apt-get install build-essential sudo ./configure –prefix=/usr/local/nginx –with-pcre=../nginx-dependence/pcre...搭建Nginx-rtmp流媒体服务器+使用ffmpeg推流
硕士毕业后,一直从事算法工程师,具有丰富的深度学习,图像视频处理经验,因此录制了一些课程,欢迎大家观看,有问题可以找我私聊:QQ:81664352,谢谢
基于web端的人脸识别算法视频教程
1.掌握深度学习图像处理(基于keras、tensorflow、opencv)
2.掌握web前后端设计(基 于flask框架)
3.开发基于web端的深度学习图像,把web端应用与人工智能相结合
视频教程
https://edu.csdn.net/course/detail/28400/391614?pre_view=1https://www.jianshu.com/p/06c2025edcd3
sudo apt-get install build-essential
sudo ./configure --prefix=/usr/local/nginx --with-pcre=…/nginx-dependence/pcre-8.40 --with-zlib=…/nginx-dependence/zlib-1.2.11 --with-openssl=…/nginx-dependence/openssl-1.1.0 --with-http_ssl_module --add-module=…/nginx-dependence/nginx-rtmp-module
安装Nginx依赖
我是在根目录下安装的依赖。首先在根目录下创建一个叫做nginx-dependence的文件夹
sudo mkdir nginx-dependence
然后在nginx-dependence中安装依赖,按行依次运行以下命令。这些依赖一定不要使用apt-get 安装 ,因为后面在配置Nginx的时候,要提供这些依赖的源码路径。(我一开始是使用apt-get 安装 依赖的,结果在nginx 的configure 步骤出现问题,所以我就重新安装了)
cd nginx-dependence
sudo wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz
sudo tar -zxvf pcre-8.40.tar.gz
cd pcre-8.40/
sudo ./configure
sudo make
sudo make installsudo wget http://zlib.net/zlib-1.2.11.tar.gz
sudo tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11/
sudo ./configure
sudo make
sudo make installsudo wget https://www.openssl.org/source/old/1.1.0/openssl-1.1.0.tar.gz
sudo tar -zxvf openssl-1.1.0.tar.gz
cd openssl-1.1.0/
sudo ./config
sudo make
sudo make install
在nginx-dependence目录中,先下载nginx-rtmp-module
git clone https://github.com/arut/nginx-rtmp-module.git所以在此文件中有,如图:
安装Nginx
首先运行:
apt-get install build-essential
apt-get install libtool然后下载并安装Nginx,我安装的版本是1.12.0,我也是安装在根目录的。
依次运行下面的指令。
回到nginx-dependence上一层目录
sudo wget http://nginx.org/download/nginx-1.12.0.tar.gz
sudo tar -zxvf nginx-1.12.0.tar.gz
cd nginx-1.12.0/sudo ./configure --prefix=/usr/local/nginx --with-pcre=…/nginx-dependence/pcre-8.40 --with-zlib=…/nginx-dependence/zlib-1.2.11 --with-openssl=…/nginx-dependence/openssl-1.1.0 --with-http_ssl_module --add-module=/nginx-dependence/nginx-rtmp-module
sudo make
sudo make install–with-pcre=…/nginx-dependence/pcre-8.40 就是我的pcre依赖所放置的位置,这个位置可根据自己的安装位置进行灵活配置。–add-module=。。/nginx-dependence/nginx-rtmp-module 这个module 的路径也要正确设置为之前下载nginx-rtmp-module的路径。如果出现找不到什么文件,那么就是目录设置错误。
启动Nginx
如果上面的步骤都没有出错,则可以检验一下nginx是否已经安装正确了:在命令行中输入这个命令启动nginx服务器:
sudo /usr/local/nginx/sbin/nginx如果没有报任何错误,则可以打开浏览器看看nginx是否启动成功。打开浏览器,输入localhost 或本机的IP地址,按回车,如果看到这样的界面,说明nginx已经安装成功并且启动成功了。如图
如果有的时候启动时出现这样的提示如图:
这是重复启动导致的。运行sudo /usr/local/nginx/sbin/nginx -s stop可以先停止运行之前启动的,然后再次运行
sudo /usr/local/nginx/sbin/nginx就没有问题了。配置Nginx流媒体服务器
nginx服务器有一个配置文件叫做nginx.conf ,这个文件默认是位于/usr/local/nginx/conf 目录下。
我将这个文件改成这样:
worker_processes 1;error_log logs/error.log debug;
events {
worker_connections 1024;
}
rtmp {
server {
listen 1935;
application videotest{
live on;
}
}
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
其中rtmp就是rtmp服务器模块,端口是1935,application我理解为一个路径。可以通过访问rtmp://localhost/videotest 来访问videotest这个资源。live on 表示这是实时的传输,这不同于点播,点播就好比我在某视频网站上想看一个视频,无论我什么时候去点击,它会从头开始播放。而实时传输(直播),就是好比看电视,我在19:20去打开电视(打开直播路),视频不会从头开始播放,而是从当前(19:20)的视频数据开始播放。
除了配置rtmp服务器,还可以配置HTTP和HTTPS服务器。这方面我还没有深入去了解。更多关于nginx服务器和其配置方式,请阅读nginx官网 。安装ffmpeg
首先安装h264 视频编解码库:
sudo apt-get update
sudo apt-get install libx264-dev安装ffmpeg ,依次输入以下命令:
wget http://ffmpeg.org/releases/ffmpeg-3.0.9.tar.bz2
tar jxvf ffmpeg-3.0.9.tar.bz2
cd ffmpeg-3.0.9/
sudo ./configure --enable-shared --enable-pthreads --enable-gpl --enable-avresample --enable-libx264 --enable-libtheora --disable-yasm动态
sudo ./configure --disable-shared --enable-static --enable-pthreads --enable-gpl --enable-avresample --enable-libx264 --enable-libtheora --disable-yasm
静态如果出现错误 ,可能需要安装sudo apt-get -y install libtheora-dev
sudo make
sudo make install
其中sudo make 这个过程会比较久。安装完ffmpeg之后,在命令行中输入ffmpeg:
如果出现找不到库,说明是使用动态编译,库的路径无法找到。
因为这里我重新用静态命令编译一遍,然后就成功了。推流与拉流
配置好nginx.conf之后,重新启动sudo /usr/local/nginx/sbin/nginx
然后在命令行中使用 ffmpeg 进行推流:
ffmpeg -re -i /home/hjh/nginx/video.mp4 -vcodec copy -acodec copy -b:v 800k -b:a 32k -f flv rtmp://localhost:1935/videotest/test
/home/hjh/nginx/video.mp4自己需要播放的文件。
在本机器上用vlc打开串流rtmp://localhost:1935/videotest/test如图:这里有一个bug,局域网中其他电脑访问服务器需要使用:
rtmp://10.150.90.230:1935/videotest/test
10.150.90.230 表示服务器的IP地址,并且需要加入端口号,否则只能在本机服务器上播放,其他电脑如法播放。 -
crtmpserver RTMP流媒体服务器
2020-10-08 11:12:45其主要作用为一个高性能的RTMP流媒体服务器,可以实现直播与点播功能多终端支持功能,在特定情况下是FMS的良好替代品。 支持RTMP的一堆协议(RTMP,RTMPE, RTMPS, RTMPT, RTMPTE),如果你不想用RED5的话它也是一个...crtmpserver又称rtmpd是Evostream Media Server(www.evostream.com)的社区版本采用GPLV3授权
其主要作用为一个高性能的RTMP流媒体服务器,可以实现直播与点播功能多终端支持功能,在特定情况下是FMS的良好替代品。
支持RTMP的一堆协议(RTMP,RTMPE, RTMPS, RTMPT, RTMPTE),如果你不想用RED5的话它也是一个很好的选择。
-
SRS搭建rtmp流媒体服务器
2020-11-14 15:13:59SRS搭建rtmp流媒体服务器 ***【免费下载源码和PPT课件】******【在线视频教程】*** 好文章,来自【福优学苑@音视频+流媒体】 SRS简介 SRS 简介 SRS定位是运营级的互联网直播服务器集群,追求更好的概念...SRS搭建rtmp流媒体服务器
***【免费下载源码和PPT课件】***
***【在线视频教程】***
SRS 简介
SRS 简介
SRS定位是运营级的互联网直播服务器集群,追求更好的概念完整性和最简单实现的代码。SRS提供了丰富的接入方案将RTMP流接入SRS,
包括推送RTMP到SRS、推送RTSP/UDP/FLV到SRS、拉取流到SRS。SRS还支持将接入的RTMP流进行各种变换,譬如将RTMP流转码、流截图、
转发给其他服务器、转封装成HTTP-FLV流、转封装成HLS、转封装成HDS、录制成FLV。SRS包含支大规模集群如CDN业务的关键特性,譬如RTMP
多级集群、源站集群、VHOST虚拟服务器、无中断服务Reload、HTTP-FLV集群、Kafka对接。此外,SRS还提供丰富的应用接口,包括HTTP回调、
安全策略Security、HTTP API接口、RTMP测速。SRS在源站和CDN集群中都得到了广泛的应用Applications。官方说明
SRS特点
1、简单,足够稳定。
2、高性能,高并发,SRS是单线程、事件/st-线程驱动。最大可支持6k客户端。官网性能介绍: 性能测试
3、可以作为rtmp源服务器,也可作为节点对接CND,从其他rtmp服务器上推/拉流。
4、支持Vhost 及defaultVhost配置。
5、核心功能是分发RTMP,主要定位就是分发RTMP低延时流媒体,同时支持分发HLS流。
6、服务Reload 机制,即在不中断服务时应用配置的修改。达到不中断服务调整码率,添加或调整频道。
7、cache 一个GOP ,达到播放器能快速播放的效果。(gop_cache配置项)
8、可监听多个端口,支持长时间推拉流。
9、forward配置项,可在服务器间转发流。
10、支持转码,可以对推送到SRS的RTMP流进行转码,然后输出到其他RTMP服务器。可对指定的流配置是否转码。内置了FFMPEG.同时会提供FFMPEG的部分功能:输出纯音频、加文字水印、剪切视频、添加图片LOGO等。
11、支持http回调,提供了客户端连接接口、关闭连接接口、流发布、流停止、流播放、停止播放等接口,方便再封装的应用跟踪流信息。内置也有一个http服务器,可直接调用api接口。
12、内置流带宽测试工具、完善的日志跟踪规则。
13、脚本管理,提供init.d系统脚本,也可通过调用api 控制服务状态。
14、采集端支持:设备、本地文件,RTSP摄像头、rtmp等。官方意思是,能拉任意的流,只要FFMPEG支持,不是h264/aac都没有关系,FFMPEG能转码。SRS的接入方式可以是“推流到SRS”和“SRS主动拉流”。
15、支持将RTMP流录制成flv文件。FLV文件的命名规则是随机生成流名称,上层应用可通过http-callback 管理流信息。
16、SRS日志很完善,支持打印到console和file,支持设置level,支持连接级别的日志,支持可追溯日志。
SRS部署
SRS是国产优秀流媒体服务器,在Github上开源, 可在 Linux 机器各主流系统上部署。操作简单。
操作及配置清晰,文档齐全,在此只附上部署Demo : SRS_SampleDemo
XX云平台使用SRS案例
1、XX云平台PGC直播管理
通过SRS 的http_callback ,XX云的直播模块,完成对流信息的管理。
主要功能:创建频道、编辑频道、跟踪频道信息、转码模板、时移、录制、直播加密。
2、SRS集群
SRS集群 : 基于SRS多节点、多层级部署, 通过srs-调度,使得不同层级只负责一项任务。达到集群部署的效果,可横向和纵向扩展。
3、基于SRS集群的UGC直播管理
------------------------------------
1.源码下载:
git clone https://code.csdn.net/winlinvip/srs-csdn.git
cd srs-csdn
git pull
git checkout 2.0release
2.编译安装
cd trunk
#查看编译时的帮助,里面有一些指定的参数是情况加减,官方文档
./configure -h
#开始编译:
./configure --prefix=/usr/local/srs --with-ssl --with-hls --with-hds --with-dvr --with-nginx --with-http-callback --with-http-server --with-stream-caster --with-http-api --with-ffmpeg --with-transcode --with-ingest --with-stat --with-librtmp --with-research --with-utest --with-gperf --with-gprof
make
make install
3.第三方应用启动:
#启动nginx for hls
sudo ./objs/nginx/sbin/nginx
#ffmpeg
./objs/ffmpeg/bin/ffmpeg
#to start the api-server
python ./research/api-server/server.py 8085
./objs/srs -c conf/srs_kp.conf
ps -ef | grep srs #grep --color=auto srs
./objs/srs -v #2.0.242
可能用到的调试命令:
sudo pkill -9 nginx
objs/nginx/sbin/nginx -c ./objs/nginx-1.5.7/conf/nginx.conf
sudo nginx -s reload
到此为止,SRS已编译安装完成!
4.配置RTMP
文件目录:./conf/rtmp.conf
配置内容:
listen 1935;
pid ./objs/srs.pid;
chunk_size 60000;
ff_log_dir ./objs;
srs_log_tank file;
#配置日志答应到文件,需要和srs_log_level配合使用
srs_log_level trace;
#制定配置文件的级别,默认级别是trace
srs_log_file ./objs/srs.log;
#制定日志文件的位置。
max_connections 1000;
#最大连接数
daemon on;
#以daemon的方式启动,如果要启动在console,那么需要配置daemon off;并且,需要配置srs_log_tank console;
utc_time off;
#是否使用utc时间。如果该值为off则使用本地时间,如果开始使用utc时间。
vhost __defaultVhost__ {
#默认的vhost,在没有指明vhost的情况,默认使用这个vhost。
}
我配置的srs_kp.conf
注意gop_cache 一定要设置成on,否则切片推流有卡顿
# the config for srs to delivery hls
# @see https://github.com/ossrs/srs/wiki/v1_CN_SampleHLS
# @see full.conf for detail config.
listen 1935;
max_connections 1000;
daemon off;
srs_log_tank console;
http_server {
enabled on;
listen 8080;
dir ./objs/nginx/html;
}
vhost __defaultVhost__ {
dvr {
enabled on;
#配置成时分秒
dvr_path ./objs/nginx/html/[app]/[stream]/[15][04][05].flv;
dvr_plan segment;
dvr_duration 5; #切片长度,这个可以改 e.g. 1 or 3
dvr_wait_keyframe on;
}
gop_cache on;
}
推流和播放
推流:
./objs/ffmpeg/bin/ffmpeg -i "./doc/source.200kbps.768x320.flv" -vcodec libx264 -vprofile baseline -level 30 -g 60 -vb 800k -strict experimental -acodec aac -ab 96000 -ar 48000 -ac 2 -f flv rtmp://127.0.0.1:1935/live/gongjia
播放:
rtmp://172.17.6.96:1935/live/gongjia
查看日志
tail -f ./objs/srs.log
-
1.RTMP流媒体服务器搭建
2020-11-27 02:00:21RTMP流媒体服务器搭建——安装srs流媒体服务器 目录 安装srs流媒体服务器 测试srs流媒体服务器 使⽤OBS推流 1. 安装srs流媒体服务器(参考:RTMP分发) srs官⽹:https://github.com/ossrs/srs 码云的源代码... -
北广传媒RTMP流媒体服务器漏洞
2019-09-16 13:30:08北广传媒移动电视(http://www.bj-mobiletv.com/)的RTMP流媒体服务器有漏洞 该漏洞可以上我们通过他们的...使用任意可以发布RTMP流媒体的客户端(例如:Adobe Flash Media Encoder,或者自己做一个Flash文件) ... -
rtmp服务器_nginx+windwos 搭建 rtmp 流媒体服务器
2020-12-08 02:41:16喜欢就关注我们吧!“写此篇文章属于笔者在开发项目中,...”以下是使用nginx自行搭建rtmp流媒体服务器,分别从windows系统和linux系统中进行搭建。一、Windows系统搭建nginx下载地址:http://nginx-win.ecsds.eu/do... -
音视频基础(38)连接RTMP流媒体服务器
2020-07-15 08:30:13文章目录音视频基础(38)连接RTMP流媒体服务器 音视频基础(38)连接RTMP流媒体服务器 -
Nginx搭建RTMP流媒体服务器
2020-12-13 00:17:59Nginx搭建RTMP流媒体服务器 安装CentOS 6操作系统。 安装gcc环境 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,先安装gcc环境。 yum install -y gcc gcc-c++ 安装pcre和pcre-devel nginx的... -
nginx+rtmp流媒体服务器搭建
2019-01-20 12:01:38nginx+rtmp流媒体服务器搭建 一、nginx+rtmp简介 Nginx本身是一个非常出色的HTTP服务器,FFMPEG是非常好的音视频解决方案.这两个东西通过一个nginx的模块nginx-rtmp-module,组合在一起即可以搭建一个功能相对比较完善... -
Linux下通过Nginx搭建RTMP流媒体服务器需要的一系列源码包
2020-04-08 10:59:36压缩包里包含了: Linux下通Nginx搭建RTMP流媒体服务器需要的一系列源码包。 搭建方法可以参考博文: https://blog.csdn.net/xiaolong1126626497/article/details/105378894 -
RTMP流媒体服务器 crtmpserver
2015-06-02 07:01:28http://www.oschina.net/p/crtmpserver crtmpserver又称rtmpd是... 其主要作用为一个高性能的RTMP流媒体服务器,可以实现直播与点播功能多终端支持功能,在特定情况下是FMS的良好替代品。 支持RTMP的一堆协议(RTMP, -
Nginx-rtmp流媒体服务器+使用ffmpeg推流
2019-07-04 19:38:14场景需求: 采用opencv读取rtsp视频流并进行逐帧处理之后,采用python的requests.post()将处理之后的图片推送给web端的时候发现,画面超慢,算法可以做到20fps,所以就是...参考手把手教你搭建Nginx-rtmp流媒体服... -
windows下编译基于nginx插件的rtmp流媒体服务nginx-rtmp
2019-02-20 20:18:00rtmp流媒体服务器,开源方案有多种,包括srs,red5,crtmpserver,fms,nginx插件等。本文描述了基于nginx插件的方式来实现rtmp流媒体服务器nginx-rtmp,该插件可以基于开源的nginx-rtmp-module。 本文是基于... -
使用 NGINX 搭建 RTMP 流媒体服务器实现直播功能
2020-09-05 01:32:14本文介绍了如何使用 Nginx 搭建 RTMP 流媒体服务器,并提供配置文件和前端示例,实现直播功能。 -
搭建nginx rtmp流媒体服务器(超详细)
2017-11-25 15:37:46阿里云搭建rtmp流媒体服务器,中间踩过一些坑,过程一步步纪录的很详细,以及碰到的一些问题。 -
搭建Nginx-Rtmp流媒体服务器及FFmpeg推流
2020-11-14 16:12:10参照:搭建Nginx-rtmp流媒体服务器+使用ffmpeg推流 部分细节: 安装pcre:sudo wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz 安装Nginx时,sudo ./configure 后。注意文件路径 ... -
本地RTMP流媒体服务器搭建拉流简易版
2019-05-10 14:25:54本地RTMP流媒体服务器搭建。 一、火力牛摄像头配置 ip 为服务器的ip 二、本地搭建rtmp服务器 https://blog.csdn.net/szydwy/article/details/78632222 三、拉流 EeasyPlay拉流 ...... -
安防网络摄像机推送到RTMP流媒体服务器方案
2018-10-23 15:58:22RTMP流媒体服务器一般只接收RTMP格式的推流。目前市场上有一些自带RTMP推流的摄像机和编码器,可以直接在其配置里面配置推送到RTMP流媒体服务器上。但是大部分的安防网络摄像机还不带推流功能,对于这种摄像机只能... -
【环境搭建】在Ubuntu16.04上搭建Nginx-rtmp流媒体服务器
2019-12-21 16:26:101.在ubuntu16.04上搭建Nginx-rtmp流媒体服务器
-
物联网基础篇:快速玩转MQTT
-
协程的意义
-
linux中type 、file、stat三者的区别
-
使用 Linux 平台充当 Router 路由器
-
使用vue搭建微信H5公众号项目
-
机器学习可视化软件机器学习可视化软件
-
PPT大神之路高清教程
-
应届生与IT培训生,就业谁更占优势?
-
【Python-随到随学】 FLask第一周
-
泰坦尼克号建模分析-你能活下来吗?
-
计算机网络:单播,多播
-
linux ubuntu 国内apt源 国内conda源 国内pip源 国内镜像加速 linux加速安装各种软件【亲测可用】【解决方案】
-
DES的ECB加密解密汇总.zip
-
A movie title explorer.zip
-
Hdu自动健康打卡系统
-
mysql-8.0.21-winx64.zip
-
vscode 通知: Error loading workspace: err: exit status 1: stderr: build flag -mod=readonly only valid
-
【爱码农】C#制作MDI文本编辑器
-
Ruby On Rails路径遍历漏洞 CVE-2018-3760 漏洞复现
-
JS面向对象编程及ES6新特性(更新中)