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
» Problème de compilateur.
par Pedro Alvarez Hier à 20:01

» COMPILATEUR V 0.9 beta 8 du 18 aout 2017
par Pedro Alvarez Hier à 19:54

» Pb 17 (en analyse): ITEM_SELECT ne fonctionne pas
par Jack Jeu 17 Aoû 2017 - 19:26

» Compilateur FBPano
par Mike Jeu 17 Aoû 2017 - 13:52

» un nouveau editeur panobasic
par Jean Claude Jeu 17 Aoû 2017 - 10:18

» Le compilateur.
par Pedro Alvarez Jeu 17 Aoû 2017 - 8:36

» Pb 16 (en analyse): ON_CLOSE plante à l'exécution
par Jack Mer 16 Aoû 2017 - 20:00

» Pb 15 (en analyse): TIMER_ON plante à l'exécution
par Jack Mer 16 Aoû 2017 - 19:58

» KGF_dll - nouvelles versions
par Yannick Dim 13 Aoû 2017 - 17:35

» probleme d'outil
par Yannick Dim 13 Aoû 2017 - 17:32

» Carte de France des régions
par Yannick Sam 12 Aoû 2017 - 21:33

» Pb 14 (en analyse): PRINT_LOCATE plante à l'exécution
par Jack Ven 11 Aoû 2017 - 22:37

» Petit avertissement [Mots réservés]
par papydall Ven 11 Aoû 2017 - 13:45

» Distances sur plan
par JL35 Jeu 10 Aoû 2017 - 21:29

» Tracé : Triangle, Carrée, Dents de scie, Sinusoïde redressée
par papydall Jeu 10 Aoû 2017 - 14:52

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Août 2017
LunMarMerJeuVenSamDim
 123456
78910111213
14151617181920
21222324252627
28293031   
CalendrierCalendrier

Partagez | 
 

 Player MP3

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



Nombre de messages : 5920
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: