FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Mac OS X sierra
par Irikte Aujourd'hui à 11:38

» Concours de Morpions
par Froggy One Aujourd'hui à 10:29

» Synedit Parameters
par Jean Claude Aujourd'hui à 10:08

» Bienvenue à Irikte
par UltraVox Aujourd'hui à 10:04

» Recherche de traductions de mots (@Klaus).
par Klaus Aujourd'hui à 9:44

» Version instantanée V 0.9.28i10 du 24/06/2017
par Yannick Hier à 22:52

» Panoramic et ses curiosités
par Jack Hier à 8:15

» Utilitaire de suppression de fichiers
par Yannick Ven 23 Juin 2017 - 23:03

» Code à vérifier SVP (Oups ! résolu)
par Jean Claude Jeu 22 Juin 2017 - 21:16

» Compilateur FBPano
par jean_debord Jeu 22 Juin 2017 - 9:56

» Bienvenue à Virtualalan !
par UltraVox Jeu 22 Juin 2017 - 9:18

» ShortName$(F) [Cloturé]
par papydall Mer 21 Juin 2017 - 16:19

» Remplacer espace par tiret dans noms des dossiers / fichiers
par papydall Mer 21 Juin 2017 - 15:27

» Menu personalisé avec icones et menu contextuel
par Laurent (Minibug) Mer 21 Juin 2017 - 12:44

» La liste des choses à faire ...
par Jack Mar 20 Juin 2017 - 22:49

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2017
LunMarMerJeuVenSamDim
   1234
567891011
12131415161718
19202122232425
2627282930  
CalendrierCalendrier

Partagez | 
 

 Player MP3

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
JL35



Nombre de messages : 5882
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Player MP3   Ven 20 Nov 2015 - 16:19

Bien calme en ce moment, mais bon, c'est pas facile à digérer.
Un petit player tout simple:
Code:
LABEL Chr, Jouer, Passer, Arret, Debut
DIM r$,f$,i%,j%,a$,ff%,pa%,d%,du%,tt%,t%,q$
q$ = CHR$(34)
ff% = 0
pa% = 0

BORDER_SMALL 0: WIDTH 0,640: HEIGHT 0,500: FONT_BOLD 0: FONT_NAME 0,"Arial"
  COLOR 0,190,255,255: CAPTION 0,"  -  Player  MP3  -"
ALPHA 1: TOP 1,3: CAPTION 1,"Répertoire des MP3 :"
EDIT 2: TOP 2,0: LEFT 2,120: WIDTH 2,WIDTH(0)-150: TEXT 2," (clic)": ON_CLICK 2,Chr
ALPHA 6: TOP 6,28: LEFT 6,30: CAPTION 6,"Durée:      Cliquer le morceau de départ, puis"
BUTTON 7: TOP 7,TOP(6)-6: LEFT 7,LEFT(6)+250: CAPTION 7,"Jouer"
  ON_CLICK 7,Jouer
BUTTON 8: TOP 8,TOP(7): LEFT 8,LEFT(7)+80: CAPTION 8,"Passer": ON_CLICK 8,Passer
BUTTON 9: TOP 9,TOP(7): LEFT 9,LEFT(8)+80: CAPTION 9,"STOP": ON_CLICK 9,Arret
MEMO 10: WIDTH 10,600: HIDE 10
LIST 11: TOP 11,47: LEFT 11,0: WIDTH 11,20: HEIGHT 11,HEIGHT(0)-138
LIST 12: TOP 12,TOP(11): LEFT 12,WIDTH(11): WIDTH 12,50: HEIGHT 12,HEIGHT(11)
LIST 13: TOP 13,TOP(11): LEFT 13,WIDTH(11)+WIDTH(12): WIDTH 13,WIDTH(0)-90: HEIGHT 13,HEIGHT(11)
  ON_CLICK 13,Debut
EDIT 16: TOP 16,TOP(11)+HEIGHT(11)+1: LEFT 16,0: WIDTH 16,WIDTH(0)-20: COLOR 16,255,255,0
SOUND 20
OPEN_DIALOG 25
EDIT 29: TOP 29,HEIGHT(0)-68: WIDTH 29,35: TEXT 29,"00:00"
PROGRESS_BAR 30: TOP 30,TOP(29)+3: LEFT 30,WIDTH(29): WIDTH 30,WIDTH(0)-92
EDIT 31: TOP 31,TOP(29): LEFT 31,WIDTH(29)+WIDTH(30): WIDTH 31,WIDTH(29)
END
' ==============================================================================
Chr:
a$ = FILE_NAME$(25): IF LEN(a$)<4 THEN RETURN
r$ = FILE_EXTRACT_PATH$(a$): TEXT 2,r$
EXECUTE_WAIT "cmd.exe /c DIR /B "+q$+r$+"*.mp3"+q$+" | clip"
CLEAR 10: CLEAR 11: CLEAR 12: CLEAR 13: CLIPBOARD_PASTE 10
FOR i% = 1 TO COUNT(10)
    ITEM_ADD 11,RIGHT$(" "+STR$(i%),2)
    ITEM_ADD 13,ITEM_READ$(10,i%)
    f$ = r$+ITEM_READ$(10,i%): DureeMp3(f$)
    a$ = CLIPBOARD_STRING_PASTE$
    ITEM_ADD 12,TRIM$(a$)
NEXT i%
RETURN
' ==============================================================================
Debut:
d% = ITEM_INDEX(13)
TEXT 16,"N° "+STR$(d%)+":  "+ITEM_READ$(13,d%)
TEXT 31,RIGHT$(ITEM_READ$(12,d%),5)
RETURN
' ==============================================================================
Jouer:
IF d% = 0 THEN d% = 1
FOR i% = d% TO COUNT(13)
    f$ = ITEM_READ$(13,i%)
    FILE_LOAD 20,chr$(34)+r$+f$+chr$(34)
    a$ = ITEM_READ$(12,i%): ' durée
    TEXT 16,"N° "+STR$(i%)+":  "+f$
    TEXT 31,RIGHT$(a$,5)
    du%=3600*VAL(LEFT$(a$,2))+60*VAL(MID$(a$,4,2))+VAL(RIGHT$(a$,2)): ' en secondes
    a$ = TIME$
    j%=3600*VAL(LEFT$(a$,2))+60*VAL(MID$(a$,4,2))+VAL(RIGHT$(a$,2)): ' heure début
    tt% = j%+du%
    PLAY 20
    MAX 30,du%: POSITION 30,0
    WHILE t% < tt%
        PAUSE 500
        IF ff% = 1 OR pa% = 1 THEN DELETE 20: SOUND 20: EXIT_WHILE
        a$ = TIME$
        t% = 3600*VAL(LEFT$(a$,2))+60*VAL(MID$(a$,4,2))+VAL(RIGHT$(a$,2))
        POSITION 30,t%-j%
    END_WHILE
    IF ff% = 1 THEN POSITION 30,0: EXIT_FOR: ' arrêt immédiat...
    pa% = 0
NEXT i%
ff% = 0: pa% = 0
RETURN
' ==============================================================================
Passer:
' sauter le morceau en cours (passer au suivant)
pa% = 1
RETURN
' ==============================================================================
Arret:
' arrêt immédiat sans reprise possible à l'endroit de l'arrêt
ff% = 1
RETURN
' ==============================================================================
SUB DureeMp3(f$)
' durée du fichier mp3 f$, rendue dans le presse-papier ('hh:mm:ss')
DIM_LOCAL q$,scr$
q$ = CHR$(34)
scr$ = "C:\TEMP\Duree.vbs"
FILE_OPEN_WRITE 9,scr$
FILE_WRITELN 9, "FileName = wscript.arguments (0)"
FILE_WRITELN 9, "with CreateObject("+q$+"Scripting.FileSystemObject"+q$+").GetFile(FileName)"
FILE_WRITELN 9, "    Foldername = .ParentFolder"
FILE_WRITELN 9, "    FileName  = .Name"
FILE_WRITELN 9, "End With"
FILE_WRITELN 9, "with CreateObject("+q$+"Shell.Application"+q$+").Namespace(Foldername)"
FILE_WRITELN 9, "        wsh.echo .GetDetailsOf(.Parsename(FileName), 27)"
FILE_WRITELN 9, "end with"
FILE_CLOSE 9
EXECUTE_WAIT "cmd.exe /c cscript.exe "+scr$+" "+q$+f$+q$+" | clip"
FILE_DELETE scr$
END_SUB
' ==============================================================================
- cliquer sur l'édit du haut et cliquer un fichier quelconque du répertoire choisi
 -> la liste des mp3 du répertoire s'affiche au-dessous, avec leur durée individuelle
- cliquer dans la liste le morceau de départ, puis cliquer 'Jouer': le player lira la liste à partir de là.

Le Progress_Bar en bas indique l'évolution dans le morceau en cours.

Le bouton 'Passer' permet de stopper le morceau en cours d'exécution et de passer automatiquement au suivant.

Bouton 'STOP': pour stopper à n'importe quel moment en cours d'exécution. J'ai utilisé pour ça l'astuce géniale de Klaus ( http://panoramic.free-boards.net/t2384-peut-on-arreter-la-commande-play?highlight=PLAY ) qui consiste à faire Delete de l'objet Sound et à le recréer aussitôt: l'exécution s'arrête immédiatement.
Mais (il y a un mais...), on ne peut pas reprendre en cours là où on s'est arrêté, ça je ne sais pas faire, donc pas de fonction Pause.
Il faut refaire 'Jouer' qui reprend au début d'un morceau.


Si on veut agrandir la fenêtre en hauteur, il suffit de modifier le Height 0, le reste suivra.

PS: je ne me suis occupé que des fichiers MP3, j'ai laissé de côté les fichiers WAV que Play sait aussi lire.
Et j'ai modifié un peu les marges, j'ai laissé de la place en bas pour les windows huitards.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
 
Player MP3
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Vidéos - générateur de code pour vidéo et player
» [Résolu] Mise à jour Adobe Flash Player
» real player
» Bug suite à la mise à jour 10.0.45.2 du player flash résolu
» shockwave player

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC 32 bits :: Vos sources, vos utilitaires à partager-
Sauter vers: