Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2011-11-29 00:18:09 sauvegarde adresse

bouclettes
membre
Lieu: 74/93
Date d'inscription: 2011-09-30
Messages: 67

sauvegarde adresse



Salut à tous,

j'essaye actuellement (et laborieusement) de me créer un patch pour pouvoir effectuer des régies de spectacle simples: charger des morceaux, les organiser selon la conduite du spectacle, les jouer. Une sorte de Live simplissime mais opensource!
ça a sûrement été déjà fait, en bien mieux mais bon. ça me fait avancer sur PD.
Ceci dit, je bloque sur un truc en particulier, la sauvegarde des morceaux chargés. Je les charge avec [openpanel] dans [readsf~] mais une fois le patch fermé, à la réouverture les morceaux ne sont bien évidemment plus là.
Existe-t-il un objet qui garde en mémoire une adresse même après fermeture du patch et de PD? Parce que sans cette possibilité, ça devient assez vide de sens.

Je joins une version loin d'être ce que je souhaiterais (et surtout bien bordelique) mais qui fonctionne et qui donne peut-être une meilleure idée du truc! Et puis si ça peut servir...

Merci

bouclettes

Hors ligne

 

#2 2011-11-29 01:24:05 Re : sauvegarde adresse

bouclettes
membre
Lieu: 74/93
Date d'inscription: 2011-09-30
Messages: 67

Re: sauvegarde adresse



Avec la pièce jointe... roll

Hors ligne

 

#3 2011-11-29 09:01:45 Re : sauvegarde adresse

nononononono
membre
Lieu: Toulouse
Date d'inscription: 2011-02-04
Messages: 614

Re: sauvegarde adresse



Salut;
Tu peut faire un [loadbang]-->>(chemin_du_fichier_relatif_au_patch)-->>[symbol]-->>[openpannel]
Tu peux aussi enregistrer tes modifs dans un fichier texte avec[textfile],[qlist], ou bien[coll], je te laisse regarder les fichiers help pour bien comprendre...

Hors ligne

 

#4 2011-11-29 10:00:56 Re : sauvegarde adresse

André Sanfrappé
membre
Date d'inscription: 2011-06-11
Messages: 80

Re: sauvegarde adresse



module sssad

Hors ligne

 

#5 2011-11-29 11:56:01 Re : sauvegarde adresse

oli44
membre
Lieu: Notre Dame des Landes
Date d'inscription: 2008-04-25
Messages: 585
Site web

Re: sauvegarde adresse



Salut Bouclettes,

il y a énormément de solutions. Si tes fichiers ne dépassent pas une limite de quelques minutes, tu peux utiliser le sampler des mtl abstractions, basé sur les arrays de Pd, que tu charges une fois au début, éventuellement avec un rechargement au début si tu dépasses la capacité en mémoire de ta machine, et que tu peux gérer par messages OSC, midi etc. Il sauvegarde tes niveaux, les pentes etc.  Par contre, il bloque ta machine au chargement (problème inhérent à l'objet arrays de Pd).

L'autre solution, plus pragmatique, que j'utilises le plus souvent, et qui te permettrait de ne pas perdre  le travail que tu as déjà réalisé, mais simplement de le réorganiser, serait d'appliquer l'architecture MVC à savoir Modèle Vue Contrôleur, à ton patch. Concrètement, cela signifie tu écris dans plusieurs patchs les fonctionnalités que tu as ici regroupées dans un seul, et que tu les fais communiquer entre eux par netsend/OSC/midi/pots de yaourts avec une ficelle.

En premier lieu, tu auras le Modèle , qu'on pourrait appeler le Moteur, ici tout ce qui tourne autour de [readsf~] (tu devrais d'ailleurs jeter un oeil à [readanysf~] d'August Black, qui fait ce qu'il dit!).

Ensuite, tu as la partie Contrôleur. C'est là que tu vas stocker les noms des fichiers que tu veux stocker (avec ssssad, coll, txt, qlist, BDD JSON, communication avec Python etc.) et organiser ce qu'on appelle des cues, des commandes d'actions pour le ou les Modèles. C'est également là que tu traites l'interaction homme-machine, en clair, que tu décides comment interpréter des clics, des notes ou contrôleurs Midi, des signaux de fumée, la reconnaissance de forme d'une caméra infrarouge, un marqueur quelconque.

Enfin, tu as la partie Vue ou Visualisation. Chaque fois que le Modèle reçoit un cue du Contrôleur, son état interne est modifié (ou pas en cas d'échec, fichier non trouvé par ex.). Il va alors envoyer à la Visualisation une mise à jour de son état, que la Vue va refléter. Typiquement, tu vas afficher le nom du fichier en lecture, la position de la tête de lecture, si il est mode boucle, oneshot etc. Tu peux également afficher la charge processeur, le niveau de liquide de freins.

En pratique, les parties Vue et Contrôleur sont souvent imbriquées, surtout quand tu as un écran tactile ou que tu travailles à la souris, ou que tu travailles avec une Réactable. Ce qui est important, c'est d'être conscient de cette architecture et de l'implémnter au niveau du code.

Personnellement, j'ai choisi de confier ma partie Contrôleur à du matériel externe au PC, entre autres pour envoyer des cues cf le super vieux truc de coller des bouts de scotch transparent avec dessous une icône ou du texte sur les notes d'un clavier midi ou les touches d'un clavier AZERTY, avec derrière des gates pour éviter de renvoyer 2 fois le même cue. C'est assez chouette entre autres parce que tu peux trouver tes repères dans la quasi obscurité sans avoir un écran de PC qui t'oblige à faire le focus loin de la scène et qui peut t'aveugler même régler au plus bas. Et puis c'est très chiant de manipuler une souris debout, comme on l'est souvent en conduite de spectacle.

Mais ta partie Contrôleur peut également être les messages issus de la Firmata d'un Arduino, venir d'un autre PC, d'un programme comme Gamuza.

Ce genre d'architecture a beaucoup d'avantages:
* tu peux faire du pseudo multithreading surtout avec un core i7
* si tu as la discipline de t'optimiser une bonne fois pour toute ton Modèle/Moteur, tu as moins de crashes
* si tu as la discipline de t'optimiser une bonne fois pour toute ton Modèle/Moteur et sa Visualisation, pour les spectacles suivant tu ne te préoccupes que du Contôleur (gain de temps et d'énergie)
*  si tu as la discipline de toujours isoler tes modifs de code à l'intérieur d'une partie seulement, tu répares les bugs plus facilement
* cela permet d'utiliser plusieurs programmes dans la même architecture, p.ex Supercollider pour le modèle audio, Pd pour le Contrôleur et Processing pour la Vue
* cela permet d'avoir une architecture décentralisée où tu as plusieurs Contrôleurs, plusieurs Modèles qui actualisent tous différentes Vues à différents endroits physiques, cela permet de se faire des télécommandes avec libPd sur ton téléphone par exemple, pour aller régler le son en salle et pas depuis la cabine, ou faire le focus de la lumière depuis le plateau, ce qui va plus vite. En conduite, cela permet au vidéaste d'avoir son affichage perso de ce qui se passse sur la machine qui gère le son ou la lumière, sans devoir être obligé de demander en chuchotant dans le noir "Tu es à quel cue?"
* cela permet progressivement de se passer d'une techno propriétaire le temps que l'équivalent libre mûrisse. Ex: pour la vidéo, tu utilises Pd, mais pour le son tu utilises encore Live. Si tu isole Live dans un Modèle audio, avec lequel tu communiques en Midi, tu as le temps de te programmer ton Modèle audio et la vue qui va bien avec Pd qui comprendras les mêmes messages que Live. Du coup,
tu gardes le même Contrôleur, tu n'as pas à tout réorganiser.
* cela permet de frimer dans les repas en ville en annonçant que tu as une régie MCV, ou MVC, enfin je sais plus... Buvons un coup, même s'il est pas encore midi...


La route est longue mais la voie est libre

Hors ligne

 

#6 2011-11-29 12:13:02 Re : sauvegarde adresse

bouclettes
membre
Lieu: 74/93
Date d'inscription: 2011-09-30
Messages: 67

Re: sauvegarde adresse



Merci pour vos réponses!

nononononono, effectivement, ça marche bien avec coll. Je l'avais survolé et pas noté qu'on pouvait aussi enregistrer les listes dans un fichier texte. Chouette, ça résout mon problème!

André, je n'arrive pas à mettre la main sur le module sssad dans les extra de pd. je vais chercher sur le net.

oli44, je n'ai pas encore pris le temps de te lire en détails mais cette histoire d'architecture me semble carément intéressante. SUrtout pour frimer en ville! je vais m'y pencher au plus vite.
Si je comprends bien, ça ressemble un peu à l'idée que j'avais au début: faire des modules spécialisés sous forme d'abstractions. Je pensais en faire un pour le transport (play, stop, scene sel), un pour la playlist et un pour le mix (niveau, pan, vu). J'éspèrais pouvoir ainsi faire plusieurs pistes et me rapprocher un peu des capacités d'un Live. Mais je vous aurai encore posé quelques questions avant d'avoir fini!

bouclettes

Hors ligne

 

#7 2011-11-29 16:37:03 Re : sauvegarde adresse

André Sanfrappé
membre
Date d'inscription: 2011-06-11
Messages: 80

Re: sauvegarde adresse



http://puredata.hurleur.com/sujet-1531- … ave-module


c bien fait
surtout lorsqu'on a compris !!!

Hors ligne

 

#8 2011-11-29 20:41:27 Re : sauvegarde adresse

dwan
membre
Date d'inscription: 2011-01-24
Messages: 307

Re: sauvegarde adresse



(une petite parenthèse pour vous informer de l'existence de LiveOSC, qui permet -qui l'eût cru- de contrôler Live en OSC et de contrôler d'autres trucs en OSC depuis Live : http://liine.net/livecontrol/ableton-liveapi/liveosc/ )

Hors ligne

 

#9 2011-12-11 23:14:40 Re : sauvegarde adresse

bouclettes
membre
Lieu: 74/93
Date d'inscription: 2011-09-30
Messages: 67

Re: sauvegarde adresse



Re,

du coup j'ai refait tout mon patch avec ces nouvelles infos. Oli44, j'ai essayé de partir sur cette architecture MVC mais j'ai eu du mal à saisir les limites de chaque partie, notamment entre VU et contrôle. Du coup, c'est toujours un seul et même patch.
J'y ai remplacé [readsf~] par [readanysf~] qui est vraiment très bien du fait notamment des nombreuses infos qu'il donne sur le fichier et sur les possiblités de contrôle qu'il offre (pitch, pause, etc...)
Mais après avoir essayé quelques fois le nouveau patch mon ordi s'est mis à ventiler plutôt fort, ce qui ne m'était pas habituel durant l'utilisation de Pd. Et sur certains fichiers, readanysf fait carément planter Pd laissant le ventilo fonctionner même lorsque je n'utilisais plus l'ordi (un macbook pro en l'occurence) pendant un bout de temps.
Après recherche dans le moniteur d'activité, des occurences de Pd étaient encore en fonctionnement après fermeture forcée du logiciel. Et une fois quittées, le ventilo se calme.

Avez-vous déjà eu des soucis avec readanysf~? Avez-vous une idée d'où cela peut provenir? Y a-t-il des formats de fichier, des noms de fichiers qu'il ne supporte pas?

Merci de votre aide.

bouclettes

Hors ligne

 

#10 2011-12-12 12:58:10 Re : sauvegarde adresse

oli44
membre
Lieu: Notre Dame des Landes
Date d'inscription: 2008-04-25
Messages: 585
Site web

Re: sauvegarde adresse



Readanysf~ fonctionne depuis plusieurs années sur une radio en ligne sans souci (http://metaminafnr.hotglue.me/).

Tu peux essayer ce bout de script bash au cas où tu as des instances de pd qui restent chargées même si l'interface graphique a planté (c'est ce qui a dû t'arriver , il y a pd et pd-gui lancé simultanément)

ps -e | grep pdextended 2>&1 > /dev/null
if [ $? -eq 0 ] ; then
    echo "Let's kill Puredata!"
    echo
    killall -9 pd
fi

Pour la liste des formats de fichiers supportés, tout est sur le site de gmerlin

http://gmerlin.sourceforge.net/avdec_frame.html

Dernière modification par oli44 (2011-12-12 13:02:34)


La route est longue mais la voie est libre

Hors ligne

 

#11 2011-12-13 00:23:21 Re : sauvegarde adresse

bouclettes
membre
Lieu: 74/93
Date d'inscription: 2011-09-30
Messages: 67

Re: sauvegarde adresse



Merci pour les infos, chouette la radio sous pure data!!
Mais le plantage persiste. Sur un fichier en particulier, un son que j'ai enregistré, pas récupéré sur internet.
C'est un son aiff, rien de particulier mais quand je le lis avec readanysf, il le lit une fois et Pd plante. Je suis obligé de le forcer à quitter et ensuite d'aller fermer l'instance de pd toujours présente dans le moniteur d'activité et qui monopolise le processeur.
Il suffit que j'ouvre ce fichier sous audacity, que je le réexporte au même format sans rien modifier et il peut être lu correctement.
Problème d'encodage? J'aimerais bien comprendre pour savoir comment éviter de planter pure data en pleine régie.

Hors ligne

 

#12 2011-12-13 11:23:26 Re : sauvegarde adresse

oli44
membre
Lieu: Notre Dame des Landes
Date d'inscription: 2008-04-25
Messages: 585
Site web

Re: sauvegarde adresse



Les problèmes de fichiers son ou vidéo corrompus sont légion. La solution que tu as trouvée est la meilleure. Parfois un bloc est mal écrit, et cela peut suffire à créer des plantages. Avec Gem, pour les fichiers vidéos, en général, il te relit le précédent fichier et met une erreur dans la console.

Si Pd plante avant que tu ais le temps de voir un message d'erreur s'afficher, tu peux démarrer ton patch depuis un terminal avec l'option -stderr .  Il ya également un external de Mathieu Bouchard nommé segfault qui te donne les résultats du crash en détail.

http://markmail.org/message/v3fmcw5flsllfbif


La route est longue mais la voie est libre

Hors ligne

 

#13 2011-12-13 21:06:25 Re : sauvegarde adresse

bouclettes
membre
Lieu: 74/93
Date d'inscription: 2011-09-30
Messages: 67

Re: sauvegarde adresse



OK c'est l'impression que j'avais. Merci, au moins j'ai une petite idée d'où peuvent venir les problèmes. Et puis de toute façon, pour une régie je pourrai tester les fichiers en amont et là pas de surprises.
Par contre il va falloir que je planche un peu sur l'informatique pour pouvoir utiliser les solutions que tu m'as donné!!

Un pas de plus vers une régie opensource!!
A tout hasard je joins le patch. Je prends volontiers les conseils, les critiques.
Il n'est pas fini, certaines choses ne fonctionnent pas comme je voudrais et quelques sous patch ne sont pas achevés.
Et puis sait-on jamais, il y a peut-être quelqu'un que ça intéressera, tout ou partie.


bouclettes

Hors ligne

 

#14 2011-12-14 11:43:21 Re : sauvegarde adresse

oli44
membre
Lieu: Notre Dame des Landes
Date d'inscription: 2008-04-25
Messages: 585
Site web

Re: sauvegarde adresse



C'est tissé proprement, les cordes sont droites :-)

Il manque une abstraction nommée [transport] je crois.
tu pourrais également ajouter un fichier .coll de démo?

tu devrais ajouter [import unauthorized] afin que [spigot~] oit chargé automatiquement (ou encore utiliser [unauthorized/spigot~] à la place). [equal_power_pan] sort d'où? Pas vu dans mapping ni hcs ni flatspace....

Tu gagnerais à utiliser des abstractions surtout dans [pd stockage temporaire]

++

Dernière modification par oli44 (2011-12-14 11:48:47)


La route est longue mais la voie est libre

Hors ligne

 

#15 2011-12-14 12:43:19 Re : sauvegarde adresse

bouclettes
membre
Lieu: 74/93
Date d'inscription: 2011-09-30
Messages: 67

Re: sauvegarde adresse



un petit côté psycho-rigide en effet smile

l'abstraction transport sert pour les 2 voies, elle lance ou arrête la lecture d'une scène et pas seulement d'une voie. Je dois avouer que je me suis pas mal inspiré de Live.

import unauthorized ajouté! Par contre, euh..., equal_power_pan~... je serai bien incapable de te dire où il se trouve.

Pour les abstractions, tu veux dire que ça me simplifierait l'écriture du patch?

Merci pour le coup d'oeil!

bouclettes

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024