The message flow I currently have (with errors on the client end , it cannot handle the JSON sent by PixelStreaming2) is…
[09:58:14.772] info: New player connection: ::ffff:127.0.0.1 (/)
[09:58:14.773] info: Registered new player: Player1
[09:58:14.774] info: < Player1 :: {"type":"config","peerConnectionOptions":{"iceServers":[{"urls":["stun:stun.l.google.com:19302","turn:86.10.51.141:19303"],"username":"PixelStreamingUser","credential":"AnotherTURNintheroad"}]},"protocolVersion":"1.3.0"}
[09:58:18.539] info: > DefaultStreamer :: {"type":"ping","time":1753693098}
[09:58:18.539] info: < DefaultStreamer :: {"type":"pong","time":1753693098}
[09:58:19.994] info: > Player1 :: {"type":"listStreamers"}
[09:58:19.995] info: < Player1 :: {"type":"streamerList","ids":["DefaultStreamer"]}
[09:58:19.997] info: > Player1 :: {"type":"subscribe","streamerId":"DefaultStreamer"}
[09:58:19.998] info: Player1 > DefaultStreamer :: {"type":"playerConnected","dataChannel":true,"sfu":false,"playerId":"Player1"}
[09:58:20.389] info: DefaultStreamer > Player1 :: {"multiplex":true,"sdp":"v=0\r\no=- 1279226659486654264 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0 1 2\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS pixelstreaming_audio_stream_id pixelstreaming_video_stream_id\r\nm=video 9 UDP/TLS/RTP/SAVPF 127 97 98 99 100 101 102\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:MjxY\r\na=ice-pwd:GOIdIQPRZWGg/QhQ1PQtYCfh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 42:58:1A:9D:51:7C:1E:E1:01:3E:65:5D:1D:EF:CB:13:FD:76:9B:82:6F:87:27:62:F9:46:CB:BC:EC:14:BF:58\r\na=setup:actpass\r\na=mid:0\r\na=extmap:1 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:3 urn:3gpp:video-orientation\r\na=extmap:4 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:5 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type\r\na=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-timing\r\na=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/color-space\r\na=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:10 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id\r\na=extmap:11 urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id\r\na=sendrecv\r\na=msid:pixelstreaming_video_stream_id video\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:97 rtx/90000\r\na=fmtp:97 apt=127\r\na=rtpmap:98 H264/90000\r\na=rtcp-fb:98 goog-remb\r\na=rtcp-fb:98 transport-cc\r\na=rtcp-fb:98 ccm fir\r\na=rtcp-fb:98 nack\r\na=rtcp-fb:98 nack pli\r\na=fmtp:98 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:99 rtx/90000\r\na=fmtp:99 apt=98\r\na=rtpmap:100 red/90000\r\na=rtpmap:101 rtx/90000\r\na=fmtp:101 apt=100\r\na=rtpmap:102 ulpfec/90000\r\na=ssrc-group:FID 988027076 2161586132\r\na=ssrc:988027076 cname:dcaNGjBImXnzUD94\r\na=ssrc:988027076 msid:pixelstreaming_video_stream_id video\r\na=ssrc:2161586132 cname:dcaNGjBImXnzUD94\r\na=ssrc:2161586132 msid:pixelstreaming_video_stream_id video\r\nm=audio 9 UDP/TLS/RTP/SAVPF 96 110\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:MjxY\r\na=ice-pwd:GOIdIQPRZWGg/QhQ1PQtYCfh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 42:58:1A:9D:51:7C:1E:E1:01:3E:65:5D:1D:EF:CB:13:FD:76:9B:82:6F:87:27:62:F9:46:CB:BC:EC:14:BF:58\r\na=setup:actpass\r\na=mid:1\r\na=extmap:14 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=sendrecv\r\na=msid:pixelstreaming_audio_stream_id audio\r\na=rtcp-mux\r\na=rtpmap:96 OPUS/48000/2\r\na=rtcp-fb:96 transport-cc\r\na=rtpmap:110 telephone-event/48000\r\na=ssrc:3111218414 cname:dcaNGjBImXnzUD94\r\na=ssrc:3111218414 msid:pixelstreaming_audio_stream_id audio\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:MjxY\r\na=ice-pwd:GOIdIQPRZWGg/QhQ1PQtYCfh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 42:58:1A:9D:51:7C:1E:E1:01:3E:65:5D:1D:EF:CB:13:FD:76:9B:82:6F:87:27:62:F9:46:CB:BC:EC:14:BF:58\r\na=setup:actpass\r\na=mid:2\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer","scalabilityMode":"L1T1"}
[09:58:20.422] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:1270427821 1 udp 2122260223 192.168.0.153 49152 typ host generation 0 ufrag MjxY network-id 1","sdpMLineIndex":0,"sdpMid":"0"},"type":"iceCandidate"}
[09:58:20.432] info: Player1 > DefaultStreamer :: {"from":"3569e6ca17714c1889d318b7e05e7701","to":"","type":"iceCandidate","candidate":{"connectionId":"3569e6ca17714c1889d318b7e05e7701","candidate":"candidate:3407833374 1 udp 2122260223 192.168.0.153 49906 typ host generation 0 ufrag ILQ3 network-id 1","sdpMid":"0","sdpMLineIndex":0},"playerId":"Player1"}
[09:58:20.433] info: Player1 > DefaultStreamer :: {"from":"3569e6ca17714c1889d318b7e05e7701","to":"","type":"iceCandidate","candidate":{"connectionId":"3569e6ca17714c1889d318b7e05e7701","candidate":"candidate:3635112706 1 udp 2122194687 192.168.56.1 49907 typ host generation 0 ufrag ILQ3 network-id 2","sdpMid":"0","sdpMLineIndex":0},"playerId":"Player1"}
[09:58:20.438] info: Player1 > DefaultStreamer :: {"from":"3569e6ca17714c1889d318b7e05e7701","to":"","type":"answer","data":{"connectionId":"3569e6ca17714c1889d318b7e05e7701","sdp":"v=0\r\no=- 2982044633834759345 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0 1 2\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=video 49906 UDP/TLS/RTP/SAVPF 127 97 98 99 100 101 102\r\nc=IN IP4 192.168.0.153\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=candidate:3407833374 1 udp 2122260223 192.168.0.153 49906 typ host generation 0 network-id 1\r\na=candidate:3635112706 1 udp 2122194687 192.168.56.1 49907 typ host generation 0 network-id 2\r\na=ice-ufrag:ILQ3\r\na=ice-pwd:ZnTCwkNo3s4uz86pJbJDdzjK\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8E:3F:84:B1:30:C2:A4:97:F0:81:13:15:AB:3B:21:51:9C:D7:08:A9:33:B5:25:1A:99:41:A3:2A:25:3E:EE:24\r\na=setup:active\r\na=mid:0\r\na=extmap:1 urn:ietf:params:rtp-hdrext:toffset\r\na=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:3 urn:3gpp:video-orientation\r\na=extmap:4 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:5 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type\r\na=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-timing\r\na=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/color-space\r\na=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=extmap:10 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id\r\na=extmap:11 urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id\r\na=recvonly\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=fmtp:127 implementation_name=NvCodec;level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e033\r\na=rtpmap:97 rtx/90000\r\na=fmtp:97 apt=127\r\na=rtpmap:98 H264/90000\r\na=rtcp-fb:98 goog-remb\r\na=rtcp-fb:98 transport-cc\r\na=rtcp-fb:98 ccm fir\r\na=rtcp-fb:98 nack\r\na=rtcp-fb:98 nack pli\r\na=fmtp:98 implementation_name=NvCodec;level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=420033\r\na=rtpmap:99 rtx/90000\r\na=fmtp:99 apt=98\r\na=rtpmap:100 red/90000\r\na=rtpmap:101 rtx/90000\r\na=fmtp:101 apt=100\r\na=rtpmap:102 ulpfec/90000\r\nm=audio 9 UDP/TLS/RTP/SAVPF 96 110\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:ILQ3\r\na=ice-pwd:ZnTCwkNo3s4uz86pJbJDdzjK\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8E:3F:84:B1:30:C2:A4:97:F0:81:13:15:AB:3B:21:51:9C:D7:08:A9:33:B5:25:1A:99:41:A3:2A:25:3E:EE:24\r\na=setup:active\r\na=mid:1\r\na=extmap:14 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=extmap:4 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid\r\na=recvonly\r\na=rtcp-mux\r\na=rtpmap:96 OPUS/48000/2\r\na=rtcp-fb:96 transport-cc\r\na=fmtp:96 minptime=10;sprop-stereo=1;stereo=1;useinbandfec=1\r\na=rtpmap:110 telephone-event/48000\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:ILQ3\r\na=ice-pwd:ZnTCwkNo3s4uz86pJbJDdzjK\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8E:3F:84:B1:30:C2:A4:97:F0:81:13:15:AB:3B:21:51:9C:D7:08:A9:33:B5:25:1A:99:41:A3:2A:25:3E:EE:24\r\na=setup:active\r\na=mid:2\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer","polite":false},"playerId":"Player1"}
[09:58:20.456] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:1270427821 1 udp 2122260223 192.168.0.153 49153 typ host generation 0 ufrag MjxY network-id 1","sdpMLineIndex":1,"sdpMid":"1"},"type":"iceCandidate"}
[09:58:20.490] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:1270427821 1 udp 2122260223 192.168.0.153 49154 typ host generation 0 ufrag MjxY network-id 1","sdpMLineIndex":2,"sdpMid":"2"},"type":"iceCandidate"}
[09:58:20.524] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:1253655179 1 udp 1686052607 86.10.51.141 49152 typ srflx raddr 192.168.0.153 rport 49152 generation 0 ufrag MjxY network-id 1","sdpMLineIndex":0,"sdpMid":"0"},"type":"iceCandidate"}
[09:58:20.530] info: Player1 > DefaultStreamer :: {"from":"3569e6ca17714c1889d318b7e05e7701","to":"","type":"iceCandidate","candidate":{"connectionId":"3569e6ca17714c1889d318b7e05e7701","candidate":"candidate:3050343302 1 tcp 1518280447 192.168.0.153 50240 typ host tcptype passive generation 0 ufrag ILQ3 network-id 1","sdpMid":"0","sdpMLineIndex":0},"playerId":"Player1"}
[09:58:20.531] info: Player1 > DefaultStreamer :: {"from":"3569e6ca17714c1889d318b7e05e7701","to":"","type":"iceCandidate","candidate":{"connectionId":"3569e6ca17714c1889d318b7e05e7701","candidate":"candidate:2791606682 1 tcp 1518214911 192.168.56.1 50241 typ host tcptype passive generation 0 ufrag ILQ3 network-id 2","sdpMid":"0","sdpMLineIndex":0},"playerId":"Player1"}
[09:58:20.557] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:1253655179 1 udp 1686052607 86.10.51.141 49154 typ srflx raddr 192.168.0.153 rport 49154 generation 0 ufrag MjxY network-id 1","sdpMLineIndex":2,"sdpMid":"2"},"type":"iceCandidate"}
[09:58:20.591] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:1253655179 1 udp 1686052607 86.10.51.141 49153 typ srflx raddr 192.168.0.153 rport 49153 generation 0 ufrag MjxY network-id 1","sdpMLineIndex":1,"sdpMid":"1"},"type":"iceCandidate"}
[09:58:20.625] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:896979509 1 tcp 1518280447 192.168.0.153 49152 typ host tcptype passive generation 0 ufrag MjxY network-id 1","sdpMLineIndex":0,"sdpMid":"0"},"type":"iceCandidate"}
[09:58:20.678] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:896979509 1 tcp 1518280447 192.168.0.153 49153 typ host tcptype passive generation 0 ufrag MjxY network-id 1","sdpMLineIndex":1,"sdpMid":"1"},"type":"iceCandidate"}
[09:58:20.712] info: DefaultStreamer > Player1 :: {"candidate":{"candidate":"candidate:896979509 1 tcp 1518280447 192.168.0.153 49154 typ host tcptype passive generation 0 ufrag MjxY network-id 1","sdpMLineIndex":2,"sdpMid":"2"},"type":"iceCandidate"}
[09:58:48.542] info: > DefaultStreamer :: {"type":"ping","time":1753693128}
[09:58:48.542] info: < DefaultStreamer :: {"type":"pong","time":1753693128}
[09:58:51.022] info: Streamer 'DefaultStreamer' - websocket disconnected.
[09:58:51.023] info: Player1 > DefaultStreamer :: {"type":"playerDisconnected","playerId":"Player1"}
[09:58:51.026] info: Streamer DefaultStreamer (::ffff:127.0.0.1) disconnected.
[09:58:51.027] info: Unregistered player: Player1
[09:58:51.028] info: Player Player1 (::ffff:127.0.0.1) disconnected.