2.1 KiB
Étape 17.15 - Cache progressif yt-dlp web_embedded
Diagnostic confirmé
Le test manuel complet a réussi :
format 299
361.06 MiB
100 %
24 secondes
Le format audio 251 avait déjà réussi intégralement :
10.88 MiB
100 %
Cela prouve que le téléchargement web_embedded fonctionne réellement pour
les deux pistes avec yt-dlp nightly.
En revanche, le log 17.14 montre que libmpv échoue dès qu'on lui donne directement l'URL googlevideo.
Architecture 17.15
On ne donne donc plus aucune URL googlevideo web_embedded à libmpv.
yt-dlp nightly web_embedded
↓
fichier vidéo temporaire qui grandit
fichier audio temporaire qui grandit
↓
serveur 127.0.0.1 intégré
↓
media_kit / libmpv
Les deux téléchargements yt-dlp démarrent en parallèle.
Le lecteur n'attend pas forcément le téléchargement complet : le serveur local lit les fichiers pendant qu'ils grandissent.
Si mpv demande une zone située plus loin lors d'un seek, le serveur attend simplement que yt-dlp ait téléchargé cette zone.
Formats
Pour la vidéo de validation :
1080p60 : vidéo 299 AVC + audio 251 Opus
1440p60 : vidéo 308 VP9 + audio 251 Opus
2160p60 : vidéo 315 VP9 + audio 251 Opus
Test
Extraire le ZIP à la racine puis :
cd "D:\07-Logiciels\23-youtube_personal"
flutter clean
flutter run -d windows
Tester 1080p + son.
Logs attendus :
[HD-WINDOWS][17.15] priorité web_embedded via cache yt-dlp progressif
[HD-CACHE][17.15] lancement yt-dlp video format=299
[HD-CACHE][17.15] lancement yt-dlp audio format=251
[HD-CACHE][17.15] actif sur 127.0.0.1:...
[HD-WINDOWS][17.15] vidéo cache confirmée: 1920x1080
[HD-WINDOWS][17.15] audio cache attaché: format=251 codec=opus
[HD-WINDOWS][17.15] lecture AV cache confirmée: 1920x1080
Le téléchargement peut démarrer avec quelques secondes d'attente imposées par YouTube/yt-dlp, comme dans le test manuel où yt-dlp a affiché :
Sleeping 6.00 seconds as required by the site...
Une fois le 1080p + son validé, tester le 2160p.