SOUNDBOARD README FILE
----------------------
Thank you for using Soundboard. Before running Soundboard, please be
sure that you have installed the Java Runtime Environment version 1.6
or later. If you have not done so already, this may be obtained free
of charge from http://java.sun.com.
To run Soundboard, simply double click on SoundBoard.jar. If this
doesn't work properly, try running "java -jar /path/to/SoundBoard.jar"
from your command/terminal window. All required, non-standard
libraries for SoundBaord are located in the lib directory.
If you have any questions, please consult the manual. If you still
have questions, please contact the author of this software at
tambascot@yahoo.com.
INSTALL
-------
No installation is necessary per se, but due to OS interoperability issues,
there are different requirements for different environments.
FOR ALL OPERATING SYSTEMS
-------------------------
The following is required to run Soundboard on all operating systems.
1) Java 1.6 or later (available free from http://java.sun.com).
2) The Java Media Framework (available as a free download from
http://www.oracle.com/technetwork/java/javase/tech/index-jsp-140239.html).
3) The Soundboard.jar file MUST remain in the parent directory of the lib
directory. It's actually a pretty good idea to just copy the Soundboard
folder to whatever you want to use as your application directory, and then
make shortcuts.
FOR WINDOWS
-----------
1) In addition to a Java run time environment, Windows users may need to install
the Java Media Framework with windows enhancements (also available free from
http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/download.html).
FOR Mac, LINUX, and UNIX
------------------------
No additional steps should be required.
LICENSE INFORMATION
Soundboard is Free Software, licensed under version 2.0 of the Artistic License. Please visit http://www.opensource.org/licenses/artistic-license-2.0.php for a copy of the license if you have any questions about what this means.
Soundboard makes use of the following libraries.
JLayer, which is distributed under version 2.1 of the GNU LGPL. Please visit http://www.opensource.org/licenses/lgpl-2.1.php for a copy of the license if you have any questions about what this means.
JDOM is free software distributed under a custom Free Software license based on the Apache License. For more information, please see: http://www.jdom.org/docs/faq.html#a0030
Tritonus, which is distributed under version 3 of the GNU LGPL. Please visit http://www.gnu.org/copyleft/lesser.html for a copy of the license.
Apache Commons Logging is distributed under version 2.0 of the Apache License. Please visit http://www.apache.org/licenses/LICENSE-2.0 for more information.
TROUBLESHOOTING
---------------
If you encounter any problems running Soundboard, please let the author know, but
BEFORE you do, it will greatly help him help you if you try running Soundboard
from a command line environment, and send a copy of the output that you see
there.
To access your command line in Windows, go to Start->run, and then type
"command" and press enter.
To access your command line in Mac OS, search for terminal.
If you're running Linux/Unix, I'm going to assume you already know how to
get to your terminal.
Anyway, once there, type in "java -jar path\to\Soundboard.jar" and press enter.
Soundboard should start running. Please do the thing you were doing when
Soundboard failed on you, and then copy and paste the output in the terminal
window into an email. Then send that email to me (Tony) at tambascot@yahoo.com.
RELEASE NOTES
v2.0.9 -- 31 December 2018
* This is the first stable release of Soundboard.
* Removed pan control since it didn't work properly for all files.
* Soundboard now requires Java 1.6 or higher
* Corrected bug that was preventing the package show function from creating the
specified directory.
* Corrected bug that prevents the package show function from writing a
copy of the show file and show media to the package directory.
* Lots of code cleanup.
* Added warnings when trying to open a new file or quit the application
when there are unsaved changes to the current file.
* Corrected bug that would hang the GUI completely when
pressing the "stop all" button. The causes seem to stem from either the FLAC SPI or
the javazoom BasicPlayer itself, but we don't know at this time. The present workaround
in Soundboard should keep it from manifesting.
* Added feature to change the title of the frame to let the user know if the current
Soundboard file has unsaved changes.
* Added feature to create a tempShowFile that auto-saves once every 5 minutes, and also
whenever a new cue is added to the cue table. The tempShowFile is automatically deleted
when Soundboard exits normally, but if Soundboard exits abnormally (i.e. crashes), the
file persists.
* Changed volume control scheme to percentage of overall output to avoid confusion caused by
JLayer.BasicPlayer's use of both that and db power systems internally (picking one and
standardizing our use in Soundboard will help eliminate future bugs).
* Corrected bug that was causing the live volume adjustment to be inconsistent with the
volume adjustment you will get from playback using fade cues.
* Standardized volume controllers to initialize to 50% by default.
* Added director name, stage manager name, operator name, and show notes to show info.
* Soundboard now saves a time stamp to the show file by default.
* Altered .xls export so that it includes new show fields.
* Altered .xls export so that it sets the weight of column headers to bold.
* Added dialog to check if user wants to overwrite an existing exported cue sheet.
* Can now double-click on cue number or type to open "add media file" dialog.
* Removed FLAC support since it didn't work properly in all cases.
* Corrected bug that was failing to clear show info fields from the show info
menu after creating a new file.
* Was unable to reproduce bug that was causing some of the text fields in the Show Info
window to be out of alignment, but the labels all had different widths, and it's possible
another system wasn't handling the padding correctly. We have standardized the widths
of the labels to 95px and adjusted the fields accordingly.
* Added a check to check to make sure the countdown thread actually stops counting
before removing it from the table of running threads when executing a stop all.
* audio playback does not seem to honor values over 50, so we have solved this internally
by dividing all sound level values by two before they are passed to the audio controller,
or before they are used for fade calculations.
* Moved 'Export Show Package' menu button to the file menu.
* Added feature to import a show package, which corrects the "bug" of having to
re-add each media file to an exported show one at a time after opening an
exported file.
* We are now recording the version of Soundboard when saving the cue file, and when
Soundboard opens a file, it checks to see if this version tag is present, and if
matches the current version of Soundboard. In either case, if that test fails,
Soundboard will warn the user and give them the option of quitting the open to
prevent damaging the file.
v2.0.8b -- Fri. Aug 15, 2014
* Corrected bug that was causing Soundboard to look in the wrong place for
the manual. Also added a Swing error message dialog to that method just
in case it happens again.
* Modified Error Message windows to force them all to be a sane size, and
to make selectable error messages for copy/paste purposes. This should
help streamline error reporting and trouble shooting.
* Modified cue table so that rows are re orderable with drag and drop (one
row at a time).
* Corrected a bug that was hanging the GUI when stop cues have a pre-wait
time.
* Corrected bug that was preventing the countDownThread from stopping the status
count down on the appropriate cue.
* Corrected bug that was preventing individual cues in an auto-follow chain from
counting down their time remaining.
* Corrected bug that allowed duration countdowns to go below zero.
* Corrected bug that was playing the countdown even if the cue was holding
on a wait time.
v2.0.7b -- Sun. Jul. 20, 2014
* Corrected bug that was causing incorrect values to be written to the
XML file and making shows unreadable.
* Modified GUI layout to allow for the horizontal and vertical resizing
of the cue table.
v2.0.6b -- Sat. Jan. 11, 2014
* Corrected bug that was causing the GUI to hang on a stop cue.
* Corrected bug that caused the cue timer to continue to run after
the cue had been stopped.
* Corrected bug that was causing stop cues to wait for double the
entered pre-wait time.
* Corrected bug that caused status messages to change before the
execution of stop cues was complete.
* Changed pre-wait times to accept decimal values.
* Changed cue sheet export to include cue number.
* Changed cue table to auto-scroll to the next ready-cue as the show
plays.
* Corrected bug that was allowing existing files to be over-written in
the Save As dialogue.
* Corrected bug that was reporting error when canceling out of Save As
selection.
* Corrected bug that was inhibiting auto-follow cues from creating necessary
threads.
* Corrected bug that caused fade timers to run after fade had stopped.
* Changed behavior of Stop All button so that it no longer over-writes
the status.
* Added class for determining duration on wav files that lack duration header
information.
* Added more intelligent error handling for media files where the duration is
not known and cannot be determined.
* Added error handling code to check for bitrates that are too high for the
Java sound api to handle.
* Added (experimental) FLAC support.
* Added ability to re-number cues and update their targets.
* Corrected error in manual that excluded the cue menu (thanks, John Bibby!)
v2.0.5b -- Sun. May 19, 2013
* Corrected bug that prevented pan value from being set when cues start playing.
* Added ability to fade pan values as part of fade cues.
* Adjusted pan settings to be responsive to cue table data.
* Changed GUI parameters so cue table is expandable.
* Corrected typo in db to power level conversion formula.
v2.0.4b -- Sat. May 4, 2013
* Added edit menu and functions (cut, copy, paste)
* Revisions to manual to make it current.
* Altered the "About" section so that it correctly displays the current
version number.
v2.0b3rC -- Mon. March 25, 2013
* Added check to confirm that user wants to over-write an existing file
when trying to do so with the Save As option.
* Added the note cue type, which is nothing but a place holder for notes
that you don't necessarily want associated with a specific sound cue.
* Added more descriptive error reporting for circumstances where a user
tries entering a non-integer pre-wait time.
* Corrected bug that was causing the GUI to hang for a pre-wait time.
* Corrected bug that was boosting volume when attempting a fade
down on mp3 files.
* Corrected bug that was causing auto-follow fades on mp3 files to attempt
to execute before the player was ready for gain control.
* Included library elements that had been mistakenly left out of previous
releases.
* No longer using JMF for anything, as it was causing problems on certain
linuxes.
* Corrected bug that was preventing fades of JLayer playbacks from working
properly.
* Created a filepath cell in the tableModel, and re-factored the way media
files are added so that only the file name itself will display in the
target.
* Added ability to make live volume adjustments to playing cues.
* Added count-down timers for playing sounds and fades.
* Added ability to set stereo pan.
v2.0b3 -- Thu. July 15, 2010
* Corrected bug that was preventing duration of mp3 sound cues from
displaying properly on non-Windows systems.
* Corrected bug that prevented addition of new cues to the table after
the last cue had been deleted.
* Corrected bug that caused the auto-selection of the wrong cue after a new
cue is added to the table.
* Corrected bug that prevented the auto-selection of the cue immediately
preceding the cue being deleted.
* Enabled selection of midi files for playback (presently they are
supported by the JMF).
* Corrected bugs that allowed playback controllers to propogate errors
to the interpreter when used without data being written to the table.
* Added cue numbers to error dialogues that referenced specific cues.
* Added error dialogues to catch fades that did not have a cue number
associated with them, rather than letting a NullPointerException be
passed to the interpreter.
* Added ability to package sound files and (updated) sound cue sheet into
a directory for easy export.
* Added check to make sure that cue files get saved with the .xml extension,
and to add the extension if the user did not supply it.
* Tweaked open function so that it will only clear the cue table if you
actually choose a cue file to open.
* Added support for ogg-vorbis playback via JLayer.
* Corrected bug that was causing cues to be sorted in ASCII, rather than
numeric order, and thus causing cue sheet files to load improperly.
* Added some improved error reporting to help troubleshoot reported, but as
yet not-reproduced by the author, problem of Soundboard silently failing
to save changes to a currently opened file.
* Added more improved error reporting to help troubleshoot reported problem
of Soundboard potentially corrupting media files.
* Corrected bug that would over-write media files with cue-sheet XML data.
This also corrects a reported problem with cue-sheet files saving
properly.
* Added ability to export cue sheet as an excel spreadsheet.
* Added functionality to keep track of the media file directory, and to
preserve this information in the cue sheet file.
* Added ability to clear status messages with a right-click (ctrl-click
on Mac).
v2.0b2 -- Fri. Aug. 28, 2009
* Added support for mp3 playback via JLayer
* Added feature to edit company name, designer name, and revision date
in the cue file.
* Corrected bug that was preventing proper deletion of cues from the cue
table when only one cue was present in the table.
* Corrected bug that was not clearing new header info when a new file was
created.
* Corrected bug that prevented header info from updating properly in the
Edit show info menu.
v2.0b -- Sat. Aug. 15, 2009
* Initial Public Release