Skip to content

Intermittent very low video send-bitrate in Go/P2P rooms when Firefox 144+ is paired with Chrome/Edge #2205

@Talb2005

Description

@Talb2005

Description

We occasionally see an intermittent issue in production involving Firefox 144+ and twilio-video.js.

So far, we have only observed this in 2-party rooms:

  • Go
  • P2P

We have not encountered it in Group rooms yet, although we cannot rule that out because the vast majority of usage on our platform is in Go rooms.

The pattern we see most often is:

  • one participant uses Firefox 144+
  • the other participant uses Chrome or Edge
  • both participants connect successfully
  • audio works normally
  • both participants' video send-bitrate gets stuck at an extremely low value

In affected calls, the video send-bitrate may get stuck around:

  • ~150 kbps
  • or even lower, such as ~35 kbps

Importantly, when this happens, it appears to affect both sides of the call, not just the Firefox side. In other words, both participants end up stuck at extremely low video send-bitrate.

When the Firefox participant switches to a different browser, the issue no longer occurs, and the normal video send-bitrate is usually around ~1700 kbps.

We have not been able to reproduce this internally, but we do see it in a small percentage of real production calls involving Firefox 144+, and we have been seeing this pattern for several months.

We are not claiming proven causality. At this stage, this is a repeated production pattern and a suspected cross-browser interoperability issue correlated with Firefox 144+ in Go/P2P rooms.

Expected behavior

Participants should connect normally and video send-bitrate should ramp up to a healthy level, similar to what we usually see in unaffected calls (around ~1700 kbps in our use case).

Actual behavior

In a small percentage of calls involving Firefox 144+:

  • both participants connect
  • audio works
  • video send-bitrate on both sides becomes stuck at a very low value
  • remote video quality is severely degraded or effectively unusable

Scope observed so far

Observed pattern:

  • room types: Go / P2P
  • browser combination: Firefox 144+ on one side, Chrome or Edge on the other side
  • not yet observed by us in Group rooms

Frequency

Intermittent.

Small percentage of production video calls involving Firefox 144+.

Reproduction

Unfortunately, we have not been able to reproduce this ourselves in a controlled test environment.

At this point, the issue is based on repeated production observations across multiple calls over several months.

Connect options

We connect using options similar to:

const options: ConnectOptions = {
  preferredVideoCodecs: [{ codec: 'VP8', simulcast:  false }],
  dominantSpeaker: true,
  tracks: [
    ...mediaTracks,
    ...['chat', 'whiteboard', 'internal'].map((name) => new LocalDataTrack({ name })),
  ],
};

Why we suspect a Firefox 144+ correlation

Our current suspicion is based on these repeated observations:

  1. The issue usually occurs when one participant is using Firefox 144+ and the other is using Chrome/Edge.
  2. Once the Firefox participant switches to another browser, the issue no longer occurs.
  3. In unaffected calls, the send-bitrate is usually around ~1700 kbps.

This suggests a possible Firefox 144+ correlation, or a cross-browser interoperability issue involving Firefox 144+ in direct 2-party rooms.

Additional observations

  • This does not look like a simple one-sided publish failure.
  • In affected calls, both sides appear stuck at very low video send-bitrate.
  • Audio is usually unaffected.
  • We currently prefer VP8 with simulcast disabled.
  • The issue appears intermittent rather than deterministic.

Software versions

  • twilio-video.js: 2.34.0
  • Firefox: 144+ observed in affected calls
  • other browser on the other side: usually Chrome or Edge
  • room types: Go / P2P
  • OS: observed across production user environments

Additional info

We can provide example Twilio Room SIDs from affected calls if useful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions