How It Works?
BEFORE YOU READ...
The following info, given below, are bit technical and the good thing is that you do not have to understand all these in order to enjoy the music. ;-)
However those who understand them and would like to do more, please join the Project Music Vault Yahoo! group for further details.
ARCHITECTURE
- Static Webpages & Links
- Music Files Library
- Search Application
- Database of Music metadata
- Java Servlet/JSP engine
- WebServer
- Change IP Program
- Start & Stop Services
- Development & Data Entry Tools
1. Static Webpages & Links to HOME computer
The following links connect to HOME computer:
- Music Categories link on the left side menu.
- Project Music Vault link on the left side menu.
- Search button on the top-right corner
- Music files on the Dikshitar Kritis webpage.
2. Music Files Library, stored in the Filesystem
- About 2000 tracks; 15 GB hard disk space
- Mostly in Real Media format, Digitized at 32KBPS bit rate sound quality
- Occupies about ~1 MB space per minute of the song
- Converted from audio cassettes, mainly, using Real Producer software via Sound Blaster 16-bit card
3. Search, Navigate, Select, Invoke Play, etc. Application
- NA's original, Music Categories, was developed using Java Servlets.
- Project Music Vault, adopted from an Open Source initiative, called Netjuke. It was written in PHP.
- Audio files are protected, by a homegrown Streaming Program, to stream only to the Real Player
4. Database of Music metadata, such as Track Title, Raga, Composer, etc.
- NA's original is in Oracle
- Music data was entered manually, using an MS Access Application
- Data contains 1989 Tracks; 272 Albums; 302 Ragas; 139 Composers; 88 Artists
- PMV Netjuke is in MySQL
- The data from Oracle got ported without any manual re-entry (thankfully!), by creating CSV text from Oracle and using Import utility that comes with Netjuke
5. Java Servlet/JSP engine
- Uses Jakarta-Tomcat engine
- Application has about 15 Java programs, mainly Servlets
6. WebServer with plugins for Jakarta & PHP
- Both NA's original & PMV uses Apache
- Listens in two different ports
7. Change IP Program
- Java application, invoked from command line, using Java FTP API
- Detects the change in IP address at HOME
- Updates the IP address at SPRYNET links with the newly detected IP
8. Start & Stop Services
- Java application, invoked from command line, using Java FTP API
- Starts & Stops the Services (mentioned in #3 - #6)
- Updates the Speaker image at SPRYNET NA homepage appropriately to the Service status
9. Development & Data-entry Tools
- MS Access application to enter Music metadata information to Oracle tables
- jEdit, a Java Editor, for Java development for NA Original environment
- PHPEdit, a PHP Editor, for PHP development for Netjuke modifications
- Tortoise CVS, a Source Control software, to maintain software versions
- FTP32, a GUI FTP Program, to transfer files between HOME & ISP
- MySQL CC, a GUI Control Center for MySQL database, to administer MYSQL database
- TextPad, a Text Editor, for editing text, simple HTML pages