Skip to content

Unexpected freezes with VP9 SVC and packetloss #1616

@geirbakke

Description

@geirbakke

Bug Report

Your environment

  • Chrome 140,
  • MacOS 15.6.1
  • Mediasoup online demo

Issue description

We see lots of freezes when introducing packetloss on reception of VP9 SVC. Seems to only happen when using SVC - not K-SVC.

Reproducible with mediasoup demo when forcing VP9 and overriding default scalabilitymode:
https://v3demo.mediasoup.org/?roomId=vp9svcpacketloss&forceVP9=true&webcamScalabilityMode=L3T3

I think this might be a browser/lib issue, so I have reported it there:
https://issues.webrtc.org/issues/449408585
But if i'm wrong and it is a mediasoup issue, hopefully you can use this info to track it down

I narrowed it down to the freezes happening when dropping a single packet and then dropping the first re-transmit of that packet. Somehow we only receive a new nack (re-nack same seq number) if it is the first packet in a picture (first packet after a packet with marker bit being sent). Since it doesn't get the re-nack, the receiver never gets what it needs and gives up after a while and sends a PLI which unfreezes the image.

I can reproduce by:

  • running latest release and testing on localhost (no network lag or packetloss)
  • dropping every Nth (i.e 200th) packet in WebRtcTransport (by not calling this->iceServer->GetSelectedTuple()->Send(data, len, cb);)
  • drop the first RTX packet after this

Logging packets i see it only freezes when not re-nacking the packet i stopped retransmission of. And it only does that when it isn't the first packet of picture.

Maybe related to:
#1536

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions