Page 1 of 2

PSP for DJs

Posted: Fri Sep 01, 2006 12:52 pm
by marty.mcfly
I'd like to bring my PSP to a gig, hook it up to the mixer via 3.5mm jack to RCA, and play a song from the memory stick...

But to be able to mix the song from another source ie. turntable to a song from the PSP smoothly, i need the ability to beatmatch and control the tempo of the song playing from the PSP.

Is it possible to develop an MP3 Player for the PSP that has a pitch/tempo control function? Andy Fung's DJSP had a pitch bend function on his homebrew when the analogue stick was moved.

Ive asked the question before on another forum but may have been misunderstood, i don't want the PSP to play 2 songs simultaneously, just one song at one time and incorporate the PSP into my sets. So basically i'd be playing a song on vinyl then i'd mix in a track from PSP then back to vinyl etc. etc.

Unfortunately my programming skills are non-existent, which is why ive posted this here! If anyones got any interest in this at all i'd really appreciate it.

Thanks for hearing me out,

Marty.

Posted: Sat Sep 02, 2006 2:55 am
by dsn
Yep, that'd be a piece of cake. I have a pair of decks at home and I've considered playing around with this idea. Maybe the upcoming long weekend will give me a chance to put something together.

Posted: Sat Sep 02, 2006 12:53 pm
by marty.mcfly
nice one dsn
appreciate your interest!
keep us up to date on what you've come up with.

cheers mate,
marty.

Posted: Tue Sep 05, 2006 10:38 am
by marty.mcfly
heres a diagram i quickly made up for another forum to explain it a little further - hope it helps...

Image

Posted: Tue Sep 05, 2006 10:45 am
by dsn
Marty,

I'm still chugging away. I'm not quite finished yet but here's a screenshot of what I'm working on.

Image

The D-pad provides pitch adjustment (left/right) and momentary pitch bend (up/down). If the MP3 has a BPM tag, the adjusted BPM is displayed below the pitch adjustment percentage.

Cueing and playback are the same as any professional CD player. A cue point can be set with 1/60 sec accuracy and startup is instantaneous.

I'll post an announcement as soon as it's fully functional.

Posted: Tue Sep 05, 2006 11:01 am
by danzel
I LOVE YOU!!!
lol.

DJ here too, would be quite nice to throw a few tunes off the psp, will sit nicely along side the CDJ and the technics :)~~

If you need any help or testing, hit me up!

Danzel.

Posted: Tue Sep 05, 2006 5:18 pm
by marty.mcfly
DSN ****YOU ARE AN ABSOLUTE LEGEND!****
that is exactly what i had in mind!

i cant thank you enough for putting the effort and work into making the idea into a reality...

the screenshot looks awesome - cant wait for it =)

if theres anything you need for graphics id love to help. i do abit of design and use illustrator.

thanks again mate,

marty.

Posted: Sat Sep 09, 2006 11:38 pm
by dsn
Beta 1 is done:

http://captaindan.org/sw/ruckus/

Enjoy.

Posted: Sun Sep 10, 2006 6:36 am
by marty.mcfly
dsn you are a god among men. hands down this is the best and most useful bit of homebrew im lucky enough to have used.

the mapping of the buttons are very intuitive, and is so easy to use. i scanned through your guide and i was mixing away in 2 minutes. i think it is good enough to take out to gigs, it seems stable, havent had any crashes (yet, knock on wood). i like the flashing warning of the red bar when you've 30sec left on the song. nice touch. love the look, big numbers so you can see how long you've got... you obviously know the needs of a dj.

only have one thing to report so far:
lets say you load up a track, you've pitched it +4% and set the cue somewhere down the line, and its played and finished with... you load up another song but it keeps the same pitch and cue settings from the previous track, is it possible to have it reset the settings whenever you load a new track?

ruckus is perfect the way it is but i do have some suggestions, if they interest you, could hopefully add it to future releases.

- tap bpm calculator: while a song isnt playing, pressing start takes you to another screen, (with your logo and "about" details displayed of course) where you can tap X or O to the beat of the song playing from another source and it will display the bpm on the screen. then hit start again to return to the playback screen.

- key lock: not sure if this is possible on the psp, it would be useful to create a key lock option. If selected, no matter how fast or slow you alter the tempo, the key of the song will never change. (so the vocals dont sound like alvin simon and theodore at +12%)

- pressing CUE while the song is playing will jump back to the cue point but play the song straight away rather than stopping, much like your average CDJ. this would be useful so u can tap cue to the beat of the track playing on the speakers so u can practice the drop. then hit X instead when you want to drop the track in. Maybe CIRCLE could be the stop button instead.

i actually just got home from a gig and got so excited when i saw your post.... heres some pics of your work in action (notice the time!)

if i find any bugs ill let you know.
well done and keep it up, your hard work is greatly appreciated.

marty.

Image

Image

Posted: Mon Sep 11, 2006 4:29 pm
by danzel
^^ Truth! This is quite an awesome app!

Just a few minor issues I've came accross:
It is currently difficult to adjust the position of the cue point once it is placed. You can fix it up immediately after placing it as you are in a paused state, but if you then hit play and return to the cue point you can't adjust it.
Maybe when you return to the queue point you could be in a paused state, so you can use L/R to go forwards/backwards 1/60th of a second and fix the cue position.

And could we have O+Right and O+Left be +/- 0.5% Tempo? Then you can adjust the tempo in more noticable amounts at a single press.

Thanks man!

Posted: Wed Sep 13, 2006 3:37 pm
by dsn
I'm glad you guys like it!

marty:
- The pitch and cue not being reset is an oversight on my part. That will definitely be fixed.
- I like the idea of a tap tempo, especially since (as you may have noticed on my site) I've already written one for Dashboard. Should be easy to port.
- Key lock (or Master Tempo as it's known on my CDJs) is desirable but processor-intensive, and I'm not sure the PSP has the muscle to do that and decode an MP3 at the same time. I'll look into it though.
- Cue preview definitely needs to be added. I'm not sure why I left it out. In fact, the cueing system in general is a little clumsy and needs some work.

danzel:
- See previous acknowledgment of cueing being clumsy. :-)
- The tempo adjustment feels slow to me too, and I like the idea of doubling the Fast Seek button as a Fast Tempo Adjust button.

I'd also like to add waveforms (instead of the elapsed/remain tape, so you can "read" the track like a piece of vinyl) and saved cue points. I'm thinking of adding auto cue as well. Let me know if you think of anything else.

-Dan

Posted: Wed Sep 13, 2006 3:43 pm
by dsn
Actually, on second thought, I think it makes more sense to only reset the cue, not the pitch. A real CDJ or turntable wouldn't reset to ±0, only the cue point would be reset. Thoughts?

Posted: Wed Sep 13, 2006 7:14 pm
by danzel
Either way would be fine, perhaps keep pitch and have a button to reset to 0?
Can't think of any more features really :)

Small bug:
Some tracks (maybe id3v2 or id3v1?) don't get their tags read on the file select screen, and when you are playing then they have names like: g^^

got my hopes up?

Posted: Fri Sep 15, 2006 3:17 pm
by romez
Hello,

When I saw this i immediately put the psp back on my purchase list. In fact when I saw Marty's working version I bought one the next day!

I've just starting the art of dj'ing and I decided that this was a more portable and cheaper version of a cdj (with other bonus features). So you could say the main reason I bought a psp is to use it for dj'ing (can dsn get more praise than that?).

Needless to say I have gone nuts with the firmware goodies and appropriately downgraded to 1.5. Before I go on I should note that I bought a PSP with 2.5fw and did not have a copy of GTA so I updated to 2.71 then downgraded from there without a hitch.

MY PROBLEM:
I'm not sure if my downgrade path to 1.5 is the culprit (2.5>2.71>1.5) but basically your copy of ruckus does not work on my psp... I get the error message: "the game could not be started. (80020130)"

Further Info:
4gb sony memory stick duo

I'll try formatting

please help

cheers in advance
Romez

formatting no go

Posted: Fri Sep 15, 2006 3:55 pm
by romez
formatting didn't work

Posted: Sat Sep 16, 2006 5:11 am
by dsn
Try this: Download Ruckus again, but before you install it, rename both folders.

Ruckus__________________________ ---> Ruckus
RUCKUS~1% ---> Ruckus%

morning glory :)

Posted: Sat Sep 16, 2006 10:59 am
by romez
I woke up... marty broke me the good news... I tried it and it worked straight away without a reinstall

cheers a million

heard u were considering a waveform instead of the length bar... sounding cool

ps thanks

im all over it (good in Aus)

Posted: Sat Sep 16, 2006 11:25 am
by romez
been muckin around... i heard you werent as happy as can be with your cue function.

I noticed (not sure if its mp3/file specific) but on a file i tried out when i initially press cue... i find it rewinds back 0.01 or 0.02 secs earlier than what was intended... i find a double tap will put it exactly where i want it though... it might be a small problem with your rewind algorithm

the only small bug ive found so far ...

brilliant stuff though
thanks

Posted: Sat Sep 16, 2006 11:33 am
by marty.mcfly
dsn:
the waveform is a brilliant idea. physically seeing where the breaks are on a song definitely helps, especially if you dont know the song too well. hmm this is becoming more and more like a cdj1000 =) very impressed!

saved cuepoints would save alot of time.

and i agree - when you load a new song, reset the cue but not the pitch... as you said a real cdj wouldnt reset the pitch, the slider just stays where you left it.

for the cue preview...
like cdjs - when u HOLD the cue button down the song plays from the cue point until you let go... is it possible to have the same thing for SQUARE? if you tap SQUARE while the song is playing it will return to the cuepoint... but if you hold down SQUARE it will play from the cuepoint until you let go.... when you let go it stops playback and returns to the cuepoint. hope that made sense!

thanks again dns
love your work.

Posted: Sat Sep 16, 2006 11:35 am
by marty.mcfly
i mean DSN - sorry mate.

Posted: Tue Sep 19, 2006 11:27 am
by dsn
danzel,

The test MP3 I'm looking at only has ID3v1, which I didn't bother supporting because I assumed everyone was using ID3v2 by now. v1 is really simple though so I might as well add support for it.

Though I'm not sure why you're getting weird titles on the playback screen like that. That's a little worrisome.

-dan

Posted: Tue Sep 19, 2006 11:02 pm
by danzel
Always good to have more support :)

Don't put it too high up on the priorities though, I'd prefer another release with the other bits :)

I had goosebumps when I came across this thread.

Posted: Sun Sep 24, 2006 2:15 pm
by djdumbbi
Hi guys (DSN (PSPDJGOD) marty.mcfly and Danzel),

I'm a deejay here too. 3rd year college with no turntables or cd mp3 tables at all (sold it all before i came to college). I was fixing to ask the guys at psprhythm.com to make something like this. But this was EXACTLY WHAT I NEEDED! Thank GOD. I had ideas for this myself, and I can't program any good. Only know a lil bit of C++ and Java.

I currently have 2 PSPs, both 1.5 and with Custom FW, 1GB and 2GB sandisk sticks. I mostly use both for music and wanted to bring this to Frat parties(if hired) or such, maybe Asian parties.(Im Vietnamese BTW) I get songs from djfarm.com and tried mixing with just the XMB music one time......... Didn't go so well....actually bad. Anyways lets get to my ideas that I had in mind.

Idea 1: I noticed when I played Tekken 5 with my PSP Buddy (Girl) I heard that the music on both psps syncronized up, and it didnt skip a beat at all! (sounded like how I would mix both of the same songs at same time on TT's. I would like to see if you can do syncronization option with your current program. You know this is achieved by AD-HOC mode which the game finds another psp with the same game around the wireless range of the psp. It would be awesome if this can be done!

Thought: Wav form is ok, but I think thats too much of processing power for the psp to do pre-buffer decoding, and might have tracks chopping up or slicing or total slow down even if the psp is running at 333mhz, I don't know but it would be crazy/cool to achieve this. (possibly the wav form inside the Red bar.

My setup would be having my 2 psps each side of actual mixer, (since the psp doesn't have 2 headphone jacks for maybe even programming a MIXER for the psp.) The psps have visuals and such and mixing with the psps the whole time.

Idea 2: chop effects or flanger/echo - I don't know if this is achievable but it will hella badass. 1/16 - 1/4 chopping would good. Maybe using the trigger buttons to pull it off like L trig + R trig. This would be only good if the Beat Tap function works like a charm.

Idea 3 will come up later on..... (Hint: Its very long, almost detailed.)

Complain to me if my messages were too long guys.

Posted: Sun Sep 24, 2006 2:40 pm
by djdumbbi
Idea 3: this would be the ultimate and probably the hardest thing to do ever in the psp homebew of ideas. This reflects on Idea 1. I think this would have to have a group of dj programmers to figure out:

I was thinking about putting the mixer inside with the MP3 mixer program also, since having 3 psps is way too much -- all synchronized wirelessly. This is like more Client and server type programming. Example. PSP A (server)has the main program for the sound out. What it has is the mp3 mixer playing and the Mixer slider on the very bottom.

The combo buttons to press maybe the volume buttons to mix over to PSP B(client) and/or back to PSP A (fading). This achieves the option to not even needing a mixer. and on PSP B is the headphone jack for Cueing. Maybe using the PSP headphone controller for the mixing/fading part is better than changing the config buttons of the volume buttons on the psps. PSP B would just be like how the current Ruckus is right now, only on client side.

Idea 4:Some scratching effects would be great or like something: Instant voice samples button for vocals or the tornado alarm; combining those with the chopping = sick (badass).

I know that its weird as hell if the scratching can be done on the analogue stick. It would look too funny imagining it being done.

Idea 5: A tone generator to mess with. This deals with scratching too. Just notice some djs make a song out of just one tone to some breakbeats. Maybe like dj qbert when he messes with the long tone sample. Sounds like mid-sine wave?

Idea 6: Looping: again, this is only great if the beat tapping feature works like a charm. I would love this feature.

These are just the basic CD/mp3 mixing essentials that would only be needed. All the other rest of examples from Virtual DJ or Dj Decks would be too much and too rushed for programming.

If I can just learn the PSP programming great well enough, I think I can do all of the above I mentioned myself or with my programming friends here on campus. But I haven't gotten my feet wet yet with the PSP programming. If i can understand some of the source code, I might can try doing something, but for now, I can only read SOME C#,Java and C++ code. Hopefully you, DSN can implement these ideas over time. Just don't rush on implementing the ideas! ^_^ Thanks for a great useful DJ homebrew.

PS: my email to the PSP Rhythm guys was this long too. OVer 50+ ideas & bug fixes for them to consider doing for their beatmaker homebrew(this was when 3.0 was around.) And now look at them now with version 6.1!

Posted: Fri Sep 29, 2006 5:22 am
by cooleyandy
Great job Dsn, this is exactly what I thinking when I was originally envisioning DJSP. Glad to see someone came up with something better to help DJs.

Here are some ideas I was thinking of...

1) An automatic beat matcher (like the magic beat mixer from virtual DJ or Trakker)
2) ...which also related to an auto BPM detecter.
3) Looping.
4) Cross faders.

For #2, here's an article I was reading up on.
http://www.gamedev.net/reference/articl ... le1952.asp
Hope that helps :-)

Anyone still beta testing?

Posted: Wed Oct 25, 2006 6:56 am
by djdumbbi
Are there any updates to this homebrew? DSN, are you still working on this? If you choose not to, can you please release or PM the source code. I have no knowledge of the PSPDev'n yet but I'm still puzzled on getting a jump start on it, and want to make my own PSP brew like yours, but implementing my suggestions, since I do not see anything of a update to Ruckus right now. If you can point me in the right direction and pm me what tools you used to make this proggie, I'm sure ill try to help out or maybe make my own port of DJ Traktor.

Posted: Thu Oct 26, 2006 10:41 pm
by djkillabyte
omg omg omg. im so glad i found this. i was goin 2 learn 2 code 2 make one of these n came here lookin for help on coding 4 psp but now ive found this and i dnt have 2! thank you so much for making this!

Posted: Thu Oct 26, 2006 11:12 pm
by dsn
djdumbbi:

I'm still working on it here and there. I'm planning on opening the source soon though because I'm bogged down with other stuff, and I feel bad making people wait so long for updates. I'll post a reply here when the source is available.

Posted: Fri Oct 27, 2006 3:05 am
by dot_blank
everyone would be very grateful thank you in advance

Posted: Sun Oct 29, 2006 8:12 pm
by marty.mcfly
dsn, really looking forward to an update with waveform, tap tempo, cue preview and possibly master tempo options before you open source this project.

im sure youve got alot more important things going on so theres no rush.

your first release works perfectly fine, even brought it along to a couple of gigs to give it a run. only prob ive noticed so far, i have to turn the gain all the way up on the mixer to get decent levels out of the psp, got a little distorted so i chose not to play a whole song from the psp but used it more like a sampler, dropping acapellas, drum loops and sound effects.
cue preview would be perfect for this, allowing you to do quick stabs of a sample.

anyways keep it up mate,
all the best.
marty.