• EasyDarwin流媒体服务器的简介和搭建


    一:简介

    EasyDarwin开源流媒体服务器(www.easydarwin.org)现在使用Go版本实现了。最新的代码提交,已经支持了推流(或者拉流 )的同时进行本地存储。
    本地存储的原理,是在推流的同时启动ffmpeg作为一路Client来做存储。ffmpeg在demux和mux的工作方面已经十分成熟,我们 没必要再重复发明轮子。因此这种做法十分取巧而且简单有效,也不会侵入原来的代码架构。如下图所示:

    官方链接:https://ffmpeg.zeranoe.com/builds/

    二:搭建EasyDarwin流媒体服务

    1.准备一台主机

    192.168.175.200       vip

    2.关闭防火墙和selinux

    命令:[root@vip ~ ]# iptables -F && systemctl stop firewalld && setenforce 0

    3.下载安装包(打开浏览器)

    https://github.com/EasyDarwin/EasyDarwin/releases 

    4.装包解包

    命令:[root@vip ~]# tar -zvxf EasyDarwin-linux-8.1.0-1901141151.tar.gz

    5.修改配置

    命令:[root@vip ~]# cd EasyDarwin-linux-8.1.0-1901141151/

    命令:[root@vip EasyDarwin-linux-8.1.0-1901141151]# vim  easydarwin.ini

    [http]
    port=10008
    default_username=admin
    default_password=admin

    [rtsp]
    port=554

    ; rtsp 超时时间,包括RTSP建立连接与数据收发。
    timeout=28800

    ; 是否使能gop cache。如果使能,服务器会缓存最后一个I帧以及其后的非I帧,以提高播放速度。但是可能在高并发的情况下带来内存压力。
    gop_cache_enable=1

    ; 是否使能向服务器推流或者从服务器播放时验证用户名密码. [注意] 因为服务器端并不保存明文密码,所以推送或者播放时,客户端应该输入密码的md5后的值。
    ; password should be the hex of md5(original password)
    #authorization_enable=0    #关闭认证的话把这一行注释掉

    ; 是否使能推送的同事进行本地存储,使能后则可以进行录像查询与回放。
    save_stream_to_local=1                  #1本地存储开启

    ;easydarwin使用ffmpeg工具来进行存储。这里表示ffmpeg的可执行程序的路径。
    ffmpeg_path=/usr/bin/ffmpeg           #可以用yum安装的方式

    ;本地存储所将要保存的根目录。如果不存在,程序会尝试创建该目录。
    m3u8_dir_path=/Users/ze/Downloads/EasyDarwinGoM3u8         #存储视频的路径可以手动提前创建

    ;切片文件时长。本地存储时,将以该时间段为标准来生成ts文件(该时间+一个I帧间隔),单位秒。
    ;如果需要直播,这个值设小点,但是这样会产生很多ts文件;如果不需要直播,只要存储的话,可设大些。
    ts_duration_second=6

    ;key为拉流时的自定义路径,value为ffmpeg转码格式,比如可设置为-c:v copy -c:a copy,表示copy源格式;default表示使用ffmpeg内置的输出格式,会进行转码。
    /stream_265=default                             #value为ffmpeg转码格式,536586.sdp 转码推送来源的路径

    6.创建ffmpeg路径

    命令:[root@vip ~]# mkdir /usr/bin/ffmpeg

    7.启动服务

    命令:[root@vip ~]# cd EasyDarwin-linux-8.1.0-1901141151/

    命令:[root@vip EasyDarwin-linux-8.1.0-1901141151]# ./start.sh

    启动成功后,在浏览器上面输入http://192.168.175.200:10008/apidoc/

    账号密码都是admin

    然后将视频放在/Users/ze/Downloads/EasyDarwinGoM3u8目录下

    在浏览器上面输入http://192.168.175.10:10008/record/e7b3dbac582a67bf4a59ae0fa0530a22.mp4 就可以观看了

    总结:。。。。。。。此处省略一万字

  • 相关阅读:
    Nginx使用
    nginx常见配置详解
    配置yum源
    nginx常见使用方式和日志功能
    SpringCloud学习篇《一》
    myeclipse的各种背景:黑色,护眼,欢迎围观
    java基础二 <流程控制语句, 方法,数组,java内存结构> 未完待续...
    fastjson解析超长json串以及转成list,map等方法实例
    Linux下权限的修改-JDK的配置-文件的常见操作
    java面试基础大全,绝对经典<126-170><转>
  • 原文地址:https://www.cnblogs.com/zgqbky/p/12177207.html
Copyright © 2020-2023  润新知