mirror of
https://github.com/shaka-project/shaka-player.git
synced 2026-06-14 15:56:38 +03:00
feat(UI): Use Mbps notation in resolution selector (#8779)
This commit is contained in:
committed by
GitHub
parent
35124e4071
commit
becf5d329f
+2
-2
@@ -710,7 +710,7 @@ describe('UI', () => {
|
||||
});
|
||||
manifest.addVariant(1, (variant) => {
|
||||
variant.addAudio(1);
|
||||
variant.bandwidth = 200000;
|
||||
variant.bandwidth = 2500000;
|
||||
});
|
||||
});
|
||||
|
||||
@@ -725,7 +725,7 @@ describe('UI', () => {
|
||||
const qualityOptions =
|
||||
Array.from(qualityButtons).map((btn) => btn.innerText);
|
||||
|
||||
expect(qualityOptions).toEqual(['200 kbits/s', '100 kbits/s']);
|
||||
expect(qualityOptions).toEqual(['2.5 Mbps', '100 Kbps']);
|
||||
});
|
||||
|
||||
/**
|
||||
|
||||
@@ -159,7 +159,7 @@ shaka.ui.ResolutionSelection = class extends shaka.ui.SettingsMenu {
|
||||
this.autoQuality.textContent = this.getResolutionLabel_(track, tracks);
|
||||
} else if (track.bandwidth) {
|
||||
this.autoQuality.textContent =
|
||||
Math.round(track.bandwidth / 1000) + ' kbits/s';
|
||||
this.getTextFromBandwidth_(track.bandwidth);
|
||||
} else {
|
||||
this.autoQuality.textContent = 'Unknown';
|
||||
}
|
||||
@@ -414,7 +414,7 @@ shaka.ui.ResolutionSelection = class extends shaka.ui.SettingsMenu {
|
||||
if (track.height && track.width) {
|
||||
span.textContent = this.getResolutionLabel_(track, tracks);
|
||||
} else if (track.bandwidth) {
|
||||
span.textContent = Math.round(track.bandwidth / 1000) + ' kbits/s';
|
||||
span.textContent = this.getTextFromBandwidth_(track.bandwidth);
|
||||
} else {
|
||||
span.textContent = 'Unknown';
|
||||
}
|
||||
@@ -496,8 +496,7 @@ shaka.ui.ResolutionSelection = class extends shaka.ui.SettingsMenu {
|
||||
otherTrack.bandwidth == track.bandwidth;
|
||||
});
|
||||
if (!hasDuplicateBandwidth) {
|
||||
const bandwidth = track.bandwidth;
|
||||
text += ' (' + Math.round(bandwidth / 1000) + ' kbits/s)';
|
||||
text += ' (' + this.getTextFromBandwidth_(track.bandwidth) + ')';
|
||||
}
|
||||
|
||||
if (this.controls.getConfig().showVideoCodec) {
|
||||
@@ -534,7 +533,7 @@ shaka.ui.ResolutionSelection = class extends shaka.ui.SettingsMenu {
|
||||
* @private
|
||||
*/
|
||||
getQualityLabel_(track, tracks) {
|
||||
let text = Math.round(track.bandwidth / 1000) + ' kbits/s';
|
||||
let text = this.getTextFromBandwidth_(track.bandwidth);
|
||||
if (this.controls.getConfig().showAudioCodec) {
|
||||
const getCodecName = (codecs) => {
|
||||
let name = '';
|
||||
@@ -555,6 +554,20 @@ shaka.ui.ResolutionSelection = class extends shaka.ui.SettingsMenu {
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param {number} bandwidth
|
||||
* @return {string}
|
||||
* @private
|
||||
*/
|
||||
getTextFromBandwidth_(bandwidth) {
|
||||
if (bandwidth >= 1e6) {
|
||||
return (bandwidth / 1e6).toFixed(1) + ' Mbps';
|
||||
} else {
|
||||
return Math.floor(bandwidth / 1e3) + ' Kbps';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param {!shaka.extern.VideoTrack} track
|
||||
* @private
|
||||
|
||||
Reference in New Issue
Block a user