ossrs / srs

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

SRS6.0.55, H265 stream encoded with Shoxi M50 chip, SRT streaming, SRT to RTMP conversion with severe mosaic #3604

Closed pfzer closed 11 months ago

pfzer commented 1 year ago

Description

The TS stream encoded with Shoxi M50 chip using H265 encoding is being streamed using SRT to SRS6. The SRT streaming works fine, but when the RTMP stream is pulled, there is severe mosaic. The TS stream file has been uploaded in the middle, which can be referred to.

  1. SRS Version: SRS/6.0.55 with "./configure --h265=on && make && ./objs/srs -c conf/srt.conf"

  2. SRS Log:

Please make sure to maintain the markdown structure.


[2023-06-27 16:59:18.946][INFO][20275][322249i9] XCORE-SRS/6.0.55(Bee)
[2023-06-27 16:59:18.946][INFO][20275][322249i9] config parse complete
[2023-06-27 16:59:18.946][INFO][20275][322249i9] write log to console
[2023-06-27 16:59:18.946][INFO][20275][322249i9] SRS/6.0.55(Bee), MIT
[2023-06-27 16:59:18.946][INFO][20275][322249i9] authors: Winlin<winlin@vip.126.com> ZhaoWenjie<zhaowenjie@tal.com> ShiWei<shiwei05@kuaishou.com> XiaoZhihong<hondaxiao@tencent.com> WuPengqiang<pengqiang.wpq@alibaba-inc.com> XiaLixin<xialixin@kanzhun.com> LiPeng<mozhan.lp@alibaba-inc.com> ChenGuanghua<jinxue.cgh@alibaba-inc.com> ChenHaibo<nmgchenhaibo@foxmail.com> ZhangJunqin<chundonglinlin@126.com> and https://github.com/ossrs/srs/blob/develop/trunk/AUTHORS.md#contributors
[2023-06-27 16:59:18.946][INFO][20275][322249i9] cwd=/home/yqp/avCloud/srs/srs6-yxzh/trunk, work_dir=./, build: 2023-06-27 14:32:44, configure: --h265=on, uname: Linux yx 5.4.0-150-generic #167~18.04.1-Ubuntu SMP Wed May 24 00:51:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux, osx: 0, env: 0, pkg: 
[2023-06-27 16:59:18.946][INFO][20275][322249i9] configure detail: --prefix=/usr/local/srs --config=conf/srs.conf --osx=off --hls=on --hds=off --dvr=on --ssl=on --https=on --ssl-1-0=off --ssl-local=off --sys-ssl=off --transcode=on --ingest=on --stat=on --http-callback=on --http-server=on --stream-converter=on --http-api=on --utest=off --cherrypy=off --srt=on --rtc=on --h265=on --gb28181=off --simulator=off --cxx11=on --cxx14=off --backtrace=on --ffmpeg-fit=on --ffmpeg-opus=off --nasm=on --srtp-nasm=on --clean=on --gperf=off --gmc=off --gmd=off --gmp=off --gcp=off --gprof=off --static=off --shared-st=off --shared-srt=off --shared-ffmpeg=off --log-verbose=off --log-info=off --log-trace=on --log-level_v2=on --gcov=off --apm=off --debug=off --debug-stats=off --cross-build=off --sanitizer=on --sanitizer-static=off --sanitizer-log=off --cygwin64=off --single-thread=off --generic-linux=off --cc=gcc --cxx=g++ --ar=ar --ld=ld --randlib=randlib
[2023-06-27 16:59:18.946][INFO][20275][322249i9] srs checking config...
[2023-06-27 16:59:18.947][INFO][20275][322249i9] ips, iface[0] enp3s0 ipv4 0x11043 10.0.3.85, iface[1] enp3s0 ipv6 0x11043 fe80::8e0:81d5:46fb:d4c6%enp3s0
[2023-06-27 16:59:18.947][INFO][20275][322249i9] devices, intranet enp3s0 10.0.3.85, intranet enp3s0 fe80::8e0:81d5:46fb:d4c6%enp3s0
[2023-06-27 16:59:18.947][WARN][20275][322249i9][22] stats network use index=0, ip=10.0.3.85, ifname=enp3s0
[2023-06-27 16:59:18.947][WARN][20275][322249i9][22] stats disk list: sda sdb xvda xvdb 
[2023-06-27 16:59:18.947][INFO][20275][322249i9] write log to console
[2023-06-27 16:59:18.947][INFO][20275][322249i9] features, rch:on, dash:on, hls:on, hds:off, srt:on, hc:on, ha:on, hs:on, hp:on, dvr:on, trans:on, inge:on, stat:on, sc:on
[2023-06-27 16:59:18.947][INFO][20275][322249i9] SRS on amd64 x86_64, conf:conf/srt.conf, limit:1000, writev:1024, encoding:little-endian, HZ:100
[2023-06-27 16:59:18.947][INFO][20275][322249i9] mw sleep:350ms. mr enabled:on, default:0, sleep:350ms
[2023-06-27 16:59:18.947][INFO][20275][322249i9] gc:on, pq:30000ms, cscc:[0,16), csa:on, tn:on(may hurts performance), ss:auto(guess by merged write)
[2023-06-27 16:59:18.947][INFO][20275][322249i9] system default latency(ms): mw(0-350) + mr(0-350) + play-queue(0-30000)
[2023-06-27 16:59:18.948][WARN][20275][322249i9][22] SRS/6.0.55 is not stable
[2023-06-27 16:59:18.948][INFO][20275][322249i9] write pid=20275 to ./objs/srs.pid success!
[2023-06-27 16:59:18.948][INFO][20275][322249i9] Thread #1(primordial): init name=srs-master-1, interval=5000ms
[2023-06-27 16:59:18.948][INFO][20275][322249i9] Pool: Start threads primordial=1, hybrids=1 ok
[2023-06-27 16:59:18.948][INFO][20275][l1e0u015] Thread #2: run with tid=20276, entry=0x60c000000580, label=hybrid, name=srs-hybrid-2
[2023-06-27 16:59:18.963][INFO][20275][l1e0u015] fingerprint=28:52:DA:03:DE:4E:36:FC:9C:98:4F:1F:1F:48:AE:8F:73:B0:F4:08:EE:2B:7A:FE:76:3C:74:4C:E5:42:A2:69
[2023-06-27 16:59:18.963][INFO][20275][l1e0u015] CircuitBreaker: enabled=1, high=2x90, critical=1x95, dying=5x99
[2023-06-27 16:59:18.964][INFO][20275][l1e0u015] http flv live stream, vhost=__defaultVhost__, mount=[vhost]/[app]/[stream].flv
[2023-06-27 16:59:18.964][INFO][20275][l1e0u015] http: root mount to ./objs/nginx/html
[2023-06-27 16:59:18.964][INFO][20275][l1e0u015] server main cid=l1e0u015, pid=20275, ppid=20549, asprocess=0
[2023-06-27 16:59:18.986][INFO][20275][l1e0u015] RTMP listen at tcp://0.0.0.0:1935, fd=9
[2023-06-27 16:59:18.986][INFO][20275][l1e0u015] HTTP-API listen at tcp://0.0.0.0:1985, fd=10
[2023-06-27 16:59:18.986][INFO][20275][l1e0u015] HTTP-Server listen at tcp://0.0.0.0:8080, fd=11
[2023-06-27 16:59:18.986][INFO][20275][l1e0u015] signal installed, reload=1, reopen=10, fast_quit=15, grace_quit=3
[2023-06-27 16:59:18.987][INFO][20275][l1e0u015] http: api mount /console to ./objs/nginx/html/console
[2023-06-27 16:59:18.990][INFO][20275][l1e0u015] srt listen at udp://0.0.0.0:10080, fd=1016928874
[2023-06-27 16:59:18.990][INFO][20275][9587748d] Hybrid cpu=0.00%,39MB
[2023-06-27 16:59:18.990][WARN][20275][5ii20dj7][22] use private address as ip: 10.0.3.85, ifname=enp3s0
[2023-06-27 16:59:18.990][INFO][20275][5ii20dj7] Startup query id=vid-dlouj67, session=vid-8m19863, eip=10.0.3.85, wait=300s
[2023-06-27 16:59:18.990][INFO][20275][26117byy] TCP: connection manager run, conns=0
[2023-06-27 16:59:18.991][ERROR][20275][u720k99w][11][SRT] /home/yqp/avCloud/srs/srs6-yxzh/trunk/objs/Platform-SRS6-Linux-5.4.0-GCC7.5.0-x86_64/srt-1-fit/srtcore/api.cpp:1116(accept) # : srt_accept: no pending connection available at the moment(Resource temporarily unavailable)
==20275==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7f2d377b2d40; bottom 0x7f2d37d58000; size: 0xffffffffffa5ad40 (-5919424)
False positive error reports may follow
For details see https://github.com/google/sanitizers/issues/189
[2023-06-27 16:59:18.992][INFO][20275][k3448caa] SRT: connection manager run, conns=0
[2023-06-27 16:59:18.992][INFO][20275][g4p17sq5] RTC: connection manager run, conns=0
[2023-06-27 16:59:23.949][INFO][20275][9587748d] Hybrid cpu=1.00%,40MB
[2023-06-27 16:59:23.953][INFO][20275][322249i9] Process: cpu=1.00%,40MB, threads=2
[2023-06-27 16:59:28.950][INFO][20275][9587748d] Hybrid cpu=1.00%,40MB
[2023-06-27 16:59:28.958][INFO][20275][322249i9] Process: cpu=2.00%,40MB, threads=2
[2023-06-27 16:59:33.950][INFO][20275][9587748d] Hybrid cpu=2.00%,40MB, cid=1,1, timer=62,0,0, clock=1,48,0,0,0,0,0,0,0
[2023-06-27 16:59:33.962][INFO][20275][322249i9] Process: cpu=1.00%,40MB, threads=2
[2023-06-27 16:59:38.951][INFO][20275][9587748d] Hybrid cpu=1.00%,40MB, cid=1,1, timer=62,0,0, clock=1,48,0,0,0,0,0,0,0
[2023-06-27 16:59:38.966][INFO][20275][322249i9] Process: cpu=1.00%,40MB, threads=2
[2023-06-27 16:59:39.111][WARN][20275][][11][SRT] /home/yqp/avCloud/srs/srs6-yxzh/trunk/objs/Platform-SRS6-Linux-5.4.0-GCC7.5.0-x86_64/srt-1-fit/srtcore/core.cpp:2156(processSrtMsg_HSREQ) # : HSREQ/rcv: Agent did not set rcv-TSBPD - ignoring proposed latency from peer
[2023-06-27 16:59:39.115][ERROR][20275][u720k99w][22][SRT] /home/yqp/avCloud/srs/srs6-yxzh/trunk/objs/Platform-SRS6-Linux-5.4.0-GCC7.5.0-x86_64/srt-1-fit/srtcore/api.cpp:1116(accept) # : srt_accept: no pending connection available at the moment(Invalid argument)
[2023-06-27 16:59:39.116][INFO][20275][i275gzpv] SRT client ip=10.0.3.21:63619, fd=1016928873
[2023-06-27 16:59:39.116][INFO][20275][i275gzpv] @srt, streamid=#!::h=live/tvsky,m=publish, stream_url=/live/tvsky, vhost=__defaultVhost__, app=live, stream=tvsky, param=
[2023-06-27 16:59:39.116][INFO][20275][i275gzpv] new srt source, stream_url=/live/tvsky
[2023-06-27 16:59:39.116][INFO][20275][i275gzpv] new live source, stream_url=/live/tvsky
[2023-06-27 16:59:39.117][INFO][20275][i275gzpv] ignore disabled exec for vhost=__defaultVhost__
[2023-06-27 16:59:39.117][INFO][20275][i275gzpv] http: mount flv stream for sid=/live/tvsky, mount=/live/tvsky.flv
[2023-06-27 16:59:39.681][INFO][20275][i275gzpv] 4B audio sh, codec(10, profile=LC, 2channels, 0kbps, 48000HZ), flv(16bits, 2channels, 44100HZ)
[2023-06-27 16:59:40.372][INFO][20275][i275gzpv] 308B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:40.840][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:41.352][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:42.014][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:42.526][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:43.078][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:43.601][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:43.952][INFO][20275][9587748d] Hybrid cpu=17.98%,69MB, cid=2,1, timer=61,0,0, clock=0,45,1,1,1,1,1,0,0, objs=(pkt:0,raw:0,fua:0,msg:381,oth:0,buf:0)
[2023-06-27 16:59:43.970][INFO][20275][322249i9] Process: cpu=19.98%,80MB, threads=2
[2023-06-27 16:59:44.138][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:44.675][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:45.393][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:45.925][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:46.445][INFO][20275][i275gzpv] 301B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:46.986][INFO][20275][i275gzpv] 301B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:47.507][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:47.894][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:48.461][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:48.952][INFO][20275][9587748d] Hybrid cpu=22.98%,119MB, cid=2,1, timer=61,0,0, clock=0,45,1,1,1,1,1,0,0, objs=(pkt:0,raw:0,fua:0,msg:381,oth:0,buf:0)
[2023-06-27 16:59:48.975][INFO][20275][322249i9] Process: cpu=22.98%,119MB, threads=2
[2023-06-27 16:59:48.984][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:49.135][INFO][20275][i275gzpv] <- SRT_CPB Transport Stats # pktRecv=7514, pktRcvLoss=47, pktRcvRetrans=47, pktRcvDrop=0
[2023-06-27 16:59:49.135][INFO][20275][i275gzpv] <- SRT_CPB time=10015, packets=7498, okbps=0,0,0, ikbps=0,0,0
[2023-06-27 16:59:49.477][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:49.888][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:50.619][INFO][20275][i275gzpv] 306B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:51.239][INFO][20275][i275gzpv] 308B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:51.763][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:52.175][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:52.672][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:53.301][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:53.790][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:53.953][INFO][20275][9587748d] Hybrid cpu=21.98%,169MB, cid=2,1, timer=61,0,0, clock=0,45,1,1,1,1,1,0,0, objs=(pkt:0,raw:0,fua:0,msg:381,oth:0,buf:0)
[2023-06-27 16:59:53.981][INFO][20275][322249i9] Process: cpu=21.98%,169MB, threads=2
[2023-06-27 16:59:54.349][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
[2023-06-27 16:59:54.792][INFO][20275][i275gzpv] 302B video sh, codec(12, profile=Main10, level=5, 3840x2160, 0kbps, 48830.0fps, 0.0s)
  1. SRS Config:

# SRT config.

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

http_api {
    enabled         on;
    listen          1985;
}

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

srt_server {
    enabled on;
    listen 10080;
    maxbw 1000000000;
    connect_timeout 4000;
    peerlatency 0;
    recvlatency 0;
    latency 0;
    tsbpdmode off;
    tlpktdrop off;
    sendbuf 2000000;
    recvbuf 2000000;
}

# @doc https://github.com/ossrs/srs/issues/1147#issuecomment-577607026
vhost __defaultVhost__ {
    srt {
        enabled     on;
        srt_to_rtmp on;
    }

    http_remux {
        enabled     on;
        mount       [vhost]/[app]/[stream].flv;
    }
}

# For SRT to use vhost.
vhost srs.srt.com.cn {
}

stats {
    network         0;
    disk            sda sdb xvda xvdb;
}

Replay

Step 1: Recording the TS stream file using ffmpeg SRT streaming.


ffmpeg -re -stream_loop -1 -i .\m50-4kp30-10m-main-l5.ts  -vcodec copy  -acodec copy -pes_payload_size 0 -f mpegts "srt://10.0.3.85:10080?streamid=#!::h=live/tvsky,m=publish"

Replay

Step 2: Playing the RTMP stream using ffplay, audio is normal but video is severely mosaic. Use hevc-ffplay rtmp://10.0.3.85/live/tvsky, the ffplay log is as follows:


ffplay version 4.3.1 Copyright (c) 2003-2020 the FFmpeg developers
  Compiled by linkpi.cn
  configuration: --enable-shared --enable-static --prefix=x32 --enable-postproc --enable-gpl --enable-avresample --disable-x86asm --disable-doc
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
[NULL @ 08466200] PPS id out of range: 0 vq=    0KB sq=    0B f=0/0
[hevc @ 08466200] PPS id out of range: 2
[hevc @ 08466200] PPS id out of range: 2 vq=    0KB sq=    0B f=0/0
    Last message repeated 5 times
[hevc @ 08466200] PPS id out of range: 2 vq=    0KB sq=    0B f=0/0
[hevc @ 08466200] PPS id out of range: 0
[hevc @ 08466200] PPS id out of range: 2
    Last message repeated 3 times
[hevc @ 08466200] PPS id out of range: 2 vq=    0KB sq=    0B f=0/0
    Last message repeated 3 times
[hevc @ 08466200] PPS id out of range: 0
[hevc @ 08466200] PPS id out of range: 2
    Last message repeated 1 times
[hevc @ 08466200] PPS id out of range: 2 vq=    0KB sq=    0B f=0/0
    Last message repeated 1 times
Input #0, flv, from 'rtmp://10.0.3.85/live/tvsky':B sq=    0B f=0/0
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Data: none
    Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp
    Stream #0:2: Video: hevc (Main 10), yuv420p10le(tv), 3840x2160 [SAR 1:1 DAR 16:9], 30.30 fps, 30 tbr, 1k tbn, 30 tbc
[hevc @ 0841DF00] PPS id out of range: 0
[hevc @ 0841DF00] Error parsing NAL unit #2.
[hevc @ 085CE040] PPS id out of range: 2
[hevc @ 085CE040] Error parsing NAL unit #2.
[hevc @ 091A9F00] PPS id out of range: 2KB vq= 1056KB sq=    0B f=0/0
[hevc @ 091A9F00] Error parsing NAL unit #2.
[hevc @ 091AA300] PPS id out of range: 2
[hevc @ 091AA300] Error parsing NAL unit #2.
[hevc @ 091AA6C0] PPS id out of range: 2
[hevc @ 091AA6C0] Error parsing NAL unit #2.
[hevc @ 091AB280] Could not find ref with POC 0
[hevc @ 085CDA40] PPS id out of range: 2
[hevc @ 085CDA40] Error parsing NAL unit #2.
[hevc @ 085CE040] PPS id out of range: 2
[hevc @ 085CE040] Error parsing NAL unit #2.
[NULL @ 08466200] PPS id out of range: 2 vq=  826KB sq=    0B f=0/0
[hevc @ 091AAAC0] PPS id out of range: 2
[hevc @ 091AAAC0] Error parsing NAL unit #2.
[NULL @ 08466200] PPS id out of range: 2
[hevc @ 091AA300] PPS id out of range: 2

Expect

The stream from this chip can be SRT streamed to SRS6 and can be converted to RTMP for normal playback.

m50-4kp30-10m-main-l5.zip

TRANS_BY_GPT3

lemonio commented 1 year ago

Can adjust the number of PPS generated by the encoder to only 1.

TRANS_BY_GPT3

xiaozhihong commented 1 year ago

It seems to have something to do with the encoder. When converting SRS to RTMP, there were no error messages. Is there any encoding parameter that can be adjusted for another try?

TRANS_BY_GPT3

chundonglinlin commented 1 year ago

I have performed a test on your file and have identified a possible error with ffplay.

image

As @xiaozhihong said, there were no error log prompts during play after publishing the rtmp stream. image

pfzer commented 1 year ago

It is normal to push RTMP directly with this stream, but if you push SRT with this stream and then convert it to RTMP, there will be mosaic. I don't know what affects SRT to RTMP. I tried modifying encoding parameters such as profile, level, chroma space, precision, and GOP, but the phenomenon remains the same.

image

TRANS_BY_GPT3

chundonglinlin commented 1 year ago

Could you provide me with information about the equipment you are currently using?

pfzer commented 1 year ago

The translation to English would be:

"The encoding device we made ourselves uses a SII M50 encoding chip (formerly known as the Fujitsu M50).

TRANS_BY_GPT3

xengine-qyt commented 1 year ago

Could you provide me with information about the equipment you are currently using?

It should be caused by multiple PPS. This TS stream originally has 3 PPS in it. When we push the stream to srs, for example, using TS over SRT, and pull the stream with RTMP and configure it with hevdecodercconfigure, only 1 PPS is available. If we push the stream with RTMP and pull it with RTMP, hevdecoercconfigure should have 3 PPS.

TRANS_BY_GPT3