[X] The "/OldFiles" file could not be found or is not available. Please select another file.

Share

More
musicbox digital juke box Icon

musicbox digital juke box

alpha

by anthonyh63


Name "musicbox" System to manage a digital jukebox via web interface: Supports: Music Play Audio CD Play and Rip Music File upload. NEXT: Full file managment. Tools: - Free Pascal, JavaScript unix shell.


http://cgi-musicbox.sourceforge.net





Separate each tag with a space.

Release Date:

2006-01-21

Topic:

Operating System:

License:

Intended Audience:

User Interface:

Programming Language:

Registered:

2005-10-23

Ratings and Reviews

Be the first to post a text review of musicbox digital juke box. Rate and review a project by clicking thumbs up or thumbs down in the right column.

Project Feed

  • cgi-musicbox, New Library

    cgi-musicbox: A Web based Jukebox manager is now a P.ascal S.erver P.ages application as of release 0.65a. This promises increased capabilities in the future. PSP is a very powerful CGI framework for developing CGI applications in Pascal. (with interfaces for other languages planned) P.ascal S.erver P.ages has it's home at http://www.psp.furtopia.org

    posted by anthonyh63 1418 days ago

  • File released: /cgi-musicbox(PSP)/version 0.65a/musicbox.0.65a.tar.gz

    posted 1418 days ago

  • cgi-musicbox(PSP) version 0.65a file released: musicbox.0.65a.tar.gz

    DEVELOPERS LOG - Started 23 Nov 2005 ------------------------------------ Program musicbox - Program to run behind Apache and control manage a music library on a server. User interface will be a web browser on local machine or on a LAN. (Could be controlled remotely but you can't enjoy the music or even tell if the programs working if you can't here it.) APPLICATIONS ------------ 1. More then likely the home user with a little tech savvy. 2. Possibly control the piped music system in a public bldg. or other public forum 3. With wireless networking a DJ could have a PSP or Pocket Windows Machine and play his music while working the crowd. Program is 80% of the way to 1.0 I haven't really done a log up until now. I've been working on it for about 2.5 months. MUSIC ENGINE IS IMPLEMENTED BY BUILDING SHELL SCRIPTS DYNAMICALLY AND BACKGROUNDING THEM. ONCE USER HAS STARTED MUSIC THEY MAY EXIT THERE WEB BROWSER AND THE MUSIC KEEPS PLAYING. -------------------------------------------------------------------------- Planned feature list for version 1.0 of Software ------------------------------------------------ ** - Fully implemented * - Partially implemented wip - Work in progress nty - Not there yet. 1. PLAY MUSIC FILES INDIVIDUALLY a. mp3 ** b. m4a/mp4 ** c. wav ** d. ogg ** e. flac ** 2. PLAY DIRECTORIES AND DIRECTORY TREES WITH LOOP AND SHUFFLE CAPABILITY ** 3. MANAGE MOVE DELETE FILES FROM GUI ** 4. PLAY MUSIC FILE PLAYLISTS WITH LOOP AND SHUFFLE CAPABILITY ** 5. MANAGE AND EDIT PLAYLISTS ** 6. PLAY AUDIO CD ** a. loop capability ** b. shuffle capability nty 7. COPY AND ENCODE (RIP) AUDIO CD TO MUSIC LIB. WITH FINE GRAINED CONTROL OF ENCODING PARAMETERS AND TARGET FOLDER FROM GUI ** 8. UPLOAD MUSIC FILES FROM CLIENT ON LAN ** 9. FULL FILE MANAGEMENT FOR MUSIC ROOT wip 10. CSS configuration 90% functional problems in MSIE :{ TODO ------------------------------------------------------------------------ 1. write a linux daemon to control all the processes. musicbox will become a front end to the Daemon. This will enable easier implementation of: PLANNING STAGE a. play queues b. simultaneous functions 2. Multiple GUI modes *** PLANNING STAGE *** a. small - (original) b. frames - (fullscreen all functions available at once) c. multiwindow - Same idea as frames but in seperate windows. This is possible now but with control duplication in some windows. I will use JavaScript to make it happen on a button click or with the use of a particular URL. /cgi-bin/musicbox?multiwin ***************************************************************************** ***************************************************************************** (UI enhancements will probably be based partially on style sheets which I am not sufficiently acquainted with to use on my first CGI project and partially on heavier use of gifs/jpgs/pngs) ============================================================================= START ACTUAL CHANGE LOG: 11-23-05 - Accounted for a user deselecting all tracks prior to rip using Javascript redirection to previous page. Rewrote js_Alert from javascript unit as a procedure rather then string function to more closely follow my other calling conventions. Changed four calls in musicbox.pas to reflect change. Removed redirect code from musicbox.pas moved to javascript.pas for reuse (javascript.pas still a long way from being a general purpose unit, html.pas and basic_cgi.pas are in much better shape) Went to bed (TIRED) left program uncompilable due to being 60% complete with procedure to build bash script to control the rip process. encoding will start for each track as soon as it is ripped and next rip will start concurrently. 11-24-05 --- 11-29-05 I can't track all the changes I've done over the last 4 days RIPPING WITH SELECTION OF TRACKS ENCODING PARAMETERS AND TARGET DIRECTORY WORKS. Added Ogg support for encoding and Ogg and Flac FOR Playback. (Almost had all the support all along. I just had to add the extensions to the directory list filter) ENCODING: Ogg, M4a, or Mp3 , Using oggenc, faac and lame respectively. Bitrates selectable are 128, 160, 192, 256 and 320. DUE TO MY DEVELOPMENT ENVIRONMENT (Headless, Pentium 200, 96mb of RAM) (My linux box is my router/print server and was drafted into CGI development :). The concurrent encoding didn't work out so well. The CD was finished ripping and I had about 7-10 encoding processes running at once. This slowed my machine to a crawl. To remedy this situation I did the following. a. wrote function to count process instances program chains 'ps -A|grep -c [e_n_c_o_d_e_r] and I grab the output from POpen b. Defined MAX_ENCODERS to be 2 on my machine. (will be very easy to change later on a more capable box). This number keeps my machine usable and It can play a file at the same time. c. Since Musicbox is a shell.wrote small program mb_wait_encoder that is called like this. [GOES TO SLEEP UNTIL LESS THEN 2 faac's running] mb_wait_encoder 2 faac [GOES TO SLEEP UNTIL LESS THEN 5 oggenc's running] mb_wait_encoder 5 oggenc etc............. INTERESTING NOTE: When my low powered Linux machine was crawling. Cygwin X got confused (I guess because the Linux box wasn't talking back to the server fast enough.) and completely crashed Windows XP on a 3.0 ghz box with 2.0gb of Ram and NO SPYWARE INSTALLED. When I rebooted the Windows box the 0.2ghz 96mb Linux machine was still dutifully running 7 oggencs though slowly. (faac dumped when running more the 3, but didn't bring down the machine) WROTE INSTALL SCRIPT: Program is getting more complicated and the Install Script is necessary now. 01-22-2006 Catch up. In the past 6 weeks I have implemented the playlist editor and file upload. basic_cgi and html are largely complete librarys for CGI programming. They and supporting units(shellutils.pas) are licensed under the LGPL the entire musicbox project is GPL. substrings.pas is part of another project though I added substantial modifications I kept it under the same license (creative commons license) I have added a significant amount of JavaScript Output to check things on the client side and collect input that is only necessary if certain buttons are pressed. Some of the JScript is inline in musicbox but most of it is broken out into mb_java.pas in the interest of maintaining the JavaScript functions seperately from the main code. THE FOLLOWING UNITS COMPRISE MY CGI PROGRAMMING LIBRARY ------------------------------------------------------- substrings.pas (creative commons - not my unit) LGPL BELOW ---------- shellutils.pas -- uses sysutils, unixtype,baseunix,unix,substrings basic_cgi.pas -- uses sysutils,unixtype,baseunix,unix,substrings html.pas. -- uses basic_cgi,substrings javascript.pas -- uses basic_cgi, html,substrings (this unit is useful but incomplete as full fledged Jscript tool, if I started the project now I probably wouldn't use it. I found it more useful to put entire JavaScript functions in string constants in a seperate unit. (mb_java.pas) It also made the Javascript more readable.) When I think I am done making changes to these units I'll probably make a seperate package with just them. Musicbox is only lacking basic file management features to make it a complete turnkey Jukebox manager. I am currently working on sfm_cgi.pas (S.imple F.ile M.anager) I want it to be as much a drop in library and as reusable as possible. So I'm spending a little time on the design phase. Don't expect a drag and drop interface, It will probably resemble my Playlist editor only with two directory and file lists that can be changed independently and files and directorys moved between them. Also expect rm, chmod, mv and rename capability. I have been giving some thought as to making it extensible at run time with procedural types but haven't figured out the best way to implement that yet. Also in the interest of portability I will be using CSS to determine the appearance of the forms. html.pas uses to many deprecated features from html 3.0 so I may be changing that significantly. (When I started this program 3 months ago I hadn't programmed in 5 years and html 3.0 was new then. All the features I use in my html unit are still widely supported and present in many *LIVE* web pages so I doubt it will be obsolete over night, still I want my code to be usable in the future as so much of my old DOS code is not. JAN 2006 Started the filemanager unit. Not functional yet. ************ MOST OF THE MONTH ********** ----------------------------------------- Started playing with CSS. Wrote functions into html unit for dealing with CSS. Started removing deprecated bgcolor=xxx align=xxx tags in favor of CSS. (most of the way done.) All musicbox text border and background colors are controlled from musicbox.css (see install guide) I gave a shot at aligning elements from the external style sheet but Internet Explorer shot that down (Opera and Mozilla(all) worked great) Went back to some Table based layout but the use of CSS eliminated almost 100 lines of Pascal code and table layouts are being minimized to those necessary to ensure usability in MSIE. (Even though I wish I could dump it) When I'm done with the file manager I'm going to version .90 and freezing features. I'll continue to trim code and fix any bugs I find. I'm going to start a 2.0 branch with a background daemon as the base (the daemon will be the first thing I write). (( ** As usual all plans subject to change. I had planned on finishing the file manager before jumping into CSS **)) AGAIN ANYONE INTERESTED IN THIS CODE IS MORE THEN WELCOME TO E-MAIL ME WITH REQUESTS FOR FEATURES, QUESTIONS OR EVEN GRIPES. :) INVITED BY LARS TO JOIN P.ascal S.erver P.ages Project http://www.psp.furtopia.org FEB 2006 Made extensive modifications to HTMw.pas in PSP to support musicbox and add functionality to the wrapper. Most of the month porting musicbox from my own basic_cgi to PSP framework. Wrote simple install program in Pascal. Untested except on Slackware. anthonyh63@comcast.net anthonyh63@netzero.com

    posted 1418 days ago

  • File released: /cgi-musicbox/version .60a/musicbox.0.60a.tar.gz

    posted 1438 days ago

  • cgi-musicbox version .60a file released: musicbox.0.60a.tar.gz

    ADDED CSS SUPPORT. :) Hard at work removing features marked as deprecated in HTML 4.01.

    posted 1439 days ago

  • File released: /cgi-musicbox/version .5a/DOCS_MUSICBOX.tar.gz

    posted 1448 days ago

  • cgi-musicbox version .5a file released: DOCS_MUSICBOX.tar.gz

    ADDED MUSIC FILE UPLOAD CAPABILITY

    posted 1448 days ago

  • File released: /cgi-musicbox/version .5a/musicbox.0.5a.tar.gz

    posted 1451 days ago

  • cgi-musicbox version .5a file released: musicbox.0.5a.tar.gz

    ADDED MUSIC FILE UPLOAD CAPABILITY

    posted 1451 days ago

  • File released: /cgi-musicbox/version .40a/musicbox.0.40a.tar.gz

    posted 1465 days ago

Rate and Review

Be the first person to add a text review.

Would you recommend this project?






<

Related Projects

musicbox digital juke box Actions

Thanks for your rating!

Would you also like to write a review?





Skip Review

Thanks for your review!

Get credit for your review by logging in via OpenID. Click your account provider:

No Thanks