Myriad Forum « Script "Appogiatures" »
 Welcome, Guest.
 You can read all messages, but to be able to post,
 please Login or Register.
Dec 18th, 2017, 12:13pm 
   Myriad Forum
   MyrScript Language
(Moderator: Forum Administrator)
   Script "Appogiatures"
   
« Previous topic | Next topic »
Pages: 1 2  Reply | Notify of replies | Print
   Author  Topic: Script "Appogiatures"  (Read 981 times)
Daniel Frouvelle
Board Master
*****






   
WWW | Email

Gender: male
Posts: 1362
Re: Script "Appogiatures"  
« Reply #15 on: Nov 19th, 2017, 12:09pm »
Quote | Modify

Bonjour mizushima, ça devrait être bon avec cette colonne supplémentaire, très bonne idée! Le décalage affichage/durée est rectfié. Tout cela est à tester.
On peut charger la version 8
Amistats, Danièl.
« Last Edit: Nov 20th, 2017, 12:22am by Daniel Frouvelle » offline
mizushima
Board Junior Member
**






   
WWW | Email

Gender: male
Posts: 94
Re: Script "Appogiatures" V8  
« Reply #16 on: Nov 19th, 2017, 8:23pm »
Quote | Modify

La première ouverture, j'ai eu ce bogue sur la nouvelle colonne :

après redémarrage, le même bogue aussi sur la colonne affichage, puis au 3e redémarrage, après avoir testé les autres boutons, le bogue a disparu, mais en règlant la ligne suivante, j'ai le même bogue avec [on a nil value...line 31], mais sur les colonnes [hauteur relative] pas de bogue.
 
A part ça, en modifiant la colonne [Affichage (en fraction de noire)], la colonne [Durée] prend la valeur 32768, mais se modifie bien à la molette de 8 à 256, mais quand je tourne la molette très vite pour accélérer, la valeur revient aux alentours de 20, c'est aléatoire.
Il serait peut-être bien de prévoir si possible, une combinaison de touches pour varier de 10 en 10, ou donner automatiquement la valeur (puissance de 2) correspondant à l'affichage au moment où on modifie ce dernier, puis affiner dans la colonne durée, sachant qu'après validation, il est toujours possible de modifier manuellement [Longueur affichée] de l'appoggiature qui n'est qu'un élément graphique, et donc sans que ça affecte les autres paramètres : durée, retard et appui.
Pas testé le reste pour l'instant.
 
Merci
 
P.s. : je vais supprimer les détails sur l'erreur de mise à jour puisque c'est réparé et que ce n'est pas un bogue  
« Last Edit: Nov 19th, 2017, 8:56pm by mizushima » offline

mizushima pepitokun quad baryton agogo...
Daniel Frouvelle
Board Master
*****






   
WWW | Email

Gender: male
Posts: 1362
Re: Script "Appogiatures"  
« Reply #17 on: Nov 19th, 2017, 11:09pm »
Quote | Modify

Les problèmes que tu soulèves sont à priori dûs à la configuration du fichier de mémorisation des paramètres, par l'introduction du nouveau paramètre (la durée en 256e de noire). Cela devrait être corrigé dans la nouvelle version, lorsque tu entres de nouvelles valeurs.
Question molette sur la colonne [Durée], on peut faire Maj + molette pour incrémenter de 8. La molette très vite c'est arrangé aussi.
J'ai également rajouté 'Maj+molette' dans la colonne [Affichage] pour ajuster en même temps la durée (molette seule ne modifie pas la durée).
On approche du but...
On peut charger la version 10
Amistats, Danièl.
« Last Edit: Nov 21st, 2017, 7:44pm by Daniel Frouvelle » offline
mizushima
Board Junior Member
**






   
WWW | Email

Gender: male
Posts: 94
Re: Script "Appogiatures"  
« Reply #18 on: Nov 21st, 2017, 12:30am »
Quote | Modify

Bravo !
 
J'adore :
 
- calage de la durée correspondant à la fraction d'affichage supprimé dans la version 10, et c'est bien aussi comme ça car je pense que la durée réelle des appoggiatures sera rarement celle correspondant à l'affichage, donc partir de la proposition par défaut à la création d'une nouvelle ligne dans le script, soit 1/8 et 32 (triple-croche), mais rester libre des les modifier indépendamment
- [Maj+molette] pour modifier la durée par 8
 
maintenant il faudrait aider à ce qu'une appoggiature anticipée (pour dire qu'elle est interprétée avant la position rythmique de la note) prenne en compte aussi le fait que la note précédente ait aussi une appoggiature anticipée, exemple :
 
si je pose sur une noire une appoggiature anticipée de 10 notes de durée 8/256e de noire, la noire porteuse aura un retard de 10x8=-80/256e de noire, et un appui de 80/256=31% (arrondit) soit 131%
maintenant si je fais la même chose sur la noire suivante, elle va aussi tenir compte de la note précédent et lui soustraire les 31% (dont elle a besoin pour faire jouer ses appoggiatures anticipées, et s'il n'y a pas au moins un silence de 80/256e de noire avant).
Mais actuellement elle ne tient pas compte que la note précédente a aussi des appoggiatures anticipées et donc aussi (dans notre cas) un appui de 131%, et elle règle l'appui de la note précédente sur 100-31=68% (à cause de arrondit), alors qu'il faut soustraire les 31% à 131% et toujours dans notre cas obtenir un résultat de 131-31=100% (le premier effet s'annulant pas similitude).
Je viens de tester le cas inverse : ajouter une appoggiature anticipée sur une note suivie par une note aussi chargée d'appoggiatures devra tenir compte du retard de cette note suivante.
 
Pour résumer, la pose d'appoggiatures anticipées sur une note doit tenir compte de 2 paramètres : l'appui réel de la note précédente, et le retard de la note suivante.
 
Autre petite question insignifiante, l'application de ton script ne fonctionne qu'avec les sélections continues, et non pas avec les sélections discontinues [Maj+Clic], mais c'est peut être normal car ça ne pourrait poser des appoggiatures sur plusieurs notes.
 
 
« Last Edit: Nov 21st, 2017, 12:54pm by mizushima » offline

mizushima pepitokun quad baryton agogo...
Daniel Frouvelle
Board Master
*****






   
WWW | Email

Gender: male
Posts: 1362
Re: Script "Appogiatures"   AideAppogiatures.zip
« Reply #19 on: Nov 21st, 2017, 7:39pm »
Quote | Modify

Quote:
la pose d'appoggiatures anticipées sur une note doit tenir compte de 2 paramètres : l'appui réel de la note précédente, et le retard de la note suivante.
Dans ces cas on est bien tenu de modifier l'appui (qui dépend du retard) de la note précédente. Pour"simplifier" je détecte le retard de la note précédente et de la suivante, et je suppose que ces notes "remplissent" le temps où elles jouent (pas de discontinuité dans le son). Si la note précédente présente un appui qui laisse un "trou" dans le son, cela serait difficilement ajustable, d'autant que si on intervient plusieurs fois avec le script sur la même note (par tâtonnements) on risque d'avoir des complications, ou alors faire une usine à gaz dans le code... Je crois qu'on ne sera pas à l'abri des cas particuliers... quoi qu'il en soit le dispositif a l'air de fonctionner avec les tests que j'ai faits.
Le script fonctionne aussi maintenant sur la première note sélectionnée individuellement. Quote:
ça ne pourrait poser des appoggiatures sur plusieurs notes.
Ça peut se faire, si plusieurs notes "veulent" la même appogiature, penses-tu que cela puisse être utile?
Merci pour ton analyse claire et précise.
AVAILABLE IN APPROXIMATE ENGLISH si quelqu'un de compétent veut jeter un coup d'oeil sur le fichier joint, qui correspond aux textes d'aide du script (changer l'extension zip en txt) et me renvoyer les corrections je suis preneur...
On peut charger la version 11  
Amistats, Danièl.
« Last Edit: Nov 25th, 2017, 8:55am by Daniel Frouvelle » offline
mizushima
Board Junior Member
**






   
WWW | Email

Gender: male
Posts: 94
Script "Appogiatures" version 11  
« Reply #20 on: Nov 22nd, 2017, 11:37am »
Quote | Modify

version 11
 
1 - poser une appoggiature anticipé sur la première note de la partition ne fonctionne plus : avant il y avait un message d'erreur mais l'appoggiature était tout de même bien posée
2 - l'appui de la note précédente n'est plus bien réglé comme avant, exemple : je pose une appoggiature de 10 notes de 8/256e de noire = 80/256e pour compenser, un appui de 80/256=31%+100%=131%, dans la version 11 la note précédente sans appoggiature appui 100% prend un appui de 131% alors que ça devait être 100-31=68% (arrondit)
3 - la sélection discontinue fonctionne bien, c'est juste que c'est plus claire pour moi car la sélection continue est parfois capricieuse et déplace la note au lieu de la sélectionner. Mais je ne pense pas qu'il soit utile de pouvoir poser plusieurs appoggiature en même temps.
4 - au risque de me tromper énormément, je ne pense pas qu'il soit nécessaire de prendre en compte le retard de la note précédente mais seulement sa valeur de base et son appui, mais je ne suis pas encore sûr des calculs à faire, surtout pour les cas particuliers, exemple : si la note précédente est une croche suivie d'un soupir, aucun appui ne serait nécessaire vu qu'il y a suffisamment de silence (128/256e) pour absorber les 80/256e de retard. Je vais bien réfléchir et reviendrais quand j'aurai trouvé la solution
« Last Edit: Nov 22nd, 2017, 11:40am by mizushima » offline

mizushima pepitokun quad baryton agogo...
bubu42
Board Master
*****





   


Gender: male
Posts: 8582
Re: Script "Appogiatures"  
« Reply #21 on: Nov 22nd, 2017, 2:30pm »
Quote | Modify

J'ai édité le fichier d'aide et je n'y ai pas trouvé d'erreur particulière.
offline
Daniel Frouvelle
Board Master
*****






   
WWW | Email

Gender: male
Posts: 1362
Re: Script "Appogiatures"  
« Reply #22 on: Nov 22nd, 2017, 8:44pm »
Quote | Modify

Bonjour mizushima, Quote:
au risque de me tromper énormément, je ne pense pas qu'il soit nécessaire de prendre en compte le retard de la note précédente mais seulement sa valeur de base et son appui,
   De mon côté voici comment je raisonne, à partir des durées:

l'appui sera 100*(durée totale de la note y compris son retard)/(durée de référence de la note)
La première note a un début de jeu théorique à l'instant T1, une fin de jeu théorique à l'instant T2 si elle est jouée avec un appui de 100%
La deuxième note a un début de jeu théorique à l'instant T2, une fin de jeu théorique à l'instant T3 si elle est jouée avec un appui de 100%
c'est le cas pour les deux notes en haut du dessin.
   Je pose une appogiature "anticipée" sur la deuxième note j'obtiens le 2e dessin:
L'appui de la note 1 sera 100*(Durée1-Retard2)/Durée1 celui de la note 2 100*(Durée2+Retard2)/Durée2
Si la note 1 a elle-même un retard (3e dessin) l'appui de la note 1 sera 100*(Retard1+Durée1-Retard2)/Durée1
Si la note qui suit la note 2 a également un retard -négatif-, l'appui de la note 2 sera 100*(Retard2+Durée2-Retard3)/Durée2 etc...
    Il faut prendre garde que le retard dans ce cas est négatif (d'où mon erreur dans la version 11, qui devrait être corrigée )
    Là où ça va se compliquer, c'est si je veux supprimer une telle appogiature, comment je vais traiter le nouvel appui de la note (si par exemple la note suivante a un retard non nul), ainsi que celui de la note précédente? Le moins hasardeux pour le moment -réalisé dans la version 12- c'est de "remplir" les espaces vides (la note précédente joue jusqu'au temps de la note concernée cette dernière jouant jusqu'au début de la suivante, retard de la suivante compris -s'il est négatif-) d'où la nécessité de sauvegarder régulièrement son travail   et de planifier à quel moment poser les appogiatures... Quote:
1 - poser une appoggiature anticipé sur la première note de la partition ne fonctionne plus : avant il y avait un message d'erreur mais l'appoggiature était tout de même bien posée
J'ai changé en mettant un avertissement, on pourra choisir d'annuler la pose de l'appogiature, ou bien de la poser malgré tout.  
    En ce qui concerne ton point 4 je le vois comme ceci -bien que j'aie des doutes sur son utilité- (RS=fraction du retard2 en-deçà du silence):
Cela doit pouvoir se faire, j'y réfléchis
Quote:
J'ai édité le fichier d'aide et je n'y ai pas trouvé d'erreur particulière.
Bonjour Bubu, merci pour la vérification, je ne croyais pas avoir fait tant de progrès en anglais!
On peut charger la version 12  
Amistats, Danièl.
« Last Edit: Nov 25th, 2017, 8:56am by Daniel Frouvelle » offline
Daniel Frouvelle
Board Master
*****






   
WWW | Email

Gender: male
Posts: 1362
Re: Script "Appogiatures"  
« Reply #23 on: Nov 25th, 2017, 8:54am »
Quote | Modify

Bonjour, voici la version 13:  
    J'ai changé le fonctionnement du bouton en haut à gauche. Par rotation de la molette on choisit la fonction -Appogiature début du temps de la note-Appogiature sur la fin de la note-Appogiature anticipée-Supprimer appogiature courante-, et Clic pour l'appliquer.
    J'ai rajouté la possibilité de visualiser un graphisme représentant la position temporelle de la note courante(en vert), la suivante et la précédente, retard et appuis compris. La partie du trait plus claire correspond à l'appogiature anticipée. Cela permet de vérifier la cohérence des positions de l'appogiature, surtout pour les appogiatures anticipées (qui s'entend lorsqu'on joue la musique mais qui peut ne pas se voir sur la partition). La position temporelle initiale de la note et symbolisée par un trait vertical.
    Il suffit de sélectionner une note dans la partition, ou bien d'appliquer une appogiature à partir du script pour mettre à jour le graphisme.

    Le script tient compte maintenant de silences.
   Et met en évidence les erreurs (l'appogiature du La4 génère un retard trop important qui fait chevaucher la note sur le Do5).

    On peut charger la version 13
Amistats, Danièl.
« Last Edit: Nov 26th, 2017, 11:13pm by Daniel Frouvelle » offline
mizushima
Board Junior Member
**






   
WWW | Email

Gender: male
Posts: 94
Script "Appogiatures" 13  
« Reply #24 on: Nov 25th, 2017, 11:53pm »
Quote | Modify

V.13
 
J'en pleure de joie tellement c'est beau !
ton script répond au delà de mes espérances à mes souhaits pour la pose des appoggiatures.
 
Tests :
 
- Appoggiature anticipée au début du morceau bien posée et correcte, mais plantage du script avec ce message :
[error: attempt to index field 'Previous' (a nil valu)
<string "|ppogiatures.myf|.|192|Item Method Init": Line 75>
 
- modification d'une figure de note suivie d'une ApAn (appoggiature anticipée) exemple : une croche allongée en croche pointée, l'ApAn suivante fait un tuilage, le graphique couleur le montrant bien, mais il suffit de réinjectée la suivante pour corrigée la croche pointée précédente allongée
 
Conclusion, il préférable voire conseillé de :
 
- supprimer une ApAn sur une note avant d'en modifier la figure
- après modification, réinjecter l'éventuelle ApAn suivante pour recalculer l'appui
 
et toujours vérifier le résultat à l'oreille.
 
Rien à dire de plus pour l'instant sinon que c'est
Super ! Bravo Daniel !
« Last Edit: Nov 26th, 2017, 1:08pm by mizushima » offline

mizushima pepitokun quad baryton agogo...
Daniel Frouvelle
Board Master
*****






   
WWW | Email

Gender: male
Posts: 1362
Re: Script "Appogiatures"  
« Reply #25 on: Nov 26th, 2017, 11:15pm »
Quote | Modify

Bonsoir mizushima, je suis ravi de notre partage, que le script te plaise et qu'il puisse te rendre service.
J'ai rectifié l'erreur de début de portée, de fin de portée également.
On peut charger la version 14 à partir du dispositif habituel de mise à jour (clic droit sur le bouton "?" du script).
Amistats, Danièl.
offline
mizushima
Board Junior Member
**






   
WWW | Email

Gender: male
Posts: 94
Re: Script "Appogiatures"  
« Reply #26 on: Nov 30th, 2017, 6:57pm »
Quote | Modify

Daniel, je suis ravi d'avoir pu apporté cette idée pour faire évoluer ton script, et que tu l'as accepté avec beaucoup de patience et de passion. J'ai vraiment pensé qu'il était important de faciliter la pose des appoggiatures anticipées, déjà possible dans HA mais assez difficile car nécessitant plusieurs calculs devenant fastidieux quand il y a beaucoup d'appoggiatures ; aussi parce que ce mode d'appoggiature n'est bien expliqué nul part (ou du moins je n'ai pas encore trouvé la bonne page), et qu'il y a une vraie ambiguïté sur sa fonction : ma professeur de piano m'avait enseigné fin 20e siècle qu'une appoggiature non-barrée devait être jouée sur le temps de la note - c'est celle par défaut à la pose manuelle - et que l'appoggiature barrée se jouait avant le temps de la note, celle que nous avons appelée anticipée, façon de la jouer qui est apparemment apparu au 19e siècle.
Pour la note barrée interprétée avant le temps, c'est dit sur cette page
http://www.larousse.fr/encyclopedie/musdico/appoggiature/165879 en bas, mais l'acciacatura cité comme exemple est en fait une autre forme que je n'appellerais pas une appoggiature.
Sur la page
https://fr.wikipedia.org/wiki/Appoggiature_(ornement)
il est bien dit :« Depuis le XIXe siècle, une pratique s'est développée qui consiste à soustraire la durée de l'appoggiature de la valeur de la note précédente. », ce qui correspond bien à notre appoggiature anticipée, mais plus loin sous la rubrique [Appoggiature brève] il est dit que l'« acciacatura est une petite figure de note barrée », et dans [Exemple 2 d'acciacatura - Domenico Scarlatti : sonate K. 29.] qui n'est pas du 19e siècle, on entend des appoggiatures anticipées pour les ornements barrés. Puis juste dessous, il est dit : « L'appoggiature en tant qu'ornement n'est plus guère employée depuis le milieu du XIXe siècle. », ce qui est faux puisque dans les « Tableaux d'une exposition », composés en 1874 par Modeste Moussorgski, le compositeur utilise dans « Ballet des Poussins dans leurs Coques » des ornements appoggiatures barrées (édition Urtext UT 50076, et d'autres éditions, voir sur imslp.org ), mais Modeste voulait-il que ce soit interprété comme tel ? Maurice Ravel ayant repris cette version dans son orchestration (je n'ai pas vu la partition d'orchestre de Ravel, mais à l'oreille c'est bien ça).
Dans tous les cas, il est important qu'une personne utilisant nouvellement HA et désirant lui faire jouer ce genre d'ornement, puisse trouver facilement la façon de le faire, par exemple en faisant une recherche sur ce forum et en découvrant ce merveilleux script !
offline

mizushima pepitokun quad baryton agogo...
Pages: 1 2  Reply | Notify of replies | Print

« Previous topic | Next topic »

« Myriad Forum » Powered by YaBB 1 Gold - SP 1.1!
YaBB © 2000-2002,
Xnull. All Rights Reserved.

Top of page
Legal information Last update:  (c) Myriad