Fix player HLS v2
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
<changelog>
|
<changelog>
|
||||||
|
|
||||||
<version>
|
<version>
|
||||||
<number>2.1.3</number>
|
<number>2.1.3 (a)</number>
|
||||||
<logs>
|
<logs>
|
||||||
<log>Implementato il nuovo player audio per la riproduzione dei flussi audio in HLS per il bitrate adattivo.</log>
|
<log>Implementato il nuovo player audio per la riproduzione dei flussi audio in HLS per il bitrate adattivo.</log>
|
||||||
<log>Correzione e bugfix di problematiche varie.</log>
|
<log>Correzione e bugfix di problematiche varie.</log>
|
||||||
|
|||||||
22
js/app.js
22
js/app.js
@@ -360,15 +360,31 @@ document.addEventListener('DOMContentLoaded', function () {
|
|||||||
hlsInstance.on(Hls.Events.MANIFEST_PARSED, function (event, data) {
|
hlsInstance.on(Hls.Events.MANIFEST_PARSED, function (event, data) {
|
||||||
console.log(`HLS Manifest Loaded. Levels: ${data.levels.length}`);
|
console.log(`HLS Manifest Loaded. Levels: ${data.levels.length}`);
|
||||||
|
|
||||||
// Se ci sono più livelli, prova a partire aggressivo se non specificato
|
// Log dettagliato di tutti i livelli disponibili per debug
|
||||||
|
data.levels.forEach((level, index) => {
|
||||||
|
console.log(`Level ${index}: ${level.bitrate} bps (${(level.bitrate / 1000).toFixed(0)} kbps)`);
|
||||||
|
});
|
||||||
|
|
||||||
|
// CRITICAL: Forza partenza dal livello massimo per garantire qualità alta
|
||||||
if (data.levels.length > 1) {
|
if (data.levels.length > 1) {
|
||||||
// Opzionale: Logica custom startLevel se necessario
|
const maxLevel = data.levels.length - 1;
|
||||||
// hlsInstance.startLevel = data.levels.length - 1;
|
hlsInstance.startLevel = maxLevel;
|
||||||
|
console.log(`✓ Forced START level to MAX: ${maxLevel} (${(data.levels[maxLevel].bitrate / 1000).toFixed(0)} kbps)`);
|
||||||
}
|
}
|
||||||
|
|
||||||
attemptPlay();
|
attemptPlay();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Track quality switches per debug
|
||||||
|
hlsInstance.on(Hls.Events.LEVEL_SWITCHING, function (event, data) {
|
||||||
|
console.log(`→ Switching to level ${data.level}...`);
|
||||||
|
});
|
||||||
|
|
||||||
|
hlsInstance.on(Hls.Events.LEVEL_SWITCHED, function (event, data) {
|
||||||
|
const currentLevel = hlsInstance.levels[data.level];
|
||||||
|
console.log(`✓ Switched to level ${data.level}: ${(currentLevel.bitrate / 1000).toFixed(0)} kbps`);
|
||||||
|
});
|
||||||
|
|
||||||
hlsInstance.on(Hls.Events.ERROR, function (event, data) {
|
hlsInstance.on(Hls.Events.ERROR, function (event, data) {
|
||||||
if (data.fatal) {
|
if (data.fatal) {
|
||||||
console.warn('HLS Fatal Error:', data.type);
|
console.warn('HLS Fatal Error:', data.type);
|
||||||
|
|||||||
Reference in New Issue
Block a user