On a positive side, I have made quite some progress with Pluto over the last 2 months. Ok, what the hell is Pluto? Pluto is the new name for SNDK, my UPnP SDK I have been working on for the last 2 years (I think?). I renamed it that way because I am using G. Neptune library. I just finished the UPnP A/V Media Server Device. I should have the UPnP A/V Media Server Control Point done in a few days. After that, I am going to put it on SourceForge just like G. did with Neptune. The next step is to integrate it in XBMC.
My little component runs great. Let’s see if I get notified via IM for this post …
I did it. G. convinced me to use his little C++ library called Neptune
for SNDK. I spent 2 weeks working on it and it’s now working “comme sur des roulettes”. I got to learn a lot about Neptune which is good since I will most likely use it at Intertrust. G. gave them a free license. Anyway, I tweaked it a bit , added a few cool stuff to it and fixed a bunch of bugs to my code as well. Since it’s compiling under .NET, the code is a lot smaller. The little device test is 2/3rd smaller. Gotta put that project a side for now. I got a lot to do at work. Maybe I’ll work on it in a few months. Although after seeing G. UPnP server in Java and how simple it is to write in Java, I can see myself giving up on C++ in the next few years. It’s insanely convenient as you become lazier with age.
Hello everybody!
OK it’s been a long long long loooong time that I haven’t posted anything. Big things are changing for me. First is that I am changing job. I am really psyched about that. I am so psyched that I have been going back to my little SNDK project! Remember how it wasn’t working on linux and I couldn’t understand why. Well people, it is FIXED! Thanks to a little help from G. and his Neptune guidance, I was able to find the source of my problems (and there were quite a few). Anyway, I think I have spent enough time on this for this week. My next step is to completely start from scratch and use G.’s Neptune library but that will take a while. Anyhow, look at this beautiful screenshot of my UPnP light device running on linux and being discovered by the Intel UPnP Device Spy on my XP box ;-)
I know I am a geek because I finally found why I think programming is so amazing:” Software is a product of our imagination, like a book, a painting or a movie, designed to synthesize a particular representation of the real world. But unlike all other forms of pure art, software is constructed for utilitarian purposes to do more then merely reflect the real world; software interacts with the world and in many cases even controls it. And what is truly amazing — software is replicable: instantaneously, in arbitrary numbers, at zero cost! “
Today I spent a few hours (3) on the control point. I changed a few things to be able to get the description from a device and parse it. I still can’t parse it somehow, I don’t know why. I spent also more time trying to figure out why this g**d*mn Device Sniffer from Intel is binding to port 1900 and send a Unicast SSDP M-SEARCH when i am running and not when Rhapsody is. It’s killing me. I looked at their stack line by line and I don’t see anything they do that I don’t do (in a different way of course)…It doesn’t really break me but it bugs me…