2 votes

Où le lecteur vidéo conserve-t-il les fichiers réseau et pouvez-vous en conserver plusieurs ?

J'ai travaillé avec video_player de Flutter. Je teste principalement des vidéos prises dans le url . Mon code est très similaire à ceux à partir des exemples .
Partout où je lis à ce sujet, je constate que cette bibliothèque ne prend pas en charge la mise en cache des vidéos. Mais qu'est-ce que cela signifie exactement ? Que se passe-t-il exactement en coulisses et comment le comportement changerait-il si la mise en cache était réellement mise en œuvre ? En quoi cela diffère-t-il de la mise en mémoire tampon ? Les fichiers vidéo sont-ils simplement téléchargés sur notre appareil ?
Si oui, alors où sont conservés ces fichiers ?

Une question supplémentaire : comment puis-je vérifier la consommation du réseau causée par l'utilisation de cette connexion ? J'ai essayé d'utiliser Dev Tools mais l'onglet réseau est toujours vide.

Une dernière chose, est-il possible de pré-initialiser les prochaines vidéos, de sorte que lorsque nous voudrons passer de l'une à l'autre, elles seront déjà partiellement préchargées ?

1voto

Mozes ong Points 393

Vous pouvez utiliser un paquet qui vous aide à gérer la mise en cache. futter_cache_manager https://pub.dev/packages/flutter_cache_manager

Vous pouvez l'utiliser en combinaison avec video_player. Cependant, vous devrez d'abord télécharger l'ensemble du fichier pour pouvoir ensuite le récupérer pour video_player pour le consommer.

Une idée serait de diffuser la vidéo en continu et d'en télécharger une copie localement. Cependant, cela consommerait plus de données que de télécharger et de mettre en cache la vidéo d'abord, puis de la lire localement.

Quant à la façon de vérifier la consommation du réseau, je ne suis pas sûr.

0voto

Piotr Points 53

Commençons par la théorie :

Le cache est une zone de stockage à grande vitesse tandis que le tampon est une zone de stockage normale sur la RAM pour le stockage temporaire.

Le cache est constitué de mémoire vive statique, qui est plus rapide que la mémoire vive dynamique, plus lente, utilisée pour le tampon.

Le tampon est principalement utilisé pour les processus d'entrée/sortie, tandis que le cache est utilisé pendant les processus de lecture et d'écriture sur le disque.

Le cache peut aussi être une section du disque alors qu'un tampon n'est qu'une section de la RAM.

5.un tampon peut être utilisé dans les claviers pour corriger les erreurs de frappe alors que le cache ne le peut pas.

Pour ce qui est de la mise en mémoire tampon des vidéos, il suffit de regarder l'application YouTube. Vous pouvez voir que la mémoire tampon est créée lorsque la ligne grise grossit avant la ligne rouge. La plupart des informations stockées de cette manière ne sont pas du tout accessibles car Android utilise une combinaison d'allocation de RAM pour la mise en cache et la mise en mémoire tampon, comme il le juge nécessaire pour le processus actif en cours.

Techniquement, vous pourriez essayer de précharger différentes vidéos en les lançant et en les mettant en pause toutes en même temps, mais je ne peux pas imaginer à quel point il faudrait trafiquer le contrôle de la mémoire du système, même YouTube ne fonctionne pas comme ça.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X