Skip to content

Latest commit

 

History

History
99 lines (88 loc) · 3.08 KB

README.md

File metadata and controls

99 lines (88 loc) · 3.08 KB

logitech media server skill

A skill for controlling logitech media server and connected clients

Description

This module controls streaming of content from a Logitech Media Server

Examples

  • "play electronic music"
  • "play artist covenant"
  • "play favorite slay radio"
  • "pause music playback"
  • "identify musical composition"
  • "stop playback"

Credits

Johan Palmqvist [email protected]

Configuring

Install this skill, then go to https://home.mycroft.ai and enter your Logitech Media Server details under Skills->Logitech Media Server Skill

Current state

Working features:

  • play <content>
  • play <content> on <player_name>
  • play artist <content>
  • play favorite <content>
  • play genre <content>
  • play <content> music
  • play playlist <content>
  • play podcast <content>
  • play radio <content>
  • identify musical composition
  • stop music
  • pause music
  • resume music
  • next track
  • previous track
  • increase volume
  • decrease volume
  • maximum volume
  • mute volume
  • unmute volume
  • power off <player_name>
  • power on <player_name>

<content> can be:

  • <song>
  • <song> by <artist>
  • <album>
  • <album> by <artist>
  • <artist>
  • <genre>
  • <favorite>
  • <playlist>
  • <podcast>
  • <radio>

<player_name> can be the valid name of a destination client. You generally only need:

  • <name of squeeze client>

Sound Effects:

To use sound effects as feedback add WAVE files to the skill sounds/ directory using the following names:

  • cachenotupdated.wav
  • cacheupdated.wav
  • nexttrack.wav
  • pause.wav
  • playernotfound.wav
  • playingcontent.wav
  • poweroff.wav
  • poweron.wav
  • previoustrack.wav
  • resume.wav
  • stop.wav
  • volumedown.wav
  • volumemute.wav
  • volumeset.wav
  • volumeunmute.wav
  • volumeup.wav

Known issues:

  • If you have a large library it can take minutes to initialise, and then another chunk of time (tens of seconds) to determine what you specified as <content>. This can be mitigated to some degree by local caching of formatted content and verbally specifying source type when requesting playback of <content>.
  • Running the skill on devices with limited resources may cause out of memory issues if the library is too large (YMMV).
  • If the skill takes too long to respond the CommonPlay system skips the results. This is intermittent even with identical queries.
  • No default set of WAVE files included for sound effects (as alternative to spoken dialogue).
  • Pause/Resume/Next/Previous currently only works on default player

TODO/IDEAS

  • fix bugs
  • better random selection
  • better playlist/radio/podcast handling (radio is currently handled as favorites, which actually seems to work quite well)
  • memory usage optimizations

Action / Logic

When <content> computation matches:

  • song: a single song is played
  • artist: all of the music by the artist is put on randomly
  • album: the album is played in order (unless random mode is specified)
  • genre: all of the music tagged with that genre is put on randomly