Cette action affiche un lecteur HTML5 pour un ou plusieurs fichiers (mp3, ogg) présents sur le serveur.

Si une image de même nom existe, elle sera utilisée comme vignette. 
Si le nom du fichier n'est pas indiqué ou contient des jokers, tous les fichiers audio correspondants seront retournés.

🆙 media_audio : affiche un lecteur (HTML5) pour un ou des fichiers audio hébergé sur le serveur

Cliquer pour lire la documentation

il suffit d'indiquer le chemin et le nom du fichier (avec ou sans extension)
pour utiliser toutes les fichiers audio de ce nom dans le dossier.
Si le nom du fichier n'est pas indiqué ou contient des jokers,
tous les fichiers audios correspondants seront retournés
Supporte les formats audio : mp3,ogg
Si une image (jpg,png,webp,gif) existe, elle sera utilisé comme preview (poster)
syntaxe {up media-audio=chemin_vers_audios}
Mot-clés pour le template : ##player##, ##title##, ##image##, ##info##, ##download##
@version: UP-5.1 @license: GNU/GPLv3 @author: lomart @tags: media
  • media_audio: chemin et nom du fichier vidéo ou dossier. caractères joker autorisés

configuration du lecteur vidéo

  • autoplay: lancement automatique du 1er fichier audio
  • muted: coupe le son
  • loop: joue le fichier audio en boucle
  • controls = 1: affiche les boutons de commande
  • preload = auto: mode de chargement du fichier audio : none, metadata, auto.

Mise en forme résultat

  • template (item-template) = ##title## ##player##: modèle de mise en forme d'un item
  • main-tag (block): balise pour le bmoc principal
  • main-style: classe(s) et style pour le bloc principal
  • item-tag = div: balise pour un fichier. forcé à DIV si vide
  • item-style: classe(s) et style pour les blocs des différents morceaux
  • player-style: classe(s) et style pour le lecteur audio
  • title-style: classe(s) et style pour la légende
  • title-tag = div: balise pour le titre du morceau
  • image-default: image utilisée par défaut pour tous les fichiers
  • image-types = jpg,jpeg,png,gif,webp: liste extension des fichiers images acceptés
  • image-style: classe(s) et style pour la légende
  • info-style: classe(s) et style pour les infos
  • download-tag = a: balise pour bouton download. forcé à DIV si vide
  • download-text = lang[en=Download;fr=Télécharger]: texte pour bouton téléchager
  • download-style: classe(s) et style pour la légende. ex: btn btn-primary

Types des fichiers audio acceptés

  • types = ogg:ogg;mp3:mpeg;MP3:mpeg: liste extension fichier et type mime. défaut: ogg:ogg;mp3:mpeg;MP3:mpeg
  • codecs: liste type et codec supportés. ex: ogg:opus,vorbis

Messages si erreur

  • no-audio = lang[en=no audio;fr=aucun fichier audio]: message si audio non trouvée
  • no-support = lang[en=Your web browser does not support HTML5 audio;fr=Votre navigateur Web ne prend pas en charge l\'audio HTML5: message si type audio non supporté

styles

  • id = identifiant instance:
  • css-head (base-css): style ajouté dans le HEAD de la page

Un exemple simple

Il suffit d'indiquer le chemin et le nom d'un fichier audio hébergé localement sur le serveur.

Joyful snowman

Il n'est pas utile d'indiquer l'extension dans le nom du fichier, par défaut tous les types mp3 et ogg sont pris en compte comme audio et les types jpg, png, gif, webp comme image.

{up media-audio=images/audio/joyful-snowman}

Une galerie audio

Si l'argument de media-audio est le chemin d'un dossier, toutes les vidéos du dossier seront affichées. 

{up media-audio=images/audio/fu*}

Un masque permet d'en sélectionner une partie. 
fu* affiche un lecteur pour tous les fichiers commençant par fu. 

Funky
Funny kids

Pour la démonstration de cette action, j'utilise des fichiers audio libre de droits de l'excellent site https://pixabay.com/music

Les fichiers utilisés pour la démo
  • images/audio
    • audio-default.webp
    • credits.md
    • funky.info
    • funky.mp3
    • funky.ogg
    • funky.webp
    • funny-kids.jpg
    • funny-kids.mp3
    • happy-santa.jpg
    • happy-santa.mp3
    • happy-santa.ogg
    • joyful-snowman.mp3
    • joyful-snowman.webp
    • merry-christmas.mp3
    • minimal-tech-ambient.mp3
    • minimal-tech-ambient.ogg
    • science-of-trip-hop.jpg
    • science-of-trip-hop.mp3
Les crédits

Vous pouvez remarquer que les fichiers musicaux existent en version MP3 et OGG et pour certain, une image est disponible. Nous verrons l'utilisation de ces fichiers plus loin dans la démo. credits.md est le fichier affiché à droite. 

La mise en forme

Elle est définie par l'option template. Par défaut, ##title## ##player##, affiche le nom du fichier et le player sur la même ligne.

Une démo et son explication

Funky
📥
"Funky" est un morceau funk et disco amusant et contagieux qui apportera une ambiance et un rythme inégalés à votre projet. Avec des trompettes vibrantes au cœur du morceau, ce morceau est rempli d'un son optimiste et unique qui vous fera bouger sous son influence.
Traduction libre de la page crédit du morceau sur Pixabay
Funny kids
📥
Happy santa
📥
Joyful snowman
📥
Merry christmas
📥
Minimal tech ambient
📥
Science of trip hop
📥
{up media-audio=images/audio/
| main-tag=div
| main-style=p1 bd-red
| item-style=p1 bd-vert mv1 display-block
| player-style=bg-orange p1 bd-arrondi
| download-text=&#x1F4E5
| image-default=images/audio/audio-default.webp | template=[div style="display:flex;width:100%;align-items:center;"]##image## ##title## ##player## ##download # [span title="Download"]%%[/span]##[/div] ##info # [div class="w100 i fs90"]%%[/div]## | css-head=@media(max-width:480px)[#id .upaudio-item > div[flex-wrap:wrap]] }

tous les fichiers audio du dossier images/audio

on entoure la liste avec une bordure rouge

on entoure chaque morceau avec un liseré vert. On surcharge le display:flex par block

on ajoute un padding avec un fond orange et des angles arrondis au lecteur audio 

le texte pour le bouton "télécharger" est remplacé par une icône

l'image à utiliser si aucune image de même nom que le fichier audio

les explications sur template se trouve juste en-dessous

une mediaquerie pour mettre les éléments l'un en-dessous de l'autre sur les mobiles

Le contenu du dossier images/audio avec l'action file-explorer

{up file-explorer=images/audio
| ext-ajax=+md,info
| icon-size=16 | main-tag=div}

Notez l'option ext-ajax qui ajoute les extensions non traitées en standard. Plus d'info sur la démo de file-explorer

audio-default.webp 👁 📥
credits.md 👁 📥
funky.info 👁 📥
funky.mp3 👁 📥
funky.ogg 👁 📥
funky.webp 👁 📥
funny-kids.jpg 👁 📥
funny-kids.mp3 👁 📥
happy-santa.jpg 👁 📥
happy-santa.mp3 👁 📥
happy-santa.ogg 👁 📥
joyful-snowman.mp3 👁 📥
joyful-snowman.webp 👁 📥
merry-christmas.mp3 👁 📥
minimal-tech-ambient.mp3 👁 📥
minimal-tech-ambient.ogg 👁 📥
science-of-trip-hop.jpg 👁 📥
science-of-trip-hop.mp3 👁 📥

Pour aller plus loin sur l'utilisation des mots-clés et du template, consultez l'article sur les mots-clés

Des explications sur le template de l'exemple ci-dessus. 

J'ai ajouté des sauts de ligne au template uniquement pour faciliter la lecture. 

[div style="display:flex;width:100%;align-items:center;"]
  ##image## ##title## ##player## 
  ##download # [span title="Download"]%%[/span]##
[/div]
##info # [div class="w100 i fs90"]%%[/div]##

les premiers champs du template sont centrés dans une flexbox

les champs image, titre et lecteur sont affichés normalement

on ajoute un attribut title au bouton "télécharger"

on ferme le bloc

si des informations existent, elles sont affichées légèrement réduite et en italique dans un bloc div. Plus d'info sur l'utilisation des mots-clés

Les mots-clés

Il est possible de modifier le contenu en utilisant les mots-clés suivants :

##player##

Affiche le lecteur audio HTML5. 

##title##

Affiche le nom du fichier en version agréable à l'œil.

##image##

Affiche dans  l'ordre :

  1. une image de même nom que le fichier musical
  2. une image par défaut définie par l'option image-default
  3. votre image "audio-default.png" dans le dossier custom de l'action
  4. l'image "audio-default.png" par défaut de l'action
##info##

Affiche le contenu d'un fichier de même nom que le morceau avec l'extension .info
Le format HTML est autorisé.

##download##

Affiche un lien pour télécharger le fichier audio. 

Le texte est défini par l'option download-text.
Utilisez les options download-tag et download-style pour la mise en forme.

Les options

Vous pouvez gérer l'exécution des fichiers audio avec des options qui ont les mêmes fonctions que les attributs HTML5 de même nom :

  • autoplay lance automatiquement la première vidéo
  • muted coupe le son
  • loop joue la vidéo en boucle
  • controls pour afficher les boutons de commande
  • preload pour précharger les vidéos. Les valeurs admises sont : none, metadata ou auto

La mise en forme est gérée par les options :

  • template définit le contenu affiché à l'aide de mot-clés. Voir l'utilisation des mots-clés
  • main-tag et main-style 
  • item-tag et item-style 
  • player-style 
  • tite-tag et title-style 
  • image-style. image-types; image-default 
  • info-style 
  • download-text contient le texte proposant le téléchargement. download-tag et download-style 

La gestion des vidéos acceptées est effectuée en utilisant deux options :

  • types qui contient la liste des extensions de fichier avec le type mime correspondant. Par défaut: mp4:mp4;webm:webm;ogv:ogg
  • codecs est la liste des codec supportés par type mime. ex: ogg:theora,vorbis; webm:vp8.0,vorbis

En cas d'erreurs, deux options définissent les messages affichées :

  • no-video si aucune vidéo n'est trouvée dans le dossier
  • no-support si le type de la vidéo n'est pas supporté par le navigateur client

Comme à son habitude, UP propose les options id et css-head pour identifier l'instance de l'action et ajouter du CSS libre.

N'oubliez pas le petit bandeau bleu au début de toutes les démos qui contient une description et les options directement lues dans le code de l'action. En cas de doute, la vérité est à cet endroit.
Pour info, cette page utilise 38 action(s) :
div (3) upactionslist (1) tabslide (1) toc (1) flexauto (6) media-audio (3) readmore (2) treeview
  (1) folder-list (1) markdown (1) popover (1) icon (14) file-explorer (1) csv2def (1) jcontent-info (1)
  • Les underscores sont convertis en tirets
  • les tirets simples sont remplacés par des espaces.
  • Les tirets doubles deviennent des tirets simples.
  • 3 tirets ou plus seront convertis en " -- "
  • Majuscule sur la première lettre