Re: [AS] lire un fichier

Page principale
Supprimer ce message
Répondre à ce message
Auteur: yves-marie omnes
Date:  
À: La liste AppleScript Francophone
Sujet: Re: [AS] lire un fichier
>
Merci Alexis ta solution permet parfaitement de faire ce que je veux je l'ai
intégré dans mon script et je me suis fendu (non sans mal) d'une interface
applescript studio.
Cependant j'ai constaté que plus fichier été gros plus l'exécution du script
été longue comme si le fichier été entièrement logiquement en ne lisant que
les 300 premier bits le script devrait s'éxecuter dans un temps donné
quelque soit la poids du fichier

Quelqu'un a t'il un éclaircissement a ce sujet

Merci a tous et a toi Alexis


> Bonjour,
>
> La commande "find text" du complément de pilotage Satimage.osax peut
> vous intéresser. Elle permet de chercher du texte dans une variable ou
> dans un fichier.
>
> set sonDirect to false
> try
> find text "aTAKE=t" in monFichier for 300 -- cherche "aTAKE=t"
> uniquement dans les 300 premiers caractères du fichier monFichier.
> set sonDirect to true
> end try
> if sonDirect then
> --etc
> end if
>
> Pour pouvoir utiliser la commande "find text" dans un script
> AppleScript, il faut télécharger Satimage.osax (qui est gratuit) à
> l'adresse suivante :
> http://www.satimage.fr/software/fr/downloads/downloads_companion_osaxen.html
> puis suivre les instructions d'installation du fichier "lisez-moi"
> joint au téléchargement...
>
> Cordialement,
> Alexis Gottlieb
> Satimage
>
> Le 17 déc. 08 à 16:00, yves-marie omnes a écrit :
>
>>
>> bonjour a tous
>>
>> je me remet doucement a applescript et j'ai bien du mal
>>
>> voila ce que je souhaite faire
>>
>> l'idée est de réaliser une compilation de fichier son specifiques
>> extrait dans grande nombres.
>> je m'explique
>> a la fin d'un tournage de long metrage on se retrouve avec un nombre
>> de fichiers son tres impressionnants (entre 6000 et 10000 ) la plus
>> part de ces fichiers sont des sons direct (liés a une image) et
>> d'autres sont des sons seuls. il est tres interresant pour nous de
>> pouvoir extraire de la masse des fichier sons uniquement les sons
>> seuls.
>>
>> pour ça j'ai d'abord ecrit un script qui ouvre le dossier principale
>> du projet puis ouvre le premier dossier et enfin controle le nom du
>> premier fichier pour verifier si ces un son seul si oui il en fait
>> une copie le tout dans deux boucle imbriqué.
>>
>> cela fonctionne tres bien mais
>> pour controller si un son est sons seul il suffit d'examiner le nom
>> de fichier. en effet un fichier audio de cinema (enregistré avec le
>> cantar ) va se presenter comme ça
>> MI6862==  29   0    t 1==_1.WAV et un son seul comme ça
>> MI6862==  29   0    W 1==_1.WAV vous remarquez que la difference
>> reside dans le "t" ou le "w" donc avec le script que j'ai fait cela
>> fonctionne.
>> mais il arrive assez souvent que le fichier audio n'utilise comme
>> nom que ça version courte c'est a dire MI6862.WAV des lors il n'est
>> plus possible d'utliliser le nom pour trouver les sons seul.
>> dans ce cas il n'y a qu'une solution ouvrir le fichier audio et lire
>> l 'entete du fichier ou l'on va retrouver a coup sur les
>> indications. voici un exemple de ce que donne comme resulat ce petit
>> script

>>
>> try
>> set monFichier to choose file {}
>> open for access monFichier
>> read monFichier before data
>> --set x to result as text
>>
>> on error
>> display dialog "Erreur à l'ouverture du fichier"
>> close access monFichier
>> end try
>>
>> resultat
>> "RIFFB3u
>> aSCENE= 29 / 0
>> aTAKE=t 2
>> aTAPE=0529
>> aSPEED=025.000-ND
>> aTAG=MI6863
>> aTYP=mxdn
>> aCHNL=Xb
>> aNOTE=
>> film$
>>
>> mais voila cela ne fonctionne pas toujours et il semble difficile
>> d'exploiter ce resultat comme une chaine de caractere afin de
>> verifier si aTAKE = "t" ou "w"
>>
>> ci joint le script qui fonctionne sur les noms de fichier
>>
>> tell application "Finder"
>> set n to 1
>> set m to 1
>> set dossource to select folder (choose folder with prompt
>> "selectionnez un dossier projet Cantar")
>> set nomdossource to name of dossource
>> log nomdossource
>> set AppleScript's text item delimiters to "."
>> set extdos to get the last text item of nomdossource
>> log extdos
>> if (extdos = "CA1") then
>> set doscopy to select folder (choose folder with prompt
>> "selectionnez un dossier pour compiler vos sons seuls")
>> set nbsource to count item of dossource
>> repeat until n = nbsource + 1
>> set nbfiles to count item of item n of dossource
>> repeat while m < nbfiles + 1
>> set nomfile to name of item m of item n of dossource
>> set ext to name extension of item m of item n of dossource
>> if ext = "WAV" then
>> set AppleScript's text item delimiters to " "
>> set nbitem to count text items of nomfile
>> if (nbitem = 1) then
>> display dialog "ce fichier a un nom court cantar vous devez le
>> transformer en nom long"
>> else
>> set x to get the last text item of nomfile
>> set AppleScript's text item delimiters to ""
>> set y to get the first text item of x as text
>> log y
>> if (y = "w") then
>> beep
>> duplicate item m of item n of dossource to doscopy
>> end if
>> end if
>> end if
>> if (m = nbfiles) then
>> set m to 1
>> exit repeat
>> else
>> set m to m + 1
>> end if
>> end repeat
>> set n to n + 1
>> end repeat
>> else
>> display dialog "ce dossier ne semble pas etre un dossier de projet
>> cantar"
>> end if
>> end tell
>>
>>
>>
>> merci a ceux qui prendrons le soin de me lire et peut etre m'aider
>>
>>
>> yves-marie
>>
>>
>>
>>
>>
>> _______________________________________________
>> Applescript_fr mailing list
>> Applescript_fr@???
>> http://listes.patpro.net/mailman/listinfo/applescript_fr
>
> _______________________________________________
> Applescript_fr mailing list
> Applescript_fr@???
> http://listes.patpro.net/mailman/listinfo/applescript_fr
>



_______________________________________________
Applescript_fr mailing list
Applescript_fr@???
http://listes.patpro.net/mailman/listinfo/applescript_fr