Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Safari 17.1 issue with playback DRM content #1326

Open
adamtatur opened this issue Nov 30, 2023 · 3 comments
Open

Safari 17.1 issue with playback DRM content #1326

adamtatur opened this issue Nov 30, 2023 · 3 comments

Comments

@adamtatur
Copy link

Hi,

Issue observed on:
MacOS: Sonoma 14.1.1
Safari: 17.1
RxPlayer: 3.29.0/3.31.2

After updating the macOS environment to the latest version, we noticed that the streams of one of the providers stopped working properly. It happens that the stream works correctly several or a dozen times in a row, but there are situations where the stream cannot be played at all (it seems to happen completely randomly).

In the case of a non-working stream, after 1-2 minutes we receive information from the API player about the MEDIA_ERR_DECODE error (this is strange because when trying to reproduce the error, the same stream works correctly several times in a row when trying to play it). Based on the player logs, the only thing noticeable is the situation where the player stucks on rebuffering and freezing state, as well as readyState property of the HTMLMediaElement element does not change and is still equal to 1.
After a small troubleshoot I've noticed that player cannot obtain a valid TimeRanges which is strange due to the fact that the first media segments are downloaded properly based on a provided playlist.

Below are collected logs for both cases:

- not working case

[Log] Locking `contentLock` to clean-up the current content. (bundle.js, line 258149)
[Info] DRM: Clearing-up DRM session. (bundle.js, line 243538)
[Info] DRM: Nothing to clear. Returning right away. No state = – true (bundle.js, line 243548)
[Log] API: DRM session cleaned-up with success! (bundle.js, line 258167)
[Log] Unlocking `contentLock`. Next content can begin. (bundle.js, line 258161)
[Info] API: Calling loadvideo (2) (bundle.js, line 256567)
"https://cz-bkm100-prod-live.solocoo.tv/bpk-vod/playout01/default/appletvcz_A001960100102_f9ffe6abc9709c8dc42e1eea8260a359_HD/appletvcz_A001960100102_f9ffe6abc9709c8dc42e1eea8260a359_HD/index.m3u8?quotaID=FxWOGfveg5ncglrf8pNN3A&terminalID=w84aa2f60-8eb3-11ee-a2a9-3fc84e302eb0&auth=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1cmkiOiIvYnBrLXZvZC9wbGF5b3V0MDEvZGVmYXVsdC9hcHBsZXR2Y3pfQTAwMTk2MDEwMDEwMl9mOWZmZTZhYmM5NzA5YzhkYzQyZTFlZWE4MjYwYTM1OV9IRC9hcHBsZXR2Y3pfQTAwMTk2MDEwMDEwMl9mOWZmZTZhYmM5NzA5YzhkYzQyZTFlZWE4MjYwYTM1OV9IRC9pbmRleC5tM3U4IiwibWV0aG9kIjoiR0VUIiwiZXhwIjoxNzAxMzQwODM4LCJxdWVyaWVzIjp7InF1b3RhSUQiOiJGeFdPR2Z2ZWc1bmNnbHJmOHBOTjNBIiwidGVybWluYWxJRCI6Inc4NGFhMmY2MC04ZWIzLTExZWUtYTJhOS0zZmM4NGUzMDJlYjAifX0.AQLPZ8jdc0phjlvyxafGN0EGS4_NiNp2zWDDxf5cOxY"
"directfile"
[Log] API: current media element state tick – "event" – "init" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 0 (bundle.js, line 254850)
[Log] Locking `contentLock` to clean-up the current content. (bundle.js, line 258149)
[Info] DRM: Clearing-up DRM session. (bundle.js, line 243538)
[Info] DRM: Nothing to clear. Returning right away. No state = – true (bundle.js, line 243548)
[Log] Init: Creating ContentDecryptor (bundle.js, line 209996)
[Info] Init: Resume playback speed – 1 (bundle.js, line 210534)
[Info] API: playerStateChange event – "LOADING" (bundle.js, line 258591)
[Log] API: DRM session cleaned-up with success! (bundle.js, line 258167)
[Log] Unlocking `contentLock`. Next content can begin. (bundle.js, line 258161)
[Log] DRM: Starting ContentDecryptor logic. (bundle.js, line 208145)
[Info] DRM: Searching for compatible MediaKeySystemAccess (bundle.js, line 204918)
[Log] DRM: Request keysystem access com.apple.fps.1_0,1 of 1 (bundle.js, line 205003)
[Info] DRM: Found compatible keysystem – "com.apple.fps.1_0" – 1 (bundle.js, line 205009)
[Info] DRM: Calling createMediaKeys on the MediaKeySystemAccess (bundle.js, line 207051)
[Info] DRM: MediaKeys created with success (bundle.js, line 207021)
[Info] Setting URL to HTMLMediaElement – "https://cz-bkm100-prod-live.solocoo.tv/bpk-vod/playout01/default/appletvcz_A001960100102_f9ffe6abc9709c8dc42e1eea8260a359_HD/appletvcz_A0019…" (bundle.js, line 209727)
"https://cz-bkm100-prod-live.solocoo.tv/bpk-vod/playout01/default/appletvcz_A001960100102_f9ffe6abc9709c8dc42e1eea8260a359_HD/appletvcz_A001960100102_f9ffe6abc9709c8dc42e1eea8260a359_HD/index.m3u8?quotaID=FxWOGfveg5ncglrf8pNN3A&terminalID=w84aa2f60-8eb3-11ee-a2a9-3fc84e302eb0&auth=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1cmkiOiIvYnBrLXZvZC9wbGF5b3V0MDEvZGVmYXVsdC9hcHBsZXR2Y3pfQTAwMTk2MDEwMDEwMl9mOWZmZTZhYmM5NzA5YzhkYzQyZTFlZWE4MjYwYTM1OV9IRC9hcHBsZXR2Y3pfQTAwMTk2MDEwMDEwMl9mOWZmZTZhYmM5NzA5YzhkYzQyZTFlZWE4MjYwYTM1OV9IRC9pbmRleC5tM3U4IiwibWV0aG9kIjoiR0VUIiwiZXhwIjoxNzAxMzQwODM4LCJxdWVyaWVzIjp7InF1b3RhSUQiOiJGeFdPR2Z2ZWc1bmNnbHJmOHBOTjNBIiwidGVybWluYWxJRCI6Inc4NGFhMmY2MC04ZWIzLTExZWUtYTJhOS0zZmM4NGUzMDJlYjAifX0.AQLPZ8jdc0phjlvyxafGN0EGS4_NiNp2zWDDxf5cOxY"
[Log] DRM: Attaching current MediaKeys (bundle.js, line 208256)
[Info] DRM: Attaching MediaKeys to the media element (bundle.js, line 204252)
[Info] DRM: MediaKeys attached with success (bundle.js, line 204254)
[Info] DRM: Setting server certificate on the MediaKeys (bundle.js, line 207849)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 0 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "loadedmetadata" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵loadedmetadata"
"
loadedmetadata"
[Log] Init: Calculating initial time (bundle.js, line 209829)
[Log] Init: Initial time calculated: – 0 (bundle.js, line 209831)
[Info] Init: Set initial time – 0 (bundle.js, line 209608)
[Info] Init: Can begin to play content (bundle.js, line 209626)
[Log] API: current media element state tick – "event" – "play" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵play"
"
play"
[Log] API: current media element state tick – "event" – "internal-seeking" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵seeking"
"
seeking"
[Log] API: current media element state tick – "event" – "seeked" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵seeked"
"
seeked"
[Log] DRM: Encrypted event received from media element. (bundle.js, line 208159)
[Warning] Compat: Unrecognized initialization data. Use as is. (bundle.js, line 204078)
[Info] DRM: Creating a new temporary session (bundle.js, line 204365)
[Log] DRM-LSS: Add MediaKeySession – "temporary" (bundle.js, line 205793)
[Info] DRM: Binding session events – "" (bundle.js, line 207557)
[Log] Compat: Calling generateRequest on the MediaKeySession (bundle.js, line 205139)
[Info] Compat: Trying to move CENC PSSH from init data at the end of it. (bundle.js, line 205084)
[Warning] Compat: unrecognized initialization data. Cannot patch it. (bundle.js, line 205091)
[Info] DRM: Received message event, type license-request – "" (bundle.js, line 207570)
[Log] DRM: Encrypted event received from media element. (bundle.js, line 208159)
[Warning] Compat: Unrecognized initialization data. Use as is. (bundle.js, line 204078)
[Info] DRM: Creating a new temporary session (bundle.js, line 204365)
[Log] DRM-LSS: Add MediaKeySession – "temporary" (bundle.js, line 205793)
[Info] DRM: Binding session events – "" (bundle.js, line 207557)
[Log] Compat: Calling generateRequest on the MediaKeySession (bundle.js, line 205139)
[Info] Compat: Trying to move CENC PSSH from init data at the end of it. (bundle.js, line 205084)
[Warning] Compat: unrecognized initialization data. Cannot patch it. (bundle.js, line 205091)
[Info] DRM: Received message event, type license-request – "" (bundle.js, line 207570)
[Info] DRM: Updating MediaKeySession with message (bundle.js, line 207678)
[Info] DRM: MediaKeySession update succeeded. (bundle.js, line 207683)
[Info] DRM: Updating MediaKeySession with message (bundle.js, line 207678)
[Info] DRM: MediaKeySession update succeeded. (bundle.js, line 207683)
[Log] DRM: Encrypted event received from media element. (bundle.js, line 208159)
[Warning] Compat: Unrecognized initialization data. Use as is. (bundle.js, line 204078)
[Log] DRM: Init data already processed. Skipping it. (bundle.js, line 208691)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] DRM: Encrypted event received from media element. (bundle.js, line 208159)
[Warning] Compat: Unrecognized initialization data. Use as is. (bundle.js, line 204078)
[Log] DRM: Init data already processed. Skipping it. (bundle.js, line 208691)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
.
.
.
.
.
.
[Log] DRM: Encrypted event received from media element. (bundle.js, line 208159)
[Warning] Compat: Unrecognized initialization data. Use as is. (bundle.js, line 204078)
[Log] DRM: Init data already processed. Skipping it. (bundle.js, line 208691)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – true – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254850)
[Log] API: current playback timeline: (bundle.js, line 254858)

^0 – "↵timeupdate"
"
timeupdate"

[Log] Locking `contentLock` to clean-up the current content. (bundle.js, line 258149)
[Info] DRM: Clearing-up DRM session. (bundle.js, line 243538)
[Info] DRM: Nothing to clear. Returning right away. No state = – false (bundle.js, line 243548)
[Error] API: The player stopped because of an error – MediaError: MediaError (MEDIA_ERR_DECODE) Media failed to decode
MediaError: MediaError (MEDIA_ERR_DECODE) Media failed to decode
	_priv_onPlaybackError (bundle.js:258272)
	(anonimowa funkcja) (bundle.js:239057)
	(anonimowa funkcja) (bundle.js:239021)
	(anonimowa funkcja) (bundle.js:238998)
	(anonimowa funkcja) (bundle.js:238807)
	errorContext (bundle.js:241411)
	(anonimowa funkcja) (bundle.js:238800)
	(anonimowa funkcja) (bundle.js:239057)
	(anonimowa funkcja) (bundle.js:239021)
	(anonimowa funkcja) (bundle.js:238998)
	(anonimowa funkcja) (bundle.js:239021)
	(anonimowa funkcja) (bundle.js:238998)
	(anonimowa funkcja) (bundle.js:240075)
	(anonimowa funkcja) (bundle.js:238990)
[Info] API: playerStateChange event – "STOPPED" (bundle.js, line 258591)
[Log] Locking `contentLock` to clean-up the current content. (bundle.js, line 258149)
[Info] DRM: Clearing-up DRM session. (bundle.js, line 243538)
[Info] DRM: Nothing to clear. Returning right away. No state = – false (bundle.js, line 243548)
[Log] API: DRM session cleaned-up with success! (bundle.js, line 258167)
[Log] Unlocking `contentLock`. Next content can begin. (bundle.js, line 258161)
[Log] API: DRM session cleaned-up with success! (bundle.js, line 258167)
[Log] Unlocking `contentLock`. Next content can begin. (bundle.js, line 258161)

- working case

[Log] Locking `contentLock` to clean-up the current content. (bundle.js, line 258152)
[Info] DRM: Clearing-up DRM session. (bundle.js, line 243541)
[Info] DRM: Nothing to clear. Returning right away. No state = – true (bundle.js, line 243551)
[Log] API: DRM session cleaned-up with success! (bundle.js, line 258170)
[Log] Unlocking `contentLock`. Next content can begin. (bundle.js, line 258164)
[Info] API: Calling loadvideo – "https://cz-bks400-prod17-live.solocoo.tv:443/bpk-token/1ac@hvyuet41ctsmkqftnooxsrjjgnjfomd1ebznizda/GlobalManifest.m3u8?bkm-query" – "directfile" (bundle.js, line 256570)
[Log] API: current media element state tick – "event" – "init" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 0 (bundle.js, line 254853)
[Log] Locking `contentLock` to clean-up the current content. (bundle.js, line 258152)
[Info] DRM: Clearing-up DRM session. (bundle.js, line 243541)
[Info] DRM: Nothing to clear. Returning right away. No state = – true (bundle.js, line 243551)
[Log] Init: Creating ContentDecryptor (bundle.js, line 209999)
[Info] Init: Resume playback speed – 1 (bundle.js, line 210537)
[Info] API: playerStateChange event – "LOADING" (bundle.js, line 258594)
[Log] API: DRM session cleaned-up with success! (bundle.js, line 258170)
[Log] Unlocking `contentLock`. Next content can begin. (bundle.js, line 258164)
[Log] DRM: Starting ContentDecryptor logic. (bundle.js, line 208148)
[Info] DRM: Searching for compatible MediaKeySystemAccess (bundle.js, line 204921)
[Log] DRM: Request keysystem access com.apple.fps.1_0,1 of 1 (bundle.js, line 205006)
[Info] DRM: Found compatible keysystem – "com.apple.fps.1_0" – 1 (bundle.js, line 205012)
[Info] DRM: Calling createMediaKeys on the MediaKeySystemAccess (bundle.js, line 207054)
[Info] DRM: MediaKeys created with success (bundle.js, line 207024)
[Info] Setting URL to HTMLMediaElement – "https://cz-bks400-prod17-live.solocoo.tv:443/bpk-token/1ac@hvyuet41ctsmkqftnooxsrjjgnjfomd1ebznizda/GlobalManifest.m3u8?bkm-query" (bundle.js, line 209730)
[Log] DRM: Attaching current MediaKeys (bundle.js, line 208259)
[Info] DRM: Attaching MediaKeys to the media element (bundle.js, line 204255)
[Info] DRM: MediaKeys attached with success (bundle.js, line 204257)
[Info] DRM: Setting server certificate on the MediaKeys (bundle.js, line 207852)
[Log] API: current media element state tick – "event" – "loadedmetadata" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)

^0 – "↵loadedmetadata"
"
loadedmetadata"
[Log] Init: Calculating initial time (bundle.js, line 209832)
[Log] Init: Initial time calculated: – 0 (bundle.js, line 209834)
[Info] Init: Set initial time – 0 (bundle.js, line 209611)
[Info] Init: Can begin to play content (bundle.js, line 209629)
[Log] API: current media element state tick – "event" – "play" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)

^0 – "↵play"
"
play"
[Log] API: current media element state tick – "event" – "internal-seeking" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)

^0 – "↵seeking"
"
seeking"
[Log] API: current media element state tick – "event" – "seeked" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)

^0 – "↵seeked"
"
seeked"
[Log] DRM: Encrypted event received from media element. (bundle.js, line 208162)
[Warning] Compat: Unrecognized initialization data. Use as is. (bundle.js, line 204081)
[Info] DRM: Creating a new temporary session (bundle.js, line 204368)
[Log] DRM-LSS: Add MediaKeySession – "temporary" (bundle.js, line 205796)
[Info] DRM: Binding session events – "" (bundle.js, line 207560)
[Log] Compat: Calling generateRequest on the MediaKeySession (bundle.js, line 205142)
[Info] Compat: Trying to move CENC PSSH from init data at the end of it. (bundle.js, line 205087)
[Warning] Compat: unrecognized initialization data. Cannot patch it. (bundle.js, line 205094)
[Info] DRM: Received message event, type license-request – "" (bundle.js, line 207573)
[Info] DRM: Updating MediaKeySession with message (bundle.js, line 207681)
[Info] DRM: MediaKeySession update succeeded. (bundle.js, line 207686)
[Log] DRM: Encrypted event received from media element. (bundle.js, line 208162)
[Warning] Compat: Unrecognized initialization data. Use as is. (bundle.js, line 204081)
[Info] DRM: Creating a new temporary session (bundle.js, line 204368)
[Log] DRM-LSS: Add MediaKeySession – "temporary" (bundle.js, line 205796)
[Info] DRM: Binding session events – "" (bundle.js, line 207560)
[Log] Compat: Calling generateRequest on the MediaKeySession (bundle.js, line 205142)
[Info] Compat: Trying to move CENC PSSH from init data at the end of it. (bundle.js, line 205087)
[Warning] Compat: unrecognized initialization data. Cannot patch it. (bundle.js, line 205094)
[Info] DRM: Received message event, type license-request – "" (bundle.js, line 207573)
[Info] DRM: Updating MediaKeySession with message (bundle.js, line 207681)
[Info] DRM: MediaKeySession update succeeded. (bundle.js, line 207686)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – true – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 1 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
^0 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "canplay" – "position" – 0.000001 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 3 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==0.68==|0.68
         ^0.000001 – "↵canplay"
"
canplay"
[Info] API: playerStateChange event – "LOADED" (bundle.js, line 258594)
[Info] API: playerStateChange event – "PLAYING" (bundle.js, line 258594)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0.18703929166916805 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==6.00==|6.00
         ^0.18703929166916805 – "↵timeupdate"
"
timeupdate"
[Log] DRM: Encrypted event received from media element. (bundle.js, line 208162)
[Warning] Compat: Unrecognized initialization data. Use as is. (bundle.js, line 204081)
[Info] DRM: Creating a new temporary session (bundle.js, line 204368)
[Log] DRM-LSS: Add MediaKeySession – "temporary" (bundle.js, line 205796)
[Info] DRM: Binding session events – "" (bundle.js, line 207560)
[Log] Compat: Calling generateRequest on the MediaKeySession (bundle.js, line 205142)
[Info] Compat: Trying to move CENC PSSH from init data at the end of it. (bundle.js, line 205087)
[Warning] Compat: unrecognized initialization data. Cannot patch it. (bundle.js, line 205094)
[Info] DRM: Received message event, type license-request – "" (bundle.js, line 207573)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 0.688069248672092 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==6.00==|6.00
         ^0.688069248672092 – "↵timeupdate"
"
timeupdate"
[Info] DRM: Updating MediaKeySession with message (bundle.js, line 207681)
[Info] DRM: MediaKeySession update succeeded. (bundle.js, line 207686)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 1.1886474580016912 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==6.00==|6.00
         ^1.1886474580016912 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 1.6896050816717465 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==6.00==|6.00
         ^1.6896050816717465 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 2.190702165662774 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==18.00==|18.00
          ^2.190702165662774 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 2.6909307493367662 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==18.00==|18.00
          ^2.6909307493367662 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 3.1919175399979647 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==18.00==|18.00
          ^3.1919175399979647 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 3.6929000410012645 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^3.6929000410012645 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 4.193966165667815 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^4.193966165667815 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 4.694763206673197 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^4.694763206673197 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 5.195806998999495 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^5.195806998999495 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 5.696764874004625 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^5.696764874004625 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 6.206692039332014 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^6.206692039332014 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 6.707381623671487 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^6.707381623671487 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 7.208438248332109 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^7.208438248332109 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 7.708988540668144 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^7.708988540668144 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.209140373331003 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.209140373331003 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.709886331668674 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – false – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.709886331668674 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "pause" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵pause"
"
pause"
[Info] API: playerStateChange event – "PAUSED" (bundle.js, line 258594)
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵timeupdate"
"
timeupdate"
[Log] API: current media element state tick – "event" – "timeupdate" – "position" – 8.853014207000637 – "seeking" – false – "internalSeek" – null – "rebuffering" – false – "freezing" – false – "ended" – false – "paused" – true – "playbackRate" – 1 – "readyState" – 4 (bundle.js, line 254853)
[Log] API: current playback timeline: (bundle.js, line 254861)
0.00|==60.00==|60.00
          ^8.853014207000637 – "↵timeupdate"
"
timeupdate"
[Log] Locking `contentLock` to clean-up the current content. (bundle.js, line 258152)
[Info] DRM: Clearing-up DRM session. (bundle.js, line 243541)
[Info] DRM: Nothing to clear. Returning right away. No state = – false (bundle.js, line 243551)
[Info] API: playerStateChange event – "STOPPED" (bundle.js, line 258594)
[Info] DRM: Disposing of the current MediaKeys (bundle.js, line 243449)
[Log] DRM-LSS: Closing all current MediaKeySessions – 3 (bundle.js, line 206110)
[Log] DRM: Trying to close a MediaKeySession – "" (bundle.js, line 206252, x3)
[Debug] clear keydow handler (PlayerModal.chunk.js, line 12568)
[Log] API: DRM session cleaned-up with success! (bundle.js, line 258170)
[Log] DRM: Succeeded to close MediaKeySession (bundle.js, line 206257, x3)
@peaBerberian
Copy link
Collaborator

Hi,

Hm, problems like this are often DRM-related, and we saw that when that doesn't work, we're pushing two licences (DRM: Updating MediaKeySession with message)...

I could not fetch the HLS playlists so I couldn't check, but is your content encrypted through several keys depending on the variant or audio/video track? The trigger for the issue might be reproducible only when doing a transition to a differently-encrypted segment before a given time (we already saw such DRM-related race conditions in Safari).

@m-scheepers
Copy link

m-scheepers commented Dec 13, 2023

@peaBerberian in this case it was also observed for content w/o DRM at the time of the test. Example of the structure of the manifest is as follows. This is HLS with Dolby Atmos included.

I will check if I can provide the actual manifest in a secure way via one of our colleagues.

#EXTM3U
#EXT-X-VERSION:7
## Created with Broadpeak BkS350 Origin Packager  (version=1.12.1-28247)

# AUDIO groups
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-aacl-64",LANGUAGE="en",NAME="English",DEFAULT=YES,AUTOSELECT=YES,CHANNELS="2"

# SUBTITLES groups
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="textstream",LANGUAGE="cs",NAME="Czech",DEFAULT=YES,AUTOSELECT=YES,URI="sample_HD-textstream_ces_1=1000.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="textstream",LANGUAGE="en",NAME="English",AUTOSELECT=YES,URI="sample_HD-textstream_eng_1=1000.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="textstream",LANGUAGE="sk",NAME="Slovak",AUTOSELECT=YES,URI="sample_HD-textstream_slk_1=1000.m3u8"

# AUDIO groups
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-ec-3-384",LANGUAGE="en",NAME="English",DEFAULT=YES,AUTOSELECT=YES,CHANNELS="6"
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-ec-3-576",LANGUAGE="en",NAME="English",DEFAULT=YES,AUTOSELECT=YES,CHANNELS="16/JOC"

# variants
#EXT-X-STREAM-INF:BANDWIDTH=271000,CODECS="mp4a.40.2,avc1.4D401E",RESOLUTION=416x234,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-aacl-64",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng=64000-video=189936.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=387000,CODECS="mp4a.40.2,avc1.4D401E",RESOLUTION=640x360,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-aacl-64",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng=64000-video=299944.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=864000,CODECS="mp4a.40.2,avc1.4D401E",RESOLUTION=768x432,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-aacl-64",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng=64000-video=749893.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1235000,CODECS="mp4a.40.2,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-aacl-64",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng=64000-video=1099881.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1659000,CODECS="mp4a.40.2,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-aacl-64",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng=64000-video=1499850.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2295000,CODECS="mp4a.40.2,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-aacl-64",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng=64000-video=2099803.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=3673000,CODECS="mp4a.40.2,avc1.64001F",RESOLUTION=1280x720,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-aacl-64",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng=64000-video=3399733.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=4839000,CODECS="mp4a.40.2,avc1.640029",RESOLUTION=1920x1080,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-aacl-64",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng=64000-video=4499737.m3u8

# variants
#EXT-X-STREAM-INF:BANDWIDTH=610000,CODECS="ec-3,avc1.4D401E",RESOLUTION=416x234,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-384",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=384000-video=189936.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=726000,CODECS="ec-3,avc1.4D401E",RESOLUTION=640x360,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-384",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=384000-video=299944.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1203000,CODECS="ec-3,avc1.4D401E",RESOLUTION=768x432,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-384",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=384000-video=749893.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1574000,CODECS="ec-3,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-384",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=384000-video=1099881.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1998000,CODECS="ec-3,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-384",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=384000-video=1499850.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2634000,CODECS="ec-3,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-384",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=384000-video=2099803.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=4012000,CODECS="ec-3,avc1.64001F",RESOLUTION=1280x720,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-384",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=384000-video=3399733.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=5178000,CODECS="ec-3,avc1.640029",RESOLUTION=1920x1080,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-384",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=384000-video=4499737.m3u8

# variants
#EXT-X-STREAM-INF:BANDWIDTH=813000,CODECS="ec-3,avc1.4D401E",RESOLUTION=416x234,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-576",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=576000-video=189936.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=930000,CODECS="ec-3,avc1.4D401E",RESOLUTION=640x360,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-576",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=576000-video=299944.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1407000,CODECS="ec-3,avc1.4D401E",RESOLUTION=768x432,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-576",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=576000-video=749893.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1778000,CODECS="ec-3,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-576",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=576000-video=1099881.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2202000,CODECS="ec-3,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-576",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=576000-video=1499850.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2838000,CODECS="ec-3,avc1.4D401F",RESOLUTION=960x540,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-576",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=576000-video=2099803.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=4216000,CODECS="ec-3,avc1.64001F",RESOLUTION=1280x720,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-576",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=576000-video=3399733.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=5382000,CODECS="ec-3,avc1.640029",RESOLUTION=1920x1080,FRAME-RATE=25,VIDEO-RANGE=SDR,AUDIO="audio-ec-3-576",SUBTITLES="textstream",CLOSED-CAPTIONS=NONE
sample_HD-audio_eng_1=576000-video=4499737.m3u8

# keyframes
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=26000,CODECS="avc1.4D401E",RESOLUTION=416x234,VIDEO-RANGE=SDR,URI="keyframes/sample_HD-video=189936.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=40000,CODECS="avc1.4D401E",RESOLUTION=640x360,VIDEO-RANGE=SDR,URI="keyframes/sample_HD-video=299944.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=100000,CODECS="avc1.4D401E",RESOLUTION=768x432,VIDEO-RANGE=SDR,URI="keyframes/sample_HD-video=749893.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=146000,CODECS="avc1.4D401F",RESOLUTION=960x540,VIDEO-RANGE=SDR,URI="keyframes/sample_HD-video=1099881.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=451000,CODECS="avc1.64001F",RESOLUTION=1280x720,VIDEO-RANGE=SDR,URI="keyframes/sample_HD-video=3399733.m3u8"
#EXT-X-I-FRAME-STREAM-INF:BANDWIDTH=597000,CODECS="avc1.640029",RESOLUTION=1920x1080,VIDEO-RANGE=SDR,URI="keyframes/sample_HD-video=4499737.m3u8"

@m-scheepers
Copy link

@peaBerberian I feel we can close this issue at this moment. The affected content is playing in recent rxplayer versions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants