diff --git a/Website/download.html b/Website/download.html new file mode 100755 index 0000000..3df2f2b --- /dev/null +++ b/Website/download.html @@ -0,0 +1,170 @@ + + +Piano Booster - Download + + + + + + + + + + + + + + + + + +
+ + +
+ + Home +

Home

+ +

Screen shots

+ +

Features

+ +

Download

+ +

FAQ

+ +

Users Forum

+

Development Forum

+

SourceForge

+ +
+ + + + + + + + + + + + + + + + + +
+ +

Download PianoBooster

+ +

The current version of PianoBooster is 0.6.4

+ +

Requirements

+

+ To run Piano Booster you need a MIDI Piano Keyboard and a MIDI interface for the PC. (If you + don't have a MIDI keyboard you can still try out PianoBooster using the PC keyboard, 'x' is + middle C -- but a MIDI piano is recommend). +

+ To hear the music you will need a General Midi compatible sound synthesizer. Unfortunately + the "Microsoft GS Wavetable software synthesizer" that comes with Windows introduces an + unacceptable delay (latency) between pressing a note and hearing the sound. For this reason + the use of "Microsoft GS Wavetable software synthesizer" is not recommend. Please see the + forum section of this website for possible solutions.

+

MIDI files

+

+ To run PianoBooster you will need some Midi files preferably with right and left piano parts on channels 4 and 3. + Some high quality demo MIDI files that are compatible with + PianoBooster are available here. +

+

Executable for Windows

+

+ There is now an installer/uninstaller for windows. Just download and run this setup program.

+

+

+

+

Executable for The Mac

+

+ Piano Booster has been tested with SimplSynth + for the Mac which can be obtained for free (MIT license). +

+ +

+ Version 0.6.4 for the Mac is coming soon in the meantime here is the previous release. + A universal binary for the Mac (Thanks to Christian). + +

+ +

+

Packages for Linux

+

+ A Ubuntu Package for Piano Booster for the current version 0.6.4 is available here: + +

+

+

+

+

+ Download and install the .deb package that corresponds to your architecture using your favourite package manager. +

+

+ Note: In Ubuntu 9.04 there is an issue with the Intel drivers which that means PianoBooster + performs very badly if you have Intel graphic chips. + Upgrading to Ubuntu 9.10 fixes this problem. +

+

+ A Fedora Package for Piano Booster is available as part of the distribution see: +

+

+ + Note: The packages provided with distributions may not exist or are out of date, + in which case you will have to compile from the source code. + However compiling from source is quite easy on Linux, see the instructions + in the section below. + +

Source Code for all platforms

+

+ Download and uncompress the archive file below and then follow the instructions in + the BUILD.txt file. +

+ +

+

+

+ Compiling on Linux: You need to have the following packages installed cmake, libqt4-dev, libasound2-dev. + and the build-essential packages. Then in the pianobooster/build directory type cmake ../src, then type make + followed by sudo make install. Finally type sudo update-desktop-database to get + 'open with' working in Nautilus. +

+

+ Compiling on Windows: The easiest way to compile on windows download and run LGPL / Free version of + Qt SDK: Complete Development Environment. +

+ + + + + +SourceForge.net Logo + + +
+
+ +
+ + + diff --git a/Website/faq.html b/Website/faq.html new file mode 100755 index 0000000..f4f20a8 --- /dev/null +++ b/Website/faq.html @@ -0,0 +1,237 @@ + + + + + + +Piano Booster - FAQ + + + +
+ + + + + + + + + + + + + + + + +
+ +
+ + Home + +

Home

+

Screen shots

+

Features

+ +

Download

+ +

FAQ

+ +

Users Forum

+

Development Forum

+

SourceForge

+
+ + + + + + + + + + + + + + + + + +
+ +

Frequently Asked Questions

+
+

Where are the music files?

+

Piano Booster uses MIDI music files (.mid) or karaoke files (.kar) to play music +but none of these files are included with the program so you will have to get them from the NET. +In particular there are some high quality demo midi files contained in three zip files +available from this page. +These are demos of commercially produced MIDI files that used to be supplied with music tutor books but now these books are sold without any MIDI files.

+

Also see this thread +on the forum which list useful source of midi files on the net. +Please add to this list if you find any pieces of music that you enjoy playing.

+
+
+

How do I hear the sound on Linux (Ubuntu)?

+

To hear the sound Piano Booster needs a MIDI sound generator, +there are two different General Midi sound generators available on Linux, 'fluidsynth' and 'timidty'. +To install fluidsynth you must install the following packages 'fluidsynth' 'fluid-soundfont-gm' and +'fluid-soundfont-gs' using your favourite package manager. +To start the fluidsynth sound generator type the following on the command line.

+
+fluidsynth -C0 -R0 -r22050 -l -o midi.alsa_seq.id=fs -a alsa -o audio.alsa.device=plughw:0 /usr/share/sounds/sf2/FluidR3_GM.sf2 /usr/share/sounds/sf2/FluidR3_GS.sf2
+
+

If you have a fast machine then you can leave out the flags '-C0 -R0 -r22050' which turns off +the reverb, chorus and reduce the sample rate. The flags '-o audio.alsa.device=plughw:0' +bypasses the Ubuntu Pulse Audio layer which caused a lot of latency delay but unfortunately these flags may also bypass +the desktop volume controls.

+

For more information on running fluidsynth with low latency see this page.

+
+http://fluidsynth.resonance.org/trac/wiki/LowLatency
+

If you get problems with unsteady playback or the audio cutting out then try closing all other programs, +turning off your wireless network and unplug any network cable.

+
+
+

How do I hear the sound on Mac?

+

While there are many possible choices General Midi sound generators +for the Mac (Timidity, FluidSynth or an external MIDI +Synth), the easiest way is to use SimplSynth, which can be obtained for free (MIT license) +from:

+
+http://notahat.com/simplesynth
+

This must be started before Pianobooster, and also allows to load custom Soundfonts.

+
+
+

Why is there a delay between pressing the note and hearing the sound?

+

The delay between pressing the note and hearing the sound is called the latency. +Unfortunately some sound generators introduce a latency delay between receiving +the command to play a note and producing the audible sound. +This unwanted delay can make it extremely difficult to play along with the music.

+

The MS GM Wavetable Synthesizer that comes with Windows also suffers from this problem +as it introduces a noticeable delay of 150 milliseconds (0.15 seconds).

+
+
+

My sound generator has high latency, what can I do?

+

The first thing to do is to turn up the speakers on your piano keyboard +(provided that you are using a piano keyboard that has it's own sound generator) +so that you can hear what you are playing without a delay. +Then aim to use the 'Play Along' mode as much as possible.

+

To use the 'Follow You' mode you will need set the latency value (see the next question) +or alternately use a realtime sound generator with low latency (recommended, For Linux see fluidsynth Low Latency page).

+
+
+

What is the latency fix?

+

The Latency fix aims to counteract the latency delay of the sound generator by deliberately +running the musical accompaniment several milliseconds ahead of what you are playing on the +piano to try and cancel out this delay within the sound generator.

+

The latency value is entered from the 'settings/Midi setup' page. +If you are using the MS GM Wavetable Synthesizer then try entering a value for the delay of 150 mSec.

+

Whenever you set a value for the latency then the instrument sound +for your piano is automatically set to 'None' to mute +the delayed sound of your playing through the sound generator. +Remember to turn up the volume of the speakers on your piano. +If your piano does not have it's own speakers or you are still +using the PC keyboard then this fix will not work, sorry.

+

Unfortunately when you stop playing using the 'Follow You' mode +then the music will stop in the wrong place (because the music +was deliberately being run ahead of your playing). +The use of the latency fix is less than ideal and so the best +solution is to change to different realtime sound generator that has a low latency delay.

+
+
+

What value should I use for the latency fix?

+

To work out the value of the delay first enable the timing markers from the preferences menu. +(These are the white crosses that are drawn over the notes that show when you pressed the note). +Then using the 'Play Along' mode look at the timing markers to see +if you are playing ahead or behind the notes. +If you are playing consistently behind the beat then try increasing +the latency value by say 100 milliseconds. +Conversely if the timing markers show you are playing ahead of the beat +then try decreasing the latency slightly.

+

It is always best to use a value that shows you are +playing slightly ahead of the beat rather than behind the beat. +(This is because Piano Booster in 'Follow You' mode will slow down +the music if you are playing behind the beat.)

+

To disable the latency fix enter a value of zero.

+ + +
+
+ +
+ +
+ + + diff --git a/Website/favicon.ico b/Website/favicon.ico new file mode 100755 index 0000000..fb2bf40 Binary files /dev/null and b/Website/favicon.ico differ diff --git a/Website/html4css1.css b/Website/html4css1.css new file mode 100755 index 0000000..08b8a6d --- /dev/null +++ b/Website/html4css1.css @@ -0,0 +1,272 @@ +/* +:Author: David Goodger (goodger@python.org) +:Id: $Id: html4css1.css 5631 2008-08-24 13:01:23Z goodger $ +:Copyright: This stylesheet has been placed in the public domain. + +Default cascading style sheet for the HTML output of Docutils. + +See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to +customize this style sheet. +*/ + +/* used to remove borders from tables and images */ +.borderless, table.borderless td, table.borderless th { + border: 0 } + +table.borderless td, table.borderless th { + /* Override padding for "table.docutils td" with "! important". + The right padding separates the table cells. */ + padding: 0 0.5em 0 0 ! important } + +.first { + /* Override more specific margin styles with "! important". */ + margin-top: 0 ! important } + +.last, .with-subtitle { + margin-bottom: 0 ! important } + +.hidden { + display: none } + +a.toc-backref { + text-decoration: none ; + color: black } + +blockquote.epigraph { + margin: 2em 5em ; } + +dl.docutils dd { + margin-bottom: 0.5em } + +/* Uncomment (and remove this text!) to get bold-faced definition list terms +dl.docutils dt { + font-weight: bold } +*/ + +div.abstract { + margin: 2em 5em } + +div.abstract p.topic-title { + font-weight: bold ; + text-align: center } + +div.admonition, div.attention, div.caution, div.danger, div.error, +div.hint, div.important, div.note, div.tip, div.warning { + margin: 2em ; + border: medium outset ; + padding: 1em } + +div.admonition p.admonition-title, div.hint p.admonition-title, +div.important p.admonition-title, div.note p.admonition-title, +div.tip p.admonition-title { + font-weight: bold ; + font-family: sans-serif } + +div.attention p.admonition-title, div.caution p.admonition-title, +div.danger p.admonition-title, div.error p.admonition-title, +div.warning p.admonition-title { + color: red ; + font-weight: bold ; + font-family: sans-serif } + +/* Uncomment (and remove this text!) to get reduced vertical space in + compound paragraphs. +div.compound .compound-first, div.compound .compound-middle { + margin-bottom: 0.5em } + +div.compound .compound-last, div.compound .compound-middle { + margin-top: 0.5em } +*/ + +div.dedication { + margin: 2em 5em ; + text-align: center ; + font-style: italic } + +div.dedication p.topic-title { + font-weight: bold ; + font-style: normal } + +div.figure { + margin-left: 2em ; + margin-right: 2em } + +div.footer, div.header { + clear: both; + font-size: smaller } + +div.line-block { + display: block ; + margin-top: 1em ; + margin-bottom: 1em } + +div.line-block div.line-block { + margin-top: 0 ; + margin-bottom: 0 ; + margin-left: 1.5em } + +div.sidebar { + margin: 0 0 0.5em 1em ; + border: medium outset ; + padding: 1em ; + background-color: #ffffee ; + width: 40% ; + float: right ; + clear: right } + +div.sidebar p.rubric { + font-family: sans-serif ; + font-size: medium } + +div.system-messages { + margin: 5em } + +div.system-messages h1 { + color: red } + +div.system-message { + border: medium outset ; + padding: 1em } + +div.system-message p.system-message-title { + color: red ; + font-weight: bold } + +div.topic { + margin: 2em } + +h1.section-subtitle, h2.section-subtitle, h3.section-subtitle, +h4.section-subtitle, h5.section-subtitle, h6.section-subtitle { + margin-top: 0.4em } + +h1.title { + text-align: center } + +h2.subtitle { + text-align: center } + +hr.docutils { + width: 75% } + +img.align-left { + clear: left } + +img.align-right { + clear: right } + +ol.simple, ul.simple { + margin-bottom: 1em } + +ol.arabic { + list-style: decimal } + +ol.loweralpha { + list-style: lower-alpha } + +ol.upperalpha { + list-style: upper-alpha } + +ol.lowerroman { + list-style: lower-roman } + +ol.upperroman { + list-style: upper-roman } + +p.attribution { + text-align: right ; + margin-left: 50% } + +p.caption { + font-style: italic } + +p.credits { + font-style: italic ; + font-size: smaller } + +p.label { + white-space: nowrap } + +p.rubric { + font-weight: bold ; + font-size: larger ; + color: maroon ; + text-align: center } + +p.sidebar-title { + font-family: sans-serif ; + font-weight: bold ; + font-size: larger } + +p.sidebar-subtitle { + font-family: sans-serif ; + font-weight: bold } + +p.topic-title { + font-weight: bold } + +pre.address { + margin-bottom: 0 ; + margin-top: 0 ; + font: inherit } + +pre.literal-block, pre.doctest-block { + margin-left: 2em ; + margin-right: 2em } + +span.classifier { + font-family: sans-serif ; + font-style: oblique } + +span.classifier-delimiter { + font-family: sans-serif ; + font-weight: bold } + +span.interpreted { + font-family: sans-serif } + +span.option { + white-space: nowrap } + +span.pre { + white-space: pre } + +span.problematic { + color: red } + +span.section-subtitle { + /* font-size relative to parent (h1..h6 element) */ + font-size: 80% } + +table.citation { + border-left: solid 1px gray; + margin-left: 1px } + +table.docinfo { + margin: 2em 4em } + +table.docutils { + margin-top: 0.5em ; + margin-bottom: 0.5em } + +table.footnote { + border-left: solid 1px black; + margin-left: 1px } + +table.docutils td, table.docutils th, +table.docinfo td, table.docinfo th { + padding-left: 0.5em ; + padding-right: 0.5em ; + vertical-align: top } + +table.docutils th.field-name, table.docinfo th.docinfo-name { + font-weight: bold ; + text-align: left ; + white-space: nowrap ; + padding-left: 0 } + +h1 tt.docutils, h2 tt.docutils, h3 tt.docutils, +h4 tt.docutils, h5 tt.docutils, h6 tt.docutils { + font-size: 100% } + +ul.auto-toc { + list-style-type: none } diff --git a/Website/images/LinuxScreenShot.png b/Website/images/LinuxScreenShot.png new file mode 100755 index 0000000..7b2135c Binary files /dev/null and b/Website/images/LinuxScreenShot.png differ diff --git a/Website/images/LinuxScreenShot50.png b/Website/images/LinuxScreenShot50.png new file mode 100755 index 0000000..092a7e5 Binary files /dev/null and b/Website/images/LinuxScreenShot50.png differ diff --git a/Website/images/LinuxScreenShotAnnotated.png b/Website/images/LinuxScreenShotAnnotated.png new file mode 100755 index 0000000..7410171 Binary files /dev/null and b/Website/images/LinuxScreenShotAnnotated.png differ diff --git a/Website/images/LinuxScreenShotAnnotated50.png b/Website/images/LinuxScreenShotAnnotated50.png new file mode 100755 index 0000000..3332e50 Binary files /dev/null and b/Website/images/LinuxScreenShotAnnotated50.png differ diff --git a/Website/images/WindowsScreenShot.jpeg b/Website/images/WindowsScreenShot.jpeg new file mode 100755 index 0000000..db6b8db Binary files /dev/null and b/Website/images/WindowsScreenShot.jpeg differ diff --git a/Website/images/WindowsScreenShot50.jpeg b/Website/images/WindowsScreenShot50.jpeg new file mode 100755 index 0000000..95869e0 Binary files /dev/null and b/Website/images/WindowsScreenShot50.jpeg differ diff --git a/Website/images/keyboardsetup.png b/Website/images/keyboardsetup.png new file mode 100755 index 0000000..cece4db Binary files /dev/null and b/Website/images/keyboardsetup.png differ diff --git a/Website/images/logo64x64.png b/Website/images/logo64x64.png new file mode 100755 index 0000000..249229d Binary files /dev/null and b/Website/images/logo64x64.png differ diff --git a/Website/images/midisetup.png b/Website/images/midisetup.png new file mode 100755 index 0000000..d5dee8e Binary files /dev/null and b/Website/images/midisetup.png differ diff --git a/Website/images/pianolines.png b/Website/images/pianolines.png new file mode 100755 index 0000000..74718e7 Binary files /dev/null and b/Website/images/pianolines.png differ diff --git a/Website/images/timingmarkers.jpeg b/Website/images/timingmarkers.jpeg new file mode 100755 index 0000000..6c33155 Binary files /dev/null and b/Website/images/timingmarkers.jpeg differ diff --git a/Website/images/timingmarkers.png b/Website/images/timingmarkers.png new file mode 100755 index 0000000..85f647a Binary files /dev/null and b/Website/images/timingmarkers.png differ diff --git a/Website/images/version_0_6_1.png b/Website/images/version_0_6_1.png new file mode 100755 index 0000000..f07529e Binary files /dev/null and b/Website/images/version_0_6_1.png differ diff --git a/Website/index.html b/Website/index.html new file mode 100755 index 0000000..ed34f41 --- /dev/null +++ b/Website/index.html @@ -0,0 +1,172 @@ + + +Piano Booster - Home + + + + + + + + + + + + + + +
+ + +
+ + Home + +

Home

+

Screen shots

+

Features

+ +

Download

+ +

FAQ

+ +

Users Forum

+

Development Forum

+

SourceForge

+ +
+ + + + + + + + + + + + + + + + + +
+ +

Boost your Piano playing skills

+ +

+ + PianoBooster is a fun way of playing along with a musical accompaniment and + at the same time learning the basics of reading musical notation. + The difference between playing along to a CD or a standard midi file + is that PianoBooster listens and follows what you are playing on a midi piano keyboard. +

+ + +
+

News: PianoBooster version 0.6.4 has been released

+

+ Version of 0.6.4 of PianoBooster + fixes a number of issues with CPU usage and timing accuracy and so + everyone should upgrade to this version. + For the what's new read + this post in the User Forum. + PianoBooster can be downloaded here. + +

+
+ +

Introduction

+ PianoBooster is a free (Open Source) program that plays Standard Midi Files + and allows you to change the speed of playback + and transpose the music etc. + There is a scrolling musical stave that shows the notes for just one part + from all the parts in the complete musical arrangement. +

+

+ + Piano Booster main screen +
+ Piano Booster main screen +

+

+ Piano Lines + PianoBooster has been designed to allow you to play along on a midi piano keyboard + with the scrolling notes shown on the screen. + The notes you press on the keyboard appear as coloured + lines on the musical stave, the colour of which depends whether + you have pressed the right or wrong note. +

+

+ A different musical instrument sound is used + for your playing depending whether you are playing the right or wrong notes. + This feature also allows PianoBooster to be used with printed sheet music + so you can hear if you are playing the right notes while at the same time + keeping your eyes on the printed score. + The music accompaniment will automatically wait for you to find and + play the correct notes in the piece. +

+ + +

PianoBooster in Action

+

+ Watch the video and see the features of PianoBooster in action. +

+ + +

+ + +
Watch Piano Booster in action +

+

More videos are available here + and here. +

+ + Piano Booster is piano teaching software that can provide piano lessons for beginners as well as for advanced players. + + It can be used for teaching music theory and is useful for piano practice and learning piano technique. + +

+ + +

Timing markers

+

+ Timing markers show whether you are playing ahead or behind of the beat. + They appear as white crosses that are drawn over the note. + Timing markers are new in version 0.6.2 +

+

+ Piano Booster timing markers +

+ + +

Features

+
    +
  • Piano Booster follows your playing when playing along to a musical accompaniment. (If you stop then so does the music). + +
  • Play a single hand and Piano Booster will play the other hand in time with you (and will also play the violins, the bass, the drums etc. in time with you). +
  • Change the speed of playback to match your playing ability. +
  • Transpose +/- 12 semitones without stopping the play back. +
  • Change the Key Signature of the piece. +
  • Plays any standard midi or kar file.
  • Play along to any instrument in the midi file. +
  • Adjust the volume of the current part or the volume your piano part.
  • See the accuracy of you playing.
  • Change the start bar to start playing from any bar in the music. + The repeat bars allows you to practice just a few difficult bars continuously. +
  • Timing markers are white crosses that are drawn over each note and show if you are playing ahead or behind the beat. +
  • A different instrument sound is used for the right and wrong notes that you play. +
  • +
+ + + +SourceForge.net Logo + + +
+
+ +
+ + diff --git a/Website/pianohints.html b/Website/pianohints.html new file mode 100755 index 0000000..a329ea6 --- /dev/null +++ b/Website/pianohints.html @@ -0,0 +1,75 @@ + + +Piano Booster - Home + + + + + + + + + + + + + + +
+ + +
+ + Home + +

Home

+

Screen shots

+

Features

+ +

Download

+ +

FAQ

+ +

Users Forum

+

Development Forum

+

SourceForge

+ +
+ + + + + + + + + + + + + + + + + +
+ +

Hints on playing the Piano

+ +

+ + COMING SOON

+ + + + + +SourceForge.net Logo + + +
+
+ +
+ + diff --git a/Website/ref.css b/Website/ref.css new file mode 100755 index 0000000..645f8ca --- /dev/null +++ b/Website/ref.css @@ -0,0 +1,109 @@ + html { + /* background-color: #e0e0e0; */ +} +h1 { + font-family: sans-serif; + font-size: 220%; + color: #6e7e97; + margin-top: 0; + padding-top: 0; +} +h2 { + font-family: sans-serif; + font-size: 180%; + color: #6e7e97; + margin-left: 0%; + margin-right: 0%; +} + +h3.news +{ + font-family: sans-serif; + font-size: 120%; + color: #aa0000; + margin-left: 0%; + margin-right: 0%; +} +h3 { + font-family: sans-serif; + font-size: 120%; + color: #6e7e97; + margin-left: 0%; + margin-right: 0%; +} +p { + margin-left: 0%; + margin-right: 0%; + color: #444444; +} + +p.news { + margin-left: 0%; + margin-right: 0%; + color: #aa0000; +} + +p.test{ + margin-left: 0%; + font-size: 80%; + color: #550000; + #background-color: #000000; +} +a { + color: #6e7ed7; +} +p.image { + font-style: italic; + text-align: center; + margin-left: 0; + margin-right: 0; + margin-bottom: 2.5em; +} +p.greyed { + text-align: justify; + border-style: solid; + border-width: 1px; + border-color: #6e7e97; + color: #444444; + padding: 1ex; + margin-left: 0%; + background-color: #eeeeee; +} +p.h3 { + margin-left: 0%; + margin-right: 0%; +} +/* +ul { + margin-left: 5%; + margin-right: 0%; + color: #444444; + list-style-type: disc; +} +*/ + +table.xxx { + margin-left: 15%; + margin-right: 10%; +} +img { + border-style: none; +} + +.cmdline { + background-color:#F0F0F0; + border:1px dashed black; + color:inherit; + font-family:courier,courier new,monospace; + font-size:12px; + line-height:100%; + margin-bottom:4px; + margin-top:4px; + overflow:auto; + padding:5px; + padding-top:10px; + padding-bottom:10px; + /*white-space:pre; */ + width:98%; +} + diff --git a/Website/screenshots.html b/Website/screenshots.html new file mode 100755 index 0000000..1bab3ae --- /dev/null +++ b/Website/screenshots.html @@ -0,0 +1,112 @@ + + +Piano Booster - Screen Shots + + + + + + + + + + + + + + + +
+ + + +
+ + Home + +

Home

+ +

Screen shots

+ +

Features

+ +

Download

+ +

FAQ

+ +

Users Forum

+

Development Forum

+

SourceForge

+
+ + + + + + + + + + + + + + + + + + + +
+ +

Piano Booster Screen Shots

+ +

Click on each screen shot to see the full size image.

+ +

+ + Piano Booster main screen  - Linux +
+ Piano Booster main screen - Linux +

+ +

+ +

+ + Piano Booster main screen - Windows +
+ Piano Booster main screen - Windows +

+ +

+ +

+ + Piano Booster annotated screen shot +
+ Piano Booster annotated screen shot +

+

+ Piano Booster timing markers +

+ +

+ Piano  keyboard setup +
+ Piano Keyboard Setup Dialog +

+

+  MIDI Setup Dialog +
+ MIDI Setup Dialog +

+ + +

+ + +
+
+ +