Wednesday, November 28, 2007

Crushed dreams

And just like that, my dreams have been crushed. Spiffy video card doesn't look like he wants to capture video. The short story:

Apparently nVidia doesn't include the video input part of the driver in the default driver package, it's a seperate download and install. A few vocabs: VIVO (Video in / Video out), WDM (Windows driver model?). nVidia offers seperate WDM drivers for video capture. Unfortunately I suffer from an error that a large part of the community shares, error: "This device cannot start. (Code 10)" After installing the drivers, this appears on one of the capture devices. Sure enough, when I start windows movie maker or, more importantly, my testbed c# program... I get a nasty error.

It's much past my bedtime at this point, so I'll take this up another time.

Step one

My first challenge will be to actually get some video off of the PSP. I got a new one, so video out is built in. My spiffy new computer should be able to do the video in part gracefully. It's just a question of getting that all to work together.

So for this challenge, my language of choice is C#, and my weapon of choice is Visual Studio 2005, currently installing on said spiffy computer.

I haven't taken any classes on video stuff, but from what I heard around campus when I was on campus, it's a pretty tough problem. I'm hoping to run into all of those problems as I go.

I was initially hoping there would already be some C# magic that I could use to just:

Image i = VideoIn.GetScreen();

I doubt it will be that simple, hopefully someone has already made it so.

Starting something...

Okay, so here's the big idea. I'm not sure where to start, or what will get done, but here's the dream.

I have the game Lumines for the PSP. I just got it and I really like it. I almost didn't get it because it seems that the game can now be used to hack PSPs, and not even my new shiny one, just the old ones. Demand and economies being what they are, I paid a little much, but I'm over it.

After getting addicted for a little bit, I wandered off on the internet, like ya do, and I found this gem of an article on wikipedia which in turn led me to this gold pile. Some cs dude from Australia did exactly what I had wondered about the game, he solved it completely. I won't go into too much detail, but there's a method that if played correctly and perfectly, you never lose. The only way to really screw up is to drop a piece while it's being swept, thus screwing up. Otherwise, the game is perfectly done. He explains it better, not my job.

What my job is now, I want to use this knowledge to put together a system that plays the psp game perfectly. And I don't mean some lame PSP emulator and some screen scraping application. I want to do this computer science senior project style.

My mission: Take my perfectly legit PSP, use the video output to my program to analyze and play "the perfect game". Then hopefully get some sort of hobby shop kit together to push the buttons, thus removing me from the whole equation. All in all, I'm hoping to get that elusive 999,999 max score on my game.