mirror of
https://github.com/R0m1k3/xtremflow.git
synced 2026-10-14 18:57:41 +02:00
Lecture TV : plus de saut de 20 s après un silence du panneau
Télémétrie (session de 25 min avec la réserve de 25 s) : un silence du panneau a été absorbé sans coupure (avance 27 → 14,7 s), mais à la reprise le panneau renvoie d'un coup tout le retard. L'avance dépassait alors le seuil de rattrapage (45 s) et le lecteur sautait 20 s de programme — deux fois en une minute. Saut seulement au-delà de 90 s de retard ; liveSync (x1,1 au-delà de 35 s) résorbe l'excédent en douceur. Vidéo déjà vue purgée plus tôt (30 s) pour rester sous le quota du SourceBuffer. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
0539ad857f
commit
6733f80ffd
2 files changed
+27
-3
No files matched your search
@@ -162,6 +162,23 @@ test('live : la réserve visée couvre un silence du panneau de ~18 s', () => {
|
||||
assert.ok(c.liveBufferLatencyMinRemain > PROVIDER_OUTAGE_S);
|
||||
});
|
||||
|
||||
test('live : la rafale de rattrapage après un silence ne fait pas sauter le programme', () => {
|
||||
// Mesuré en prod : après un silence, le panneau renvoie d'un coup tout le
|
||||
// retard ; l'avance a dépassé 45 s et le lecteur a sauté 2 fois de 20 s
|
||||
// (programme perdu). Le retard doit se résorber en douceur (liveSync).
|
||||
const observedPeakAhead = 45;
|
||||
const c = liveMpegtsConfig();
|
||||
assert.ok(c.liveBufferLatencyMaxLatency >= 2 * observedPeakAhead - 10,
|
||||
`saut dès ${c.liveBufferLatencyMaxLatency}s d'avance : la rafale de rattrapage le déclenche`);
|
||||
assert.ok(c.liveSyncMaxLatency < observedPeakAhead,
|
||||
'liveSync doit déjà accélérer avant ce niveau');
|
||||
});
|
||||
|
||||
test('live : la vidéo déjà vue est purgée plus tôt, l\'avance étant plus grande', () => {
|
||||
const c = liveMpegtsConfig();
|
||||
assert.ok(c.autoCleanupMaxBackwardDuration <= 30);
|
||||
});
|
||||
|
||||
test('reprise après coupure : attendre une vraie réserve avant de relire', () => {
|
||||
const calls = [];
|
||||
const listeners = {};
|
||||
|
||||
Reference in new issue
Block a user