Skip to content

Commit

Permalink
fix(hls): Changed way to create smooth quality switching by using dif…
Browse files Browse the repository at this point in the history
…ferent HLS method
  • Loading branch information
rafa8626 committed May 9, 2024
1 parent a708f9c commit 83f2a06
Show file tree
Hide file tree
Showing 6 changed files with 22 additions and 6 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ If you need a reference on how to use OpenPlayerJS in some of the most common sc
- [Playing HLS streaming with DRM (Encryption)](https://codepen.io/rafa8626/pen/QZWEVy)
- [M(PEG)-DASH with Ads](https://codepen.io/rafa8626/pen/Xxjmra)
- [Ads playlist (multiple URLs)](https://codepen.io/rafa8626/pen/wvvxbMN)
- [🆕 - Add a custom element (watermark)](https://codepen.io/rafa8626/pen/JjLQNjo)
- [Add a custom element (watermark)](https://codepen.io/rafa8626/pen/JjLQNjo)

### Advanced

Expand Down
8 changes: 7 additions & 1 deletion dist/esm/media/hls.js
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,13 @@ class HlsMedia extends Native {
return levels;
}
set level(level) {
__classPrivateFieldGet(this, _HlsMedia_player, "f").currentLevel = level;
const formattedLevel = Number(level);
if (formattedLevel && formattedLevel > -1) {
__classPrivateFieldGet(this, _HlsMedia_player, "f").loadLevel = formattedLevel;
}
else {
__classPrivateFieldGet(this, _HlsMedia_player, "f").currentLevel = formattedLevel;
}
}
get level() {
return __classPrivateFieldGet(this, _HlsMedia_player, "f") ? __classPrivateFieldGet(this, _HlsMedia_player, "f").currentLevel : '-1';
Expand Down
7 changes: 6 additions & 1 deletion dist/openplayer.js
Original file line number Diff line number Diff line change
Expand Up @@ -4167,7 +4167,12 @@ var HlsMedia = function (_Native) {
return hls_classPrivateFieldGet(this, _HlsMedia_player, "f") ? hls_classPrivateFieldGet(this, _HlsMedia_player, "f").currentLevel : '-1';
},
set: function set(level) {
hls_classPrivateFieldGet(this, _HlsMedia_player, "f").currentLevel = level;
var formattedLevel = Number(level);
if (formattedLevel && formattedLevel > -1) {
hls_classPrivateFieldGet(this, _HlsMedia_player, "f").loadLevel = formattedLevel;
} else {
hls_classPrivateFieldGet(this, _HlsMedia_player, "f").currentLevel = formattedLevel;
}
}
}, {
key: "_create",
Expand Down
2 changes: 1 addition & 1 deletion dist/openplayer.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/openplayer.min.js.map

Large diffs are not rendered by default.

7 changes: 6 additions & 1 deletion src/js/media/hls.ts
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,12 @@ class HlsMedia extends Native {
}

set level(level: string) {
this.#player.currentLevel = level;
const formattedLevel = Number(level);
if (formattedLevel && formattedLevel > -1) {
this.#player.loadLevel = formattedLevel;
} else {
this.#player.currentLevel = formattedLevel;
}
}

get level(): string {
Expand Down

0 comments on commit 83f2a06

Please sign in to comment.