red5_red5视频教程 - CSDN
精华内容
参与话题
  • red5使用教程

    万次阅读 多人点赞 2016-04-08 17:29:06
    首先是对red5的一个简单介绍,此处主要介绍关键点: Red5 是一个开源服务器用Java编写的,它支持: 流媒体视频(FLV F4V、MP4、3 gp), 流式音频(MP3、F4A M4A格式,AAC), 记录客户端流(AVC + AAC FLV容器), 共享...

    首先是对red5的一个简单介绍,此处主要介绍关键点:

    Red5 是一个开源服务器用Java编写的,它支持:
    流媒体视频(FLV F4V、MP4、3 gp),

    流式音频(MP3、F4A M4A格式,AAC),

    记录客户端流(AVC + AAC FLV容器),

    共享对象

    直播发布

    远程处理

    RTMP协议:RTMP RTMPT,RTMPE

    支持的插件有:

    WebSocket (ws and wss)

    HLS

    RTSP (From Axis-type cameras)

    一:安装Java环境

    yum install java-1.7.0-openjdk  

    #本人使用的是jdk1.7+

    二:下载red5

    https://github.com/Red5/red5-server/releases

    选择red5-server-1.0.6-RELEASE-server.tar.gz,解压到 /usr/local/red5

    linux解压命令大全:

    三:设置为可执行

    主要执行第二行命令就可以
    cd /usr/local/red5  
    chmod +x *.sh

    四:开支执行安装

    目录切到red5下(会看到red5.sh等很多可执行文件)

    执行

    ./red5.sh
    安装过程请耐心等待

    五:编辑配置文件

    找到/usr/local/red5/webapps/live/WEB-INF/red5.properties文件,增加0.0.0.0 IP地址

    添加服务启动项

    1:编辑脚本

    vi /etc/init.d/red5 
    将以下shell脚本copy到刚才打开的red5文件中

    注意标红地方的路径要符合自己当前的安装路径

        #!/bin/bash  
        # For RedHat and cousins:  
        # chkconfig: 2345 85 85  
        # description: Red5 flash streaming server  
        # processname: red5  
        # Created By: Sohail Riaz (sohaileo@gmail.com)  
          
        PROG=red5  
        <span style="color:#FF0000;">RED5_HOME=/usr/local/red5 </span> 
        DAEMON=$RED5_HOME/$PROG.sh  
        PIDFILE=/var/run/$PROG.pid  
          
        # Source function library  
        . /etc/rc.d/init.d/functions  
          
        [ -r /etc/sysconfig/red5 ] && . /etc/sysconfig/red5  
          
        RETVAL=0  
          
        case "$1" in  
        start)  
        echo -n $"Starting $PROG: "  
        cd $RED5_HOME  
        $DAEMON >/dev/null 2>/dev/null &  
        RETVAL=$?  
        if [ $RETVAL -eq 0 ]; then  
        echo $! > $PIDFILE  
        touch /var/lock/subsys/$PROG  
        fi  
        [ $RETVAL -eq 0 ] && success $"$PROG startup" || failure $"$PROG startup"  
        echo  
        ;;  
        stop)  
        echo -n $"Shutting down $PROG: "  
        killproc -p $PIDFILE  
        RETVAL=$?  
        echo  
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROG  
        ;;  
        restart)  
        $0 stop  
        $0 start  
        ;;  
        status)  
        status $PROG -p $PIDFILE  
        RETVAL=$?  
        ;;  
        *)  
        echo $"Usage: $0 {start|stop|restart|status}"  
        RETVAL=1  
        esac  
          
        exit $RETVAL  

    2:将启动脚本添加到服务,依次执行下面三行命令

        chmod +x /etc/rc.d/init.d/red5  
        chkconfig --add red5  
        chkconfig red5 on  

    3:设置 防火墙端口

    打开5080、1935等端口

    5080:是red5默认的web端口

    1935:是默认的RTMP协议端口

    具体描述看下图

    六:启动red服务


    开始后此窗口不要动了,它会一直打印日志信息,方便排查错误,其他的后续操作再重新打开一个xshell窗口即可

    /etc/init.d/red5 start
    七:测试red5

    在浏览器中访问 http://yourip:5080
    这里我们访问Red5自带的几个demo来测试Red5是否好用
    Red5 多媒体服务占用端口 5080,RTMP 占用端口 1935,如果不能访问,请检查防火墙是否允许这两个端口。

    八:直播地址:rtmp://yourip/live/流地址


    以上步骤都完成后你可能还有些模糊,网上大多的red5安装都有一个在线安装的步骤

    如下:先择图中的install



    然后进入到如下界面:

    不管你怎么弄都是空白的没有安装条目列出,此处不必担心,demo可以单独下载

    下载demo地址:

    htt://

    下载后上传到你所安装的red5/webapps下然后解压,选择全部覆盖

    重启服务

    service red5 restart

    继续访问5080界面,点击install下的demo

    如图

    点击view Demo

    看到

    Publish是采集摄像头画面,设置里面相应的参数,点击start即可

    view是直播画面,同样设置对应参数:Name是视频流名称,跟Publish中的Name要对应,Location写的是rtmp://ip:1935/oflaDemo

    oflaDemo是存放视频路径的一个文件夹,设置完后点击Connect 连接 点击Play即可进行播放

    当然大家可以换现在用的比较多的直播工具OBS

    在OBS中设置一样简单,打开安装的OBS,点击设置-串流-设置即可如图

    同样oflaDemo可随意写,这样OBS连接到服务器即可推流

    如果想在app中建立播放器进行直播,RTMP的直播流地址和OBS中的推流地址一样,只不过将流秘钥拼接到地址后面如

    rtmp://xx.xx.xx.xx:1935/oflaDemo/test

    即可使用!

    推荐个播放器:https://github.com/daniulive/SmarterStreaming

    IOS推荐个:

    kxmovie 

    FFmpeg - 这个可用
    具体的网上找吧


    展开全文
  • 引言 流媒体文件是目前非常流行的网络媒体格式之一,这种文件允许用户一边下载一边播放,从而大大减少了用户等待播放的时间。另外通过网络播放流媒体文件时,文件本身不会在本地磁盘中存储,这样就节省了大量的磁盘...


    引言

    流媒体文件是目前非常流行的网络媒体格式之一,这种文件允许用户一边下载一边播放,从而大大减少了用户等待播放的时间。另外通过网络播放流媒体文件时,文件本身不会在本地磁盘中存储,这样就节省了大量的磁盘空间开销。正是这些优点,使得流媒体文件被广泛应用于网络播放。

    流媒体服务器是通过建立发布点来发布流媒体内容和管理用户连接的。流媒体服务器能够发布从视频采集卡或摄像机等设备中传来的实况流,也可以发布事先存储的流媒体文件,并且发布实况流和流媒体文件的结合体。一个媒体流可以由一个媒体文件构成,也可以由多个媒体文件组合而成,还可以由一个媒体文件目录组成。

    Flash Media Server,简称 FMS,是 Flash 大家庭里的一员,被称为是目前开发 Web 音视频应用程序(比如,视频聊天室、视频会议系统、播客系统、音视频留言等等)的最方便最快捷的解决方案。也在 web 应用程序开发上有着越来越广泛的应用。当然 FMS 这种优良功能并不是免费提供给广大用户的,几千美金每个点的价格让很多开发人员望而却步。于是,大家开始尝试寻找一种更合适的解决方案,开源的 Red5 便成为了人们的新宠。

    Red5 是一个采用 Java 开发的开源的 Flash 流媒体服务器,功能上与 FMS 类似。它支持:把音频(MP3)和视频(FLV)转换成播放流;录制客户端播放流(只支持 FLV);共享对象;现场直播流发布;远程调用。Red5 使用 RSTP 作为流媒体传输协议,包括在线录制,Flash 流媒体播放,在线聊天,视频会议等一些基本功能。国内外基于 Red5 的流媒体应用产品也在不断推广,例如在线视频会议 Openmeeting,大型 Flash 网游功夫之王 2。

    Red5 概述

    Red5 是一个采用 Java 开发开源的 Flash 流媒体服务器。免费开源使软件更加容易扩展,下载后你可以对源代码进行修改;更加经济,比起 FMS 高昂的费用,Red5 能为一般的应用节约大笔费用;同时服务器端的 Java 面向对象语言比起 FMS 服务器端的 ActionScript2 语言更加成熟。鉴于 Red5 的种种优势,推出不久便被广大用户所接受。

    Red 5 支持:

    1. 把音频(MP3)和视频(FLV, F4V, MP4, 3GP)转换成播放流;

    2. 录制客户端播放流, 把摄像头,麦克风等传入的音频视频录制保存到服务器;

    3. 共享对象;

    4. 现场直播流发布;

    5. 远程调用;

    6. 协议:RTMP, RTMPT, RTMPS, and RTMPE。

    Red5 服务器搭建

    JDK自行安装

    下载Red5

    https://github.com/Red5/red5-server/releases

    解压到自己的一个能记住的文件夹中 eg:F:\Red5

    配置Red5相关参数

    修改red5.properties配置文件..\conf\red5.properties

    只需要配置HTTP 和RMTP节点的host和port即可 默认也行host配置成0.0.0.0 输入局域网IP或者127.0.0.1都可以正常访问

    # Socket policy
    policy.host=0.0.0.0
    policy.port=843
    
    # HTTP
    http.host=0.0.0.0
    http.port=8855
    https.port=5443
    http.URIEncoding=UTF-8
    http.max_keep_alive_requests=-1
    http.max_threads=20
    http.acceptor_thread_count=10
    http.processor_cache=20
    
    # RTMP
    rtmp.host=0.0.0.0
    rtmp.port=1935
    rtmp.io_threads=16
    rtmp.send_buffer_size=65536
    rtmp.receive_buffer_size=65536
    rtmp.ping_interval=1000
    rtmp.max_inactivity=60000
    rtmp.max_handshake_time=5000
    rtmp.tcp_nodelay=true
    rtmp.tcp_keepalive=false
    rtmp.default_server_bandwidth=10000000
    rtmp.default_client_bandwidth=10000000
    rtmp.client_bandwidth_limit_type=2
    rtmp.bandwidth_detection=false
    rtmp.encoder_base_tolerance=5000
    rtmp.encoder_drop_live_future=false
    # traffic optimization hinting. to disable set traffic class set to -1
    # low delay + high throughput == 24 (0x18)
    rtmp.traffic_class=-1
    # requested maximum length of the queue of incoming connections
    rtmp.backlog=32
    # the interval (seconds) between each throughput calculation
    rtmp.thoughput_calc_interval=15
    # enable use of the default mina acceptor
    rtmp.default_acceptor=true
    # socket i/o pool sizes used when default acceptor is disabled
    rtmp.initial_pool_size=0
    rtmp.max_pool_size=2
    rtmp.max_processor_pool_size=16
    rtmp.executor_keepalive_time=60000
    mina.logfilter.enable=false
    # scheduler configs (per application)
    rtmp.scheduler.pool_size=16
    rtmp.deadlockguard.sheduler.pool_size=16
    # message executor configs (per application) - adjust these as needed if you get tasks rejected
    rtmp.executor.core_pool_size=4
    rtmp.executor.max_pool_size=32
    rtmp.executor.queue_capacity=64
    # drop audio packets when queue is almost full, to disable this, set to 0
    rtmp.executor.queue_size_to_drop_audio_packets=60
    # maximum amount of time allotted to process a single rtmp message / packet in milliseconds, set it as 0 to disable timeout
    rtmp.max_handling_time=2000
    # connection tweaks - dont modify unless you know what you're doing
    rtmp.channel.initial.capacity=3
    rtmp.channel.concurrency.level=1
    rtmp.stream.initial.capacity=1
    rtmp.stream.concurrency.level=1
    rtmp.pending.calls.initial.capacity=3
    rtmp.pending.calls.concurrency.level=1
    rtmp.reserved.streams.initial.capacity=1
    rtmp.reserved.streams.concurrency.level=1
    
    # RTMPS
    rtmps.host=0.0.0.0
    rtmps.port=8443
    rtmps.ping_interval=5000
    rtmps.max_inactivity=60000
    rtmps.max_keep_alive_requests=-1
    rtmps.max_threads=20
    rtmps.acceptor_thread_count=2
    rtmps.processor_cache=20
    # RTMPS Key and Trust store parameters
    rtmps.keystorepass=password
    rtmps.keystorefile=conf/keystore.jks
    rtmps.truststorepass=password
    rtmps.truststorefile=conf/truststore.jks
    
    # RTMPT
    rtmpt.host=0.0.0.0
    rtmpt.port=8088
    rtmpt.ping_interval=5000
    rtmpt.max_inactivity=60000
    rtmpt.max_handshake_time=5000
    rtmpt.max_keep_alive_requests=-1
    rtmpt.max_threads=20
    rtmpt.acceptor_thread_count=2
    rtmpt.processor_cache=20
    rtmpt.encoder_base_tolerance=5000
    rtmpt.encoder_drop_live_future=true
    # better setting for streaming media
    rtmpt.target_reponse_size=32768
    # best setting for small messages or shared objects
    #rtmpt.target_reponse_size=8192
    # max incoming messages to process at a time. the most that FP appears to send is 166
    rtmpt.max_in_msg_process=166
    # max time in millis that we will wait when offering data to the in or out queue
    rtmpt.max_queue_offer_time=125
    # max offer attempts
    rtmpt.max_queue_offer_attempts=4
    
    # WebSocket
    ws.host=0.0.0.0
    ws.port=8081
    
    # Debug proxy (needs to be activated in red5-core.xml)
    proxy.source_host=127.0.0.1
    proxy.source_port=1936
    proxy.destination_host=127.0.0.1
    proxy.destination_port=1935
    
    # JMX
    jmx.rmi.host=localhost
    jmx.rmi.port=9999
    jmx.rmi.sport=9998
    jmx.rmi.port.remoteobjects=
    jmx.keystorepass=password
    jmx.mina.monitor.enable=false
    jmx.mina.poll.interval=1000
    # Whether to always create the registry in-process, not attempting to 
    # locate an existing registry at the specified port. Set to "true" in order
    # to avoid the overhead of locating an existing registry when you always intend
    # to create a new registry in any case.
    jmx.registry.create=true
    # Whether or not the MBeanServerFactoryBean should attempt to locate a running 
    # MBeanServer before creating one
    jmx.reuse.existing.server=true
    # Whether to register the MBeanServer with the MBeanServerFactory, making it 
    # available through MBeanServerFactory.findMBeanServer()
    jmx.register.factory=true
    # Whether any threads started for the JMXConnectorServer should be started as daemon threads
    jmx.daemon=true
    # Whether the JMXConnectorServer should be started in a separate thread
    jmx.threaded=true
    
    # Server properties
    # max events to send in a single update
    so.max.events.per.update=64
    so.scheduler.pool_size=4
    keyframe.cache.entry.max=500
    war.deploy.server.check.interval=600000
    fileconsumer.delayed.write=true
    fileconsumer.queue.size=120
    subscriberstream.buffer.check.interval=5000
    subscriberstream.underrun.trigger=100
    broadcaststream.auto.record=false

    启动Red5

    双击red.bat即可启动Red5服务器

    浏览器访问查看是否搭建成功

    http://localhost:port(localhost、port为配置文件中设置) 正确如下图所示

    视频直播开始准备

    下载demo

    上图可以看到install红色的那行字。点击进去。选择OLFA 安装

    如果下载不成功请看这里

    确定webapps下面没有oflaDemo文件夹。下载小帅丶准备好的压缩包解压放进去即可

    下载地址链接: https://pan.baidu.com/s/1Qd0UggtEhBv5nbVxQGPSzQ 密码: 4xqf

    设置信息发布直播

    进入发布设置界面:http://localhost:port/demos/publisher.html

    查看Settings区域。选择Video后在Device中选择摄像头,并点击Start,出现视频画面(有可能会提示是否允许。选择允许即可)

    Server设置

    回到Server画面,在Location中输入rtmp://localhost:1935/oflaDemo,地址与red5.properties中的rtmp协议的设置必须相同。
    点击Connect

    右侧出现NetConnection.Connect.Success ,说明连接服务器成功。

    推送视频流

    切换到Video点击Publish页面中的Publish按钮即可对外发布直播

    查看视频流

    切换到Server点击play即可看推送的视频流

    用自己的页面观看直播

    需要jwplayer。为了方便大家已经放在oflaDemo里面。在上面的百度云链接下载即可。

    修改相关内容 file的值是直播页面的Name的值。streamer则为Location里面的URL

    <html>
    <head>
    <title>Red5 - OFLADemo</title>
    <script type='text/javascript' src='jwplayer.js'></script>
    </head>
    <body>
    <div id="player">
    <script type='text/javascript'>
      jwplayer('player').setup({
        'flashplayer': 'player.swf',
        'file': '直播页面的Name',
        'streamer': 'rtmp://自己服务的IP:1935/oflaDemo',
        'controlbar': 'bottom',
        'width': '848',
        'height': '360'
      });
    </script>
    </div>
    </body>
    </html>

    使用浏览器观看

    输入地址 http://localhost:port/oflaDemo/jwPalyer.html 即可查看

    以上就是Red5的服务器搭建步骤

    展开全文
  • red5 windows: jdk :1.8 red5:1.0.8 (版本很重要。。) 一般来说,一个完整的流媒体服务系统需要三个部分组成:编码器、流服务器和播放器。. 编码器通过对内容来源(如MP3文件或者麦克风输入)进行编码,并将...

    red5  windows:

    jdk :1.8   red5:1.0.8  (版本很重要。。)

    一般来说,一个完整的流媒体服务系统需要三个部分组成:编码器、流服务器和播放器。.

    编码器通过对内容来源(如MP3文件或者麦克风输入)进行编码,并将编码过的内容发送到流服务器;流服务器再将它们发布到Internet,这样客户端的播放器只要连接到流服务器就可以进行在线播放了。

    主流开源流媒体服务器有哪些?
    流媒体解决方案 Live555(C++)
    流媒体平台框架 EasyDarwin(C++)
    实时流媒体播放服务器程序DarwinStreamingSrvr(C++)
    流媒体实时传输开发包 jrtplib
    多媒体处理工具 ffmpeg
    多媒体编码工具包Libav
    Flash流媒体服务器 Red5(Java)
    流媒体服务器 Open Streaming Server (Java)
    FMS流媒体服务器(Adobe,收费的)
    Wowza流媒体服务器(Java)
    开源流媒体平台FreeCast(Java)

    商用系统
    1.NTV Media Server G3
    2.Flash Media Server5
    3.Windows Media Server

    Red5 服务器搭建
    JDK自行安装
    下载Red5
    https://github.com/Red5/red5-server/releases

    http://www.red5.org/red5-server/

    解压到自己的一个能记住的文件夹中 eg:D\Red5

    配置Red5相关参数
    修改red5.properties配置文件..\conf\red5.properties

    只需要配置HTTP 和RMTP节点的host和port即可 默认也行host配置成0.0.0.0 输入局域网IP或者127.0.0.1都可以正常访问

     

     

    配置完成后,双击Red5目录下的red5.bat即可启动Red5服务器。
    启动完成后,输入http://192.168.7.96:5080,出现画面则表示成功。(如果不改配置文件,用http://localhost:5080即可)


    视频直播开始准备
    下载demo
    上图可以看到install红色的那行字。点击进去。选择OLFA 安装

     

    如果下载不成功请看这里
    确定webapps下面没有oflaDemo文件夹。

    下载地址链接: https://pan.baidu.com/s/1Qd0UggtEhBv5nbVxQGPSzQ 密码: 4xqf

     

    点击进入后,可看到swplayer播放的本地视频。视频内容后面会说到。

     

    直播和流媒体播放都要用到"oflaDemo",选择后点击"Install"安装即可。
    安装完成后,在webapps下面出现oflaDemo文件夹。

    设置信息发布直播
    进入发布设置界面:http://localhost:port/demos/publisher.html    本地是http://localhost:5080/demos/publisher.html

    查看Settings区域。选择Video后在Device中选择摄像头,并点击Start,出现视频画面(有可能会提示是否允许。选择允许即可)

     

    Server设置
    回到Server画面,在Location中输入rtmp://localhost:1935/oflaDemo,地址与red5.properties中的rtmp协议的设置必须相同。
    点击Connect

    右侧出现NetConnection.Connect.Success ,说明连接服务器成功。

    推送视频流
    切换到Video点击Publish页面中的Publish按钮即可对外发布直播

    点击Publish页面中的Publish按钮即可对外发布直播。
    View页面就是观看的直播,稍微有点延迟。
    修改Name可以改变发布的名称。(相当于房间名)

     

    查看视频流
    切换到Server点击play即可看推送的视频流

    用自己的页面观看直播
    1.需要jwplayer。为了方便大家已经放在oflaDemo里面。在上面的百度云链接下载即可。

    2.在webapps/oflaDemo下面建一个jwPlayer.html
    (我使用了jwplayer来播放,下载地址:http://download.csdn.net/detail/sunroyi666/9668965
    把jwplayer.js和player.swf放在同级目录下)

    修改相关内容 file的值是直播页面的Name的值。streamer则为Location里面的URL

    主要修改2个地方,streamer就是发布页面的rtmp的地址,file是发布页面中的Name。

    <html>
    <head>
    <title>Red5 - OFLADemo</title>
    <script type='text/javascript' src='jwplayer.js'></script>
    </head>
    <body>
    <div id="player">
    <script type='text/javascript'>
      jwplayer('player').setup({
        'flashplayer': 'player.swf',
        'file': '直播页面的Name',
        'streamer': 'rtmp://自己服务的IP:1935/oflaDemo',
        'controlbar': 'bottom',
        'width': '848',
        'height': '360'
      });
    </script>
    </div>
    </body>
    </html>

     

    使用浏览器观看

    输入地址 http://localhost:port/oflaDemo/jwPalyer.html 即可查看

     

    四. 流媒体播放
    直播搞定以后,流媒体的视频播放就简单多了。
    在oflaDemo下面的streams文件夹下,把需要的视频文件放进去。(上传功能可以自己做)

    在jwPlayer.html中,把file改为视频文件名即可观看。

    用Red5流媒体播放还有一个优点在于,可以保证视频的安全性。
    客户端无论是输入http://192.168.7.96:5080/oflaDemo/(streams)/Avengers2.mp4
    还是rtmp://192.168.7.96:1935/oflaDemo/(streams)/Avengers2.mp4
    都无法直接下载视频的源文件哦~
    ————————————————

    参考链接:
    https://blog.csdn.net/sunroyi666/article/details/52981639  (有OpenMeetings远程视频会议

    https://blog.csdn.net/u010651369/article/details/80886676

    OBS安装:

    接下来,我们研究一下推流的实现。推流的工具这里我推荐两个:OBS(Open Broadcaster Software)和VLC,以OBS为例子,OBS下载地址:https://obsproject.com/选择下载对应的版本。安装完成后如下图所示(当前的OBS版本为20.0.1):

    Red5之基于Red5的直播系统开发(二)

    默认情况下,启动OBS是黑屏的。我们在“来源”中点击左下角的“+”,添加“显示器捕获”,就可以显示当前的桌面,除此之外,还可以添加“音频输入捕获”、“音频输出捕获”等。

      点击右下角的“设置”,界面如下图所示:

    Red5之基于Red5的直播系统开发(二)

    我们先关注左边栏的“流”设置,我们自定义流媒体服务器,URL为:

    rtmp://localhost/myOnline,与Red5的web端界面Locations一致,流名称是自定义的,这里设置值为11111,可以任意取,如果有多人在推流,那么这个流名称不能重复。

    当设置好后,点击右下角的“确定”,回到OBS主界面。然后点击右下角的“开始推流”,如下图所示:

    Red5之基于Red5的直播系统开发(二)

    可以看到OBS在向Red5本地服务器推流,下面是推流的数据流。这里就相当于是直播间的播主,当然也可以进行推流的录制等,录制的文件位置在“设置”的“输出”中设置。

       推流的实现已经完成,那么拉流呢?我们回到Red5的web端界面,将Names的值也设置为11111,点击connect,点击play,可以看到Web端在同步播放OBS的视频内容,就相当于直播一样,完成了拉流的工作。

    Red5之基于Red5的直播系统开发(二)

    到这里,Red5的基本推拉流工作已经可以实现了

    再补充如下几点吧。

      1.因为RTMP是Red5最主要的协议和服务,该协议在视频同步上是有延迟的,延迟大概在2~3秒左右。

      2.Red5是可以在手机移动端完成推流和拉流工作的,这里推荐一款推拉流APP:易推流,

    本人使用的是iphone手机,这个app可以直接在AppStore下载。手机端拉流的App还可以使用VLC,一样效果很不错。

         App打开的界面如下,在"直播地址"栏,添加自己的直播地址进行推流,然后在电脑端通过VLC拉流,当然你想用手机端进行拉流也可以。

    Red5之基于Red5的直播系统开发(二)

     

    ---------------------------------------------------------------------------------------------

     

    参考资料:

    https://www.cnblogs.com/yanglily/p/6047130.html

    http://www.zuidaima.com/blog/4130742917532672.htm

     

    ffmpeg + RED5 RTSP转换RTMP

     

    在实际的项目开发中,需要网站平台接入实时视频流,实现远程监控。使用海康的摄像机器;传送的是rtsp格式的视频流。之前采用flv网络插件,但是chrome与ff升级之后,对vlc插件的支持不理想,于是想用ffmpeg的转码技术将rtsp码流转换成rtmp。

    安装ffmpeg,官网上下载的是免安装版本,只要解压到指定的文件夹就可以。然后在环境变量里添加path的配置

     

    PATH:/你的ffmpeg安装目录/bin
    

    7、cmd打开命令行,输入 ffmpeg -version 成功显示版本信息,则表示安装成功

     

    ffmpeg -version

     

    8、流媒体转换器和流媒体的服务器都安装好了,接下来就是转转转啦。
    在命令行里输入

    ffmpeg -i  rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov  -f flv -r 25 -s 640x480 -ar 44100 rtmp://localhost/oflaDemo/hello
    接着在red5目录文件中的webapps\oflaDemo中index.html 文件,将jwplay的文件属性更改成hello,访问http://localhost:5080/oflaDemo/index.html,将会出现连接摄像头的视频信号。

    红框中更改成hello

     

    注意:

    1、oflademo文件夹是在installer界面安装的demo程序
    2、ffmpeg参数参考http://blog.csdn.net/leixiaohua1020/article/details/12751349
    3、转换成功后,明显会有丢帧的情况,原因研究中


    -----------------------------------------------------------------
    参考链接:
    https://www.jianshu.com/p/e3e90acfd41d
     

     

    red5 :linux 

    1,这个需要java的jdk,我是直接通过yum命令装的

    2,去github下载了red5

    https://github.com/Red5/red5-server/releases

    https://github.com/Red5/red5-server

    讲道理下载最新版的吧,我的jdk也是1.8的。(red5最好是1.0.8)

    3,解压,一般解压目录都是在usr/local/red5/楼下图

    4,设置为可执行

    cd /usr/local/red5  进入red5的目录:

    chmod +x *.sh  

    5,安装

    red5.sh

    由于这种执行方式不能关闭执行窗口  所以将其添加为系统服务

    6,编辑启动脚本

    vi /etc/init.d/red5
    

    7,把下面写进去,貌似都这样写的【这里建议用xsell写不然会造成windows多俩空格无法启动red5】,

    下面内容中的RED5_HOME根据自己的red5解压目录为准,这里是/usr/local/red5

    #!/bin/bash  
    # For RedHat and cousins:  
    # chkconfig: 2345 85 85  
    # description: Red5 flash streaming server  
    # processname: red5  
    # Created By: Sohail Riaz (sohaileo@gmail.com)  
      
    PROG=red5  
    RED5_HOME=/usr/local/red5  
    DAEMON=$RED5_HOME/$PROG.sh  
    PIDFILE=/var/run/$PROG.pid  
      
    # Source function library  
    . /etc/rc.d/init.d/functions  
      
    [ -r /etc/sysconfig/red5 ] && . /etc/sysconfig/red5  
      
    RETVAL=0  
      
    case "$1" in  
    start)  
    echo -n $"Starting $PROG: "  
    cd $RED5_HOME  
    $DAEMON >/dev/null 2>/dev/null &  
    RETVAL=$?  
    if [ $RETVAL -eq 0 ]; then  
    echo $! > $PIDFILE  
    touch /var/lock/subsys/$PROG  
    fi  
    [ $RETVAL -eq 0 ] && success $"$PROG startup" || failure $"$PROG startup"  
    echo  
    ;;  
    stop)  
    echo -n $"Shutting down $PROG: "  
    killproc -p $PIDFILE  
    RETVAL=$?  
    echo  
    [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROG  
    ;;  
    restart)  
    $0 stop  
    $0 start  
    ;;  
    status)  
    status $PROG -p $PIDFILE  
    RETVAL=$?  
    ;;  
    *)  
    echo $"Usage: $0 {start|stop|restart|status}"  
    RETVAL=1  
    esac  
      
    exit $RETVAL

    8,设置为本地服务启动【这里你注意init.d路径,是否有快捷方式啥的】

    chmod +x /etc/rc.d/init.d/red5  
    chkconfig --add red5  
    chkconfig red5 on

    9,red5用的端口是5080下行,1935上行,确认打开

    10,启动red5

    /etc/init.d/red5 start 
    /etc/init.d/red5 stop

    11,在浏览器输入

    http://******:5080/    (注意***换成你的服务器ip)如果不能正常访问,可以查看端口是否开启,以及防火墙状态。

    在配合上面的OBS就可以了。。

    -------------------------------

    参考:

    https://www.cnblogs.com/yanglily/p/6047130.html

    https://blog.csdn.net/wozaiguyuan/article/details/53583470

     

    ffepeg:linux

    参考:https://blog.csdn.net/qq_38631503/article/details/80007128

    https://blog.csdn.net/mydudu2005/article/details/84508962

    展开全文
  • RED5安装与配置详解

    2020-07-21 09:59:50
    Red5的主要功能和Macromedia公司的FMS类似,提供基于Flash的流媒体服务的一款基于Java的开源流媒体服务器。RED5安装与配置详解。
  • red5下载链接

    2019-07-11 06:53:03
    https://builds.apache.org/view/M-R/view/OpenMeetings/job/red5-installer/lastSuccessfulBuild/artifact/windows/work/setup-Red5-1.0.6-SNAPSHOT.exe https://builds.apache.org/view/M-R/view/OpenMeetings...

    https://builds.apache.org/view/M-R/view/OpenMeetings/job/red5-installer/lastSuccessfulBuild/artifact/windows/work/setup-Red5-1.0.6-SNAPSHOT.exe

     

    https://builds.apache.org/view/M-R/view/OpenMeetings/job/red5-installer/lastSuccessfulBuild/artifact/windows/work/setup-Red5-1.0.6-SNAPSHOT.exe


     linux

    https://github.com/Red5/red5-server/releases/tag/v1.0.6-RELEASE

    转载于:https://www.cnblogs.com/ttmoon/p/7658217.html

    展开全文
  • 基于red5实现直播

    2019-12-28 12:24:45
    文章参考 参考于这两篇文章,感谢大佬 ...【Java】Red5服务器搭建(实现在线直播,流媒体视频播放) 前言 最近突然有想开发个可以直播的微信小程序,于是就进行了研究,但是因为是个人号,没有直播组件的使用权限 详情请看 ...
  • 基本环境EclipseEclipse Java EE IDE for Web Developers. Version: Neon.3 Release (4.6.3)Build id: 20170314-1500地址:...
  • Red5安装与入门

    2020-01-05 09:30:39
    本文转载自:... 被这个问题折磨了一天,安装好后,一启动red5就报错,总提示Address Already in use,用netstat查看端口也没发现有那个和Red5的端口冲突了,郁闷,于是怀疑是不是安装错了,就这么...
  • red5主要类和流程

    2020-01-03 08:49:49
    org.red5.server.net下面是服务器端业务逻辑。 1、RTMPMinaTransport 进行服务器组装,地址和端口绑定。设置了RTMPMinaIoHandler进行业务处理和其他需要的类,都是在配置文件red5-core.xml中进行了配置。 2、...
  • Red Hat Enterprise Linux是美国红帽公司开发的商业市场导向的Linux发行版,为方便大家学习研究,整理分享历代红帽官方正式版镜像给有需要的朋友们。 下载地址:...
  • Python:python代码编程带你玩转双色球(了解双色球的概率逻辑) 目录 输出结果 代码实现 ...red_totals = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
  • Red5搭建支持WEB播放的实时监控视频

    万次阅读 热门讨论 2016-02-23 10:23:29
    1. 下载Red5:https://github.com/Red5/red5-server/releases 下载了Red5 1.0.6 release的ZIP压缩包,解压后,添加JAVA_HOME环境变量,点击red5.bat 在浏览器中输入:http://localhost:5080。看到下图页面即安装启动...
  • red hat 系统下载

    万次阅读 2018-10-04 18:46:46
    red hat linux 系统下载 在官方下载需要有账号,如果没有账号可到百度云下载(百度云的速度你知道) https://pan.baidu.com/s/1gRuUdTFqnKP9a4yy6y2rbg 官方下载地址:...
  • 最近电脑F盘经常出现VC_RED和EULA类型的文件一系列文件,原以为是病毒,但想到没有这么强大的病毒,杀毒软件也有。后来查了这些文件的来源,才知是windows更新错误时的备份文件。其实是可以手动删除的。
  • Red Hat Enterprise Linux Server 7.4 安装方法

    万次阅读 多人点赞 2017-12-12 22:35:12
    Red Hat Enterprise Linux Server 7.4 安装方法 注意:本次安装是在VMware Workstation 14 PRO上进行的。 第一部分:创建Red Hat Linux虚拟机虚拟机安装向导1、创建新的虚拟机 2、选择自定义(高级) 3、硬件兼容...
  • Red5学习笔记(一):入门及配置

    万次阅读 2010-06-01 14:45:00
    下载安装完Red5后,找到Red5的安装目录,在Red5的文件列表中,webapps文件夹是用来放使用者的应用程序,doc文件夹是一些文档和模板等,red5.bat是用来启动Red5(Windows操作系统下)。下面开始创建一个Red5应用程序。...
  • Node-Red 在Windows上的安装和运行

    万次阅读 2017-12-31 09:54:25
    Node-RED在Windows上的安装和运行
  • red5+java打造直播平台系列 初级

    万次阅读 多人点赞 2017-05-20 10:23:05
    red5+java打造直播平台系列 初级 前言:如今各式各样的直播平台,像雨后春笋般冒出来。本系列重零开始,基于RED5为服务器,通过JAVA编写后台实现直播平台一些列主流的功能。 如主播开播,用户观看,送礼物,弹幕等...
  • node-red教程1 node-red简介

    万次阅读 2018-06-21 08:49:26
    • 一个偶然的机会,认识了node-red。这种拖拽控件编写代码的方式给了我很深刻的印象。由于我平时工作偏向硬件,所以对这些华丽的前端技术技术不是很了解,但个人认为,node-red技术在搭建具备网络与图形化功能的...
  • Red Hat Enterprise Linux 8.0 安装(全网最详细版)

    万次阅读 多人点赞 2020-09-16 17:26:13
    Red Hat Enterprise Linux 8.0 安装1.下载RHEL8操作系统2.Vmware Workstation Pro 15下载3.接受许可协议4.选择安装目录和是否安装增强型键盘驱动5.默认即可6.自行选择是否创建快捷方式7.点击安装开始安装![在这里...
1 2 3 4 5 ... 20
收藏数 857,720
精华内容 343,088
关键字:

red5