[YAML ou NR] lecture mp3 du repertoire /media/ sur google home

lecture de fichier mp3 du dossier /media/

coucou les gens !

pour faire court (je vais essayer)… j’ai monté un une clef usb dans le répertoire /media/ de HA, jusque là pas de soucis, les mp3 que je copie/colle apparaissent bien dans la rubrique Média de ma barre latérale :

/!\ en choisissant le lecteur, ils sont bien diffusés sur mon google home en cliquant dessus .

mon objectif :
lire un mp3 du repertoire /media/ à partir d’un élément déclencheur.

LE PROBLEME
ça marche pas… lol
Pour TEST dans NR : je peux déclencher la lecture d’un mp3 sur un mediaplayer, (mp3 qui se trouve dans le dossier local/www) via l’url http://192.168.1.219:8123/local/music/02 Girls Got Rhythm.mp3 et cela diffuse le mp3 surmon media_player google home OK

MAIS je souhaite diffuser les mp3 à partir du repertoire /MEDIA/ prévu à cet effet

aperçu Node Red avec le lien vers WWW et non vers MEDIA:

alors oui le WWW de mon LAN est accessible mais le répertoire /media/ ne le serait pas ?? alors que c’est son un peu son objectif je trouve…

une idée?

Ma configuration


System Health

version core-2021.5.2
installation_type Home Assistant Supervised
dev false
hassio true
docker true
virtualenv false
python_version 3.8.9
os_name Linux
os_version 5.4.51-v7l+
arch armv7l
timezone Europe/Paris
Home Assistant Community Store
GitHub API ok
Github API Calls Remaining 5000
Installed Version 1.12.3
Stage running
Available Repositories 789
Installed Repositories 41
Home Assistant Cloud
logged_in true
subscription_expiration 21 mai 2021, 2:00
relayer_connected true
remote_enabled true
remote_connected true
alexa_enabled false
google_enabled true
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Raspbian GNU/Linux 10 (buster)
update_channel stable
supervisor_version supervisor-2021.04.3
docker_version 19.03.13
disk_total 458.3 GB
disk_used 35.1 GB
healthy true
supported failed to load: Unsupported
supervisor_api ok
version_api ok
installed_addons Samba share (9.3.1), File editor (5.3.0), Terminal & SSH (9.1.1), Hass.io Google Drive Backup (0.100.0), deCONZ (6.7.2), Node-RED (9.0.1), InfluxDB (4.0.6), Grafana (6.3.3), ESPHome (1.16.2), Portainer (1.5.0), Mosquitto broker (5.1.1), APC UPS Daemon (1.9), Glances (0.12.1)
Lovelace
dashboards 2
resources 38
views 24
mode storage
___

En YAML : → Media Source - Home Assistant

Dans un bouton :

type: button
tap_action:
  action: call-service
  service: media_player.play_media
  service_data:
    media_content_type: music
    media_content_id: >-
      media-source://media_source/local/12 - Musiques/HA/007 - YAML ne meurt jamais.mp3
  target:
    entity_id: media_player.cuisine
hold_action:
  action: none
icon: 'mdi:speaker'

Dans une automatisation :

alias: HACF - media player
description: ''
mode: single
trigger:
  - platform: state
    entity_id: input_boolean.hacf
    to: 'on'
condition: []
action:
  - service: media_player.play_media
    data:
      media_content_type: music
      media_content_id: >-
        media-source://media_source/local/12 - Musiques/HA/007 - Le Node-RED ne suffit pas.mp3
    target:
      entity_id: media_player.cuisine

T’aime mes chansons ?

:wink: :heart:

3 « J'aime »

j’avoue que c’est bien trouvé ! :smiley: :notes: :nodered: :notes:

1 « J'aime »

bon bah ca marche plutot bien :slight_smile:

j’ai modifié le

media_content_type: audio

type: button
tap_action:
  action: call-service
  service: media_player.play_media
  service_data:
    media_content_type: audio
    media_content_id: 'media-source://media_source/media/DJ-YAML/Funky NodeRed/Best_of_Carlos tirlipimpon sur le chiwawa.mp3'
    extra:
      thumb: '/local/music/carlos.png'
      title: Best of Carlos Big Bisous
  target:
    entity_id: media_player.salon
hold_action:
  action: none
icon: 'mdi:speaker'

j’ai rajouté dans mon configuration.yaml

homeassistant:
  media_dirs:
    media: /media

Les mp3 se trouvent bien dans le répertoire Media et apparaissent ainsi dans la Media Browser et ca c’est cool.
Reste à exclure ce répertoire de la sauvegarde ^^

Du coté NodeRed, le noeud Cast est moins pratique qu’un noeud Call Service, en effet le noeud cast est une commande envoyé au media_player (google home par ex) mais la musique est diffusée en front end par HA, donc GH ne connais pas le media_dirs …seulement un chemin url (en local ou exterieur) comme http://xxxx/local/xxxx ou en https avec nabucasa par exemple…mais toujours pointant sur le repertoire www.
Avec le noeud Call service, c’est tout simple, une simple reproduction du yaml en respectant le format json notamment pour les extra key :

{
    "media_content_type": "audio",
    "media_content_id": "media-source://media_source/media/Dr NR/feat snoop Yaml/Still Node.mp3",
    "extra": {
        "title": "Still Node",
        "thumb": "/local/music/Dr Node and Snoop Yaml.png"
    }
}


reste à faire aussi un fichier playlist, le m3u ne semble pas être lu.

merci @Clemalex :kissing_heart: mes goûts musicaux ne sont pas pire que les tiens :smiley:

1 « J'aime »

Pourrait-on savoir pourquoi ? Et sur quelle documentation tu t’es basé

Oui tu peux lol

Parce qu avec music ça ne fonctionnait pas :rofl: je ne sais plus j ai trouvé plusieurs doc sur media_player et média_dir avec des exemples. Il sembleraiy qu’en fonction de la marque de ton media_player (sonos, GH…) il y aurait quelques differences
Et pour le média content type sur NR c est audio/mp3
Cela permettrais d indiquer le format de fichier envoyer au media_player…

J’avoue avoir lu video/mp4 dans la documentation…

1 « J'aime »