Bonsoir !
Je suis débutante sur processing et je chercherai à créer une grille contenant des videos de tailles différentes.
les videos s'animeraient indépendamment les unes des autres.
Un peu comme le model suivant mais avec seulement 12 videos.
faut-il que je change les coordonnés des videos une à une ou est-se possible si elles sont importées sous forme de liste ?
Merci par avance !
Hors ligne
Bonjour,
Il est tout à fait possible de lister les vidéos avec les tailles de rendu dans un fichier. Un tableau de d'objet JSON me paraît adéquat :
https://processing.org/reference/loadJSONArray_.html
Il suffit d'éditer le fichier et de modifier les coordonnées ainsi que les tailles respectives.
Ensuite il faut bricoler un lecteur qui décode le fichier JSON et diffuse les vidéos. Voici une proposition :
import processing.video.*; Movie[] tableauVideo; JSONArray donnees; void setup() { size(800, 600); donnees = loadJSONArray("data.json"); tableauVideo = new Movie[donnees.size()]; for (int i = 0; i < donnees.size(); i++) { JSONObject video = donnees.getJSONObject(i); tableauVideo[i] = new Movie(this, video.getString("nom")); tableauVideo[i].loop(); } } void draw() { background(255); for (int i = 0; i < donnees.size(); i++) { JSONObject video = donnees.getJSONObject(i); image(tableauVideo[i], video.getInt("x"), video.getInt("y"), video.getInt("largeur"), video.getInt("hauteur")); } } void movieEvent(Movie m) { m.read(); }
Dans le fichier compressé, tu as tous les éléments pour démarrer ta réflexion.
Dernière modification par Mushussu (2016-01-22 09:11:02)
Hors ligne
Merci beaucoup pour ta réponse, si j'ai bien compris je peux créer le fichier date.json dans processing et renseigner le nom de la vidéo, sa taille et ses coordonnés (faut-il utiliser des thermes spécifique d'ailleurs) ?
Et merci encore !
Hors ligne
De ce genre ça fonctionne ? :
{ "videos": [
{
"id": 0,
"size": "(320,23)",
"name": "Composition 0.mp4"
"coordonés": (0,0,320,23),
},
{
"id": 1,
"size": "(160,11.5)",
"name": "Composition 1.mp4"
"coordonés": (320,0,480,11.5),
},
{
"id": 2,
"size": "(160,11.5)",
"name": "Composition 2.mp4"
"coordonés": (480,0,640,11.5),
},
{
"id": 3,
"size": "(320,11.5)",
"name": "Composition 3.mp4"
"coordonés": (320,11.5,640,23),
},
{
"id": 4,
"size": "(160,23)",
"name": "Composition 4.mp4"
"coordonés": (0,23,160,46),
},
{
"id": 5,
"size": "(160,11.5)",
"name": "Composition 5.mp4"
"coordonés": (160,23,320,34.5),
},
{
"id": 6,
"size": "(320,11.5)",
"name": "Composition 6.mp4"
"coordonés": (320,34.5,640,34.5),
},
{
"id": 7,
"size": "(160,23)",
"name": "Composition 7.mp4"
"coordonés": (0,46,160,69),
},
{
"id": 8,
"size": "(320,23)",
"name": "Composition 8.mp4"
"coordonés": (160,34.5,480,57.5),
},
{
"id": 9,
"size": "(160,23)",
"name": "Composition 9.mp4"
"coordonés": (480,34.5,640,57.5),
},
{
"id": 10,
"size": "(160,11.5)",
"name": "Composition 10.mp4"
"coordonés": (160,57.5,320,69),
},
{
"id": 11,
"size": "(160,11.5)",
"name": "Composition 11.mp4"
"coordonés": (320,57.5,480,69),
},
{
"id": 12,
"size": "(160,11.5)",
"name": "Composition 12.mp4"
"coordonés": (480,57.5,640,69),
} ]
}
Hors ligne
Regarde le fichier data.json que je t'ai fourni pour avoir les bons termes à utiliser.
Hors ligne
Super merci je l'avais pas vu
Hors ligne
Faut- il que les vidéos soient exportées en format particulier, je croit que j'ai un soucis de lecture (chargement).
Hors ligne
Bonsoir,
Pour les formats :
https://processing.org/reference/librar … index.html
Il recommande le format H.264.
Avec quel type de format rencontres-tu des problèmes et sous quel OS tourne Processing ?
Hors ligne
J'ai exporté mes videos en H.264 et J'ai processing 3.0.2
Hors ligne
*3.0.1
Hors ligne
Merci beaucoup pour ton aide en tout cas, j'ai réussis à lancer les videos comme je voulais.
J'aimerais si possible rajouter une interaction avec les touches du clavier (la lettre "a" lancerait la première video, la lettre "b" la deuxième ...) Mais je ne sais pas comment l'incruster au code précédent ?
Hors ligne
Pages: 1