I've recently been looking at
MCML (Media Center Markup Language) and the one thing that keeps nagging me in the background is - why does MCML exist? Why not use XAML for doing what MCML does? Does MCML really have any useful future?
More worrying is that, should Media Center ever move over to using XAML - will MCML still be supported for the rest of eternity (for backwards compat)?
Any guestimates from any softies on how much bloat is caused by backwards compat of old, mostly unused markup in various apps?
I have this in my viewing list, hopefully it might explain more.
Edit: The comment thread for that video sort of explains the problem (MCML has been used for years etc).
-
-
CMIIAW (Correct Me If I Am Wrong)... (Edit: Corrected
)
Limitations... ? (could be)
XAML can go to the extreme GUI development and the parsing those files are different.. MCML it cannot that interactive as XAML GUI. So less of work and only that set of specifications are exposed to MC-PCs (like Micro edition of framework....)
(just a thought...) -
Well it gets weirder ... over here there is a comment from charlieo ..
charlio wrote:
And yes, the Windows Media Center Presentation Layer and MCML has existed in some form since the very first version of Media Center. It has proven, over the course of 4 versions of Windows Media Center (and soon to be a fifth in Windows Vista) to be such a powerful way to create applications designed for use with a remote control it was a no brainer decision to make it available to third parties.
And the SDK says ..
SDK wrote:
Windows Media Center Presentation Layer Applications .NET Framework 3.0 XAML Browser Applications Hosted HTML Applications Windows Media Center Availability Windows Vista only Windows Vista only Legacy and Windows Vista
So it is only available on Vista MCE (as is apparently XAML versions which it is suggested are not intended for local use). So the question remains, why only XBAP and not full WPF?
I am confused! MCE (with the exception of the domain login problems) sounds like it would be perfect for us, and might even resolve some of the issues we have with WPF. It looks like Vista Ultimate might be a partial solution (domain logon and MCE) but I refuse to put MCML as the core of our solution if it is going to disappear in a year or two's time. I've been bitten too many times before, and I don't want to be re-working stuff in 12 months just because something is no longer actively being pushed.
-
MCML could really being replaced by XAML in the future... MCML was available before XAML: they needed something for the MCE. It's going to be supported for some time (like .NET remoting) but there won't be any additions (like .NET remoting).

-
I'll try to start answering the questions on this thread -- keep them coming.

>> Why does MCML exist?
Media Center Markup Language, or perhaps more accurately the Windows Media Center Presentation Layer Application paradigm which includes the managed code application programming interface (API) + Media Center Markup Language (MCML) exists to enable third parties to develop software designed to embrace and extend the features of Windows Media Center on both the Media Center PC and on Media Center Extenders (like the XBox 360).
>> Why not use XAML for doing what MCML does?
You can if you so desire, although there will be some tradeoffs -- see the chart at http://msdn2.microsoft.com/en-us/library/bb188997.aspx.
>> Does MCML really have any useful future?
Sure.
The Windows Media Center team will continue to invest in this platform.
>> ...should Media Center ever move over to using XAML - will MCML still be supported for the rest of eternity (for backwards compat)?
Eternity is a really long time.
That said, I expect both XAML and MCML to co-exist for quite a long time.
BTW, littleguru, you are a little off base -- MCML is not going into maintenance mode (like .NET Remoting) any time soon. -
charlieo wrote:
I'll try to start answering the questions on this thread -- keep them coming.

Okee dokee, whilst I have your attention and can't find anything in the docs .. oh, and thanks for answering
Can I composite moving Text over video?
Can I composite ActiveX objects - i.e. does it support windowless controls?
Is there anything that is likely to cause me problems when using multiple displays (all running different MCML pages or the same one)?
Can I composite video (WMV etc) that is either loaded locally streamed over the network?
How does DirectShow/DirectX fit into the whole MCML architecture? Is it a second class citizen? Can I feed a Filter Graph into an MCML page and have text overlays?
I will get around to watching the video, but trying to find that much time in one chunk isn't that easy
-
In the context of MCML...
>> Can I composite moving Text over video?
Yes. The Z sample application in the SDK demonstrates how.
>> Can I composite ActiveX objects - i.e. does it support windowless controls?
No. You cannot use ActiveX within MCML.
>> Is there anything that is likely to cause me problems when using multiple displays (all running different MCML pages or the same one)?
Yes. There will only be a single instance of Windows Media Center, therefore you can only have a single page of MCML. Also, if you run Windows Media Center in full screen, it locks the input focus (mouse, keyboard HID events) to that screen.
>> Can I composite video (WMV etc) that is either loaded locally streamed over the network?
Yes. The <Video> model item is not aware (nor does it care) about where the video is sourced.
>> How does DirectShow/DirectX fit into the whole MCML architecture?
Windows Media Center is a DirectX application, and in some cases leverages DirectX Exclusive Mode. You can't use DirectX objects directly from MCML.
>> Can I feed a Filter Graph into an MCML page and have text overlays?
It depends. To get video into <Video> you use the PlayMedia method from the Windows Media Center API.
Thread Closed
This thread is kinda stale and has been closed but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.