Ok, so, where do i start?

I want to completely write a piece of linux software to use on a Rasp PI.

My aim is to turn the Rasp Pi into a Set Top Box to receive live streams.

I want it to act like a STB completely. What i had in mind was to re-write software like the Gemini Project for the Dreamoxes, but only for Rasp Pi and not for receiving SAT, but to receive streams.

Do i start writing this type of software in C++?

Are there any of you out there who had done something like this?

I know i can put XBMC onto my Pi, but i want to write my own Image for the Pi so it boots up completely like a STB would.

Any help would be GREAT.

Thanks Guys.