/opencubicplayer

Open Cubic Player (unix fork). Music visualizer for various tracked music formats, chiptunes and other formats related to demoscene

Primary LanguageCGNU General Public License v2.0GPL-2.0

What is it?

UNIX port of Open Cubic Player, which is a text-based player with some few graphical views. Visual output can be done through nCurses, Linux console (VCSA + FrameBuffer), X11 or SDL/SDL2. It can be compiled on various different unix based operating systems.

Screenshot

What can it play?

Amiga style modules files with more (Amiga compressed files will be decompressed using ancient):

Code from STYMulator to play music from Atari ST (Yamaha YM2149):

  • *.YM

Fork of libsidplayfp to play music from C64 (SID 6581/8580):

  • *.SID
  • *.RSID

Code from aylet to play music from ZX Spectrum/Amstrad CPC (Yamaha YM2149):

  • *.AY

Audio Files (both compressed and PCM styled):

  • *.WAV
  • *.OGG
  • *.FLAC
  • *.MP2
  • *.MP3

Audio CDs: Linux support only, using digital read out API

  • *.CDA

Fork of TiMidity++ is used to play MIDI:

  • *.MID

AdPlug can read a wide range of music formats designed for the OPL2/OPL3 Adlib sound chip. Examples:

HivelyTracker tracked music, using code from the original tracker repository:

Manual Page

https://manpages.debian.org/testing/opencubicplayer/ocp.1.en.html

Usage

escesc: exit the program

alt + k: List the available keyshort-cuts in the current view

While playing

Note: if letters are capital, press them with shift

Enter: next file from the playlist, if playlist is empty it opens the file-browser

f: File-browser

<: Rewind

>: Fast Forward

a: Text FFT analyzer, A: toggle FFT analyzer, tab, toggle colors

b: Phase viewer

c: Text Channel viewer

d: Start a shell (only works if using the console/curses version)

s: un/Silence channel

q: un/Quiet other channels (solo/unsolo)

t: Text Track viewer

g: Lo-Res FFT analyzer + history G: High-Res FFT analyzer + history

o: Oscilloscope

v: Peak power level

w: Wurfel mode (requires animation files to be present)

m: Volume control

n: Note dots

x / alt + x: Extended mode / normal mode toggle

': Link view

, / .: Fine panning

+ / -: Fine volume

* / /: Fine balance

Backspace: Toggle filter

f1 / ? / h: Online Help

f2: Lower Volume

f3: Increase Volume

f4: Toggle Surround

f5: Panning left

f6: Panning right

f7: Balance left

f8: Balance right

f9: Decrease playback speed

f10: Increase playback speed

\: Toggle pitch/speed lock (if fileformat makes this possible)

f11: Decrease playback pitch

f12: Increase playback pitch

File browser

alt + e: Edit meta-information

alt + i: Toggle file-list columns (long filename, title, etc.)

alt + c: Opens a system options list

Insert: Add to playlist

Delete: Remove from playlist

Tab: Move cursor between filelist and playlist

Original

https://www.cubic.org/player/

Installing binaries on Linux

https://repology.org/project/ocp-open-cubic-player/versions

Unifont.ttf?

When you compile/install and have enabled X11/SDL/SDL2 support, the unifont TTF files are needed. This is a 8x16 font that has a main goal of being UTF-8/Unicode complete. For special scripts it will look incorrect, but the character-set should be complete.

In most systems this font will be installed in /usr/share/fonts/truetype/unifont/ or /usr/share/fonts/opentype/unifont/ . If this path is different for your system, you can provide the correct path with ./configure --with-unifontdir-ttf=/your/path and/or ./configure --with-unifontdir-otf=/your/path .

If the font-files on your system is not named exactly "unifont.ttf", "unifont_csur.ttf" and "unifont_upper.ttf", you can instruct alternative filenames using ./configure --with-unifont-ttf=/your/path/UniFont.ttf --with-unifont-csur-ttf=/your/path/UniFont-CSUR.ttf --with-unifont-upper-ttf=/your/path/UniFont-Upper.ttf" . Same for opentype version of the files by using --with-unifont-otf --with-unifont-csur-otf and --with-unifont-upper-otf . If the filenames on your system contains version numbers, we ask you to fill a bug-report to your system provider and ask them to add symlinks without version numbers in them.

Installing on macOS

brew install ocp

more notes about Darwin

If you use liboss, you might need to edit /opt/local/lib/pkgconfig/liboss.pc and remove -Wno-precomp (liboss 0.0.1 is known to be broken and crashes, so we discourage the use of liboss)

To configure Darwin, my experience is that you need to run configure like this:

PATH=$PATH:/opt/local/bin LDFLAGS=-L/opt/local/lib CFLAGS=-I/opt/local/include CXXFLAGS=-I/opt/local/include CPPFLAGS=-I/opt/local/include CPPCXXFLAGS=-I/opt/local/include ./configure

and optionally add things like --prefix etc.

To get curses up and running with colors, you need to run ocp like this

TERM=xterm-color ocp-curses

Sample sources of where to find music

https://modarchive.org/

http://www.chiptune.com/

http://www.keygenmusic.net/

https://ftp.hornet.org/pub/demos/music/contests/

https://modland.com/pub/modules/

IRC

https://libera.chat in #ocp

Packaging status

Packaging status