Partage
  • Partager sur Facebook
  • Partager sur Twitter

Un playeur audio HTML5 Javascript

Faire une playliste avec des lecteurs audio

    26 septembre 2016 à 10:27:23

    Bonjour à tous,

    J'ai installé sur mon site un lecteur audio nommé Audio.js. le voici : http://kolber.github.io/audiojs/

    Il s'agit d'un lecteur html5. Les actions et le reste en javascript.

    Mon souhait serait le suivant :

    La page de mon site comportera plusieurs lecteurs

    J'aimerais pourvoir faire en sorte que, lorsqu'une musique touche à sa fin, le lecteur se trouvant juste après dans la page commence automatiquement la lecture.

    Pouvez vous m'aider ? mes connaissances javascript ne sont pas très bonne... Il y a t'il un moyen de faire en sorte qu'il detecte la fin d'une lecture et qu'il actionne automatiquement la suivant.

    Ca peut se faire en Jquery aussi… ?

    en vous remerciant vivement,

    voici le script d'intégration javascript :

    <script src="audiojs/audio.min.js"></script>

    <script>

          audiojs.events.ready(function() {

            audiojs.createAll();

          });

     </script>

    l'intégration en html :

    <audio src="musiques/ma_musique1.mp3" preload="metadata"></audio>

    <p>contenu</p>

    <audio src="musiques/ma_musique2.mp3" preload="metadata"></audio>

    -
    Edité par teomyuz 27 septembre 2016 à 16:59:16

    • Partager sur Facebook
    • Partager sur Twitter
      28 septembre 2016 à 10:00:48

      Aucun de vous n'a une idée ?

      :ange:

      • Partager sur Facebook
      • Partager sur Twitter
        28 septembre 2016 à 11:04:16

        Ne te prends pas la tête et passe par des listes de lectures dans lesquelles tu mets tous tes fichiers audio.

        Automatiquement le prochain sera lu dès la fin du morceau en cours.

        Et tu peux aussi t'entrainer et faire ton script toi-même pour ajouter ta surcouche JS à ton player.

        C'est pas très très compliqué et tu auras quelque chose d'adapté, sans superflu =)

        Ealon

        • Partager sur Facebook
        • Partager sur Twitter
        Kwo:re / topic OC | Aidez les autres, indiquez un sujet résolu ! | Vous êtes bloqué ? Suivez le guide ! | N'aide pas par MP
          28 septembre 2016 à 11:06:20

          Salut,

          Je ne sais pas trop comment fonctionne ton player, j'ai pas trop le temps de regader la doc, mais en gros faut que tu captes l'événement de fin d'une track pour lancer la seconde.

          Un truc du genre

          $('#player1').player({
              //Tes params style:
              autoplay : true,
              //Ensuite:
              onEnded : function(){
                  $('#player2').player('play');
              }
          });

          C'est vraiment indicatif, faut que tu regardes selon les événements de la doc

          • Partager sur Facebook
          • Partager sur Twitter
          Quand tu ne sais pas, Google reste ton meilleur ami ! ;)
            28 septembre 2016 à 12:51:33

            Bonjour Ealon,
            merci pour ta remarque. Malheureusement je ne peux pas. Chaque fichier audio est commenter, il a donc un emplacement précis sur la page - et j'accorde beaucoup d'importance au design d'un site. Un player multiple ne peut pas détacher les fichiers audios comme j'aimerais le faire.
             
            Bryan,
            C'est en effet dans cette direction que j'aimerais me pencher. Mais les balises audio sont standards, ils n'ont pas d'id personnel. Malgré tout, ils se jouent indépendamment en utilisant un seul et même code javascript… 
            Se ne serait donc pas "player1" mais "playeur en cour de lecture"...
            En jQuery on utiliserai $(this) pour définir l'élément en cours mais peut-il être associé à une lecture audio ?
             
            En revanche, j'ai inséré dans ma page un script qui permet de couper le son d'un fichier audio déjà en lecture lorsque l'on appuie à nouveau sur le bouton play d'un autre lecteur. 
            Pourrait-il nous aider à construire un autre script qui permettrait de lire  "le prochain événement audio se trouvant sur la page des que le fichier audio en lecture touche a sa fin". Ou peut être que ce code est hors sujet...
             
            Voyez bien que je suis embarrassé… j'ai l'impression d'être "assisté" :D
            Javascript est un gros manque encore pour moi.
             
            Merci encore.
            <script>
                document.addEventListener('play', function(e){
                var audios = document.getElementsByTagName('audio');
                for(var i = 0, len = audios.length; i < len;i++){
                    if(audios[i] != e.target){
                        audios[i].pause();
                    }
                }
            }, true);
            </script>

            -
            Edité par teomyuz 28 septembre 2016 à 12:52:50

            • Partager sur Facebook
            • Partager sur Twitter
              28 septembre 2016 à 13:46:58

              Si ce sont les evenements HTML5 alors tu as l'événement "ended"

              Vu que tu n'as que trois player tu peux faire un truc du style

              <script>
                  document.addEventListener('play', function(e){
                  var audios = document.getElementsByTagName('audio');
                  for(var i = 0, len = audios.length; i < len;i++){
                      var last = len - 1;
                      if(i != last){ //Si ce n'est pas le dernier on lance le suivant
                          audio[i].ended = function(){
                              var next = i +1;
                              audio[next].play();
                          }
                      }
                      else{ //Sinon on relance le premier
                          audio[last].ended = function(){
                              var next = 0;
                              audio[next].play();
                          }            
                      }
                  }
              }, true);
              </script>



              • Partager sur Facebook
              • Partager sur Twitter
              Quand tu ne sais pas, Google reste ton meilleur ami ! ;)
                30 septembre 2016 à 9:57:24

                Bonjour Bryan et merci,

                Malheureusement ça ne fonctionne pas. Pourtant c'était exactement ce genre de script que je rechercher. Peut-être es-ce la cause de l'originalité du playeur Audio.js. De plus, l'ajout de ce script rend la navigation sur la time line impossible (on ne peut plus avancer sur le morceau de musique). J'ai fait plusieurs tentative en changeant quelques éléments mais rien n'y fait...

                Je devrais peut être aller sur un forum dédié à Audiojs... J'attends encore un peu.

                Encore merci pour on aide.

                • Partager sur Facebook
                • Partager sur Twitter
                  30 septembre 2016 à 10:11:04

                  Essaye de te tourner vers un autre player sinon. JWplayer est super cool, j'ai eu l'occasion de l'utiliser et j'ai été très satisfait. De plus, il permet de faire ce que tu veux si mes souvenirs sont bons ;)

                  https://www.jwplayer.com/

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Quand tu ne sais pas, Google reste ton meilleur ami ! ;)

                  Un playeur audio HTML5 Javascript

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown