bonjour
est ce que vs sauriez comment récuperer le flux video transitant ds l'openGL
en gros, j'ai un patch ds lequel mes images passent par jit.gl.render pour sortir sur un jit.window
par exple j'aimerai enrgistrer ce flux ...
j'aimerai aussi sortir ce signal video sur une interface firewire externe (canopus) ...
ça vs dit qq chose?
bien à vous
thomas
Hors ligne
Bonjour thomas,
"le flux vidéo transitant dans l'openGL" ????
L'openGL ne gère pas la vidéo sauf en texture d'objet.
Le flux openGL est une matrice de coordonnées d'objet en 3D (voir accessoirement texturé par une vidéo).
"mes images passent par jit.gl.render pour sortir sur un jit.window"
[jit.gl.render] transforme la matrice 3D en matrice vidéo RGB.
[jit.window] affiche la matrice vidéo RGB.
Donc, tu peux enregistrer la vidéo (matrice RGB), sortant de [jit.gl.render], avec l'objet [jit.qt.record].
"j'aimerai aussi sortir ce signal vidéo sur une interface FireWire externe"
L'objet [jit.qt.videoout] existe pour ça.
Si tu veux que je te donne plus de précision, alors, envoie un patch.
Sinon tout ça est amplement documenté dans Max/MSP.
Bonne programmation !
Hors ligne
excusez moi de ne pas être assez clair!
voici donc une image pour vous éclairer :
soit par exple 2 lecteurs video.
les 2 images se distinguent ds un seul écran (jit.window)
"Donc, tu peux enregistrer la vidéo (matrice RGB), sortant de [jit.gl.render], avec l'objet [jit.qt.record]."
c'est exactement ce que je cherche à faire, mais comment? juste en sortie du jit.window?
"L'objet [jit.qt.videoout] existe pour ça."
oui je l'utilise justement pour sortir mon signal, mais presentement, je ne sais ou le brancher ...
thomas
Hors ligne
OK, 2 [jit.videoplane] dans un [jit.gl.render]...
Il faut que tu crées un [jit.matrix nom-matrice] que tu rafraîchiras à chaque image.
Ainsi, tu peux récupérer l'image pour l'enregistrer [jit.qt.record]ou l'envoyer sur du matériel externe [jit.qt.videoout].
Voir l'exemple du patch suivant...
Hors ligne
alors ça a l'air exactement d'être ce que je cherche, sauf que!
il ne peut apparemment pas y avoir ds le même patch un jit.window ayant le même nom que le jit.matrix ... ??
Hors ligne
Et comme ça ?
Hors ligne
super!
vraiment un grand merci à toi!
je collai depuis un moment ladessus, et savais que c'était simple
presque sous mes yeux ....
Hors ligne
Salut dans le meme genre j'aimerai visualiser dans un objet jit.pwindow ce qui sort d'un objet jit.gl.render, j'ai essayé de m'inspirer de ton exemple mais ca donne rien....
cf photo d'écran, une idée ?
Hors ligne
On appelle ça la rasterization.
La solution qui est proposée par pschit fonctionne, c'est celle qu'on utilisait sous Max4.
Avec Max5 il est utile de regarder [jit.gl.asyncread].
L'exemple juste précédent ne marche pas car "baba" existe déjà, la matrice de "readback" (qui permet le procédé de rasterization) doit avoir un autre nom que le contexte, donc pas baba.
Dans l'exemple MATRIX RENDER de pschit, jit.window n'a pas le nom du contexte (lorsqu'on ne donne pas de nom à [jit.window] un nom automatique est généré), et le contexte en l'occurence n'a pas de jit.window qui lui appartient, il n'est pas rendu graphiquement.
Hors ligne