ossrs / srs

SRS is a simple, high-efficiency, real-time media server supporting RTMP, WebRTC, HLS, HTTP-FLV, HTTP-TS, SRT, MPEG-DASH, and GB28181.
https://ossrs.io
MIT License
25.47k stars 5.35k forks source link

Error occurred when running gb28181 with internal SIP closed. #3733

Open CNPolaris opened 1 year ago

CNPolaris commented 1 year ago

Note: Please read FAQ before file an issue, see #2716

Description

When using the internal SIP of SRS and only forwarding PS streams, SRS will start with an error.

  1. SRS Version:6 2

  2. SRS Config:

listen 1935;
max_connections 1000;
daemon off;
srs_log_tank console;

stream_caster {
    enabled on;
    caster gb28181;
    output rtmp://10.10.1.111:1935/live/[stream];
    listen 9000;
    tcp_enable  on;
    sip {
        enabled off;
        listen 5060;
                serial  34020000002000000001;
                auto_play       on;
        # @see https://ossrs.net/lts/zh-cn/docs/v5/doc/gb28181#config-candidate
        candidate 10.10.1.111;
    }
}

http_server {
    enabled on;
    listen 8080;
    dir ./objs/nginx/html;
}

http_api {
    enabled on;
    listen 1985;
        crossdomain     on;
        raw_api {
        # whether enable the HTTP RAW API.
        # default: off
        enabled             off;
        # whether enable rpc reload.
        # default: off
        allow_reload        off;
        # whether enable rpc query.
        # default: off
        allow_query         off;
        # whether enable rpc update.
        # default: off
        allow_update        off;
    }
}
stats {
    network 0;
}
rtc_server {
    enabled on;
    listen 8000; # UDP port
    # @see https://ossrs.net/lts/zh-cn/docs/v4/doc/webrtc#config-candidate
    candidate 10.10.1.111;
}

vhost __defaultVhost__ {
    tcp_nodelay     on;
    min_latency     on;

    play {
        gop_cache       off;
        queue_length    10;
        mw_latency      100;
    }

    publish {
        mr off;
    }
    rtc {
        enabled on;
        # @see https://ossrs.net/lts/zh-cn/docs/v4/doc/webrtc#rtmp-to-rtc
        rtmp_to_rtc on;
        # @see https://ossrs.net/lts/zh-cn/docs/v4/doc/webrtc#rtc-to-rtmp
        rtc_to_rtmp on;
    }
    http_remux {
        enabled on;
        mount [vhost]/[app]/[stream].flv;
    }
    hls {
        enabled on;
    }
        dvr {
        enabled      on;
        dvr_path     /root/srs-video/[app]/[stream]/[stream].[timestamp].mp4;
        dvr_plan     session;
    }
}

Replay

When using the internal SIP of SRS and only forwarding PS streams, SRS will encounter an error during startup.

Expect

How to integrate a custom SIP system with SRS to achieve PTZ control for GB28181?

TRANS_BY_GPT3

winlinvip commented 6 months ago

To support external SIP and disable SRS SIP, it will be supported by this pullrequest https://github.com/ossrs/srs/pull/3384, which is under testing and needs help from you.

duiniuluantanqin commented 6 months ago

SRS decouples the signaling service from the streaming media service, so you can simply treat SRS as a streaming media server. Additionally, I have implemented a simple signaling service, which you can find in the trunk/3rdparty/gb28181-server directory.

You can conduct the test and provide me with feedback.