Home / DKVBrowser RCP Manual
Name Modified Size InfoDownloads / Week
Parent folder
DKVBrowser Doc v1_8.pdf 2010-01-08 7.5 MB
Totals: 1 Item   7.5 MB 0
DKVBrowser RCP
Written by Kevin Goroway

Connect to and control a Yamaha Disklavier Mark IV, E3 and DKC-850 pianos.

In order to run this you will need java 11 installed.  That can be obtained here:

https://www.oracle.com/java/technologies/javase-jdk11-downloads.html

Good luck!  And use at your own risk!

RCP stands for "Rich Client Platform" and is a framework for designing and distributing rich client applications.  This brings with it a few new concepts (to the DKVBrowser user).  

The first is "Views".  Views are windows of information.  These views can be placed anywhere via drag and drop.  They can be stacked on top of one another to form tabs, they can be dragged outside of the application's main window, and they can be closed.  Views can be (re)opened by going to the "Window" menu, and choosing Views.

The second is "Perspectives".  Perspectives are a collection of Views along with their size and position.  DKVBrowser will initial launch with the "Default Perspective", but you are free to position the windows (Views) however you'd like, and you can save this perspective for later use.  This is done via the "Window" menu as well.  Note that DKVBrowser will always launch with the perspective set to how ever it was when you closed it last.

-Kevin

=======================================
History:

// version 3.0.3 - January 3, 2024
// Implement "Setup" for MIDI (and only MIDI so far)

// version 3.0.2 - February 7, 2021
// Correctly determine that we are running on Mac OS so mounting of the samba share has a better chance of working
//   It looks like name resolution is broken on the Mac, so connect to your piano by IP instead of name.
//   It looks like uPnP finding of the piano is broken on the Mac (and maybe the PC?)  I'm going to investigate a fix for this, but low priority since it only matters once. (until you have your IP)

// version 3.0.1 - February 1, 2021
// Fix context menu "Copy To" and "Move To" for Mac OS to properly populate the dynamic submenu that was supposed to pop up there.

// version 3.00 - January 29, 2021
// First build sitting on top of Eclipse 2020-12's compatibility layer
// First off MUCH MUCH thanks go out to Olivier Prouvost from opcoach.com!
//   He spent numerous HOURS with me to make this happen, even though he gets absolutely NOTHING for doing so (He isn't a Disklavier owner.)
//   It's hard for me to express the proper amount of gratitude on behalf of our users for this contribution.
// So, onto the issues with this first release:
// All Users:
//    This requires Java 11 to work.
//    You can find that here:  https://www.oracle.com/java/technologies/javase-jdk11-downloads.html
//    Unfortunately, Oracle seems to want you to log in to download it.  So, either make an account, or use 
//      an account from here:  http://bugmenot.com/view/oracle.com
    
// Windows Users:
//    Even after installing java 11, for some unknown reason (yet?), the DKVBrowser launcher still can't find it.
//    This is solved by opening the DKVBrowser.ini file and adding the first two lines here (whatever path is appropriate for you)

-vm
C:/Program Files/Java/jdk-11.0.10/bin
-startup
plugins/org.eclipse.equinox.launcher_1.6.0.v20200915-1508.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.2.0.v20200915-1442

//     The rest of the stuff should already be there (staring with the line that begins -startup)
//
// Mac OSX users:
//    I (and Nancy) have experienced numerous issues getting DKVBrowser to launch.  We're looking for help from the community.
//    Here's what is almost certainly the case though.  Because I am building on Windows, there is no way for me to produce a proper zip file (permission's wise) for Mac OSX, so it needs a bit of help.
//    After opening the zip, and dragging the DKVBrowser.app to your desktop (for example), you'll need to go to a terminal and do the following (just an example, you'll need to understand where DKVBrowser.app has landed on your system):

cd ~/Desktop/
chmod 755 DKVBrowser.app/Contents/MacOS/DKVBrowser

//    After you've done that, you should be able to double-click on DKVBrowser and launch (I hope).
//    I did notice that the first launch takes a while, so be patient.  Also, finding the piano via uPNP after that doesn't seem to work, so you'll likely have to enter your piano's IP.  Hit Apply And Close, and be patient again.
//    I think you should only have to deal with that the first time.  We'll see.
//    Lastly, on the Mac, the README file ends up somewhat burried down here:

DKVBrowser.app\Contents\Eclipse\README.txt

//    Though, by now, it doesn't say anything you don't already know.



// version 2.05 - July 10th, 2017
// Added favicon.ico to web server
// In Preferences window, display an example URL that will reach the embedded web server

// version 2.04 - May. 20th, 2017
// Implement full featured web server
//   New Setting for http port that the server will listen on, set to 0 if you want to remove the server entirely
//   The status at the top of the html page can be double clicked to wake the piano from standby
//      But that is just a shortcut for the button on the System page
//   Search results are cumulative - meaning after you do a search, and then do another one, you can still see
//      the results of previous searches.
//   To remove a search result, click the button that tells you how many were found in that search
//   Simply pressing a song will start it playing (after the slow piano loads it...)
//   You may have to be somewhat careful dragging up and down to look through long lists on a phone/tablet
//      or it might interpret your drag as a click, and start playing the song...
//   Please note:  The URL to reach this webserver will be something like:
//   http://192.168.0.4:8080   where the 192.168.0.4 is the computer that is running DKVBrowser, not your piano!

=======================================

// version 2.03 - Jan. 11th, 2014
// Fix various issues with the "Song Options" view having the wrong concept of values changing, and, sometimes, the wrong "current" song

=======================================

// version 2.02 - Nov. 27th, 2013
// Find piano on local network using uPNP protocol (same way Yamaha finds pianos from the iOS app) automatically connect to first one found.
// Allow dragging of CD contents to the pianosoft tab (the feedback isn't very good when copying real CDs [they take forever, and I hide the progress...])
// Add appropriate context menu to the CD tab
// Make "Free Space" field wider 
// Fix Standby Issue on Macs (it was freezing sometimes when quitting DKVBrowser)
// Fix playlist "Grab Search Results" not populating album
// Added new Repeat Mode: "Marked Random" which will play your marked songs/albums in random order
// Added trivial web server.  Listening on port 8081.  Only responds to "quiet=on" or "quiet=off" So, for example:  http://localhost:8081/?quiet=on

=======================================

// version 2.01 - Oct. 26th, 2013
// Tons of changes to make the DKV-850/E3 experience better, but this is only a start.  
// Put font support back in, because even it it's "not quite working right" state, it was still useful
// Correct spelling of "RemoveLive"

=======================================

// version 2.0 - Sept. 29th, 2013
// Added support for Disklavier TV (Remote Live), with a new preference option to revert back to supporting Karaoke (requires a restart).
// Added Free Space indicator in the status bar (it will update after the you do a file copy, or file move)
// Several issues related to the Internet view were addressed 
// Removed ability to set font on the main "view".  It wasn't working quite right, and no one seemed to notice.

=======================================

// version 1.9 - Apr. 09, 2011
// Added initial support for E3 and DKC-850 pianos.  There are LOTS of things still visible and available which will NOT work.
//    This should be considered a very early "alpha" version of support for these pianos.
// Added ability to set the font on the main view (it's in preferences, largely untested)

=======================================

// version 1.8 - Jan. 05, 2010
// Added a new "Mark" column.  Also, the "Mark All" and "Unmark All" context menu has been added.
// Added a new feature to play only "Marked" songs.
// Changed all tabs now display in a grid format
// Fixed occasional error when closing DKVBrowser
// Added new "Length" column to the user and pianosoft tabs to show length of song (if it is known)
// Added ability to sort all columns in user and pianosoft tabs - note, drag and drop positional ordering is ignored when columns are sorted
// Restored the ability to double click on a song to play it, even if you are connected to the Internet (will auto-disconnect)
// Changed layout of Timer Playback view to hopefully show information better, and fixed "Standby" turning into "Off"
// Added progress dialog during "Expand All" which can take a while for very large sources

=======================================

// version 1.7 - Nov. 15, 2009
// Finally! Preferences and Layouts and saved Perspectives are no longer overwritten with each new version!  
// Fixed issue where switching from one radio station to another wouldn't update the song titles correctly
// Fixed tray icon no longer displays "Next Song" when connected to the internet
// Added ability to add entire album (pianosoft or user only) to a playlist via context menu
// Added indicator (bold) of which Radio station is currently playing so you can get back to the page where it shows details easily
// Changed the control that is used on most internet pages to be more interactive

=======================================

// version 1.6 - Nov. 12, 2009
// Add complete support for internet features (Disklavier Radio, etc.)
// Fix context menus for copy and move (broken in version 1.5)
// Fix don't allow songs from the "PC" tab to be added to playlists
// Add context menus for copy and move for songs in the "PC" tab
// Move the new status bar item that displays Internet connected state to the left, and make it invisible when not connected
// Pay more attention to the Internet connected state.  This mostly means disabling functionality while you are connected.

=======================================

// version 1.5 - Oct. 24, 2009
// Extended the 'Move To', and 'Copy To' context menus to support songs as well (Control key sorts by alhpa)
// Extended the idea of context menus for songs to include a new "Add To Playlist" context menu
// Added new field in the status bar at the bottom to indicate the Internet status (Don't be alarmed by "Not Connected")
// Add ability to drag from the "CD" tab to the "CD Library" tab
// Minor fix to the "Repeat" view which was cutting off the letters on the right
// Minor fix to the "Song Tracks" view which sometimes made the volumne column unreadable.  Now all columns are sizeable.

=======================================

// version 1.4 - Sep. 26, 2009
// Added ability to select font in Lyrics View (right click in the lyrics view) Font is remembered between sessions
// Fixed hang forever if you accidentally used an empty Piano IP 
// Fixed handling of embedded quotes in filenames/song titles during drag in/out of PC tab (SongData support) 

=======================================

// version 1.3 - Sep. 12, 2009
// Added new Move To, and Copy To context menus when albums are selected in Pianosoft, User and PC tabs
// Added new support for keeping song information when it is dragged to/and from the PC tab
// Added new "Sync Clock" button to the Timer Playback View
// Fixed "Timer Playback" view from version 1.2 wasn't safe in "Guest Mode"

=======================================

// version 1.2 - Sep. 6, 2009
// Added new "Timer Playback" view which exposes the piano's native timers
// Improved feedback when deleting or copying/moving multiple albums
// Fixed dragging songs or albums from the "PC" tab would sometimes do nothing (songs under folders with long names)
// Fixed icon under windows 7 when DKVBrowser is pinned to the taskbar

=======================================

// version 1.1 - Aug. 2, 2009
// Completely overhauled drag and drop to support multi-selection.
// Added new basic Karaoke (Lyrics) view.  Find it in the Window/Show View menu.
// Fixed You couldn't drag a song from one source to another source if the destination was an empty album
// Fixed Song titles would default to the filename if there was no song title, but sometimes those fake names would disappear 
// Fixed When dragging an album to another source, the position of the drop was ignored (albums wouldn't sort in that case)
// Fixed If the first drag and drop operation you did was a drag from the filesystem to the PC tab, DKVBrowser could crash
// Fixed If you were trying to drag files from the filesystem, and the PC tab wasn't selected, it wouldn't select if you dragged over its tab

=======================================

// version 1.00 - Jun. 14, 2009
// Added new "Performance Mode"
// Added better feedback during copy/move/delete operations - including ability to cancel long operations
//   so far, only for copy album, and delete album (which means move album is covered as well)
// Added new "Donate" button to the "Now Playing" view.
// Fixed When AutoFind is on, let the "next" button keep focus

=======================================

// version 0.99 - Apr. 10, 2009
// Added New View for Tempo and Transpose (Not on by default, can be found in Window->Show View menu)
// Added New View for Song Tracks (basic Ensemble support) (Not on by default, can be found in Window->Show View menu)
// Fixed Source Random wasn't updating the count or last played time of the songs
// Fixed Behavior of Song Options View (controls were edittable, didn't know about standby mode, track 16 was unavailable)

=======================================

// version 0.98 - Mar. 28, 2009
// Added new Metronome view (Not on by default, can be found in Window->Show View menu)
// Fixed (somewhat) Double click on playlist song doesn't always play it (may still sometimes need a single click first)
// Fixed The Song Options View wasn't in the View menu for selecting (it was only in Other...)
// Fixed The two columns in the Details View now remember their size
// Changed The warning about Exporting over an existing file is handled by the OS instead of my code.
// Changed Mac version Search View to use the "Search" control.  Cosmetic, really.

// version 0.97 - Mar. 23, 2009
// Added new "Guest" mode - no editing allowed.  Password for turning it off is "DKVBrowser", no quotes, case sensitive.
// Added progress dialog when changing standby state
// Added Mac version Export automatically adds .xls extension if it isn't typed
// Fixed Now Playing View didn't always update the current song title when waking from standby
// Fixed double click on playlist song didn't always play the song

=======================================

// version 0.96 - Mar. 21, 2009
// Fixed Updates while viewing search results.  Probably still not perfect, but MUCH better
// Added full support for the piano's "Standby" mode, including a preference for auto-wake
//    Most things work fine with the piano in standby - all removable media isn't available though
// Export now will export the current Search results if chosen after a search is performed
// Added progress dialog during Export
// Added song date, last played time, and played count to export
// Added headings to Exported file

=======================================

// version 0.95 - Mar. 8, 2009
// Added new "autoFind" mode.  Button is in the Now Playing View and will be remembered between sessions. 
// Added some begging for donations in the "Help-About" dialog  :-)
// Added Conext menu "Load" in playlist view
// Added Warning when you try to export over an already existing file
// Added Song Length to the Export file (it is not uncommon for the piano to not have the length for songs you've never played)
// Fixed Context menu "Find" in playlist view only shows when a song is selected
// Fixed Context menu "Load" only shows when a song is selected
// Changed the way "Grab Search Results" works.  Should be faster, but auto-pause takes some time to resume the song.

=======================================

// version 0.94 - Mar. 2, 2009
// Fixed Song Options view was often updating the wrong song

=======================================

// version 0.93 - Mar. 1, 2009
// Added ability to save search results in a playlist (context menu in the playlist view after searching)
// Added Auto-reconnect when computer is awakened up from standby
// Added context menu for Expand All and Collapse All
// Added Load to context menu, mostly for use with Song Options View
// Added ability to specify logFile on the command line (for debugging purposes)
// Changed Details View refreshes all the time instead of caching results (this makes things a bit slower)
// Fixed play count was still not working on refresh
// Fixed Create Album context menu was always creating a new album in the User tab

=======================================

// version 0.92 - Feb. 21, 2009
// Added new Song Options view  
// Added categories to the Details view (no new features, just gui change)
// Added count of searched items found to Search View 
// Added ability to turn off source random before playing a song
// Added ability to Play from context menu.  Playing an album plays the first song in the album.
// Added context menu to the All tab (for PLAY, mainly) Delete is there, but might not always work/make sense...
// Fixed refresh of floppy and cd tab upon insertion/removal of media
// Fixed statusbar wasn't updating when clicking in the playlist view
// Fixed song length in details view while looking at search results
// Fixed played count in details view (code was just plain missing!)
// Fixed renaming a playlist song from the details view never updated the playlist view
// Fixed comments and ratings in the Details View for playlist songs (they work now)
// Fixed issue where dragging a song to a tab didn't update the Details View until you clicked again
// Fixed issue where playlist song name wasn't falling back to the filename if there was no name
// Worked on the Mac automount of FromToPC.  It will use your existing mount if it is there already,
//    if it has to do the mount, it will unmount upon exit
//    It no longer uses DKVBrowserFromToPC unless /Volumes/FromToPC is already taken (and isn't a valid mount) 

=======================================

// version 0.91 - Feb. 14, 2009 - Happy Valentines Day!
// Another attempt to clean up startup not initializing everything properly
// Fixed inability to rename songs that had double quotes in them (DKVBrowser hung)
// FINALLY figured out how to make the Mac's Application QUIT menu item ask about putting the piano in standby!
// Implemented tray item (not sure what this is called on the Mac)
//   It has a context menu to quit dkvbrowser, move to the next song, play and pause
//   If DKVBrowser is minimized, a popup balloon will show you the song title as songs change
//   Double clicking on the tray icon restores DKVBrowser if it is minimized
// Implemented ability to drag files and folders OUT of the PC tab to your desktop or a folder, etc
//   changed the way copying is done...it is now MUCH faster
//   For the mac, DKVBrowser mounts the piano as DKVBrowserFromToPC and unmounts upon closing

=======================================

// version 0.90 - Feb. 06, 2009
// Fixed inability to drag and drop songs (broken by accident in version 0.89)
// Fixed fact that you couldn't rename albums that had an ampersand character in them (hung or crashed DKVBrowser)
// Fixed album reordering.  It was flakey, especially after an album had been deleted.
// Fixed album number in Details View for newly created albums (it was wrong)
// Fixed fact that auto-pause wasn't working when you delete an album

=======================================

// version 0.89 - Jan. 25, 2009
// Fixed duplicate names in newly created albums (bug was Mac only)
// Allow renaming of albums and songs in the "CD Library" tab (using the F2 key)
// Allow drag and drop of albums from one source to another (where appropriate)
//   remember that the default behavior of a drag is MOVE not COPY
// The Details view now allows editing album/song names, song ratings, song comments

=======================================

// version 0.88 - Jan. 19, 2009
// Initial window size is a bit bigger to allow for volume spinner to show on Mac
// Now attempts to automatically locate piano on the network if default wireless address doesn't work
// Fixed issue where the "All" tab doesn't always populate on the first try
// Added "Refresh PC tab" to the edit menu
// The PC tab is now fully aware of files and folders dragged from the desktop

=======================================

// version 0.87 - Jan. 03, 2009
// Fix refreshing of playlist View (broken in 0.86 during the "code cleanup")

=======================================

// version 0.86 - Dec. 30, 2008  (Happy New Year!)
// Make sure that splash screen stays up until initial queries are complete.  This also ensures that initial queries work.
// Add progress information during splash screen
// Implemented progress dialog (pops up during long operations, like during a backup)
// A bunch of code cleanup

=======================================

// version 0.85 - Dec. 21, 2008
// Allow songs to be dragged to other tabs (drag to the tabs at the top and they will open for you)
// Random View - fixed fact that buttons were clickable when they should not have been
// Volume Details View - new view added (you can click the "volume" button in the regular Volume view, or use the Window->Show View menu)
// A/B Repeat View - new view added (use Window->Show View menu to open it) 
// Details View - Added playlist song's source album name and filename
// Now Playing View - fixed when playing a song that doesn't have a title in the database (use the filename)

=======================================

// version 0.84 - Dec. 14, 2008
// Implemented Export  (no different from previous DKVBrowser, except this one ignores the current search results,
//      and always exports everything)  This is an excel format file, so its extension should be .xls
// Added the "store" tab

=======================================

// version 0.83 - Dec. 14, 2008
// FIXED: Sometimes didn't recognize that we were in "Headphone" mode when starting up.
// Added "Repeat Mode" view 
// Added song number and album number to the details view
// Added context menu to playlists that allow you to "Find" the playlist item in the main view (like the now playing view's Find button)
// DragAndDrop implemented 
// Added in concept of "auto-pause".  Normally, the piano can't do very much while it is playing.  The 
//    auto-pause (you can turn it on or off in preferences) feature will automatically pause the current song,
//    do the operation that you requested (adding a song to a playlist, for example), and then resume the
//    song from (very close to) the current position.
// Many small bug fixes

=======================================

// version 0.82 - Nov. 08, 2008
// fixed name of root directories (was foobar)
// fixed searching by rating.  Previous version introduced a bug where a "greater than" should have been a "greater than or equal"
// discovered old bug (even in previous versions): clicking "Find" while you are looking at search results has unpredictable results
//     I didn't fix this one yet since it's old and has never been reported, but I will get to it soon
// attempted fix for Mac OSX issues where searching sometime made the whole interface go south

=======================================

// version 0.81 - Nov. 02, 2008
// fixed nowplayingview sometimes not initializing
// fixed find button not always working (selecting item for details view) 
// fixed details view not updating when changes are made in the user or pianosoft grid
// worked on details view to not cache values that might ultimately change 
//     (it may be better to just fetch all of these upfront, but this isn't done yet)
// added Refresh menu item to the "PC" tab
// fixed editing in first column (user and pianosoft) on Mac (was drawing a border that was too thick)
// when search results are shown, use a bold font in the main window and a background image so you know you are looking at search results
// when searching by rating, a search for 2 stars (for example) will find everything with 2 stars or above, not just 2 stars

=======================================

Source: README.txt, updated 2024-01-03