susimup

package module
v0.0.0-...-6327645 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 12, 2019 License: MIT Imports: 13 Imported by: 1

README

susimup

An intentionally simplified music player.

susimup was created to fill the need of a music player that you can let anyone operate under less than ideal conditions while giving said operator as few ways to make a mess of things as possible. The original purpose is as a sound player during live performance where the operator either had very little training/experience using keyboard/screen or is situated where it is not possible to provide them with feedback on what the software is doing. As such it has some limitations that are actually features.

(Non)Features

  • Uses a terminal interface and as a result does not require a desktop environment nor even a display server.
  • Only reads MP3 files
  • Does not read any file metadata (IDv2, IDv3, APEv2 and such). Only diplays the filename
  • Filenames are always listed alphabetically with subdirectories listed first
  • Will not play next track when current one ends. Silence is played instead.
  • If current filename ends in _loop.mp3 the playback will loop indefinitely.
  • Takes only one command line argument: the directory to start in. If none is provided, the current directory is used
  • Can not access directories above the starting directory.
  • When entering a new subdirectory, playback stops.

Controls

  • <Up>/<Down>: Move selection bar up or down.
  • <Enter>: Select item under bar. Mp3 will be played, folder will be accessed.
  • <Backspace>: Go up one directory level unless already at starting directory
  • j: Play next number. If none have been playing, play first number in current folder.
  • h: Play previous number. If none have been playing, play first number in current folder.
  • q: Quit susimup.

Installation

In the near future there will be precompiled executeables available for download, perhaps even an appimage for linux. I will also be looking into bundling the dependency. For now you must build the project yourself.

Prerequsites

This project depends on beep and in turn oto that requires an alsa library to work on linux.

To install the lib on ubuntu do:

sudo apt install libasound2-dev

For other distros take a look at the list of package names here: http://rosindex.github.io/d/libasound2-dev/

Building

Build the music player:

go get github.com/Lynges/susimup
cd $GOPATH/src/github.com/susimup
go build

You can now run the resulting executeable.

To tell susimup where to look for mp3 files, provide the path as an argument: /path/to/susimup /path/to/soundfiles Alternatively you can just move/copy susimup to the folder containing the soundfiles and then: /path/to/soundfiles/susimup

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Start

func Start(basepath string, grid *ui.Grid)

Start handles showing the music player and playing music. basepath is expected to be a string of absolute path to the desired starting directory. manageui tells susimup to init and close its own termui instance.

Types

This section is empty.

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL