|
GRUPOS DE DISCUSSÃO PROFISSIONAL WINDEV, WEBDEV e WINDEV Mobile |
| | | | | |
Lire les fichier son les uns apres les autres |
Iniciado por Christ_8021, ago., 09 2020 7:57 PM - 5 respostas |
| |
| | | |
|
| |
Publicado em agosto, 09 2020 - 7:57 PM |
Bonsoir,
Je travaille sur un petit programme qui utilise une base de donnée, qui regroupe les historique des bataille de la 2e GM. Je souhaiterai que lorsque l'ont parcoure les enregistrements des fichiers son soient lus (musique de fond). Avec un fichier cela fonctionne avec ce code : MultimédiaOuvre(MM_Multimedia1,"B:\Projet\Bataille_2GM\Musiques\Siegfried_line.mp3") MultimédiaJoue(MM_Multimedia1) Malheureusement je ne sais pas comment faire pour lire le fichier suivant à la fin du précédent (sans passer par une bd.
Si quelqu'un peut me donner quelques pistes...
Cordialement. |
| |
| |
| | | |
|
| | |
| |
Membro registado 227 mensagems Popularité : +18 (20 votes) |
|
Publicado em agosto, 10 2020 - 12:33 PM |
Bonjour Christ_8021,
Si je vous ai bien compris. Vous avez une bdd qui contient vos historique des bataille de la 2e GM Vous les afficher à l'utilisateur et quand ce dernier choisi une bataille (dans une liste, une table...) vous voulez lancer une musique spécifique qui correspond à la bataille Dans ce cas la, vous savez déjà sur le papier comment relier les musiques avec les batailles donc oui vous n'avez plus qu'à les relier dans votre bdd (le titre de la musique)
Vous faites la liste des musiques à jouer pour la bataille Je ferrais une procédure en parallèle pour pas bloquer votre utilisateur où à l'intérieur je ferait quelque chose du genre: - recherche des musique à jouer dans la bdd en fonction de la bataille - recherche des musiques sur le disques MultimédiaFerme ou MultimédiaFin pour arrêter le son de la bataille précédente si il y en a une tester avec MultimédiaEtat MultimédiaOuvre MultimédiaJoue MultimédiaDurée https://doc.pcsoft.fr/fr-FR/?1000017211&name=multimediaduree_fonction ===> pour savoir quand jouer la prochaine musique on attend en parallèle que la musique soit fini et on lance la prochaine
Qu'il n'y ait qu'une chanson ou toute une playliste à jouer à chaque fois il faut juste que quand l'utilisateur passe à la bataille suivante ( action à déclencher au clique ou à la sélection dans la table) vous lancez votre procédure qui va couper la musique en cour et lancer les nouvelles l'une après l'autre.
En espérant avoir pu vous aider. Cordialement |
| |
| |
| | | |
|
| | |
| |
Publicado em agosto, 10 2020 - 1:14 PM |
Bonjour,
Ce n'est pas tout a fait ça. Néanmoins je vous remercie d'avoir pris de votre temps et je garde en mémoire votre réponse pour l'utiliser sur un autre programme.
Pour celui que j'essai de produire, l'utilisateur final entendra une playlists de musique (Pour l'instant 4 chansons) qui doit tourner en boucle. Ce que je n'arrive pas a faire c'est que la 2e musique joue a la fin de la première, puis que la troisième se joue à la fin de la seconde.
en vous remerciant encore de votre temps passé.
Cordialement |
| |
| |
| | | |
|
| | |
| |
Membro registado 227 mensagems Popularité : +18 (20 votes) |
|
Publicado em agosto, 17 2020 - 5:21 PM |
Bonjour,
Dans un traitement parallèle tant que le média est ouvert vous pouvez tester l'état du média si il est arrêter avec MultimédiaEtat(<Champ Multimédia>) = MultimédiaEtatArrêt ou si votre fichier média est en position fin avec MultimédiaPosition(<Champ Multimédia>) et MultimédiaDurée(MM_Multimédia1)
quand vous remplissez une des deux conditions vous lancer l'autre média
Note : vous pouvez envisager avec MultimédiaPosition(<Champ Multimédia>) et MultimédiaDurée(MM_Multimédia1) une zone de fondue ou le son est baissé puis raugmenté |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.883 mensagems Popularité : +227 (347 votes) |
|
Publicado em agosto, 17 2020 - 6:33 PM |
Bonjour, Il est aussi possible de se passer du champ multimédia grâce aux fonctions MCI https://doc.pcsoft.fr/?3051010. Une fonction automatisée https://doc.pcsoft.fr/?9000072 qui vérifie régulièrement l'état du MCI via MCIEtat permet de passer automatiquement d'un morceau à l'autre.
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | |
| |
Membro registado 962 mensagems Popularité : +183 (185 votes) |
|
Publicado em agosto, 18 2020 - 7:46 AM |
hello, le champ Multimedia possède un événement fin de fichier atteinte. Voici un exemple pour l'utiliser dans ton cas de figure : 1 : Dans le code de la fenêtre ajouter : dans Déclaration globale :
ListeFicSon est un tableau de chaînes IndFicSon est un entier dans Initialisation de la fenêtre (ou plus tard pour changer la liste suivant la bataille) :
TableauAjoute(ListeFicSon, "M:\test\sons\Morceau1.mp3") TableauAjoute(ListeFicSon, "M:\test\sons\Morceau2.mp3") TableauAjoute(ListeFicSon, "M:\test\sons\Morceau3.mp3") TableauAjoute(ListeFicSon, "M:\test\sons\Morceau4.mp3") Ajouter une procédure locale JouerSuivant :
Procedure JouerSuivant()
IndFicSon++ SI IndFicSon <= ListeFicSon..Occurrence ALORS MultimédiaJoue(Multimédia1,ListeFicSon[IndFicSon])
et dans le champ multimedia appeler cette procédure sur le code de l'événement Fin de fichier atteinte :
JouerSuivant()
Lancer la lecture des fichiers sons comme ceci par exemple :
IndFicSon = 1 MultimédiaJoue(Multimédia1,ListeFicSon[IndFicSon])
-- Ami calmant, J.P |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|