2017-06-08 2 views
0

J'ai nginx servant webm fichiers. J'utilise video.js joueur pour regarder des vidéos intégrées sur mon site Web.Comment réduire l'en-tête Content-Range en utilisant nginx serving webm?

Chaque fois que je cherche une vidéo, je dois attendre. Par exemple, si la vidéo dure 40 minutes (76 mb) et que je veux regarder à partir de la 35e minute, je clique sur la barre de durée et j'attends que le navigateur télécharge ~ 10 mb. Après ce morceau chargé, je peux continuer à regarder.

Je cherche la façon de réduire cette taille de morceau à, disons, 1 mb. Parce que je ne veux pas attendre plusieurs secondes/minutes chaque fois que je cherche la vidéo.

De toute façon pour ça? Je crois que nginx est responsable de cela, puisque les fichiers ont servi directement à partir du disque.

J'ai essayé max_ranges 1024000; mais je crois que c'est pour autre chose, parce que rien n'a changé.

Répondre

0

Cela n'a rien à voir avec Nginx. Cela a à voir avec la façon dont votre vidéo est encodée. Tout d'abord, assurez-vous que le conteneur WebM est correctement configuré. Pour cela, utilisez mkclean. Si cela ne résout pas le problème pour vous, vous devrez peut-être réencoder votre vidéo avec plusieurs images clés. Pour cela, vous pouvez utiliser FFmpeg.

+0

Ouais j'ai essayé mkclean. Rien n'a changé après avoir généré un nouveau fichier avec cet outil. En ce qui concerne les images clés .. Je devrais changer la taille GOP, non? Disons, si vous utilisez '-framerate 30', alors utilisez' -g 60'? En conséquence, la taille de morceau devrait être diminuée? – frutality

+0

@JohnDoe GOP taille de 60 est beaucoup faible. Si cela ne fonctionne pas, il peut s'agir d'un problème avec le navigateur. (Chrome est connu pour avoir beaucoup de problèmes ici.) – Brad