美文网首页
orangepi pc2 armbian拉流rtsp方式搭建多路

orangepi pc2 armbian拉流rtsp方式搭建多路

作者: 大道至简非简 | 来源:发表于2018-12-31 21:57 被阅读31次

    1、板子通过网络连接两台ipc

    不同的摄像头地址分别是

    rtsp://admin:@192.168.1.43:554/h264/ch1/main/av_stream
    rtsp://192.168.1.10:554/user=admin&password=&channel=1&stream=0.sdp?real_stream
    

    同网段ping通即可。
    rtsp流可以通过vlc播放器播放内容。
    板子安装ffmpeg

    apt install ffmpeg
    

    2、下载安装srs 服务器

    短小精悍,比nginx+rtmp模块要省很多。
    http://www.ossrs.net/srs.release/releases/

    image.png
    找到适配版本下载即可。
    然后到目录下
    ./INSTALL
    

    即可。

    install success, you can:
          sudo /etc/init.d/srs start
    srs root is /usr/local/srs
    
    Usage: /etc/init.d/srs {start|stop|status|restart|reload}
    

    3、配置conf

    # main config for srs.
    # @see full.conf for detail config.
    
    listen              1935;
    max_connections     1000;
    srs_log_tank        file;
    srs_log_file        ./objs/srs.log;
    http_api {
        enabled         on;
        listen          1985;
    }
    http_stream {
        enabled         on;
        listen          8080;
        dir             ./objs/nginx/html;
    }
    stats {
        network         0;
        disk            sda sdb xvda xvdb;
    }
    vhost __defaultVhost__ {
    
        ingest ingest_id { #ingest_id为ingest的全局唯一编号,不可重复。 
            enabled      on;   #是否开启这个ingest。
            input {
                type    stream;  #输入类型,有file(文件),stream(流),device(设备,这个还没有支持)
                url     rtsp://admin:@192.168.1.43:554/h264/ch1/main/av_stream;  #输入源。
            }
            ffmpeg      /usr/bin/ffmpeg;  #指定ffmpeg的路径
            engine {  #转码引擎
                enabled          off;  #是否开启转码引擎,默认为off,ffmpeg音视频都使用copy。
                output          rtmp://127.0.0.1:1935/live/livestream_sd;  #输入地址,[port]和[vhost]是2个变量
            }
        }
        ingest ingest_id2 { #ingest_id为ingest的全局唯一编号,不可重复。 
        enabled      on;   #是否开启这个ingest。
        input {
            type    stream;  #输入类型,有file(文件),stream(流),device(设备,这个还没有支持)
            url     rtsp://192.168.1.10:554/user=admin&password=&channel=1&stream=0.sdp?real_stream;  #输入源。
        }
        ffmpeg      /usr/bin/ffmpeg;  #指定ffmpeg的路径
        engine {  #转码引擎
            enabled          off;  #是否开启转码引擎,默认为off,ffmpeg音视频都使用copy。
            output          rtmp://127.0.0.1:1935/live/livestream_sd2;  #输入地址,[port]和[vhost]是2个变量
        }
    }
    
    
    

    rtmp服务器发布的两路直播地址是

    rtmp://127.0.0.1:1935/live/livestream_sd
    rtmp://127.0.0.1:1935/live/livestream_sd2
    

    如果需要转码可以根据官方文档修改。
    https://github.com/ossrs/srs/wiki/v1_CN_Ingest
    详细介绍在此。
    https://github.com/ossrs/srs/wiki/v2_CN_FFMPEG
    sample如下,可以更改视频大小等等内容。

    vhost __defaultVhost__ {
        transcode {
            enabled     on;
            ffmpeg      ./objs/ffmpeg/bin/ffmpeg;
            engine ff {
                enabled         on;
                vfilter {
                }
                vcodec          libx264;
                vbitrate        500;
                vfps            25;
                vwidth          768;
                vheight         320;
                vthreads        12;
                vprofile        main;
                vpreset         medium;
                vparams {
                }
                acodec          libfdk_aac;
                abitrate        70;
                asample_rate    44100;
                achannels       2;
                aparams {
                }
                output          rtmp://127.0.0.1:[port]/[app]?vhost=[vhost]/[stream]_[engine];
            }
        }
    

    4、启动服务

    sudo /etc/init.d/srs  start
    

    通过vlc打开第1路


    image.png
    image.png

    通过vlc打开第2路


    image.png
    全部成功启动。

    运行1小时稳定可播放直播。
    系统占用资源也比较低。运行htop如下。

    htop
    
    image.png

    全文完。

    相关文章

      网友评论

          本文标题:orangepi pc2 armbian拉流rtsp方式搭建多路

          本文链接:https://www.haomeiwen.com/subject/olawlqtx.html