GRIS-UdeM / ControlGris

Spatialization plugin replacement of SpatGRIS
GNU Lesser General Public License v3.0
10 stars 2 forks source link

Relation Trajectory Type et Preset #107

Closed Normandeau closed 4 years ago

Normandeau commented 4 years ago

V110 En ce qui concerne le preset, toujours dans Logic, je crois que le problème est dans la relation entre le Trajectory Type, le Preset et le démarrage de la sequence.

Voici un test

Je mets le Source Link à "Circular" J’enregistre le preset 1 Je mets le Trajectory Type à "Circle Clocwise", je déplace la source 1 (sans enregistrer des automation et sans démarrer la séquence) j’appuie sur preset 1 La source 1 ne revient pas à la position enregistrée dans le preset. Si je démarre la sequence, la source 1 se déplace à la position correcte.

J’ai fait un autre test avec le Trajectory Type "Ellipse Clockwise"

Je mets le Source Link à "Circular" Je mets le Trajectory Type à "Ellipse Clockwise", J’enregistre le preset 1 je déplace la source 1 (sans enregistrer des automation et sans démarrer la séquence) j’appuie sur preset 1 La source 1 ne revient pas à la position enregistrée dans le preset. La trajectoire Ellipse revient à la position enregistrée dans le preset. Si je démarre la sequence, la source 1 se déplace à la position correcte.

départ

Position enregistrée dans le preset 1

après

Sources et trajectoires après que j’ai déplacé la source 1 et que j’ai appuyé sur le preset 1.

J'obtiens la même chose avec tous les autres Trajectory type.

Dans mon cas, avec Logic, aussi si je reviens au Trajectory type Realtime, il faut toujours démarrer la séquence pour avoir la position correcte de la source 1.

Normandeau commented 4 years ago

Est-ce que je peux vous demander d'être très minutieux dans votre description de bogues à partir de maintenant? Simon remplace Olivier à pied levé et je pense que nous devons l'aider à circonscrire les problèmes trouvés au plus près.

Ici par exemple, l'ordre descriptif est erroné et je vous renvoie au manuel pour cela. Sous le titre 4.4.2. Saving Presets: Creating such presets allows you to save and recall the following parameters: • Source positions (Azimuth-Distance-Elevation). These can also be automated.

Parameters that are not saved but can be automated: • Spans • Source Link and Source Link Alt • Presets • Bypass

Parameters that are not saved and not automated, because they are used to automatically generate a trajectory that will be written by the DAW itself: • Source link • Trajectory Type • Dur per cycle • Sec(s)/Beat(s) • Number of cycles dampening • Deviation degrees per cycle • Back & Forth • Activate

La seule information qui est gardée dans les Preset est la position des sources. Donc je ne crois pas que ça soit informatif de placer en premier lieu dans l'ordre des opérations Source Link à Circular par exemple. Ce qu'il faut faire, c'est de placer Source Link à Circular et ensuite de tester toutes les trajectoires afin de valider un même comportement erratique. Puis de remplacer Circular par Fixed Angle et voir si on a le même comportement. et ainsi de suite. En stéréo et en octo. Et dans les quatre séquenceurs. Et de faire ensuite une synthèse, pas juste une liste.

Il faut aussi voir si le comportement de l'utilisateur peut être en cause. Un exemple: si je place les deux sources d'un fichier stéréo à 90˚ et j'enregistre le preset. Puis je choisis Circular Fully Fixed dans les Trajectory Type. Et je bouge la Source 1 et/ou je démarre une trajectoire. Qu'est-ce qui se passe? Les deux sources restent à 90˚. Donc il y a apparence d'un comportement erratique. Pourquoi les deux sources ne se mettent-elles pas à 180˚, selon le mode choisi? Mais est-ce vraiment un bogue? N'est-ce pas plutôt l'utilisateur qui est ici en cause? Si je veux déplacer les sources en Circular Fully Fixed, il n'est pas logique d'enregistrer les deux sources à 90˚, l'un des paramètres niant l'autre, n'est-ce pas?

Je ne dis pas que ce qui est décrit ici n'est pas le reflet d'un bogue, mais simplement que la description de celui-ci n'est pas assez précise pour identifier correctement où ça se passe. On a déjà résolu plus de 100 issues dans ControlGRIS. Les problèmes qu'on trouve à partir de maintenant sont très subtils. Alors svp, testons davantage avant de publier. Je pense que la banque d'heures en réserve pour le travail du GRIS est suffisamment remplie pour faire plus de tests ;-)

NicolaGiannini commented 4 years ago

Bonjour à tous, Je m’excuse pour la confusion et ces descriptions erronées ! Je vais essayer d’être très minutieux dorénavant! J’ai fait des autres tests et je propose une synthèse.

Résumé Si on désélectionne un preset en manipulant une source avec la souris, lorsqu'on rappelle ce preset, les sources ne sont pas positionnées correctement. Cela se produit avec tous les Trajectory Type, sauf Realtime et Drawing. Cela se produit avec tous les Source Link, sauf Delta Lock.

Ce phénomène est lié à ce que Robert a dit hier. https://github.com/GRIS-UdeM/ControlGris/issues/105#issuecomment-629702537

Lorsqu'on sélectionne un preset, et qu'on démarre le playback d'un Trajectory Type qui n'est pas "Realtime", quand on arrête le séquenceur, le preset est toujours sélectionné, même si les sources ne sont pas dans la position enregistrée dans le preset. Pour rappeler le même preset il faut le désélectionner et puis le resélectionner. Cela est probablement lié à l'issue https://github.com/GRIS-UdeM/ControlGris/issues/72 "Le preset position n’est pas rappelé lorsque l’on est déjà sur le même n° de preset"

D'après ce que je comprends, il y a deux façons de désélectionner un preset: 1) Sélectionner un autre preset, ou
2) manipuler une source avec la souris (le numéro 1 dans le cas de sources liées). La façon 1 marche toujours, tandis que la 2 ne marche pas toujours.

Avec les Trajectory Type Realtime et Drawing je peux utiliser les deux façons de désélectionner le preset sans aucun problème.

Avec tous les autres Trajectory Type c'est la première façon qui fonctionne, soit sélectionner un autre preset. Si je manipule une des sources et après je rappelle le preset, les sources ne reviennent pas à la position correcte. Il y a une exception : en sélectionnant Delta Lock comme Source Link, les deux méthodes fonctionnent toujours.

Pour revenir à un fonctionnement correct, il faut passer au Trajectory Type Realtime, comme Robert l'a indiqué hier.

Testé dans Logic et Réaper, avec toutes les combinaisons de Source Link et Trajectory Type.

Normandeau commented 4 years ago

Séquence stéréo, DOME, trois presets Ce que je constate, c'est que bien qu'on puisse rappeler un preset afin de bien repositionner les sources, celles-ci ne se placent pas au bon endroit, quelque soit le preset par ailleurs, et cela dans la plupart des Trajectory Type. Mais elles se repositionnent automatiquement à la bonne place dès que l'on démarre le séquenceur (vérifié dans DP, Logic et Reaper). La situation est bien décrite ci-haut et la conclusion est: il existe une interférence entre le rappel des valeurs des presets et les Trajectory Types autres que Realtime et Drawing et avec tous les Source LInk sauf Delta Lock. Il est clair que pour l'utilisateur, le fait de ne pas voir les sources revenir à la position enregistrée dans le preset est plutôt déconcertant. Et peut certainement apparaître comme un bogue. C'est très certainement un irritant en tout cas! Les séquenceurs semblent enregistrer la position des sources dès qu'on rappelle un preset mais n'affiche pas correctement leur emplacement tant qu'ils ne se mettent pas à Play. Je ne sais pas si c'est possible d'améliorer ce comportement, mais un paragraphe supplémentaire dans le manuel qui s'intitulerait Loading Preset serait certainement bienvenu! Je l'ajoute.

NicolaGiannini commented 4 years ago

J'ai fait des vidéos pour documenter les comportements. Voici le preset 1 (pour référence pour les vidéos)

Preset1

et le preset 2

preset2

1) désélectionner un preset en sélectionnant un autre preset (strategie que dans mon cas marche toujours).

https://www.dropbox.com/s/efzwgsrnaj7zdyo/des1.mov?dl=0

2) désélectionner un preset en manipulant une source (strategie que fonctionne que avec les Trajectory Type Drawing et Realtime et avec le source link Delta Lock) Ici un test avec Source Link Circular et Trajectory Type Circle Clockwise. Donc ici ce strategie ne marche pas.

https://www.dropbox.com/s/fb7pzgbifa23s2y/des2.mov?dl=0

En ce qui concerne le fait de mettre en play la séquence, c’est vrai que si on met en play, les sources reviennent à la position correcte du preset sélectionné, mais dans mon cas c’est que momentané. Si j'arrête la séquence et je sélectionne un autre preset, la position rappelée n'est pas correcte.

Voir la vidéo (à 0.09 je mets en play la séquence)

https://www.dropbox.com/s/tk7slmdm9jl8zfg/play.mov?dl=0

Normandeau commented 4 years ago

Merci Nicola. Tu écris: «Si j'arrête la séquence et je sélectionne un autre preset, la position rappelée n'est pas correcte.» Sauf si tu appuies de nouveau sur Play, n'est-ce pas? C'est ce que j'obtiens quant à moi. Donc c'est conforme au comportement général.

NicolaGiannini commented 4 years ago

Robert, oui absolument ! Si je appuie de nouveau sur Play les sources se mettent à la bonne place.

Et pour ne pas avoir à mettre en Play, il faut revenir au Trajectory Type Realtime.

SamuelBeland commented 4 years ago

1.1.2

Confirmer si réglé.

NicolaGiannini commented 4 years ago

v112 Maintenant les presets sont rappelées de façon correcte, par contre il y a un autre problème que je détaille dans l’issue https://github.com/GRIS-UdeM/ControlGris/issues/114