Disons que j'ai un Rpi (B +) et que je veux qu'il agisse comme kiosque, où une vidéo sera lue en boucle en plein écran. La vidéo changera par programme, j'ai donc besoin d'une API pour la contrôler. Je l'ai déjà fait auparavant, sur des machines x86, sans problème, dans une application web (Javascript et HTML5).
Le problème que j'ai, c'est qu'aucun navigateur n'utilise (apparemment) le GPU pour décoder la vidéo. Événement leur navigateur Web qui devrait prendre en charge le «décodage vidéo accéléré par le matériel» ne peut pas lire les vidéos. Je viens d'installer Raspbian (NOOBS) et le navigateur devrait au moins lire la même vidéo que sur la vidéo.
Omxplayer le fait bien fonctionner, mais scintille quand il boucle et montre du texte ("Seek ...").
Comme ce serait un projet qui impliquera environ 400 Raspberry PI (s'il peut faire ce dont j'ai besoin) sur différents emplacements, j'ai vraiment besoin d'une solution solide.
Existe-t-il un moyen d'avoir une vidéo en boucle, accélérée par GPU, sur un navigateur sur RPi?
EDIT: J'ai essayé des vidéos mp4 / h.264 intégrées avec une balise régulière. Chaque navigateur ne parvient pas à lire la vidéo. L'Epiphanie et le Chrome ne montrent qu'une "zone" noire et les contrôles. Pas de vidéo. Midori obtient quelques cadres, mais le dessus du processeur. Youtube / Vimeo échoue également à jouer.
EDIT 2: Après avoir fait une nouvelle installation et réglé la mémoire du GPU à 128 Mo au lieu des 64 Mo par défaut, j'ai réussi à lire une vidéo, en douceur, sur Epiphany. Le CPU n'a pas atteint 100% (70% -95%). Bien que, lorsque j'ai essayé une vidéo Full HD, les performances aient chuté considérablement (<1 FPS) mais que le processeur n'était qu'à 50%, le goulot d'étranglement était probablement la mémoire. Je vais choisir un RPI2 et le tester.
la source
epiphany
engagerait le "décodage vidéo accéléré par le matériel" si quelque chose le permet.Réponses:
Oui, c'est possible, j'ai commencé ce projet il y a quelque temps mais j'ai dû m'arrêter faute de temps.
C'est le meilleur résultat que j'ai pu obtenir (1080p): https://youtu.be/fVM1GRDhXGw . Il est basé sur cette bibliothèque ouverte: https://github.com/carlonluca/pi . Plus d'infos ici .
La démo utilise cette bibliothèque avec WebKit1 dans QtWebKit, tous fonctionnant sans X11. Il semble beaucoup plus difficile de le faire avec WebKit2. Malheureusement la qualité n'était pas parfaite, je ne sais pas s'il est possible de l'améliorer. Cependant, je ne vois pas pourquoi utiliser un navigateur en premier lieu si le désir est simplement de lire une vidéo en plein écran.
Notez que je suis l'auteur du projet, donc je le rapporte juste parce que je le connais. Il peut y avoir un million d'autres approches.
la source