Pixel Streaming - AWS + Chrome Not Working - Buffer Dropped

I’m trying to get AWS + Pixel Streaming working on my local Mac (11.2.3) running Chrome (90). It’s working in Firefox but not in Chrome.

The web page is running on my localhost. The SWS and Unreal are running on the AWS ec2 server.

I have applied the fixes for WebRTC on Chrome 89+ by setting offerExtmapAllowMixed = false, however it’s still unable to view the stream on Chrome.

I’m including some server logs which have some custom logging to make sure we can send a time stamp to the browser using the datachannel. You can see that in the firefox logs.

I’ve reviewed the logs many times and can’t spot the error. Any help is appreciated.

Here’s the server log when chrome connects:

chrome.log (41.5 KB)

Here’s a snippet from the log:

[2021.06.04-13.57.59:237][294]PixelStreamer: FPlayerSession::OnIceGatheringChange : PlayerId=101, NewState=IceGatheringGathering
[2021.06.04-13.57.59:237][294]PixelStreamer: FPlayerSession::OnIceCandidate : PlayerId=101
[2021.06.04-13.57.59:237][294]PixelStreamingWebRTC: (basicportallocator.cc:883): Port[000001BD357BBAF0:0:1:0:local:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Gathered candidate: Cand[:3592467219:1:udp:1686052607:3.133.38.x:54927:stun:172.31.27.3:54927:mX7i:zUXAElLd/73A2hTxoNib5bFl:1:0:0]
[2021.06.04-13.57.59:237][294]PixelStreamer: FPlayerSession::OnIceCandidate : PlayerId=101
[2021.06.04-13.57.59:240][294]PixelStreamingWebRTC: (video_stream_encoder.cc:765): Video frame parameters changed: dimensions=1083x625, texture=1.
[2021.06.04-13.57.59:240][294]PixelStreamer: WebRTC VideoEncoder created, quality controller
[2021.06.04-13.57.59:240][294]PixelStreamingWebRTC: (quality_scaler.cc:72): Created CheckQpTask. Scheduling on queue...
[2021.06.04-13.57.59:240][294]PixelStreamingWebRTC: (quality_scaler.cc:125): QP thresholds: low: 24, high: 34
[2021.06.04-13.57.59:240][294]PixelStreamingWebRTC: (video_stream_encoder.cc:790): Dropping frame. Too large for target bitrate.
[2021.06.04-13.57.59:240][294]PixelStreamingWebRTC: (video_stream_encoder.cc:190): Scaling down resolution, max pixels: 406125
[2021.06.04-13.57.59:240][294]PixelStreamingWebRTC: (video_stream_encoder.cc:1090): Downgrade counts: fps: {quality:0 cpu:0}, resolution: {quality:1 cpu:0}
[2021.06.04-13.57.59:240][294]LogAVEncoder: Buffer #0 (0) dropped
[2021.06.04-13.57.59:252][295]PixelStreamingWebRTC: (paced_sender.cc:104): PacedSender paused.
[2021.06.04-13.57.59:263][295]PixelStreamingWebRTC: (video_stream_encoder.cc:790): Dropping frame. Too large for target bitrate.
[2021.06.04-13.57.59:263][295]LogAVEncoder: Buffer #1 (0) dropped
[2021.06.04-13.57.59:281][296]PixelStreamingWebRTC: (video_stream_encoder.cc:790): Dropping frame. Too large for target bitrate.
[2021.06.04-13.57.59:281][296]LogAVEncoder: Buffer #2 (0) dropped
[2021.06.04-13.57.59:286][297]PixelStreamingWebRTC: (basicportallocator.cc:1276): Net[Amazon:172.31.27.x/32:Ethernet:id=1]: Allocation Phase=Relay
[2021.06.04-13.57.59:286][297]PixelStreamingWebRTC: (port.cc:319): Port[000001BD31D111E0::1:0:relay:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Port created with network cost 0
[2021.06.04-13.57.59:286][297]PixelStreamingWebRTC: (basicportallocator.cc:847): Adding allocated port for 0
[2021.06.04-13.57.59:286][297]PixelStreamingWebRTC: (basicportallocator.cc:866): Port[000001BD31D111E0:0:1:0:relay:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Added port to allocator
[2021.06.04-13.57.59:286][297]PixelStreamingWebRTC: (turnport.cc:335): Port[000001BD31D111E0:0:1:0:relay:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Trying to connect to TURN server via udp @ 3.133.38.x:19303
[2021.06.04-13.57.59:286][297]PixelStreamingWebRTC: (turnport.cc:1281): Port[000001BD31D111E0:0:1:0:relay:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: TURN allocate request sent, id=6a7154466a53573368784e4d
[2021.06.04-13.57.59:303][297]PixelStreamingWebRTC: (video_stream_encoder.cc:790): Dropping frame. Too large for target bitrate.
[2021.06.04-13.57.59:303][297]LogAVEncoder: Buffer #3 (0) dropped
[2021.06.04-13.57.59:321][298]LogAVEncoder: Buffer #4 (0) dropped
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: (basicportallocator.cc:1276): Net[Amazon:172.31.27.x/32:Ethernet:id=1]: Allocation Phase=Tcp
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: (port.cc:319): Port[000001BD2DD21750::1:0:local:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Port created with network cost 0
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: (basicportallocator.cc:847): Adding allocated port for 0
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: (basicportallocator.cc:866): Port[000001BD2DD21750:0:1:0:local:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Added port to allocator
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: (basicportallocator.cc:883): Port[000001BD2DD21750:0:1:0:local:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Gathered candidate: Cand[:838647862:1:tcp:1518280447:172.31.27.x:50068:local::0:mX7i:zUXAElLd/73A2hTxoNib5bFl:1:0:0]
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: (basicportallocator.cc:911): Port[000001BD2DD21750:0:1:0:local:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Port ready.
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: Warning: (physicalsocketserver.cc:562): Socket::OPT_DSCP not supported.
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: (p2ptransportchannel.cc:739): Port[000001BD2DD21750:0:1:0:local:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: SetOption(5, 0) failed: 0
[2021.06.04-13.57.59:338][299]PixelStreamingWebRTC: (basicportallocator.cc:985): Port[000001BD2DD21750:0:1:0:local:Net[Amazon:172.31.27.x/32:Ethernet:id=1]]: Port completed gathering candidates.
[2021.06.04-13.57.59:338][299]PixelStreamer: FPlayerSession::OnIceCandidate : PlayerId=101
[2021.06.04-13.57.59:341][299]LogAVEncoder: Buffer #5 (0) dropped
[2021.06.04-13.57.59:359][300]LogAVEncoder: Buffer #6 (0) dropped
[2021.06.04-13.57.59:376][301]LogAVEncoder: Buffer #7 (0) dropped
[2021.06.04-13.57.59:394][302]LogAVEncoder: Buffer #8 (0) dropped
[2021.06.04-13.57.59:418][303]LogAVEncoder: Buffer #9 (0) dropped

Here’s the server log when firefox connects:

firefox.log (86.4 KB)

I’m also attaching some custom logs from the Chrome JS console.