En supposant que nous avons un Surface
dans Android qui affiche une vidéo (par exemple H264) avec un MediaPlayer:vidéo dans Android: modifier les propriétés visuelles (par exemple, la saturation, la luminosité)
1) Est-il possible de changer la saturation affichée, contraste & luminosité de l'affichage sur la surface vidéo? En temps réel? Par exemple. Les images peuvent utiliser setColorFilter
est-il quelque chose de similaire dans Android pour traiter les images vidéo?
question alternative (si pas 1 est trop difficile.): Si nous voulons exporter cette vidéo avec par exemple
2) une saturation accrue, nous devrions utiliser un codec, par ex. MediaCodec
. Quelle technologie (méthode, classe, bibliothèque, etc ...) devons-nous utiliser avant l'action codec/save pour appliquer le changement de saturation?
Voulez-vous une bibliothèque prête à l'emploi qui peut manipuler la vidéo pour l'affichage (comme dans la réponse ci-dessous), ou avez-vous d'autres exigences qui ne le permettent pas? Le projet lié dans la réponse montre l'utilisation d'un 'GLSurfaceView' avec un' MediaPlayer' et l'application de shaders OpenGL pour effectuer le filtrage sur l'affichage. C'est certainement une approche raisonnable si vous n'avez pas besoin d'exporter la vidéo filtrée. D'où vient votre 'Surface' à partir de maintenant? – Dave
Salut @Dave, j'étudie actuellement comment il est possible à la fois d'ajuster la vidéo affichée (généralement en surface) mais aussi d'exporter la vidéo ajustée. Donc je n'ai pas de 'Surface' concrète - c'est ce que je cherche :) – Diolor