展开

关键词

SRS:如何用NGINX搭建HLS分发集群

SRS的集群,终于补齐了最后一块拼图,就是基于NGINX的HTTP文件分发集群,比如HLS分发集群。 并且,HLS分发集群,可以和HTTP-FLV一起。高并发,高扩展性的NGINX,YYDS。 •SRS Edge支持HLS或DASH等切片的直播,本质上它们,就是文件分发。•SRS Edge支持WebRTC的分发,这是Edge设计的目标,WebRTC有自己的集群方式。 如果我们扩展10个NGINX,每个NGINX是10Gbps带宽,那么整个系统的带宽是100Gbps,能支持10万并发,SRS的带宽消耗只有10Mbps。 如何验证系统正常呢? Work with SRS Edge Server NGINX边缘集群,也可以和SRS Edge Server一起,可以实现HLS和HTTP-FLV的分发。 实现起来很简单,只需要在NGINX的服务器上,部署一个SRS,并让NGINX在反向代理模式就可以。

17120

iOS关于直播 - 搭建服务端解析

通过操以上步骤Nginx和RTMP模块就安装好了,下面开始来配置Nginx的RTMP模块。 5、保存文件后,重新加载Nginx的配置文件 nginx -s reload #这一步很重要 6、安装ffmepg具 brew install ffmpeg 安装这个需要等一段时间,这时,你可以准备一个视频文件为来推 保存配置文件,重新加载Nginx配置 nginx -s reload 进行推 ffmpeg推还是和上一篇的一样,过,我们需要推到新配置的hls中,movie关键字可以任何替换 ffmpeg -re ,我们可以同时通过rtmp和hls两种播放方式来看到退出来的。 下载JWPlayer播放器,放到Nginx网页服务的根目录。把JWPlayer解压到这个目录里,然后再这个目录里新建一个play.html的文本文件。 文章由者:阿华12年 逻辑iOS学员提供

7520
  • 广告
    关闭

    什么是世界上最好的编程语言?丨云托管征文活动

    代金券、腾讯视频VIP、QQ音乐VIP、QB、公仔等奖励等你来拿!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    搭建媒体服务器 PingOS 平台搭建

    近期由于原因需要更换公司原有 RTMP 协议推,由于 Flash 插件今年年底就淘汰使用,并且一直在寻找一种并发好、延时低、同时便于回放功能的应用,在网上找到了基于Nginx + FFmpeg 推的解决方案 ,可以实现 HLS 协议推,看项目介绍可以实现 HLS+ 协议,这个具安装比较便捷。 服务重新载入等操。 命令 # 进入到 PingOS 应用目录,下面所有操皆以此目录下进行 cd /usr/local/pingos/ # 开启 nginx 服务器 . /sbin/nginx -s stop 推 配置好服务器,可以看一下媒体服务器推效果,这里我是用的是 OBS 推应用,推端使用的是 RTMP 协议,在播放端使用的是 hls+ 协议。

    1.5K10

    HLS的实现(iOS和OS X系统)

    核心思路 配置Nginx以支持HLS的推与拉,iOS系统使用LFLiveKit推,OS X系统使用FFmpeg推,拉端可以使用Safari浏览器或者VLC播放器。 效果展示 ? /etc/nginx/nginx.conf 4、OS X系统推 使用FFmpeg对前文生成的mp4文件进行推(FFmpeg的安装看HLS点播实现(H.264和AAC码)) 在终端输入指令: 5、iOS系统推 新建一个Xcode程,在podfile输入pod 'LFLiveKit',执行pod install。 :代码地址 注意事项 Nginx服务器是在Mac跑的,iOS推能把推地址写成localhost!!! 总结 本来想手写一次RTMP的推,但是看到LFLiveKit之后,我觉得用重复造轮子了,其详细的代码已经足够深入学习。

    1.8K61

    FFmpeg推Nginx并使用播放器播放

    必备具:FFmpeg,Nginx,还有一个播放器。之前在实例解析中分享过如何用FreeSWITCH来做直 播,这次分享下如何用FFmpeg配合Nginx做直播。 /nginx/html/hls; record off; } } } http { include mime.types; default_type /nginx.conf test is successful 推 重点来了,我们刚才是把视频保存到本地。 /1 //首先推个视频试一下,看看好用 ffmpeg -f avfoundation -framerate 15 -video_size 1280x720 -i "0:2" -vcodec libx264 -preset ultrafast -acodec libmp3lame -ar 44100 -ac 1 -f flv rtmp://192.168.3.162:1935/hls/1 //一本正经的推

    60520

    利用Simple-RTMP-Server搭建RTMP和HLS直播服务(上)

    /configure --with-ssl --with-hls --with-nginx --with-ingest --with-ffmpeg --with-transcode –demo make 由于设置了HLS分发,所以在Nginx目录下(./objs/nginx/html/live)会有m3u8/ts。 /objs/nginx/html; hls_fragment 10; hls_window 60; } } hls配置节(hls分发) enabled:是否开启HLS hls_fragment 192.168.43.118/live/livestream.m3u8 三、从RTSP镜头拉取到SRS 手机为RTSP摄像头,安装EasyIPCamera。 后进入安防领域,从事安防平台服务器端Linux C++开发,也喜欢研究服务器端高并发、高可靠性的实现。

    30830

    具系列 | 视频监控RTSP转HLS解决方案

    视频监控RTSP转HLS解决方案 介绍 视频监控RTSP转RTMP转HLS解决方案 由于公司业务,需要实现基于WEB访问监控摄像头实时的预览,经过各种百度,补充了少相关知识,了解到了很多大神的实现方法 使用说明 参考根目录下的nginx.conf来配置自己的web代理nginx 解压nginx-rtmp-server.zip,这是为rtmp服务器用的nginx版本,可自行修改conf/nginx.conf rtsp协议,转换为rtmp协议,推送给nginx的rtmp服务, 然后由nginx的rtmp模块将切片,转换为m3u8+ts格式片断,然后由nginx对外提供web访问m3u8和ts片段的服务, 供页面呈现 运行程 1.用户访问nginx路由:http://127.0.0.1:8888/hls/{{设备编码}}/index.m3u8 2.nginx匹配到该路由,将请求转发至本服务,nginx 我做的是使用Redis存储设备编码,通过Lua脚本从Redis中获取设备号 rtmp地址如: rtmp://127.0.0.1:1935/hls/#(code) 推线程中设置了转换持续最大时间,因为页面播放器会断的请求

    3.1K31

    Ubuntu 安装nginx 来搭建推服务器

    /nginx-rtmp-module-master/ 配置好之后会多出一个Makefile文件(一种配置文件,定义了一系列的规则来指定编译操)与objs文件夹 ? 配置nginx 创建推存放文件夹 // 为里以 /usr/local/var/www/hls 为例 cd /usr/local sudo mkdir -p var/www/hls 进入nginx的conf 目录,使用vim编辑nginx.conf文件 cd /usr/local/nginx/conf sudo vim nginx.conf 配置Nginx,支持http协议拉 location /hls 终端上就开始断的刷新推信息 ? 开始推 我们可以用电脑上的VLC这个软件来测试是否推成功 ? VLC ? �打开 OK,rmtp打开正常,hls演示了,一样的 ? rmtp打开成功

    76120

    HLS点播实现(H.264和AAC码

    VideoToolbox编码成H.264码,这次我们使用VideoToolbox和AudioToolbox播放音视频,而是把这两个格式的文件打包成TS,并用通过HLS协议在浏览器播放。 核心思路 用FFmpeg把H.264和AAC码封装成mp4格式再打包成TS,把生成的ts和m3u8文件放到Nginx的服务器目录下,用Safari访问对应的m3u8文件实现HLS的点播。 具体步骤 1、安装Homebrow(已安装的看下一步) Homebrew(brew缩写)是Mac的上安装和卸载软件的管理具(类似其他系统的yum和apt-get),Homebrow的官方地址。 2、把mp4视频打包成ts ffmpeg -i abc.mp4 -c:v libx264 -c:a copy -f hls abc.m3u8 打包结果如下: ? 总结 HLS的点播已实现,下一步尝试进行HLS的直播和推。 这两篇在实现过程中帮助很大 Nginx的搭建 HLS点播

    1.3K60

    基于Nginx的媒体服务器技术

    在LiveVideoStack线上分享中,PingOS 开源项目组开发程师、UCloud RTC研发程师朱建平详细介绍了基于nginx-rtmp-module的PingOS媒体服务器在http-flv Nginx媒体扩展:http-flv、http-ts、hls+ 最初始的nginx-rtmp-module相关模型与包括SRS在内的多数媒体服务器实际上是一样的(1个生产者,n个消费者)。 于是我们就需要付出双倍的代码与逻辑维护,这无疑会显著增加开发与维护成本。 但此操是默认开启的,需要在服务器中进行配置。开启配置后,才会将rtmp的buffer生成一份镜像的ts数据,这一部分的ts数据仅会供http-ts和hls两个协议使用。 如果能理解http-flv的协议程,那么也就难理解http-ts的实现程。 1.3 hls+在Nginx中的实现 图中展示的是hls+在nginx中的实现。

    44640

    基于Nginx的媒体服务器技术

    在LiveVideoStack线上分享中,PingOS 开源项目组开发程师、UCloud RTC研发程师朱建平详细介绍了基于nginx-rtmp-module的PingOS媒体服务器在http-flv Nginx媒体扩展:http-flv、http-ts、hls+ 最初始的nginx-rtmp-module相关模型与包括SRS在内的多数媒体服务器实际上是一样的(1个生产者,n个消费者)。 于是我们就需要付出双倍的代码与逻辑维护,这无疑会显著增加开发与维护成本。 但此操是默认开启的,需要在服务器中进行配置。开启配置后,才会将rtmp的buffer生成一份镜像的ts数据,这一部分的ts数据仅会供http-ts和hls两个协议使用。 如果能理解http-flv的协议程,那么也就难理解http-ts的实现程。 1.3 hls+在Nginx中的实现 图中展示的是hls+在nginx中的实现。

    37000

    HLS上花10倍的代码,SRS值得个球吗?

    移动端发展速度已经用科普了,移动端的媒体用什么分发?SRS为何要重写HLS和HTTP?为什么说SRS才是标准移动端的媒体服务器? 对于HTTP-MP3呢,有些安卓没法播放纯音频的HLS,但是能播放HTTP-MP3。实际上SRS2的HTTP服务器重写后,支持的仅仅是HTTP-MP3,还有FLV、AAC、TS。 为何呢?HTTP和RTMP,或者HLS;实际上在SRS里面分发时,才能做到非常方便的管理和处理,譬如HSTRS,HTTP的边缘服务器。 至于HLS的P2P,所有的P2P系统都适合开源,太庞大了;HLS的P2P是可行的。 RTMP是PC时代的协议,实际上RTMP是真正的协议,因此在PC+移动端时代,RTMP依然可以在接入和服务器内部分发有极大的用。

    8420

    简单的 H5 视频推解决方案

    者:周超 导语 随着直播平台爆发式增长,直播平台从 PC 端转战移动端,紧跟着直播的潮,自己学习实现了一套简单的 H5 视频推的解决方案,下面就给小伙伴们分享一下自己学习过程中的经验。 详细介绍可以参考:《【经验分享】音频、视频利器——FFmpeg》 模拟推 先来看一个简单的直播推程图 : [1497340227199_939_1497340227139.png] 用 flv 视频文件模拟 注:RTMP(Real Time Messaging Protocol),实时消息传输协议,用于视频直播协议,和 HLS 一样都可以应用于视频直播;   用 mp4 视频文件模拟 HLS 视频: ffmpeg ,主要用于 PC 和 Apple 终端的音视频服务; HLS 的请求程: [1497340264794_4067_1497340264502.png] H5 如何在页面上播放视频 <video autoplay

       总结 根据以上的程,简单的实现了一个视频直播的服务器来推送直播,并且可以在 H5 页面上播放视频。有兴趣的小伙伴们也可以尝试一下~

    7.7K124

    NGINX如何实现rtmp推服务--视频缓存

    今天我们讲解NGINX如何实现视频缓存的,了解NGINX如何推的可以先去看一下我上篇文章 NGINX如何实现rtmp推服务--鉴权篇 NGINX的rtmp推部分的配置如下 rtmp { live on; hls on; hls_path "C:/laragon/bin/nginx/nginx-rtmp/hls/"; hls_fragment 8s; } } } 这里主要分了两个部分讲解,一个是live推,一个是hls的推。 视频存放位置 C:\laragon\bin\nginx\nginx-rtmp\video 视频缓存 stream-1585622145-2020-03-31-10_35_45.flv hls配置 hls的推会产生一个m3u8的索引,保存ts文件的索引,同时保存一个个视频片段。后端根据文件的缓存地址,可以拿到再次播放。

    1.5K20

    存在的 -> 前端实时探索记

    HLS HLS(HTTP Live Streaming)是苹果公司提出的基于 HTTP 协议的的媒体网络传输协议,它的原理是把整个分成一个个小的基于 HTTP 的文件来下载,每次只下载一些。 下面是 HLS 实时的整个链路: ? 从图中可以看出来我们需要一个服务端为编码器和分割器,接受断输出成片段(stream),然后前端再通过一个索引文件,去访问这些片段。 # 在 rtmp 的 server 下开启 hls # 为上图中的 Server,负责的处理 application hls{ live on; hls on; copy -acodec copy -f flv rtmp://127.0.0.1:1935/hls 这个时候可以看到文件夹里已经有许多文件存在,且停地更新: ? HLS 说了这么多,如直接上手看看吧: 首先我们需要一个新的 nginx 插件:nginx-http-flv-module 在 nginx.conf 中进行一些新的配置: # rtmp server

    1.1K50

    用FFmpeg+nginx+rtmp搭建环境实现推

    //运行rtmp配置文件 注意:此时命令行会一直处于执行中 用理会 也要关闭 测试:浏览器输入localhost:80 ,查看是否配置nginx启动成功! 4、推: ffmpeg -re -i 123.mp4 -vcodec libx264 -acodec aac -f flv rtmp://你的ip地址:1935/live/home 5、拉: 电脑打开 vlc播放器 输入地址:rtmp://你的ip地址:1935/live/home Linux: 1、安装具: #gcc gcc-c++ perl 编译软件包用 yum install re -i 123.mp4 -vcodec copy -codec copy -f flv rtmp://你的ip/hls/cctv 测试访问 视频切片保存位置:/tmp/hls/ m3u8视频访问地址 :http://你的ip/hls/cctv.m3u8 重启nginx /usr/local/nginx/sbin/nginx -s reload

    12520

    监控摄像头RTSP协议对接腾讯云直播

    :咖啡连锁企业通过摄像头将咖啡制过程直播出去;监控景点直播;户外楼宇直播等。 ,并转发到nginx-rtmp 3) nginx-rtmp转推rtmp到腾讯云实现互联网直播 3.软件安装 软件环境信息: - 操系统:Centos 7.2 - ffmpeg版本:2.8.15 - 安装和配置 nginx默认nginx-rtmp-module,需要通过源码编译形安装。 ,生产推地址 推后控制台进行观看 2)nginx-rtmp配置 创建nginx本地文件存放目录 mkdir -p /mnt/share/html/hls rtmp配置 vi /usr/local 1)检测ffmpeg从摄像头拉nginx-rtmp, 如果成功,可以看到: cd /mnt/share/html/hls #注:该目录每10秒生产一个HLV格式的ts文件 [root@VM_16_62

    12.4K5238

    搭建直播系统并实现h5播放rtmp

    只能用rtmp协议,拉可以使用rtmp协议和hls协议。rtmp协议是adobe公司开发的开放协议,hls是苹果公司推出的直播协议。 我们使用nginx的rtmp插件来搭建推服务器 基于nginx的rtmp直播服务器 安装加载nginx-rtmp-module模块的nginx 首先下载nginx 到 https://github.com rmtp协议的,如果推地址填写的是rmtp://ip:9999/live,那么推之后会在/usr/local/etc/nginx/html/multimedia/hls目录下生成很多ts格式的视频切片和一个 但问题是现在行的是移动端直播,而苹果就没支持过flash播放器,所以目前正常方法解决了在移动端使用rtmp协议拉的问题。 移动端使用rtmp协议拉 因为苹果支持flash所以使用rtmp拉肯定是行的,但是可能客户给我们的就只有rtmp协议,那么我们就可以用到上面的另外一个地址,把rtmp协议转成hls协议。

    74920

    扫码关注云+社区

    领取腾讯云代金券