[3rd party device] Chromecast Audio

Skill name: chromecast-audio-skill

User story:

  • As a music lover, I want to be able to play my songs, playlists and artists through my Chromecast Audio using voice commands so I can enjoy music wherever my Mycroft Device is.
  • As a music lover, I want to be able to search for songs by various attributes so I can find music during other activities such as reading.
  • As a music lover, I want to be able to go to sleep using my Chromecast Audio by playing music for a length of time, and then that music fades out, so I get a good night’s sleep.
  • As a music lover, I want to be able to wake up using my Chromecast Audio by playing a song, first that music fades in and then last several minutes, so I get a good morning.
  • As a music lover, I want to be able to play music in multiple room using multiple Chromecast Audio, so a music can be listened everywhere at the same time or several songs can be played in different rooms.

What third party services, data sets or platforms will the Skill interact with?

Chromecast Audio - https://store.google.com/product/chromecast_audio

Are there similar Mycroft Skills already?

No.

What will the user Speak to trigger the Skill?

  • Play {{song_name}} [in {{room_name}} | everywhere]
  • Play {{playlist_name}} [in {{room_name}} | everywhere]
  • Play {{genre}} [in {{room_name}} | everywhere]
  • Play {{artist}} [in {{room_name}} | everywhere]
  • Play for {{number_of_minutes}} then go to sleep
  • Search for {{playlist_name}} | {{track_name}} | {{album_name}}
  • Next track | Next song
  • Previous track | Previous song
  • What’s playing?

What phrases will Mycroft Speak?

  • Now playing {{song_name}} in {{room_name}}
  • Now playing {{playlist_name}} in {{room_name}}
  • Now playing {{genre}} in {{room_name}}
  • Now playing {{artist}} in {{room_name}}
  • Now playing for {{number_of_minutes}}
  • I found {{search_term}} in {{num_artists}} | {{num_tracks}} | {{num_albums}}. Should I list them?
  • I’m sorry, I couldn’t find any music matching {{search_term}}
  • Playing next track | song
  • Playing previous track | song
  • The current track | song is {{track}}

What Skill Settings will this Skill need to store?

  • Network information for the connection to the Chromecast Audio
  • Last played tracks so the user can do things like “play that last song again” or “what was the last song ?”
  • …

Other comments?

Put any other comments you think are relevant in here

Should the other Chromecast Skill be merged into this one?

Good question, I don’t know ^^.

1 Like

I will see which one gets the most response, and then merge the one with the least responses.

where does it get music, I’m assuming just google play?

No, here is a list of platform where you can get the music from : https://store.google.com/us/product/chromecast_audio_apps?hl=en-US

And it’s huge ! (The list of course… :grin:)

Uhm, but this is a (huge) list of apps that use chromecast as an audio output… which is exactly what it is. The interface you are talking about would be with one of these apps, like spotify (which has a skill), then output spotify to chromecast. Searching would mean, searching IN spotify, then outputting to chromecast, sonos or whatever.

I asked myself the exact same question as @12buntu, and thought you were talking about a local usb disk , or online platform. Not using one of the other apps. Spotify has default chromecast output in it for instance

It seems like this should be an option for audio output from Mycroft itself, not necessarily any of the supported apps in the list. Mycroft support for the individual apps would be handled as skills for those apps. That way the support for ChromeCast Audio would be in place, and any additional skills that come along with an audio component (NPR, Spotify, Google Music, whatever) would already have the ChromeCast Audio support without any additional complications.

3 Likes

You are right ! And it can be the same for all 3rd party devices like Sonos :slightly_smiling_face:

The audio system has a basic proof of concept for chromcast, but we sort of need to redo parts of it to make it more dynamic (and it would be good to find a better chromecast media play than the default one)

Currently it only scans for chromecasts at startup and makes the ones it finds available as targets for audio playback play news on <Chromecast name>

1 Like

I’d really like to see this on an open source based platform so no need for spys like google or spotify.