直播平台源代码快速搭建直播服务
大体架构

srs+ffmpeg+第三方(阿里云,腾讯云等),因为不是专门做直播平台,所以借助第三方平台(服务器,带宽,cdn可以省不少心)。当然如果你想自建一个视频直播平台也是可以的~~

srs用来接收从手机客户端推来的rtmp流,ffmpeg用来对视频进行处理,比如增加logo或滤镜等,在各种技术尝试中,走过不少弯路,接收流方面还使用过netty,nginx-rtmp,流处理方面使用过javaCV,但效果有些不理想.,java太吃内存,cpu。

下面我们来看一下直播平台源代码快速搭建直播服务大致的流程吧

srs的文档简单全面,附上git地址
https://github.com/ossrs/srs/wiki/v2_CN_Home

第一步,获取SRS。

git clone https://github.com/ossrs/srs
cd srs/trunk
或者使用git更新已有代码:

git pull
第二步,编译SRS。

./configure && make
第三步,编写SRS配置文件。

将以下内容保存为文件,譬如conf/rtmp.conf,服务器启动时指定该配置文件(srs的conf文件夹有该文件)。

conf/rtmp.conf

listen 1935;
max_connections 1000;
vhost defaultVhost {
}
第四步,启动SRS。

./objs/srs -c conf/rtmp.conf
以上是基本配置,

直播平台源代码安装成功后文件路径如下

下面是直播平台源代码完整配置

listen              1935;
max_connections     1000;
daemon              off;
#srs_log_tank        console;
srs_log_tank        file;
srs_log_file        ./objs/srs.log;http_api {enabled         on;listen          8085;crossdomain     on;
}vhost test.xx.com {dvr {enabled             on;#dvr_path            ./objs/nginx/html/[app]/[stream].[timestamp].flv;dvr_path            ./objs/nginx/html/[stream]/[timestamp].flv;dvr_plan            session;dvr_duration        30;dvr_wait_keyframe   on;}http_hooks {enabled         on;on_connect      http://127.0.0.1:8383/lss/liveItem/LiveItemAction!streamStatus.do ;on_close        http://127.0.0.1:8383/lss/liveItem/LiveItemAction!streamStatus.do ;on_publish      http://127.0.0.1:8383/lss/liveItem/LiveItemAction!streamStatus.do ;on_unpublish    http://127.0.0.1:8383/lss/liveItem/LiveItemAction!streamStatus.do  ;on_dvr          http://127.0.0.1:8085/api/v1/dvrs;#on_play         http://127.0.0.1:8085/api/v1/sessions ;#on_stop         http://127.0.0.1:8085/api/v1/sessions ;}
}vhost后面要写对应的推流地址或者ip.
http_api 与vhost中的http_hooks为一组配置,当srs接收,停止到推流时会调用配置文件中所填地址,并且将各种参数包括streamId,appid传到后台中。hvhost中的dvr功能是本地录制,dvr_plan有多种录制计划session:按照session来关闭flv文件,即编码器停止推流时关闭flv,整个session录制为一个flv。
segment:按照时间分段录制,flv文件时长配置为dvr_duration和dvr_wait_keyframe。注意:若不按关键帧切flv(即dvr_wait_keyframe配置为off),所以会导致后面的flv启动时会花屏。
至此srs服务器的搭建结束.ffmpeg下期继续介绍

直播平台源代码快速搭建视频直播平台相关推荐

  1. 微软视频直播服务器,使用微软云媒体服务快速搭建视频直播

    原标题:使用微软云媒体服务快速搭建视频直播 2020庚子鼠年假期结束,众多企业开始进入开工模式,但"战疫" 仍在进行中,大家仍以居家办公.避免外出及商务会面为主.在大量传统线下交流 ...

  2. 【解决方案】如何基于EasyDSS直播点播系统快速搭建VR直播平台?

    一.项目背景 随着互联网的发展,传统的视频直播已经无法满足客户的个性化需求.而基于AI和VR的直播系统是未来直播发展的趋势.AR也就是增强现实(Augmented Reality)技术,可以运用三维建 ...

  3. 直播平台千千万,一对一/一对多直播源码快速搭建的终极秘密

    直播平台千千万,一对一/一对多直播源码快速搭建的终极秘密 初创公司如果打算自建视频直播平台,其实技术研发成本比较高,由于目前直播技术相对都比较成熟,设备也都支持硬编码,建议可以自主购买一整套的程序源码 ...

  4. 漫谈直播,从0认识直播并快速搭建专属直播平台

    漫谈直播,从零开始认识直播并快速搭建专属直播平台 author:pasca time:2018/12/05 目录 文章目录 漫谈直播,从零开始认识直播并快速搭建专属直播平台 目录 一.直播科普 1.直 ...

  5. 音视频开发(23)---音视频直播技术--10分钟搭建好直播平台

    音视频直播技术--10分钟搭建好直播平台 前言 今天给大家讲一下如何搭建最简单的音视频直播平台.在之前的文章中我已经给大家介绍过音视频直播技术架构,没看过的同学可以看一下.了解了直播的技术架构,我们就 ...

  6. 快速搭建私有视频播放平台--搭建类YouTube/Youku/BiliBili等视频分享网站

    转载来源:http://demo.cumulusclips.org/?preview_theme=newsroom  https://hub.docker.com/r/quantumobject/do ...

  7. 关于搭建视频直播运营平台的一点经验和心得

    视频直播,目前在各行各业得到了广泛的应用.那么该如何搭建一个自己的直播运营平台?需要投入多大的财力和物力呢? 下面根据我个人的从业经验讲一下,不具有绝对的权威性,但是都是经验的总结,希望和大家一起学习 ...

  8. 阿里云Redis混合存储典型场景:如何轻松搭建视频直播间系统

    摘要: 本文主要介绍视频直播间系统,以及如何使用阿里云Redis混合存储实例方便快捷的构建大数据量,低延迟的视频直播间服务. 背景 视频直播间作为直播系统对外的表现形式,在整个系统中处于核心地位.通常 ...

  9. java + ffmped + mencoder搭建视频处理平台

    java + ffmped + mencoder搭建视频处理平台 ffmpeg+mencoder几乎可以完成目前基于web的播客平台任何音视频处理的操作.如果还需要添加一些什么的话,那么就是视频在线录 ...

  10. 视频教程-ZStack 带你0基础搭建私有云平台|ZCCT实战培训视频|-云平台

    ZStack 带你0基础搭建私有云平台|ZCCT实战培训视频| ZStack云计算解决方案专家,12年虚拟化与云计算相关工作经验,先后就职于IT系统集成商.国内知名软件上市公司以及云计算服务商,分别从 ...

最新文章

  1. httpd服务器常见漏洞修复,网站安全监测以及漏洞修复过程
  2. python教程app下载地址_python教程
  3. string转date
  4. PyTorch:采用sklearn 工具生成这样的合成数据集+利用PyTorch实现简单合成数据集上的线性回归进行数据分析
  5. 系统间通信3:RPC的基本概念
  6. 信息学奥赛一本通(2028:【例4.14】百钱买百鸡)
  7. php限制下载文件格式,php下载文件源代码(强制任意文件格式下载)_PHP教程
  8. suoi14 子树查找 (dfs)
  9. 【转贴】ListView控件学习系列2-编辑ListView
  10. 关于iconfont的一些东西
  11. WinCE --- 调试RS485串口
  12. 对于未来chrome80 samesite问题的兼容解决方案
  13. java贪吃蛇柚子功能_关于java贪吃蛇心得
  14. 一些利用开源浏览器核心开发专用浏览器的连接
  15. 华为认证云计算HICA
  16. 程序员面试总结 (非原创)
  17. 并联情况下耦合回路的等效电路
  18. BUUCTF:[0CTF 2016]piapiapia
  19. 电脑上怎么调出输入法
  20. 坦克大战java_Java课程设计——坦克大战

热门文章

  1. Android获取外网和内网ip地址
  2. c# openxml Excel部分学习之路
  3. win的反义词_英语中最常见 反义词、近义词、同义词及词形转换。欢迎大家收藏...
  4. C++if语句进行分段函数计算
  5. Linux grep命令详解:查找文件内容
  6. edittext 内容长度
  7. 英雄联盟轮播图手动轮播
  8. jQuery事件与事件对象
  9. excel 连接 matlab,matlab与excel连接
  10. **python 随机生成一段旋律**