Coder Social home page Coder Social logo

sinuous's Introduction

Sinuous

dependency status CI

Sinuous is a simple TUI for controlling local Sonos speakers.

It currently allows you to cycle through the different groups (zone players), displays the current track, and the current queue.

Note: sinuous directly talks to the Sonos speakers via their local upnp interface, and the speakers are discovered via the SSDP protocol. This means your Sonos speakers need to be on the same network (or visible from your current network).

Key bindings

  • Space: Play / Pause
  • p / n: Skip to previous / next track
  • [ / ]: Adjust volume of the coordinator of the current group
  • Shift+Tab / Tab: Switch to previous / next group
  • q: Quit

To run

Install a recent Rust toolchain via rustup, if you don't already have one, then simply run cargo run.

To get debug logs, run RUST_LOG="sinuous=debug" cargo run. The logs can be found in /tmp/sinuous.log.

Screenshot

screenshot

Todo

  • Allow switching between speakers
  • Support more actions (seek forward, backward, change playing mode, volume...)
  • Display play/pause indicator as well as current play mode (shuffle+repeat)
  • Allow searching for tracks and modify the queue
  • Allow customizing colours
  • Allow specifying speaker to connect to as a command line argument
  • Handle grouping of speakers

sinuous's People

Contributors

abusch avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

sinuous's Issues

sinuous immediately closes upon running

I installed sinuous via the AUR and was excited to give it a try. Unfortunately when I try to run it, it sort of flashes my terminal blank for a split second and then returns back to my prompt.

I tried running with $ RUST_LOG="sinuous=debug" sinuous, and the following gets outputted to the log file:

2022-04-25T23:08:34.933016Z DEBUG sinuous::sonos: Connecting to provided speakers...
2022-04-25T23:08:34.933201Z DEBUG sinuous::sonos: Discovering speakers...
2022-04-25T23:08:35.282712Z  INFO sinuous::sonos: Found 2 speakers
2022-04-25T23:08:35.282745Z DEBUG sinuous::sonos: Starting sonos loop

It looks like it properly discovered my speakers (I have two), but then I guess it just crashes. I don't see any other log or terminal output. Any ideas where to look for what's going wrong?

UPnP discovery for Sonos devices returned non-Sonos devices

When installing from the AUR, and trying to run it the first time I get the following log in /tmp/sinuous.log:

2023-08-02T13:02:02.336207Z ERROR sinuous::sonos: Sonos error err=UPnP discovery for Sonos devices returned non-Sonos device

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.