Open Bug 1954255 Opened 1 month ago Updated 26 days ago

[Firefox 115 ESR] Jumping/seeking back to distant time in protected DRM video causes playback failure

Categories

(Core :: Audio/Video: Playback, defect, P3)

defect

Tracking

()

UNCONFIRMED

People

(Reporter: wahyudo, Unassigned)

Details

Steps to reproduce:

I'm using Firefox 115.21.0 ESR on Windows 7. In protected DRM video streaming, such as Udemy (non-free course videos), attempting to jump/seek to a distant timestamp often breaks video playback.

For example, if a Udemy course video has a duration of 20 minutes and I play it until 18:00, then seek back to 02:00, the video will not play at all (no buffering). Even if I jump back to 18:00, the video still won’t play. I have to refresh the page to make the video play again.

Alternative way to reproduce the bug:
If a Udemy course video has a duration of 20 minutes, and I immediately seek forward to a distant timestamp (e.g., 18:00) right after starting the video, then let it play for a bit, then seek back to another distant timestamp (e.g., 01:00), the video will not play at all (no buffering). Even if I jump back to 18:00, the video still won’t play. I have to refresh the page to make the video play again.

Some notes:

  • The DRM video must be long (at least 10 minutes).
  • The DRM video must be protected (i.e., requires login), so the bug cannot be reproduced in free Udemy course videos or DRM video test samples like Bitmovin DRM Demo (https://bitmovin.com/demos/drm/).
  • Another affected DRM video streaming site is catchplay.com (they offer free movies for testing), but this platform is only available in Taiwan, Singapore, and Indonesia. I have not tested other streaming sites like Netflix, YouTube Movies, Amazon Prime Video, etc.
  • I have never encountered this issue in Chrome browser.
  • I have tried disabling hardware acceleration, but it does not solve the issue.
  • The bug does not exist in the latest Firefox version (v136) on Windows 10.
  • I managed to reproduce the bug on Windows 10 as well using Firefox v115 ESR, so it's not a Windows 7 issue.

Actual results:

The video stops playing after seeking back to a distant timestamp. I have to refresh the page to make the video play again.

Expected results:

The video should continue playing properly after seeking to a distant timestamp.

The Bugbug bot thinks this bug should belong to the 'Core::Audio/Video: Playback' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Audio/Video: Playback
Product: Firefox → Core
Version: other → unspecified

The bug does not exist in the latest Firefox version (v136) on Windows 10.

Does this issue happens on ESR 128 as well? This sounds some MSE buffering issue we encountered before. Could you try to set the pref media.mediasource.eviction_threshold.video to 157286400 to see if it helps? If not, you could use mozregression to find out what bug fixed the issue, then we could uplift the fix to ESR 115. Thanks!

Severity: -- → S4
Flags: needinfo?(wahyudo)
Priority: -- → P3

Does this issue happens on ESR 128 as well?

Nope, it works fine in the ESR 128, except for ESR versions 128.0 and 128.1.0 which I can't confirm due to the widevine plugin crash (see my reply below).

Could you try to set the pref media.mediasource.eviction_threshold.video to 157286400 to see if it helps?

Tried it, still didn't solve the issue.

If not, you could use mozregression to find out what bug fixed the issue, then we could uplift the fix to ESR 115.

When I tried the mozregression with bisection (following the tutorial video), the firefox can't play the DRM video at all (no buffering) for the build versions before 2024-08-19 (I set the release "115" as the last bad build in the settings), I'm not sure if the widevine plugin crashed or not, there was no notification at all. For the build version 2024-08-19 and newer, they can play and seek the DRM video without issue.

I also tried installing the old firefox versions manually from the https://ftp.mozilla.org/pub/firefox/releases/. For any versions after 115.21.0esr and before 128.2.0esr, the widevine plugin always crashes when playing the DRM video. So the 128.2.0esr is the earliest known release version that doesn't have the seeking bug.

Flags: needinfo?(wahyudo)
You need to log in before you can comment on or make changes to this bug.