Media_player:play_media ...how to get the media_content_id: value

I found several posts asking how to get the magic media_content_id:.
jjlawren posted the answer [Media player: Play media --> How to get the content ID? - #3 by jjlawren], but I found it still a bit cryptic. Today I went back to Radio_browser integration page. It still says

When creating an automation, use the Play Media action to pick a station from the directory.

I guess this hint gives a clue to experienced HA developers - but is far too subtle for new non-developers.

More detailed instructions are …

  1. Going to Settings > Automations & Scenes > create automation > Create new automation.

  2. In the New Automation page, under the “then Do” section, click [+ Add Action] .

  3. On the Add action pop-up, select “media Player”, then the first “Play media” option - NOTE that there are 2 options both labelled “Play media” - you want the one with subtitle “Play media on media player”; and NOT the one with subtitle “Starts playing specified media”. You should now see:

  4. Select your media player, then pick the media (audio) file you wish to play (it uses the HA Media Sources pop-up, so you can select local files (in the /media/ folder in HAOS, or a NAS share configured on Settings > System > Storage as a Media usage), Radio Browser (if installed), an installed Text-to-speech provider, … or I guess most anything installed in HA. It should now look similar to

  5. Having selected the music to play, use the vertical 3-dots button to select the “Edit in YAML” option, and hey presto, there in the “data:” section is the media_content_id: that you can copy and paste into lovelace buttons, other automations, etc. There are also the title: and thumbnail: parameters provided by Radio Browaser.


Note that the same media selector is not available in the Developer Tools, where I had expected it.

Or play the station and the media_content_id is an attribute of the media_player entity.

Playing the same Radio station from my initial post (ABC Classic FM MP3) and then looking at HA > Developer Tools > States for my Kitchen Speaker shows a different media_content_id value (though they both work).

A bit more explanation for new users…
The radio-browser.info website maps their station ID to the current actual stream, which we see in the Developer Tools. Using the actual stream will start the music playing a little quicker - but if the station changes their streaming provider, we have to go back to radio-browser.info and look it up again to find the new stream URL.


Similarly, Developer Tools also shows local filenames translated into URLs

HAOS exposes the /media/ folder on the HA machine (mine is 192.168.1.98)

The file /media/Il Volo/04-smile.mp3 is translated to media_content_id: http://192.168.1.98:8123/media/local/Il%20Volo/04-Smile.mp3

We can use the Settings > System > Storage to map a samba or NFS folder into the /media/ folder. In my case “_Media” is the samba share which contains music. Playing on of the songs therein gives the
media_content_id: http://192.168.1.98:8123/media/local/_Media/Music/_NZ%20Music/Bic%20Runga/All%20Fall%20Down.mp3