Skip to content

cross-platform midi player for the webfishing guitar!

License

Notifications You must be signed in to change notification settings

yobson1/webfishing-midi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

webfishing-midi

cross-platform midi player for the webfishing guitar!
Warning ⚠️: the code may or may not be slop, I am not experienced with midi format

Installation & Usage

Linux users may need additional runtime dependencies see here and here
Windows users may need to install Microsoft Visual C++ Redistributable

  • Download the executable for your platform from here
  • Place your midi files in the ./midi directory next to the executable
  • Run webfishing-midi
  • Select a song by typing a name to search and/or using the arrow keys & enter to make a selection
  • Tab over to the game and press backspace to start playing
  • Press right shift to pause/resume playing
  • Press escape to stop playing

Interface

The program uses a simple terminal interface powered by dialoguer you can select a midi by typing a name to search and using the arrow keys & enter to make a selection.

Track selection

When selecting a track you can use the arrow keys to navigate and space to select. Enter to confirm your selection.
If a track has all of it's fields as "Unknown" it is likely a meta track that has no notes and just meta messages for things like tempo changes.

Demo

Kooha-2024-10-20-14-25-17.mp4

Supported platforms

As of now this has only been tested on Linux and Windows but I have taken care to use cross-platform libraries. If you encounter a problem please open an issue and I will try to resolve it

Building

Installing Rust

To build from source you will need to install Rust. Some Linux distros may provide a rust package directly but rustup is recommended, distros may also have a package for rustup. General instructions for installing rust can be found here

  • Install rustup using your Linux distribution's package manager or using the install script. On Windows download and run rustup-init.exe
  • Install the stable toolchain & set it as default with rustup default stable
  • You can now build the project using cargo build

Example installation for Arch

$ sudo pacman -S rustup
$ rustup default stable

Example

$ git clone https://github.com/yobson1/webfishing-midi.git
$ cd webfishing-midi
$ cargo build --release

Acknowledgements

  • Got the note shifting idea/logic from KevAquila his code was used as reference
  • Feature contributions from Peacockli

About

cross-platform midi player for the webfishing guitar!

Topics

Resources

License

Stars

Watchers

Forks

Languages