Page 1 sur 1

playliste pour un lecteur audio

Publié : ven. 18/nov./2005 22:23
par venom
bonsoir tout le forum

voila j'ai refait un lecteur audio encore une fois :D . et je voudrais savoir ou je pourrais trouver des tutos, ou une aide charitable qui m'expliquer comment faire pour pouvoir selectionner plusieurs fichiers audios, puis pouvoir les ecouters l'un a la suite de l'autre. mais je ne sait vraiment pas par ou commencer. sa serait gentil de m'eclérer :idea: .

pour plus d'aide voici mon code

Code : Tout sélectionner

UseJPEGImageDecoder()
UseOGGSoundDecoder()

If InitMovie() = 0
  MessageRequester("Erreur", "Impossible de lire des vidéos", 0)
  End
EndIf
 
Enumeration
#fond
EndEnumeration

If OpenWindow(0, 0, 0, 400, 380, #PB_Window_BorderLess|#PB_Window_ScreenCentered, "audio playeur") And CreateGadgetList(WindowID())  
;+++++++++++++++++++++++++++++++++++++++creation de la forme+++++++++++++++++++++++++++++++++++++++++++++++++
Region1 = CreatePolygonRgn_(?Triangle, 4, #ALTERNATE) 
        Region2 = CreateEllipticRgn_(0, 0, WindowWidth(), WindowHeight()) 
        CombineRgn_(Region1, Region1, Region2, #RGN_OR) 
        SetWindowRgn_(WindowID(), Region1, #True)
        DeleteObject_(Region1) 
        DeleteObject_(Region2)
;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++  
    
        menu= CreateMenu(0, WindowID(0))
     If menu 
     
    MenuTitle(" ")
       MenuTitle("liste")
       MenuItem(1,"ouvrir un fichier audio")
       MenuBar()
       MenuItem(2,"ouvrir une playliste")
       MenuItem(3,"sauvegarder une playliste")
       DisableMenuItem(2,1)
       DisableMenuItem(3,1)
       
    MenuTitle(" ")
       MenuTitle("play")
       MenuItem(4,"lire le fichier choisit")
       MenuBar()
       OpenSubMenu("volume")
       MenuItem(5,"volume 100 %")
       MenuItem(6,"volume 75 %")
       MenuItem(7,"volume 50 %")
       MenuItem(8,"volume 25 %")
       MenuItem(9,"volume 0 %")
       CloseSubMenu()
       MenuBar()
       MenuItem(10,"lire le fichier suivant --->")
       MenuItem(11,"lire le fichier precedent <---")
       
    MenuTitle(" ")
    MenuTitle("stop")
       MenuItem(12,"arreter le fichier en cours")
    
    MenuTitle(" ")
       MenuTitle("pause")
       MenuItem(13,"metre le fichier en pause")
    
    MenuTitle(" ")
       MenuTitle("reduire")
       MenuItem(14,"reduire la fenetre")
    
    MenuTitle(" ")
       MenuTitle("quit")
       MenuItem(15,"quitter audio playeur") 
     EndIf 

       HideMenu(0,1)
       InitBarreMenu( WindowID(0), menu, RGB(50,50,255), RGB(255,255,255))
       LoadFont (0, "comic sans ms", 12 ,#PB_Font_Italic)
       OpenMenu(0)

    If LoadImage(#fond, "c:/pure basic/audio playeur/fond2.jpg")   
       ImageGadget(#fond, 0,30,10,83,UseImage(#fond))                
    EndIf

EndIf

Repeat
  Event = WaitWindowEvent()
  If Event = #PB_Event_Menu
    Select EventMenuID()

      Case 1
      NomFichier$ = OpenFileRequester("Titre", "", "fichier audio|*.wav;*.wave;*.mp3;*.mid;*.wma;*.mp4;*.ogg", 1,#PB_Requester_MultiSelection)
        If NomFichier$
          LoadMovie(1, NomFichier$)
        EndIf
        
      Case 4 
        If MovieStatus() = 0 
            PlayMovie(1, WindowID()) 
            ResizeMovie(8, 125, 750, 430)
        ElseIf MovieStatus() = -1 
            ResumeMovie()
        EndIf 
       
      Case 5
      MovieAudio(100, Balance)
      
      Case 6
      MovieAudio(75, Balance)
      
      Case 7
      MovieAudio(50, Balance)
      
      Case 8
      MovieAudio(25, Balance)
       
      Case 9
      MovieAudio(0, Balance)
       
      Case 12
      StopMovie()
        
      Case 13
      PauseMovie()

      Case 14
      ShowWindow_(WindowID(0), #SW_MINIMIZE)
      
      Case 15
      event =#PB_EventCloseWindow
 
   EndSelect
  EndIf
 Until Event = #PB_EventCloseWindow 
End 

DataSection 
Triangle : 
Data.l 200, 400, 0, 0, 400, 0, 200, 400 
EndDataSection
en esperant que sa pourra vous aidez :wink: .

Publié : sam. 19/nov./2005 11:01
par Gillou
Pour sélectionner plusieurs fichiers


Case 1
NewList Fichier.s()
NomFichier$ = OpenFileRequester ( "Titre" , "" , "fichier audio|*.wav;*.wave;*.mp3;*.mid;*.wma;*.mp4;*.ogg" , 1, #PB_Requester_MultiSelection )
If NomFichier$
While NomFichier$
NomFichier$ = NextSelectedFileName ()
AddElement (Fichier()) : Fichier() = NomFichier$
Wend
FirstElement (Fichier())
LoadMovie (1, Fichier())
EndIf


et pour créer des fichiers M3U


NewList aud.s()
redemar :
Q = 0
audio$ = OpenFileRequester ( "Choisi des fichiers audios" , "" , "Audio (WAVE; MP2; MP3; MP4; AAC; WMA; M4A)|*.wav;*.MP3;*.mp2;*.mp4;*.aac;*.wma;*.m4a|Tous les fichiers|*.*" , 0, #PB_Requester_MultiSelection )
pathaud$ = GetPathPart (audio$)
If audio$ <> ""
AddElement (aud()) : aud() = audio$
Repeat
AddElement (aud())
aud() = NextSelectedFileName ()
If aud() <> ""
Else
Q = 1
EndIf
Until Q = 1
nbb = CountString (audio$, "\" )
po = 0
For a = 1 To nbb - 1
pos = FindString (audio$, "\" , po + 1)
po = pos
Next
pos2 = FindString (audio$, "\" , pos + 1)
Q = 0
play$ = SaveFileRequester ( "Dossier d'enregistrement de la playlist" , GetPathPart (audio$) + Mid (audio$, pos + 1, pos2 - pos - 1) + ".m3u" , "Liste de lecture M3u|*.m3u" , 0)
If play$ <> ""
If SelectedFilePattern () = 0
If GetExtensionPart (play$) <> "m3u" : play$ = play$ + ".m3u" : EndIf
If pathaud$ = GetPathPart (play$)
CreateFile (0, play$)
WriteStringN ( "#EXTM3U" )
FirstElement (aud())
Repeat
If aud() <> ""
WriteStringN ( GetFilePart (aud()))
NextElement (aud())
Else
Q = 1
EndIf
Until Q = 1
CloseFile (0)
ElseIf FindString (pathaud$, GetPathPart (play$), 0) <> 0
CreateFile (0, play$)
WriteStringN ( "#EXTM3U" )
FirstElement (aud())
Repeat
If aud() <> ""
WriteStringN ( RemoveString (pathaud$, GetPathPart (play$)) + GetFilePart (aud()))
NextElement (aud())
Else
Q = 1
EndIf
Until Q = 1
CloseFile (0)
Else
CreateFile (0, play$)
WriteStringN ( "#EXTM3U" )
FirstElement (aud())
Repeat
If aud() <> ""
WriteStringN (aud())
NextElement (aud())
Else
Q = 1
EndIf
Until Q = 1
CloseFile (0)
EndIf
Else
MessageRequester ( "Information" , "vous n'avez pas spécifié un fichier d'enregistrement, désolé arrêt du programme" )
EndIf
Else
MessageRequester ( "Information" , "vous n'avez selectionné aucun fichier audio, désolé arrêt du programme" )
EndIf
OpenWindow (0, 0, 0, 290, 44, #PB_Window_ScreenCentered , "Voulez vous quittez le programme?" )
CreateGadgetList ( WindowID ())
ButtonGadget (10, 10, 10, 130, 24, "Oui" )
ButtonGadget (11, 150, 10, 130, 24, "Non" )
Repeat
Select WaitWindowEvent ()
Case #PB_EventGadget
Select EventGadgetID ()
Case 10
Quit = 1
Case 11
CloseWindow (0)
ClearList (aud())
Goto redemar
EndSelect
EndSelect
Until Quit = 1
EndIf

Publié : sam. 19/nov./2005 11:03
par AWEAR
Essaye le code suivant que je viens de faire vite fait qui envoi un messagerequester quand la musique est fini, mais tu peut faire ce que tu veux a la place, par exemple lire la musique suivante..:wink:

Code : Tout sélectionner

InitMovie()
OpenWindow(0, 0, 0, 150, 150, #PB_Window_SystemMenu, "")
LoadMovie(0, "nom_de_la_musique")
PlayMovie(0, WindowID())
Repeat 
x = MovieStatus()
Delay(100)
Until x = MovieStatus()
MessageRequester("Terminé", "La lecture du média est fini")