Description
janus小白,项目需要对比压测janus并发性和当前媒体服务作对比,过程中peerconnection报错,麻烦不吝赐教
环境:
centos7
janus 0.13.3
janus启动命令:
janus --config=/opt/janus/etc/janus/janus.jcfg
srs_bench启动命令:
./objs/srs_bench -sfu janus -pr webrtc://192.168.88.178:8088/1234/livestream -sa avatar.ogg
srs_bench日志:
[trace] 2023/03/28 10:55:21.998409 Run benchmark with delay=50, al=true, twcc=true, publish(url=webrtc://192.168.88.178:8088/1234/livestream, sa=avatar.ogg, sv=, fps=0)
[trace] 2023/03/28 10:55:21.998626 [126462][1000] Run publish url=webrtc://192.168.88.178:8088/1234/livestream, audio=avatar.ogg, video=, fps=0, audio-level=true, twcc=true
[trace] 2023/03/28 10:55:22.001240 [126462][1000] Set offer {offer v=0
o=- 7392817501431756607 1679972122 IN IP4 0.0.0.0
s=-
t=0 0
a=fingerprint:sha-256 61:27:EB:79:59:86:D6:76:39:0A:AC:11:68:6B:DC:11:33:C9:6F:D7:F0:40:91:FC:71:29:44:65:03:3C:15:49
a=group:BUNDLE 0
m=audio 9 UDP/TLS/RTP/SAVPF 111 9 0 8
c=IN IP4 0.0.0.0
a=setup:actpass
a=mid:0
a=ice-ufrag:VjuPZtqBmoPzUSZP
a=ice-pwd:nzCKhKOKsOGCimMJxLzCTjCrOjeSmeuH
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10;useinbandfec=1
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:2 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id
a=extmap:4 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=ssrc:3526003795 cname:pion
a=ssrc:3526003795 msid:pion audio
a=ssrc:3526003795 mslabel:pion
a=ssrc:3526003795 label:audio
a=msid:pion audio
a=sendrecv
0xc000171440}
[trace] 2023/03/28 10:55:22.001387 [126462][1000] Request url api=http://192.168.88.178:8088/janus/ with {"janus":"create","transaction":"ipeaoxkhlzii"}
[trace] 2023/03/28 10:55:22.003156 [126462][1000] Response from http://192.168.88.178:8088/janus/ is {"data":{"id":5493304360137365},"janus":"success","transaction":"ipeaoxkhlzii"}
[trace] 2023/03/28 10:55:22.003197 [126462][1000] Parse create sessionID=5493304360137365
[trace] 2023/03/28 10:55:22.003224 [126462][1000] Request url api=http://192.168.88.178:8088/janus/5493304360137365 with {"janus":"attach","opaque_id":"zctdtwpnnqih","plugin":"janus.plugin.videoroom","transaction":"csidqvfknpzr"}
[trace] 2023/03/28 10:55:22.003332 [126462][1000] Polling: Request url api=http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122003&maxev=1
[trace] 2023/03/28 10:55:22.019645 [126462][1000] Response from http://192.168.88.178:8088/janus/5493304360137365 is {"data":{"id":3354791645369246},"janus":"success","session_id":5493304360137365,"transaction":"csidqvfknpzr"}
[trace] 2023/03/28 10:55:22.019712 [126462][1000] Parse create handleID=3354791645369246
[trace] 2023/03/28 10:55:22.020122 [126462][1000] Request url api=http://192.168.88.178:8088/janus/5493304360137365/3354791645369246 with {"janus":"message","transaction":"xywwwepgscdy","body":{"request":"join","ptype":"publisher","room":1234,"display":"livestream"}}
[trace] 2023/03/28 10:55:22.021810 [126462][1000] Polling: Response from http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122003&maxev=1 is {"janus":"event","plugindata":{"data":{"description":"Demo Room","id":1391934482954362,"private_id":389113390,"publishers":[],"room":1234,"videoroom":"joined"},"plugin":"janus.plugin.videoroom"},"sender":3354791645369246,"session_id":5493304360137365,"transaction":"xywwwepgscdy"}
[trace] 2023/03/28 10:55:22.021856 [126462][1000] Polling: Reply tid=xywwwepgscdy ok, {"janus":"event","plugindata":{"data":{"description":"Demo Room","id":1391934482954362,"private_id":389113390,"publishers":[],"room":1234,"videoroom":"joined"},"plugin":"janus.plugin.videoroom"},"sender":3354791645369246,"session_id":5493304360137365,"transaction":"xywwwepgscdy"}
[trace] 2023/03/28 10:55:22.021879 [126462][1000] Polling: Request url api=http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122021&maxev=1
[trace] 2023/03/28 10:55:22.022271 [126462][1000] Response from http://192.168.88.178:8088/janus/5493304360137365/3354791645369246 is {"janus":"ack","session_id":5493304360137365,"transaction":"xywwwepgscdy"}
[trace] 2023/03/28 10:55:22.022354 [126462][1000] Response tid=xywwwepgscdy ack
[trace] 2023/03/28 10:55:22.022445 [126462][1000] Async response tid=xywwwepgscdy, reply={"janus":"event","plugindata":{"data":{"description":"Demo Room","id":1391934482954362,"private_id":389113390,"publishers":[],"room":1234,"videoroom":"joined"},"plugin":"janus.plugin.videoroom"},"sender":3354791645369246,"session_id":5493304360137365,"transaction":"xywwwepgscdy"}
[trace] 2023/03/28 10:55:22.023074 [126462][1000] Join as publisher room=1234, display=livestream, tid=xywwwepgscdy ok, event=event, plugin=joined, id=1391934482954362, private=389113390, publishers=0
[trace] 2023/03/28 10:55:22.023339 [126462][1000] Request url api=http://192.168.88.178:8088/janus/5493304360137365/3354791645369246 with {"janus":"message","transaction":"seyyjdibcopf","body":{"request":"configure","video":true,"audio":true},"jsep":{"type":"offer","sdp":"v=0\r\no=- 7392817501431756607 1679972122 IN IP4 0.0.0.0\r\ns=-\r\nt=0 0\r\na=fingerprint:sha-256 61:27:EB:79:59:86:D6:76:39:0A:AC:11:68:6B:DC:11:33:C9:6F:D7:F0:40:91:FC:71:29:44:65:03:3C:15:49\r\na=group:BUNDLE 0\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 9 0 8\r\nc=IN IP4 0.0.0.0\r\na=setup:actpass\r\na=mid:0\r\na=ice-ufrag:VjuPZtqBmoPzUSZP\r\na=ice-pwd:nzCKhKOKsOGCimMJxLzCTjCrOjeSmeuH\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:111 opus/48000/2\r\na=fmtp:111 minptime=10;useinbandfec=1\r\na=rtpmap:9 G722/8000\r\na=rtpmap:0 PCMU/8000\r\na=rtpmap:8 PCMA/8000\r\na=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:2 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id\r\na=extmap:4 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=ssrc:3526003795 cname:pion\r\na=ssrc:3526003795 msid:pion audio\r\na=ssrc:3526003795 mslabel:pion\r\na=ssrc:3526003795 label:audio\r\na=msid:pion audio\r\na=sendrecv\r\n"}}
[trace] 2023/03/28 10:55:22.026667 [126462][1000] Response from http://192.168.88.178:8088/janus/5493304360137365/3354791645369246 is {"janus":"ack","session_id":5493304360137365,"transaction":"seyyjdibcopf"}
[trace] 2023/03/28 10:55:22.026689 [126462][1000] Response tid=seyyjdibcopf ack
[trace] 2023/03/28 10:55:22.026743 [126462][1000] Polling: Response from http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122021&maxev=1 is {"janus":"event","jsep":{"sdp":"v=0\r\no=- 7392817501431756607 1679972122 IN IP4 192.168.88.178\r\ns=VideoRoom 1234\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS janus\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111\r\nc=IN IP4 192.168.88.178\r\na=recvonly\r\na=mid:0\r\na=rtcp-mux\r\na=ice-ufrag:92VL\r\na=ice-pwd:/yi94UfnBQ+vnCpw0bp2Sg\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C9:A0:1E:EA:5B:0C:FE:39:FB:12:EF:48:31:20:C6:E4:56:22:2E:5E:B4:47:66:16:B4:4F:03:99:50:18:61:21\r\na=setup:active\r\na=rtpmap:111 opus/48000/2\r\na=fmtp:111 useinbandfec=1\r\na=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:2 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id\r\na=extmap:4 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=msid:janus janusa0\r\na=ssrc:806311391 cname:janus\r\na=ssrc:806311391 msid:janus janusa0\r\na=ssrc:806311391 mslabel:janus\r\na=ssrc:806311391 label:janusa0\r\na=candidate:1 1 udp 2015363327 192.168.88.178 36221 typ host\r\na=end-of-candidates\r\n","type":"answer"},"plugindata":{"data":{"audio_codec":"opus","configured":"ok","room":1234,"videoroom":"event"},"plugin":"janus.plugin.videoroom"},"sender":3354791645369246,"session_id":5493304360137365,"transaction":"seyyjdibcopf"}
[trace] 2023/03/28 10:55:22.026785 [126462][1000] Polling: Reply tid=seyyjdibcopf ok, {"janus":"event","jsep":{"sdp":"v=0\r\no=- 7392817501431756607 1679972122 IN IP4 192.168.88.178\r\ns=VideoRoom 1234\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS janus\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111\r\nc=IN IP4 192.168.88.178\r\na=recvonly\r\na=mid:0\r\na=rtcp-mux\r\na=ice-ufrag:92VL\r\na=ice-pwd:/yi94UfnBQ+vnCpw0bp2Sg\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C9:A0:1E:EA:5B:0C:FE:39:FB:12:EF:48:31:20:C6:E4:56:22:2E:5E:B4:47:66:16:B4:4F:03:99:50:18:61:21\r\na=setup:active\r\na=rtpmap:111 opus/48000/2\r\na=fmtp:111 useinbandfec=1\r\na=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:2 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id\r\na=extmap:4 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=msid:janus janusa0\r\na=ssrc:806311391 cname:janus\r\na=ssrc:806311391 msid:janus janusa0\r\na=ssrc:806311391 mslabel:janus\r\na=ssrc:806311391 label:janusa0\r\na=candidate:1 1 udp 2015363327 192.168.88.178 36221 typ host\r\na=end-of-candidates\r\n","type":"answer"},"plugindata":{"data":{"audio_codec":"opus","configured":"ok","room":1234,"videoroom":"event"},"plugin":"janus.plugin.videoroom"},"sender":3354791645369246,"session_id":5493304360137365,"transaction":"seyyjdibcopf"}
[trace] 2023/03/28 10:55:22.026807 [126462][1000] Polling: Request url api=http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122026&maxev=1
[trace] 2023/03/28 10:55:22.026905 [126462][1000] Async response tid=seyyjdibcopf, reply={"janus":"event","jsep":{"sdp":"v=0\r\no=- 7392817501431756607 1679972122 IN IP4 192.168.88.178\r\ns=VideoRoom 1234\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS janus\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111\r\nc=IN IP4 192.168.88.178\r\na=recvonly\r\na=mid:0\r\na=rtcp-mux\r\na=ice-ufrag:92VL\r\na=ice-pwd:/yi94UfnBQ+vnCpw0bp2Sg\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C9:A0:1E:EA:5B:0C:FE:39:FB:12:EF:48:31:20:C6:E4:56:22:2E:5E:B4:47:66:16:B4:4F:03:99:50:18:61:21\r\na=setup:active\r\na=rtpmap:111 opus/48000/2\r\na=fmtp:111 useinbandfec=1\r\na=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:2 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id\r\na=extmap:4 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=msid:janus janusa0\r\na=ssrc:806311391 cname:janus\r\na=ssrc:806311391 msid:janus janusa0\r\na=ssrc:806311391 mslabel:janus\r\na=ssrc:806311391 label:janusa0\r\na=candidate:1 1 udp 2015363327 192.168.88.178 36221 typ host\r\na=end-of-candidates\r\n","type":"answer"},"plugindata":{"data":{"audio_codec":"opus","configured":"ok","room":1234,"videoroom":"event"},"plugin":"janus.plugin.videoroom"},"sender":3354791645369246,"session_id":5493304360137365,"transaction":"seyyjdibcopf"}
[trace] 2023/03/28 10:55:22.026994 [126462][1000] Configure publisher offer=841B, tid=seyyjdibcopf ok, event=event, plugin=event, answer=909B
[trace] 2023/03/28 10:55:22.027403 [126462][1000] Request url api=http://192.168.88.178:8088/janus/5493304360137365/3354791645369246 with {"janus":"message","transaction":"bpqelhenofgn","body":{"request":"unpublish"}}
[trace] 2023/03/28 10:55:22.028398 [126462][1000] Response from http://192.168.88.178:8088/janus/5493304360137365/3354791645369246 is {"janus":"ack","session_id":5493304360137365,"transaction":"bpqelhenofgn"}
[trace] 2023/03/28 10:55:22.028425 [126462][1000] UnPublish tid=bpqelhenofgn done
[trace] 2023/03/28 10:55:22.028441 [126462][1000] Polling: Response from http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122026&maxev=1 is {"janus":"event","plugindata":{"data":{"room":1234,"unpublished":"ok","videoroom":"event"},"plugin":"janus.plugin.videoroom"},"sender":3354791645369246,"session_id":5493304360137365,"transaction":"bpqelhenofgn"}
[trace] 2023/03/28 10:55:22.028441 [126462][1000] Request url api=http://192.168.88.178:8088/janus/5493304360137365/3354791645369246 with {"janus":"detach","transaction":"embyolycnpms"}
[warn] 2023/03/28 10:55:22.029142 [126462][1000] Polling: Handle call event fail {"janus":"event","plugindata":{"data":{"room":1234,"unpublished":"ok","videoroom":"event"},"plugin":"janus.plugin.videoroom"},"sender":3354791645369246,"session_id":5493304360137365,"transaction":"bpqelhenofgn"}, err json: cannot unmarshal string into Go struct field .plugindata.data.unpublished of type uint64
[trace] 2023/03/28 10:55:22.029156 [126462][1000] Polling: Request url api=http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122029&maxev=1
[trace] 2023/03/28 10:55:22.030274 [126462][1000] Response from http://192.168.88.178:8088/janus/5493304360137365/3354791645369246 is {"janus":"success","session_id":5493304360137365,"transaction":"embyolycnpms"}
[trace] 2023/03/28 10:55:22.030282 [126462][1000] Polling: Response from http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122029&maxev=1 is {"janus":"hangup","reason":"Close PC","sender":3354791645369246,"session_id":5493304360137365}
[warn] 2023/03/28 10:55:22.030315 [126462][1000] Polling: Unknown janus=hangup {"janus":"hangup","reason":"Close PC","sender":3354791645369246,"session_id":5493304360137365}
[trace] 2023/03/28 10:55:22.030328 [126462][1000] Polling: Request url api=http://192.168.88.178:8088/janus/5493304360137365?rid=1679972122030&maxev=1
[trace] 2023/03/28 10:55:22.030286 [126462][1000] Detach tid=embyolycnpms done
[warn] 2023/03/28 10:55:22.030955 Run err unable to start track, codec is not supported by remote
Set answer v=0
o=- 7392817501431756607 1679972122 IN IP4 192.168.88.178
s=VideoRoom 1234
t=0 0
a=group:BUNDLE 0
a=extmap-allow-mixed
a=msid-semantic: WMS janus
m=audio 9 UDP/TLS/RTP/SAVPF 111
c=IN IP4 192.168.88.178
a=recvonly
a=mid:0
a=rtcp-mux
a=ice-ufrag:92VL
a=ice-pwd:/yi94UfnBQ+vnCpw0bp2Sg
a=ice-options:trickle
a=fingerprint:sha-256 C9:A0:1E:EA:5B:0C:FE:39:FB:12:EF:48:31:20:C6:E4:56:22:2E:5E:B4:47:66:16:B4:4F:03:99:50:18:61:21
a=setup:active
a=rtpmap:111 opus/48000/2
a=fmtp:111 useinbandfec=1
a=extmap:1 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:2 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id
a=extmap:4 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=msid:janus janusa0
a=ssrc:806311391 cname:janus
a=ssrc:806311391 msid:janus janusa0
a=ssrc:806311391 mslabel:janus
a=ssrc:806311391 label:janusa0
a=candidate:1 1 udp 2015363327 192.168.88.178 36221 typ host
a=end-of-candidates
github.com/ossrs/srs-bench/janus.startPublish
/home/hmm/work/hjgh/open_media_server/srs-bench-feature-rtc/janus/publisher.go:201
github.com/ossrs/srs-bench/janus.Run.func2
/home/hmm/work/hjgh/open_media_server/srs-bench-feature-rtc/janus/janus.go:185
runtime.goexit
/opt/go/src/runtime/asm_amd64.s:1571
[trace] 2023/03/28 10:55:22.049160 Done
请教下,answer回的音频codec(a=rtpmap:111 opus/48000/2)与offer中的一致,为何还会出现codec is not supported by remote的报错?