# Étape 17.11 - Son + stabilité du relais Range Windows ## Diagnostic du log 17.10 La vidéo fonctionne réellement en 1920x1080 : ```text 1920 1080 [HD-WINDOWS] vidéo relayée confirmée: 1920x1080 ``` Le son manque parce que la toute première requête audio reçoit : ```text googlevideo HTTP 403 pour bytes=0-10485759 ``` La vidéo finit elle aussi par recevoir un 403 exactement sur des requêtes de 10 MiB. ## Cause importante Notre relais 17.10 envoyait systématiquement des chunks de : ```text 10485760 octets = 10 MiB ``` Le downloader HTTP officiel de yt-dlp ne fait pas cela. Lorsqu'un `http_chunk_size` est configuré, il randomise chaque nouvelle requête entre 95 % et 100 % de la taille cible. La FAQ yt-dlp avertit également que YouTube peut throttler/refuser des requêtes dont la taille dépasse 10 MB. ## Correctif 17.11 Le relais : - plafonne maintenant les requêtes à 9 900 000 octets ; - randomise chaque Range entre 95 % et 100 % ; - force une nouvelle connexion logique par Range ; - en cas de 403/429, retente jusqu'à 4 fois en divisant progressivement le chunk ; - flush le downstream après chaque Range pour éviter le gros buffering lors d'un seek ; - journalise séparément le client et la présence du `pot=` pour vidéo/audio. ## Test Extraire le ZIP à la racine puis : ```powershell cd "D:\07-Logiciels\23-youtube_personal" flutter clean flutter run -d windows ``` Tester uniquement le 1080p avec le son. Logs importants : ```text [HD-WINDOWS][17.11] GVS: videoClient=MWEB videoPOT=true audioClient=MWEB audioPOT=true [HD-RELAY][17.11] upstream OK ... ``` Puis : ```text [HD-WINDOWS] vidéo relayée confirmée: 1920x1080 [HD-WINDOWS] lecture confirmée: 1920x1080 ``` Si un 403 survient encore, la 17.11 affichera désormais les retries et la taille exacte du chunk qui a été refusé.