Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[Q] iTunes et fichiers Midi (et Quick Time)

11 réponses
Avatar
blanc
Bonjour à tous,

J'ai quelque 3000 fichiers midi que je veux incorporer dans ma bdd
iTunes.
Mais je viens de me rendre compte, que certains, ouverts avec QT Pro
faisaient apparaître dans leurs propriétés un nom différent du nom du
fichier, et que iTunes prenait alors ce nom comme nom du morceau.
Y aurait-il une solution pour qu'il garde le nom du fichier, ou au moins
qu'il me permette de choisir. Et ceci sans avoir à ouvrir chaque fichier
avec QT pour vérifier la présence de ce nom alternatif...

Merci d'avance pour vos réponses que j'attends nombreuses :-)

--
JiPaul.
/ /--/--//\\ Jean-Paul Blanc
|/| L |\\\ quelquepart en (somewhere in)
\/|| = |||\\\ FRANCE

10 réponses

1 2
Avatar
Patrick Stadelmann
In article <1if7hfl.shamxy18hloizN%,
(JiPaul) wrote:

Mais je viens de me rendre compte, que certains, ouverts avec QT Pro
faisaient apparaître dans leurs propriétés un nom différent du nom du
fichier, et que iTunes prenait alors ce nom comme nom du morceau.
Y aurait-il une solution pour qu'il garde le nom du fichier, ou au moins
qu'il me permette de choisir. Et ceci sans avoir à ouvrir chaque fichier
avec QT pour vérifier la présence de ce nom alternatif...


Ce script modifie les morceaux sélectionnés dans iTunes. Il remplace le
nom utilisé par iTunes par le nom du fichier.

tell application "iTunes"
set sel to selection
repeat with t in sel
set f to location of t
tell application "Finder" to set n to name of f
set name of t to n
end repeat
end tell

Coller dans l'Editeur de Script. Sélectionner les morceaux à traiter
dans iTunes. Lancer l'exécution du script.

Ne surtout pas utiliser iTunes tant que le script tourne !

Patrick
--
Patrick Stadelmann

Avatar
Patrick Stadelmann
In article <1if7hfl.shamxy18hloizN%,
(JiPaul) wrote:

Mais je viens de me rendre compte, que certains, ouverts avec QT Pro
faisaient apparaître dans leurs propriétés un nom différent du nom du
fichier, et que iTunes prenait alors ce nom comme nom du morceau.
Y aurait-il une solution pour qu'il garde le nom du fichier, ou au moins
qu'il me permette de choisir. Et ceci sans avoir à ouvrir chaque fichier
avec QT pour vérifier la présence de ce nom alternatif...


Ce script modifie les morceaux sélectionnés dans iTunes. Il remplace le
nom utilisé par iTunes par le nom du fichier. Si les fichiers sont
accessibles en écriture, ils sont modifiés donc le nom changera
également dans QT.

tell application "iTunes"
set sel to selection
repeat with t in sel
set f to location of t
tell application "Finder" to set n to name of f
set name of t to n
end repeat
end tell

Coller dans l'Editeur de Script. Sélectionner les morceaux à traiter
dans iTunes. Lancer l'exécution du script.

Ne surtout pas utiliser iTunes tant que le script tourne !

Patrick
--
Patrick Stadelmann

Avatar
blanc
Patrick Stadelmann wrote:

Ce script modifie les morceaux sélectionnés dans iTunes. Il remplace le
nom utilisé par iTunes par le nom du fichier. Si les fichiers sont
accessibles en écriture, ils sont modifiés donc le nom changera
également dans QT.

tell application "iTunes"
set sel to selection
repeat with t in sel
set f to location of t
tell application "Finder" to set n to name of f
set name of t to n
end repeat
end tell

Coller dans l'Editeur de Script. Sélectionner les morceaux à traiter
dans iTunes. Lancer l'exécution du script.


Merci Patrick.
Le problème est que dès que je mets les morceaux dans iTunes, ils
prennent le nom alternatif (interne) et les cases "Maintenir organisé le
dossier iTunes Music" et "Copier dans le dossier iTunes Music les
fichiers ajoutés" étant cochées chez moi, les noms de fichiers changent
aussi.

Je viens de décocher ces deux cases, ça améliore les choses.

Mais je ne suis pas sûr de ne pas préférer les noms internes pour
certains fichiers.
Serait-il possible de transformer ton script de manière à tester si le
nom interne existe, et si les deux noms sont différents, et dans ce cas
seulement, les afficher et donner la possibilité à l'utilisateur de
choisir le nom qu'il veut garder ?

J'essayerais bien de le faire moi-même, mais je ne maitrise pas
suffisamment AppleScript, et j'ose espérer que c'est plus simple pour
toi (ou pour quelqu'un qui nous lit. :-).

--
JiPaul.
/ /--/--// Jean-Paul Blanc
|/| L | quelquepart en (somewhere in)
/|| = ||| FRANCE

Avatar
blanc
JiPaul wrote:

Je viens de décocher ces deux cases, ça améliore les choses.


Je veux dire que les fichiers ne sont pas renommés (ni copiés). Par
contre le nom du morceau devient toujours le nom interne et je devrai
appliquer ton script si je veux qu'il soit le nom du fichier. Mais si je
veux choisir, il faut que pour chaque morceau je fasse afficher le
fichier correspondant ;-(
--
JiPaul.
/ /--/--// Jean-Paul Blanc
|/| L | quelquepart en (somewhere in)
/|| = ||| FRANCE

Avatar
Patrick Stadelmann
In article <1if9c1d.1rkt1ue1yrqharN%,
(JiPaul) wrote:

Serait-il possible de transformer ton script de manière à tester si le
nom interne existe, et si les deux noms sont différents, et dans ce cas
seulement, les afficher et donner la possibilité à l'utilisateur de
choisir le nom qu'il veut garder ?


Ca devrait le faire. Tu peux changer le bouton par défaut en modifiant
la première ligne du script ( "Titre" ou "Fichier" ). Laisser l'option
"Maintenir organisé le dossier iTunes Music".

set b to "Titre"

tell application "iTunes"
set sel to selection
repeat with t in sel
set f to location of t
set tn to name of t
tell application "Finder" to set n to name of f
if tn ‚ n then tell me
set r to button returned of (display dialog ¬
"Utiliser le nom du fichier ?" & return & return & ¬
"Titre : " & tn & return & ¬
"Fichier : " & n buttons {"Stop", "Titre", "Fichier"} ¬
default button b cancel button "Stop")
if r = "Fichier" then set name of t to n
end tell
end repeat
end tell

Patrick
--
Patrick Stadelmann

Avatar
Patrick Stadelmann
In article <1if9c1d.1rkt1ue1yrqharN%,
(JiPaul) wrote:

Serait-il possible de transformer ton script de manière à tester si le
nom interne existe, et si les deux noms sont différents, et dans ce cas
seulement, les afficher et donner la possibilité à l'utilisateur de
choisir le nom qu'il veut garder ?


Ca devrait le faire. Tu peux changer le bouton par défaut en modifiant
la première ligne du script ( "Titre" ou "Fichier" ). Laisser l'option
"Maintenir organisé le dossier iTunes Music" décochée.

set b to "Titre"

tell application "iTunes"
set sel to selection
repeat with t in sel
set f to location of t
set tn to name of t
tell application "Finder" to set n to name of f
if tn ‚ n then tell me
set r to button returned of (display dialog ¬
"Utiliser le nom du fichier ?" & return & return & ¬
"Titre : " & tn & return & ¬
"Fichier : " & n buttons {"Stop", "Titre", "Fichier"} ¬
default button b cancel button "Stop")
if r = "Fichier" then set name of t to n
end tell
end repeat
end tell

Patrick
--
Patrick Stadelmann

Avatar
blanc
Patrick Stadelmann wrote:

Ca devrait le faire. Tu peux changer le bouton par défaut en modifiant
la première ligne du script ( "Titre" ou "Fichier" ). Laisser l'option
"Maintenir organisé le dossier iTunes Music" décochée.


Ca le fait effectivement. Merci :-) ...

... sauf un petit problème :-(

Il faudrait enlever l'extension .MID à la fin du nom de fichier.
(et de ce fait tn est toujours différent de n ! ;-))

En fouillant dans le dico du Finder, j'ai trouvé ça :
tell application "Finder"
set extension hidden of f to true
set n to displayed name of f
set extension hidden of f to false
end tell
mais ça ne marche pas !!!...

... Si, si, finalement ça marche, à condition de désactiver (à la main)
l'affichage des extensions dans les préférences Finder avant de lancer
le script...

...mais nouveau problème :
lorsque je fais jouer un morceau dont le titre a été modifié, où lorsque
j'ouvre sa fenêtre d'infos (pomme-I)...
il reprend son ancien titre ! ;-(

Et là je ne comprends pas, car même si je modifie le titre de ce morceau
à la main j'observe le même phénomène ;-(
... mais ce n'est le cas que pour les morceaux qui ont effectivement un
titre en interne dans le fichier (je veux dire que je retrouve ce titre
avec HexEdit à l'intérieur du fichier).
Un bug de iTunes pour les fichiers Midi ?
En tout cas, je vais essayer demain de faire les 3000 fichiers,
peut-être en rajoutant un marquage (famille de fichier) dans le script
pour retrouver facilement les fichiers qui ont été modifiés, et s'il ne
sont pas nombreux (c'est l'impression que j'ai) je les corrigerai à la
main avec HexEdit. Ce soir je vais me coucher.

Voilà.
Un grand merci à toi en tout cas...
--
JiPaul.
/ /--/--// Jean-Paul Blanc
|/| L | quelquepart en (somewhere in)
/|| = ||| FRANCE

Avatar
Patrick Stadelmann
In article <1ifcyth.gf07dy1sis5u3N%,
(JiPaul) wrote:

Il faudrait enlever l'extension .MID à la fin du nom de fichier.
(et de ce fait tn est toujours différent de n ! ;-))


Effectivement !

set b to "Titre"

tell application "iTunes"
set sel to selection
repeat with t in sel
set f to location of t
set tn to name of t
tell application "Finder" to set n to name of f
tell application "Finder" to set x to name extension of f
if x ‚ "" then
set n to (text 1 thru -(2 + (length of x)) of n)
end if
if tn ‚ n then tell me
set r to button returned of (display dialog ¬
"Utiliser le nom du fichier ?" & return & return & ¬
"Titre : " & tn & return & ¬
"Fichier : " & n buttons {"Stop", "Titre", "Fichier"} ¬
default button b cancel button "Stop")
if r = "Fichier" then set name of t to n
end tell
end repeat
end tell

... Si, si, finalement ça marche, à condition de désactiver (à la main)
l'affichage des extensions dans les préférences Finder avant de lancer
le script...


C'est logique, si l'affichage est activé dans les préférences, il prime
sur les réglages individuel du fichier.

Un bug de iTunes pour les fichiers Midi ?


Possible. En tout cas ici j'ai quelques .MID qui n'ont pas de noms
internes, si j'en crée un il n'est mémorisé que dans la base iTunes mais
pas de le fichier (alors que pour les MP3, AAC, ... c'est bien le
fichier qui est modifié). iTunes redécouvre peut-être à chaque fois le
nom interne vu qu'il ne le modifie pas vraiment.

Patrick
--
Patrick Stadelmann

Avatar
blanc
JiPaul wrote:

lorsque je fais jouer un morceau dont le titre a été modifié, où lorsque
j'ouvre sa fenêtre d'infos (pomme-I)...
il reprend son ancien titre ! ;-(

Et là je ne comprends pas, car même si je modifie le titre de ce morceau
à la main j'observe le même phénomène ;-(


Et j'ai oublié de préciser que les fichiers correspondants ne sont pas
protégés en écriture.

--
JiPaul.
/ /--/--// Jean-Paul Blanc
|/| L | quelquepart en (somewhere in)
/|| = ||| FRANCE

Avatar
blanc
Patrick Stadelmann wrote:

tell application "Finder" to set n to name of f
tell application "Finder" to set x to name extension of f
if x ≠ "" then
set n to (text 1 thru -(2 + (length of x)) of n)
end if


Oui. J'avais bien pensé que quelque chose de ce genre devais marcher.
Encore faut-il trouver la bonne syntaxe pour récupérer la sous-chaine.


... Si, si, finalement ça marche, à condition de désactiver (à la main)
l'affichage des extensions dans les préférences Finder avant de lancer
le script...


C'est logique, si l'affichage est activé dans les préférences, il prime
sur les réglages individuel du fichier.


Donc effectivement ta méthode marche qquesoient les préf Finder :-)


Un bug de iTunes pour les fichiers Midi ?


Possible. En tout cas ici j'ai quelques .MID qui n'ont pas de noms
internes, si j'en crée un il n'est mémorisé que dans la base iTunes mais
pas de le fichier (alors que pour les MP3, AAC, ... c'est bien le
fichier qui est modifié). iTunes redécouvre peut-être à chaque fois le
nom interne vu qu'il ne le modifie pas vraiment.


Je vais donc faire comme indiqué précédemment.

Merci encore.
--
JiPaul.
/ /--/--// Jean-Paul Blanc
|/| L | quelquepart en (somewhere in)
/|| = ||| FRANCE


1 2