AutoKDJ OPEN QUESTIONS
From AutOKwiki
QUESTION: Regarding this page: 7 Bamboo Manual KDJ Process
Is this information accurate?
QUESTION: Regarding this page: AutoKDJ Process Description
Does this proposal look reasonable?
QUESTION: Regarding user who purchases one song from Priddis.
Does this count toward the upgrade bump?
Previously I said it shoudn't. But on second thought, maybe it should. They have after all contributed their own money to the show, so why shouldn't it?
Unless we want to do some kind of PHP-Nuke Points for Upgrade plan, then it need only count for PHP-Nuke points. But that only benefits Online users.
Comments?
QUESTION: Regarding software development
It would be nice if we had a source code control system, so we could build each other's shit without e-mailing code around all the time.
Toq, I don't suppose you could put a CVS server on the boo site, could you? :-P
If not, any objections to using sourceforge.net?
Also, is all of this Wiki stuff being backed up?
QUESTIONS UNDER DISCUSSION
QUESTION: Regarding the the automated Microphone Level Control feature.
How do we want to do this? We could put an audio interface in this computer, and then control it with software. Or we can go with some kind of external programmable hardware.
Answer: For cheapness, we can get a line splitter, and split the stereo mic input on the sound card and do it all from the computer. If we really wanted to be "tech" though, I just found out about this 2.4 ghz wireless mic system that looks pretty hot.
http://www.sabine.com/sabine-professional-audio/True-Mobility-SWM7000.html
I don't know if they provide a full API to the head unit, but there is software for remotely controlling it. Up to 70 mics are supported. I'll get in touch with them this week.
Follow-up: Or, we could upgrade the sound card to an audio interface that has more than one line input, or perhaps even with built-in Mic Pre-amps, and control it all from the computer. Then we're not dependent on any one Mic manufacture, no less an expensive one.
QUESTION: Regarding operation for customer with a custom CD.
I like the idea of using CDDB for automatic lookup of track name information and song duration, and we should go with that as a first thing to do.
But I think we need a fallback to manual data entry.
A few reasons.
A pure custom CD (purchased from, say SoundChoice or by our own below mentioned CD purchase scheme) won't have CDDB entries.
This problem alone warrants a fallback to manual data entry. Other issues highlighted below, but are not so bad.
The CDDB or Internet connection could go down, at which point the CDDB connection is lost. Counterpoint: I'm not totally sure, but I think it may be possible to buy a copy of the CDDB database itself. Last I heard it was at 5-10 GB. Then we could put the database on the AutoKDJ server. But then there are other issues
Toqer: CDDB is free, we could download it locally or just use their servers. There's more complete commercial products out there, such as gracenote, but this costs around $1k@mo. It might be a good idea for me to create a KDDB (Karaoke Disk Data Base) and let folks start populating it. It would be good publicity for the site, a public service, and free data entry for us.
Some idiot who falls down on the CD tray or spills beer in the CD drive screws it up. We can get robust keyboards and track balls, but CDs are pretty fragile.
Toqer: There's mechanical things we can implement to protect the CD drives. Also we can mount them in a way where they can't be used as a drink coaster, what not. It would reduce it to where someone would have to purchase a ticket and scan it before they could pour beer in.
Any other comments?
CLOSED QUESTIONS
QUESTION: Regarding the system configuration for the AutoKDJ Server.
This should probably look just like the system you have already. I don't know what that is. I think you said AMD 3.4 GHz or something, but I forget. Can you give details?
Answer: It's a athlon 2.2ghz machine I believe. Video card is an ATI Radeon 7500 dual head out. Sound is a basic audigy.
QUESTION: Regarding the scenario where a user wants to sing a song that they download from Priddis:
Does this copy of the custom download song stay on the hard drive forever? Has the customer who did this also donated the song for the common good?
Answer: It's for the common good now. They get points applied towards their nuke points.
QUESTION: Regarding the central public terminal where people queue in their own songs.
What is the preferred physical user interface? Options:
Traditional Mouse + Keyboard Track Ball + QWERTY on GUI Touch screen Other ideas??? Answer:Track Ball and QWERTY Keyboard, only $10 bucks at Action Computer on lawrence.
QUESTION: Regarding the central public terminal where people queue in their own songs.
This machine needs a barcode scanner. Where can we get one? Would it use USB or COM or LPT?
Answer:Most likely serial over USB. Ebay has tons and they all pretty much work the same.
QUESTION: Regarding the KDJ Terminal...
I'm thinking this machine should also have a barcode scanner and all the automated song queue software.
Even with the easiest and most intuitive automated system, there will surely be some dummy who can't figure it out, and the KDJ will have to do it for them.
Would folks generally agree with this?
Toqer: Ya totally. I don't think it will need a bar code scanner though, except maybe to verify a ticket.
QUESTION: Regarding the central public terminal where people queue in their own songs.
How will this terminal communicate to the server?
This plugin is interesting:
http://sourceforge.net/projects/mlwww/
When loaded, WinAMP becomes a Webserver, so its playlist can be controlled by a different computer via a web browser. (http port 80.)
But it is limited, in that it was not designed for Karaoke. Specifically, songs have to already be in the Media Library (which defeats the l337's ID3 rename for the customer feature). It is also driven by a complex web interface, not a user friendly thing that can be put on this terminal. It also gives the user TOO much control, they get the whole transport, so they could actually stop the whole show!
Perhaps we could use its source code to make something custom...
Answer: Yah I like mlwww too. Actually, the l337 ID3 tag renaming works with it as well, since it displays the current playlist (which isn't a part of the ml_* stuff) Fully tested.
There is one problem we're going to have though, I don't think it's going to be too hard to work around. AKDJ has to unzip the song into a random directory before cueing it into winamp. It'll probably need more than just zip file support, mpg from VCDs comes to mind.
As far as what to use for host machine control, that's totally up to the programmers. There's also a few plugins that provide telnet functionality as well.
Follow-Up: OK, here's where I'd like L1quid's input, but I kinda like the idea of control over HTTP. Plus, ml_www comes with source code. So, if writing custom WinAMP plugin code is an option, we could conceivably modify the WinAMP server side to do whatever the hell we want. We could roll the l337, unzipping, microphone level adjust, and playlist manipulation all right into that WinAMP server plugin. But does that mean we need to give up the code to the OpenSource community?
Update: 5/13/2005: According to the source code of this module, these are the license requirements:
WWW plug-in for the Winamp 2.9+ media library Copyright (C) 2003-2004 Nullsoft, Inc.
This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution.
So it would appear, licensing is not an issue here.
Also, the source is really well written. Clean and easy to read. Kudos to Justin, nice job!
I think it will be pretty straightforward to modify to meet our specific purpose.
