jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Encore un défi peut-être dur-dur Jeu 22 Juin 2023 - 16:06 | |
| Supposons une liste de fichiers mp3 qu'on veuille écouter les uns après les autres : list 50... sound 60 ..... for i% = 1 to count(50) a$=item_read$(50,i%) file_load 60,a$ play_wait 60 next i% La question rouge : Comment faire pour arrêter l'écoute en cours de route ??? (au moment où on appuie sur le bouton idoine, autrement dit en plein milieu d'un morceau de musique) Peut-être que la réponse est simple ??? Mais je ne la connais pas ! Est-ce que quelqu'un a des lumières là dessus ? | |
|
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Encore un défi peut-être dur-dur Jeu 22 Juin 2023 - 20:56 | |
| Salut tout le monde. @jjn4 Voici une solution (à adapter) - Code:
-
label ecouter,arreter,quitter
button 100 : left 100,100 : caption 100,"ecouter" : on_click 100,ecouter button 200 : left 200,200 : caption 200,"arreter" : on_click 200,arreter : inactive 200 button 250 : left 250,300 : caption 250,"quitter" : on_click 250, quitter
end
' ------------------------------------------------------------------------------ ' Adapter le nom du fichier XXX.MP3 ecouter: sound 300 : active 200 : inactive 100 file_load 300,"votre_fichier_mp3_ou_mp4" play 300 return ' ------------------------------------------------------------------------------
arreter: delete 300 : inactive 200 : active 100 return ' ---------------------------------------------------------------------------- quitter: terminate
| |
|
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Re: Encore un défi peut-être dur-dur Jeu 22 Juin 2023 - 21:37 | |
| Merci de ta réponse. Mais delete ne marche pas avec un play_wait qu'on est bien obligé d'utiliser si on veut que toutes les musiques de la liste soient jouées automatiquement, les unes après les autres...!!!??? | |
|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Encore un défi peut-être dur-dur Jeu 22 Juin 2023 - 22:36 | |
| Salut jjn4, Perso, pour lire mes listes de mp3, dans un objet SOUND: SOUND 80 ... Lecture : FILE_LOAD 80,f$: PLAY 80 ... Pour stopper instantanément en cours de lecture: DELETE 80: SOUND 80 | |
|
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Encore un défi peut-être dur-dur Jeu 22 Juin 2023 - 23:06 | |
| Peut-être tu trouveras ton bonheur dans kgf.dll. Notre ami Klaus (j'espère qu'il se porte bien) a fait une DLL : Player.dll qu'il a intégré dans KGF.dll Il a donné un programme de démo iciLe voici après une petite adaptation. D'abort create puis load puis play, etc. - Code:
-
' test_Player.bas
label cre, del, ld, pla, pse, stp, mt0, mt1, vol
dim i%, hnd%, nom$, flag%
button 1 : top 1,0 : left 1,0 : caption 1,"Create" width 1,50 : on_click 1,cre button 2 : top 2,0 : left 2,50 : caption 2,"Delete" width 2,50 : on_click 2,del button 3 : top 3,0 : left 3,110 : caption 3,"Load" width 3,50 : on_click 3,ld button 4 : top 4,0 : left 4,160 : caption 4,"Play" width 4,50 : on_click 4,pla button 5 : top 5,0 : left 5,210 : caption 5,"Pause" width 5,50 : on_click 5,pse button 6 : top 6,0 : left 6,260 : caption 6,"Stop" width 6,50 : on_click 6,stp button 7 : top 7,0 : left 7,310 : caption 7,"Mute" width 7,50 : on_click 7,mt0 button 8 : top 8,0 : left 8,360 : caption 8,"Loud" width 8,50 : on_click 8,mt1 scroll_bar 9 : top 9,5 : left 9,410 : width 9,150 min 9,0 : max 9,100 : on_change 9,vol
dll_on "kgf" : ' adapter le chemin end
cre: if flag%=1 then return hnd% = handle(0) i% = dll_call5("CreatePlayer",hnd%,30,10,400,300) flag% = 1 return
del: if flag% = 0 then return i% = dll_call0("DeletePlayer") flag% = 0 return ld: if flag% = 0 then return nom$ = "c:\users\microtek\desktop\1.mp3" : ' <---- adapter le chemin i% = dll_call1("LoadFileIntoPlayer",adr(nom$)) return
pla: if flag% = 0 then return i% = dll_call0("PlayPlayer") return
pse: if flag% = 0 then return i% = dll_call0("PausePlayer") return
stp: if flag% = 0 then return i% = dll_call0("StopPlayer") return
mt0: if flag% = 0 then return i% = dll_call1("MutePlayer",0) return
mt1: if flag% = 0 then return i% = dll_call1("MutePlayer",1) return
vol: if flag% = 0 then return i% = dll_call1("VolumePlayer",position(9)) return
| |
|
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Encore un défi peut-être dur-dur Ven 23 Juin 2023 - 0:10 | |
| Bonsoir à tous ! @JJN4 J’ai une proposition en pur Panoramic avec les boutons : - STOP (arrêt lecture) - REPRENDRE (on reprend au début du fichier stopé) - RECOMMENCER (depuis le premier fichier) - SUIVANT (on saute au fichier suivant) - PRECEDENT (on saute au fichier précédent) A télécharger ici : https://kdrive.infomaniak.com/app/share/698165/f59efcdb-59aa-4aa8-a6a9-5ee83b4029feC’est un fichier zip qui comprend le fichier test.bas ainsi que 10 petits fichiers mp3 pour tester le fonctionnement. Bien entendu, lors de la lecture, les fichiers s'enchaînent automatiquement. | |
|
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Re: Encore un défi peut-être dur-dur Ven 23 Juin 2023 - 13:42 | |
| Ah oui, superbe ça ! Ca évite le play_wait. C'est une bonne idée ! Je l'essaie vite ! Merci, Marc et Papydall et JL35 ! | |
|
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Encore un défi peut-être dur-dur Ven 23 Juin 2023 - 15:11 | |
| Dans le programme que j'ai écrit la nuit dernière, j'ai oublié d'ajouter une sécurité pour ne pas aller en dehors des limites du DLIST. Cela concerne le s/p "precedent". Il faut ajouter une condition : - Code:
-
if i% < 0 i% = 0 end_if ce qui donne : - Code:
-
precedent: i% = i% - 2 if i% < 0 i% = 0 end_if timer_interval 1,100 timer_on 1 return Bref, ce programme est simplement une ébauche de ce que l'on peut faire avec l'aide du TIMER pour tenter de répondre à la demande de JJN4 en respectant "son cahier des charges". Il ne constitue pas un programme fini. Bonne journée à tous ! | |
|
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Re: Encore un défi peut-être dur-dur Ven 23 Juin 2023 - 15:18 | |
| Bien reçu ! C'est super ! | |
|
Contenu sponsorisé
| Sujet: Re: Encore un défi peut-être dur-dur | |
| |
|