All Projects → isalin → TBbard

isalin / TBbard

Licence: other
Automated FFXIV Bard Performer (Now with MIDI support!)

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to TBbard

Drywetmidi
.NET library to read, write, process MIDI files and to work with MIDI devices
Stars: ✭ 204 (+436.84%)
Mutual labels:  midi, playback
syn2midi
Create pianobooster midi from youtube piano video lessons (Synthesia).
Stars: ✭ 42 (+10.53%)
Mutual labels:  midi
midi2cv
Use a simple Python script, a few wires, and a MCP4725 to convert any MIDI signal to a control voltage.
Stars: ✭ 26 (-31.58%)
Mutual labels:  midi
ACT DFAPlugin
FFXIV Duty Finder Assist for ngld/OverlayPlugin
Stars: ✭ 48 (+26.32%)
Mutual labels:  ffxiv
cordova-plugin-playlist
🎶 A Cordova plugin for Android and iOS with native support for audio playlists, background support, and lock screen controls 🎶
Stars: ✭ 32 (-15.79%)
Mutual labels:  playback
tayuya
Python library to generate guitar tabs from MIDI files
Stars: ✭ 52 (+36.84%)
Mutual labels:  midi
guitar-tabs-to-MIDI
A program that converts Guitar Tabs into MIDI files.
Stars: ✭ 38 (+0%)
Mutual labels:  midi
tune
Make xenharmonic music and create synthesizer tuning files for microtonal scales.
Stars: ✭ 73 (+92.11%)
Mutual labels:  midi
midi-grid
DIY midi controller project
Stars: ✭ 60 (+57.89%)
Mutual labels:  midi
MidiAnimationExample
An example of use of the MIDI animation track with Unity Timeline
Stars: ✭ 67 (+76.32%)
Mutual labels:  midi
midica
A Music programming language. Translates source code into MIDI. Includes a player. Supports MIDI-Karaoke. Includes a MIDI analyzer.
Stars: ✭ 57 (+50%)
Mutual labels:  midi
DoMiSo-genshin
Genshin impact Lyre Automatic player
Stars: ✭ 76 (+100%)
Mutual labels:  midi
JZZ-midi-SMF
Standard MIDI Files: read / write / play
Stars: ✭ 28 (-26.32%)
Mutual labels:  midi
learn-push2-with-svelte
Learn chords, scales, and music theory on the Push 2, right inside your web browser!
Stars: ✭ 37 (-2.63%)
Mutual labels:  midi
kpop midi
MIDI transcriptions of kpop songs. Most examples focus on piano chord progressions.
Stars: ✭ 22 (-42.11%)
Mutual labels:  midi
facet
Facet is a live coding system for algorithmic music
Stars: ✭ 72 (+89.47%)
Mutual labels:  midi
amanuensis
The Amanuensis is an automated songwriting and recording system aimed at ridding the process of anything left-brained, so one need never leave a creative, spontaneous and improvisational state of mind, from the inception of the song until its final master. See the README for instructions and feel free to message me at soundcloud.com/to_the_sun.
Stars: ✭ 30 (-21.05%)
Mutual labels:  midi
JobBars
A plugin for XIVQuickLauncher which provides extra job bars
Stars: ✭ 31 (-18.42%)
Mutual labels:  ffxiv
ffxiv-triple-triad
Another Triple Triad tracker for Final Fantasy XIV
Stars: ✭ 17 (-55.26%)
Mutual labels:  ffxiv
LabMidi
Midi IN and OUT. Standard midi file parser and player. Midi Softsynth implementation.
Stars: ✭ 38 (+0%)
Mutual labels:  midi

Note: If nothing happens in FFXIV on playback, you might need to run the application as administrator (right-click the .exe version and "Run as administrator"). Drag and drop does not work when run as admin.

TBbard

TBbard is a java application for playing back MIDI files in FFXIV using the Bard performance system.

Example Usage

Instructions

Notes can be extracted by dragging and dropping a MIDI file onto the application or by clicking "Open" and navigating to the intended file. You can then select the instrument to play back.

Alternatively, it's also possible to manually enter or edit the "sheets".

For the automated music playback feature to work:

  1. In FFXIV, make sure the perform interface is open and that your character is ready to play.
  2. Drag and drop the file to play, or navigate to the file by using the "Open" dialog (or enter your own notes!).
  3. Click Play.
  4. Tab back to FFXIV, and make sure it's the currently selected window.
  5. Playback should start after the Start Delay.

Exe or jar

The .exe version is just a wrapper for the .jar version. It's mainly intended as a convenient way to quickly run the application as admin. You still need to have java installed!

UI description

  • WaitMultiplier is a value that will be multiplied with every wait command. This can make some of the faster songs sound a lot better.

  • Min FPS is the minimum fps value that you're experiencing at the current in-game location. FFXIV's UI input is limited by your FPS and a delay is needed in-between clicks. Note: If you "uncap" your fps to a value higher than your monitor supports, you can still use the higher value.

  • Start delay is the delay (in seconds) between pressing Play and the application beginning playback. This is to make sure you have time to tab back into FFXIV and move the mouse to the appropriate spot.

  • Octave Target FFXIV's perform system is limited to three octaves, whereas midi can have up to ~10 octaves. TBbard will attempt to convert the notes to sound reasonable, but for some songs you might want to adjust the target octaves. The percentage indicates the portion of the song that's accurately playable in that octave.

  • Use full keyboard layout means that TBbard will try to use the layout specified in the screenshot (check out the "Full keyboard layout" section below, or click the [?] in the application for more info). This greatly reduces latency and is highly recommended, since it doesn't have to keep pressing and holding ctrl/shift which will delay everything by an extra frame.

  • Hold long notes if selected, it'll hold every note prefixed with "h" or "hold" until another note is to be played or it gets a "release" command. If unchecked it'll just ignore the hold part, and play as it has previously with rapid taps for each note. This is recommended to be on for a more accurate playback.

  • Loop will cause the playback to loop indefinitely until it's manually stopped. There's a 1 second delay in-between every loop to let the playback buffer catch back up for fast paced songs.

  • True timings means that TBbard will not ignore the initial wait time for an instrument (ex if the drums start 30 seconds into the song, then with this on, TBbard will wait 30 seconds before it starts playing). This is mainly useful when attempting to sync up multiple player's intruments for compositions, and is otherwise recommended to be off.

  • Instrument refers to the selected MIDI instrument to play.

  • Open lets you manually browse for a file.

Full keyboard layout

If you want to use the full keyboard layout, make sure your keys are bound like this: Full keyboard layout

Q: Why is the layout so weird?

A: Because there are so many international keyboardlayouts, and this way they should all be supported (hopefully).

Syntax

  • The application will understand of the following notes: C(-1), C, C(+1), C#(-1), C#, C#(+1), D(-1), D, D(+1), Eb(-1), Eb, Eb(+1), E(-1), E, E(+1), F(-1), F, F(+1), F#(-1), F#, F#(+1), G(-1), G, G(+1), G#(-1), G#, G#(+1), A(-1), A, A(+1), Bb(-1), Bb, Bb(+1), B(-1), B, B(+1).

  • There is no need to write the parenthesis. "C-1" will work in place of "C(-1)".

  • Line break is interpreted as a division between two notes.

  • Typos and malformed notes are simply ignored.

  • The character "w" followed by numbers, is interpreted as a "wait" command. The numbers is the time to wait in milliseconds. For an example, "w3500" would mean waiting for 3500 milliseconds (3.5 seconds).

Limitations

  • Bards in FFXIV are limited to 3 octaves, whereas MIDI files are capable of playing back ~10 octaves. The application will attempt to convert this in a reasonable way. Unfortunately, some songs simply won't sound recognizable.

  • If you're running the application with User Account Control active, you might have to run TBbard as administrator. To do this conveniently, use the .exe version, right-click it and select "Run as administrator".

  • The drag and drop system doesn't work if the application is run as administrator.

FAQ

Will this work with the mac version?

That doesn't appear to be the case. Unfortunately, I don't have a mac for testing it out at the moment.

Why is there a number next to each instrument?

The number reflects the midi channel index and is mostly intended for people making their own midi files for playback.

I have an issue, but I'm not sure if it's a bug or not?

Feel free to open an issue, chances are that other people are having the same problem and I just haven't noticed!

I want to play around with the code. How do I get this to compile?

Personally, I use eclipse. All you need to do after importing the project is get JavaFX working. In eclipse, this means:

Eclipse > Help > Install New Software... > Select your release in the "Work with: " dropdown > Find and install "e(fx)clipse" in the list

More detailed install instructions can be found here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].