QUOTE(terezin @ Dec 17 2006, 03:09 AM)
Knowing entirely nothing about XNA programming i ask this question.
Can someone make a Xvid / Divx player ??
What sort of Appz can be made using this system, are there any restrictions?
It would be sweet if we could play all media types.
This question is a very fair one and one that is going to keep coming up in one form or another for a good while.
Microsoft .NET languages (which include C#) compile down to a
byte code rather than true CPU machine language. This
byte code is then
interpreted by an engine when executed.
Due to the overhead of
interpretation, this form of code can not execute as fast as native machine code.
Further more, the runtime engine that performs the byte code interpretation also limits what actions are permissible. These
restrictions include direct/uncontrolled access to memory such as video memory, sound chip access, etc.
These
characteristics of the runtime environment restrict possible applications. The processing of DivX codecs, etc. typically need to run at full speed (to maintain the video frame rate), and achieve this by unencumbered direct access to video and sound chips.
So an XBMC clone implemented using XNA/C# is very unlikely. That said, if the hardware is up to it, and interpretation fast enough, surprises can happen. Emulators of old consoles work along similar lines to that described above (as does the X360s XBOX1 backwards compatibility to an extent) and they achieve in software what the original consoles used to rely on custom chips to perform.