Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Création d'une Playlist | |
| | Auteur | Message |
---|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Création d'une Playlist Dim 11 Juil 2010 - 15:18 | |
| Tout le monde est apparemment assommé par la canicule. Et je ne parle même pas de Jack (dont j'ai pu avoir une photo ci-dessous) sous ses tropiques. Pour ceux qui veulent écouter de la musique en programmant, j'ai choisi le format m3u, le plus simple (évidemment), qui est reconnu par tous les 'players', en particulier VLC. On peut prendre les morceaux dans plusieurs répertoires, en recliquant le bouton 'Répertoire', supprimer des morceaux de la sélection en cliquant dessus, puis cliquer 'OK' quand la liste est prête, et récupérer le fichier créé. Le programme n'est pas très sophistiqué (le nom du fichier résultat est en 'dur', par exemple), mais j'ai fait court, et il fait le boulot. - Code:
-
' Playlist: constitution d'une playlist m3u pour VLC DIM f$, fm$, fl$, rep$, s$, sr$, a$, el$ DIM i%, j%, tpr%, nsel%, w0, h0, x%, ll% DIM Musel$(500) LABEL Chrep, Retrep, Dir, Sel, Desel, Tousel, Razsel, Mkf
fm$ = "Z:\Dir.tmp": ' ***** fichier de manoeuvre, à ajuster ***** fl$ = "Z:\Playlist.m3u": ' ***** fichier résultat, à ajuster *****
w0 = 640: h0 = 800 ll% = 300 WIDTH 0, w0: HEIGHT 0, h0 CAPTION 0, "CONSTITUTION D'UNE PLAYLIST" tpr% = 5: BUTTON 5: TOP 5, tpr%: LEFT 5, 10: HEIGHT 5, 25: WIDTH 5, 2*ll%-80 FONT_BOLD 5: FONT_SIZE 5, 12 CAPTION 5, "RÉPERTOIRE": ON_CLICK 5, Chrep BUTTON 6: TOP 6, tpr%: LEFT 6, 2*ll%-60: HEIGHT 6, 25: WIDTH 6, 80 FONT_BOLD 6: FONT_SIZE 6, 12 CAPTION 6, "OK": ON_CLICK 6, Mkf
LIST 41: TOP 41, tpr%+45: LEFT 41, 10: WIDTH 41, ll%: HEIGHT 41, h0-tpr%-90 FONT_NAME 41, "Arial": FONT_SIZE 41, 10 ON_CLICK 41, Sel
LIST 42: TOP 42, tpr%+45: LEFT 42, ll%+20: WIDTH 42, ll%: HEIGHT 42, h0-tpr%-90 FONT_NAME 42, "Arial": FONT_SIZE 42, 10 ON_CLICK 42, Desel ALPHA 43: TOP 43, tpr%+25: LEFT 43, ll%+100: WIDTH 43, 160 FONT_BOLD 43: FONT_SIZE 43, 12: CAPTION 43, "Sélect: 0" ALPHA 45: TOP 45, tpr%+25: LEFT 45, 100: WIDTH 45, 160 FONT_BOLD 45: FONT_SIZE 45, 12: CAPTION 45, "Total: 0" BUTTON 7: TOP 7, tpr%+27: LEFT 7, ll%-50: WIDTH 7, 60: HEIGHT 7, 17 CAPTION 7, "TOUT": ON_CLICK 7, Tousel BUTTON 8: TOP 8, tpr%+27: LEFT 8, 2*ll%-40: WIDTH 8, 60: HEIGHT 8, 17 CAPTION 8, "RAZ": ON_CLICK 8, Razsel nsel% = 0
END
Chrep: ' Choix du répertoire des musiques OPEN_DIALOG 98 f$ = FILE_NAME$(98) IF f$ = "_" THEN GOTO Retrep FOR i% = LEN(f$) TO 1 STEP -1 IF MID$(f$, i%, 1) = "" THEN EXIT_FOR NEXT i% rep$ = LEFT$(f$, i%) CAPTION 5, "Rép: " + rep$ GOSUB Dir FILE_LOAD 41, fm$: FILE_DELETE fm$ CAPTION 45, "Total: " + STR$(COUNT(41)) Retrep: DELETE 98 RETURN
Dir: ' Liste des images du répertoire choisi dans fm$ sr$ = DIR_CURRENT$ DIR_CHANGE rep$ FILE_OPEN_WRITE 1, fm$ f$ = FILE_FIND_FIRST$ WHILE f$ <> "_" s$ = UPPER$(RIGHT$(f$, 4)) IF s$ = ".MP3" OR s$ = ".WMA" THEN FILE_WRITELN 1, f$ f$ = FILE_FIND_NEXT$ END_WHILE FILE_FIND_CLOSE FILE_CLOSE 1 DIR_CHANGE sr$ RETURN
Sel: x% = ITEM_INDEX(41): ' élément sélectionné ITEM_ADD 42, ITEM_READ$(41, x%) nsel% = nsel% + 1: Musel$(nsel%) = rep$ + ITEM_READ$(41, x%) CAPTION 43, "Sélect: " + STR$(nsel%) RETURN
Desel: x% = ITEM_INDEX(42): a$ = ITEM_READ$(41, x%): ' élément désélectionné ITEM_DELETE 42, x% FOR i% = 1 TO nsel% IF INSTR(Musel$(i%), a$) > 0 THEN EXIT_FOR NEXT i% nsel% = nsel% - 1 FOR j% = nsel% TO i%: ' tassement du tableau Musel$(i%) = Musel$(i%+1) NEXT j% CAPTION 43, "Sélect: " + STR$(nsel%) RETURN
Tousel: IF COUNT(41) > 0 FOR i% = 1 TO COUNT(41): ' sélectionner tout ITEM_ADD 42, ITEM_READ$(41, i%) nsel% = nsel% + 1: Musel$(nsel%) = rep$ + ITEM_READ$(41, i%) NEXT i% END_IF CAPTION 43, "Sélect: " + STR$(nsel%) RETURN
Razsel: CLEAR 42: nsel% = 0 : ' raz des sélections RETURN
Mkf: ' Création du fichier m3u (playlist) ' Structure: ' En-tête: #EXTM3U ' Puis, pour chaque morceau: ' #EXTINF:durée,nom du morceau (durée, ou -1 si durée implicite) ' Chemin du morceau (relatif ou absolu) IF nsel% < 1 THEN RETURN FILE_OPEN_WRITE 1, fl$ FILE_WRITELN 1, "#EXTM3U" FOR i% = 1 TO nsel% el$ = Musel$(i%) FOR j% = LEN(el$) TO 1 STEP -1 IF MID$(el$, j%, 1) = "" THEN EXIT_FOR NEXT j% FILE_WRITELN 1, "#EXTINF:-1," + MID$(el$, j%+1, LEN(el$)-j%) FILE_WRITELN 1, el$ NEXT i% FILE_CLOSE 1 RETURN | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Création d'une Playlist Dim 11 Juil 2010 - 16:12 | |
| | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Création d'une Playlist Dim 11 Juil 2010 - 18:09 | |
| Ah quand même, il y en a un qui suit...
Bizarre ton affaire, au contraire, ça ne prend QUE les MP3 et les WMA (regarde dans le s/p Dir), d'ailleurs je n'ai que ça chez moi et ça marche très bien... tu as jeté un coup d'oeil sur le fichier généré ? Je précise qu'il faut se positionner dans le répertoire voulu, puis cliquer sur n'importe quel fichier du répertoire, pour que la liste des mp3 et wma s'affiche dans la List.
Allez, retourne à l'eau veinard... (Pour Jack s'il est bleu c'est que la cuisson n'est pas à point. Pour toi ça va être du court-bouillon, dans ton coin l'eau doit être bouillante).
| |
| | | Jack Admin
Nombre de messages : 2394 Date d'inscription : 28/05/2007
| Sujet: Re: Création d'une Playlist Dim 11 Juil 2010 - 19:39 | |
| Prévisions de la météo pour demain: Riyadh: 47°C Koweit: 51°C Bagdad: 51°C | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Création d'une Playlist Dim 11 Juil 2010 - 20:05 | |
| Nom d'un chien ! ça donne un avant-goût de l'enfer ! rentre vite !
(si ça se trouve ils se sont trompés... ce sera beaucoup plus...) | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 8:47 | |
| Y fait plutot frais à Riyadh par rapport à koweit ! | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 9:40 | |
| T'as raison ! faut pas oublier sa petite laine ! Sinon, pour recentrer le débat, où en es-tu de ta playlist ? je ne comprends pas ton problème... | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 9:54 | |
| Comme je n'ai pas de partition Z, j'ai changé par C pour fl$ et fm$ et là quand je charge une chanson du répertoire, j'ai le message d'erreur suivant: I/O erreur 123 dans une fenetre message panoramic. Et comme "ifécho", j'ai laissé tomber. | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 10:13 | |
| Je comprend rien à ces histoires de fichier, de répertoire et çà m'énneeeeeeeeeeeeeeerve! Y faudra un jour que je me penche sur ce problème. En attendant je te laisse provisoirement, car Madame m'attends pour aller checher de quoi exterminer tous les moustiques du Var. | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 10:26 | |
| C'est pourtant extrêmement simple l'arborescence des répertoires et fichiers... quand on a compris. Il va falloir que je te fasse un petit dessin, à tout à l'heure. (pour les moustiques, laisse tomber les explosifs, ça ne marche pas bien) | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 14:19 | |
| Bonjour, Bien sûr qu'il marche ce programme !! il suffit juste de bien rajouter l'anti-slash dans le test fait dans Chrep if mid$(f$,i%,1) ="\" then exit_for Je rajouterai bien quelques lignes pour compléter : - à l'init : - Code:
-
sr$ = DIR_CURRENT$ rep$ = sr$
- puis juste avant le END, histoire d'afficher les éventuels fichiers du répertoire courant : - Code:
-
CAPTION 5, "Rép: " + rep$ gosub Dir FILE_LOAD 41, fm$: FILE_DELETE fm$ CAPTION 45, "Total: " + STR$(COUNT(41))
Je diminuerai également le font_size du bouton 5 car les chemins peuvent être parfois long... un size de 8 me parais pas trop mal.... | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 15:06 | |
| Saperlipopette ! la malédiction de l'anti-slash disparu a encore frappé ! Bravo Nardo, je me doutais bien d'un truc comme ça mais je n'avais pas bien vérifié. N'empêche que ça devient un peu casse-pieds (et je suis poli) cette histoire !
Sinon pour les rajouts, on fait comme on veut bien entendu. Perso je n'ai pas de musiques dans le répertoire d'exécution (mes exécutables sont presque tous regroupés dans un répertoire C:\UTIL). Il est bien évident que ces petits bouts de code mis ici sont à adapter par chacun en fonction de ses desiderata, c'est plutôt une idée de départ. | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 15:32 | |
| Bien sûr que chacun fait comme il l'entend... Ce ne sont juste que des suggestions. Perso, j'aime bien initialiser mes variables au départ avant utilisation. C'est une sorte de réflexe... Les remarques que j'ai fait sont motivé par le fait que dans le programme, on peut cliquer sur des boutons qui provoquent des actions s'appuyant sur les variables sr$ et rep$. surtout rep$ qui est utilisée dans Dir avec un DIR_CHANGE alors qu'elle n'est pas forcement initialisée. Une suggestion/idée : on pourrait également rendre inactifs certains boutons tant que certaines conditions ne sont pas ok. par exemple: le bouton Ok si la liste de sélection est vide, le bouton 'TOUT' si le répertoire ne contient pas de fichiers média... Bien sûr, ce ne sont que des suggestions. Je n'ai nullement l'intention d'imposer mon point de vue. Quand à l'anti-slash : je me suis fais avoir dans mon post après l'avoir édité pour rajouter l'histoire de la font-size, mon anti-slash que j'avais bien pris la précaution de doubler, avait disparu. Il a fallu que je re-édite pour le rajouter à nouveau... -> vraiment très pénible ! | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Création d'une Playlist Lun 12 Juil 2010 - 16:16 | |
| Mais tu as parfaitement raison de faire des suggestions, c'est toujours instructif, et bien plus agréable que pas de réactions du tout ! Personne n'a la science infuse, et tout se discute, et de la discussion jaillit (parfois) la lumière, et je dois plutôt te remercier ! Et en plus elles me paraissent parfaitement fondées, alors, surtout, continue ! Le code qui est déposé ici tombe ipso facto dans le domaine public, alors chacun peut le modifier (l'améliorer de préférence ) comme il veut, et au besoin en faire profiter les copains. | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Création d'une Playlist Mar 13 Juil 2010 - 10:53 | |
| J'y avait pas pensé a ce P.... de \ . Mais je suis d'accord avec Nardo26, il serait bien qu'un code définisse lui même son répertoire sur le bureau et après chacun le replace ou il veut.
Pour simplifier le lancement de codes proposés sur le forum, le plus simple est de ne pas mettre de chemin d'accès dans le code (juste le nom des fichiers). On se crée un autre éditeur Panoramic (renomé Panoramic essai code forum) dont on place une Icone sur le bureau et on peut ainsi éssayer tout les codes du forum.
C'est une idée que je lance..... | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Création d'une Playlist Mar 13 Juil 2010 - 10:57 | |
| Je précise mon idée: - Code:
-
fm$ = "Z:\Dir.tmp": ' ***** fichier de manoeuvre, à ajuster ***** fl$ = "Z:\Playlist.m3u": ' ***** fichier résultat, à ajuster ***** à la place on fait - Code:
-
fm$ = "Dir.tmp": ' ***** fichier de manoeuvre, à ajuster ***** fl$ = "Playlist.m3u": ' ***** fichier résultat, à ajuster ***** Ainsi le lancement est direct et plus de problème de \ .. | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Création d'une Playlist Mar 13 Juil 2010 - 11:02 | |
| Je crois que ma réponse n'est pas passée...
Pour répondre à Jean-Claude : Oui, pourquoi pas ? ou alors on prend l'habitude d'initialiser les chemins à l'init avec un DIR_CURRENT$ par exemple...
| |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Création d'une Playlist Mar 13 Juil 2010 - 13:24 | |
| Vous avez raison tous les deux. C'est un (petit) problème cette histoire de chemins d'accès. Au moins j'essaie de les mettre en début de programme. Ou alors il faut systématiquement tout mettre sous la racine de C:, ou sous C:\Temp, comme ça ça marche du premier coup pour essayer, quitte à tout remettre où on veut ensuite, ou tout effacer ce qui a été créé, au moins on sait où ils sont. Et je suis d'accord avec Nardo, il vaut mieux, si c'est possible, présenter et initialiser toutes les variables en tête du programme, c'est plus clair. | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Création d'une Playlist Jeu 15 Juil 2010 - 9:24 | |
| Sans compter que je profite de l'init au début pour commenter mes variables. Cela facilite la compréhension du programme pour ceux qui ne l'ont pas écrits, voire même à soi-même si le programme à 6 mois par exemple... Et par expérience, je peux vous garantir que ce n'est pas une perte de temps ! | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Création d'une Playlist Jeu 15 Juil 2010 - 10:07 | |
| | |
| | | Contenu sponsorisé
| Sujet: Re: Création d'une Playlist | |
| |
| | | | Création d'une Playlist | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |