<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>16.7ms in the life : Media Center</title><link>http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx</link><description>Tags: Media Center</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Media Center Technical Discussion 1: Tuners and TuningSpaces</title><link>http://blogs.msdn.com/peterrosser/archive/2006/04/03/MCE-TechTalk-1.aspx</link><pubDate>Tue, 04 Apr 2006 06:08:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:567832</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>28</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/567832.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=567832</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=567832</wfw:comment><description>&lt;P&gt;The Media Center TV experience driven by a flexible, multi-standard engine that works with any compatible tuner (including a good number of analog tuner cards and all &lt;A href="http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/directx9_c/directx/htm/bdanetworkprovider.asp"&gt;BDA&lt;/A&gt; digital tuner cards) to create portable recordings viewable on any Windows XP machine.&amp;nbsp; To support “trick play” on Live TV (Pause, FFWD, etc.), the video engine is separated into two main segments: capture and playback.&amp;nbsp; The capture engine, controlled through the Media Center Receiver Service (ehrecvr.exe), is responsible for creating the actual recordings, including controlling tuners, creating a media stream, and optionally encrypting the stream before writing it to disk.&amp;nbsp; The playback engine, controlled through the Media Center Shell (ehshell.exe), processes media streams created by the capture engine and renders them for the user.&amp;nbsp; Everything else, as far as TV goes, is built on top of or leverages these two components.&lt;/P&gt;
&lt;P&gt;The capture engine uses the &lt;A href="http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/directx9_c/directx/htm/themicrosoftunifiedtuningmodel.asp"&gt;Microsoft Unified Tuning Model&lt;/A&gt;, with &lt;A href="http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/directx9_c/directx/htm/ituningspaceinterface.asp"&gt;TuningSpaces&lt;/A&gt; and &lt;A href="http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/directx9_c/directx/htm/itunerequestinterface.asp"&gt;TuneRequests&lt;/A&gt;, as a layer on top of the physical tuner, allowing Media Center to treat tuners agnostically.&amp;nbsp; To actually tune to a channel, Media Center first creates (or looks up) a tune request that corresponds to that channel, then submits it to the capture engine, which uses it to tell the tuner what to do. &lt;/P&gt;
&lt;P&gt;A TuningSpace corresponds to code written specifically to handle a type of video broadcast, such as ATSC, NTSC, or DVB-T.&amp;nbsp; Some properties are present in all TuningSpaces, like its ID (e.g. {8A674B4D-1F63-11D3-B64C-00C04F79498E} for NTSC Analog Cable), and some are specific to an implementation.&amp;nbsp; The implementation-specific properties--like NetworkType or DefaultLocator for digital standards--let the capture engine configure the underlying BDA driver, and provide a way to tweak default values.&amp;nbsp; A TuningSpace can be considered a "template" for how Media Center will try to talk to the tuner card, depending on how you have it configured--mapping roughly to the old TV setting of "Antenna" or "Cable".&lt;/P&gt;
&lt;P&gt;All by itself, a TuningSpace is not enough to actually tune to a broadcast stream.&amp;nbsp; For that, Media Center creates a TuneRequest (by using the ITuningSpace object).&amp;nbsp; A TuneRequest can be thought of as "everything you need to know about tuning to a channel"; what it contains varies from TuningSpace to TuningSpace. For an NTSC tune request, you could expect it to contain a channel number and a reference to the TuningSpace; an ATSC tune request would contain a physical channel (the "major" channel) and a minor channel; a DVB-T tune request would contain the broadcast frequency, ONID, TSID, and SID.&amp;nbsp; All tune requests contain a reference back to the proper TuningSpace.&lt;/P&gt;
&lt;P&gt;Media Center stores information about which TuningSpace(s) are configured on the system on a per-tuner basis in the Windows registry under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Service\Video\Tuners key.&amp;nbsp; If you open this key, you'll see something like this:&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://pegasi.com/MCE_TT_1_1.gif" border=0&gt;&lt;/P&gt;
&lt;P&gt;The GUIDs correspond to "tuning categories", which are digital ({71985F48-1CA1-11D3-9CC8-00C04F7971E0}) and analog ({A799A800-A46D-11D0-A18C-00A02401DCD4}), each containing subkeys that correspond to individual tuner devices.&amp;nbsp; Note that there can be more than one tuner device per physical tuner card or USB device--Media Center treats multi-tuner cards as separate devices.&amp;nbsp; I will use my Hauppauge WinTV PVR PCI II device's entry as an example:&lt;/P&gt;
&lt;TABLE border=0&gt;
&lt;TBODY&gt;
&lt;TR vAlign=top&gt;
&lt;TD&gt;&lt;IMG src="http://pegasi.com/MCE_TT_1_2.gif" border=0&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;IMG src="http://pegasi.com/MCE_TT_1_3.gif" border=0&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;As you can see above, the tuner's auto-generated GUID is {99F4E181-4B58-4258-8547-2CE73F3C0386}.&amp;nbsp; This key is created by the ehrecvr service automatically when it detects the tuner: for a PCI card, this happens at service startup; for a USB device, this happens either at service startup or when you plug in the device.&amp;nbsp; If you delete the key and restart the ehrecvr service--and the card is still installed--a key will be created with a new GUID.&amp;nbsp; If a USB device is detached and reattached to a different port it will also get a new key.&lt;/P&gt;
&lt;P&gt;Examining the properties, there are a couple of interesting values:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;I&gt;ConfiguredTuningspace &lt;/I&gt;is a REG_MULTI_SZ that contains a list of the TuningSpace IDs for which this card has been configured in Media Center. 
&lt;LI&gt;&lt;I&gt;SupportedTuningspace &lt;/I&gt;contains a list of the TuningSpace IDs with which the tuner's driver reports compatibility.&amp;nbsp; These lists&lt;I&gt; can&lt;/I&gt; differ if the tuner supports more than one type of tuning, like some of the newer "hybrid" tuners--a card that supports both NTSC and PAL is an example of such a card.&amp;nbsp; 
&lt;LI&gt;&lt;I&gt;DevInstance&lt;/I&gt;, &lt;I&gt;DevName&lt;/I&gt;, and &lt;I&gt;DevPath &lt;/I&gt;are obtained from the tuner driver, and give Media Center "pointers" to the physical device.&amp;nbsp; If you open up Device Manager and look at the advanced properties for the matching device, you will find that the values map 1:1 to entries here. 
&lt;LI&gt;&lt;I&gt;PrefEncoder&lt;/I&gt; either points to another hardware ID (in the case of a tuner with hardware MPEG2 encoding) or a software encoder (e.g. ATI AIW cards).&amp;nbsp; This is populated after we successfully build a capture graph for the device, and points to the MPEG2 encoder that is included in the graph at that time.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;It's important to note that ehrecvr will create a key for every tuner device detected, whether or not it is configured in Media Center or not.&amp;nbsp; Whether it is available for tuning in Media Center is just a matter of whether the registry keys &lt;I&gt;says&lt;/I&gt; it is.&amp;nbsp; For example, you can easily get more than 2 tuners working for scheduling, recording and Live TV viewing by editing the registry entries for the tuners to enable them.&amp;nbsp; The reason that you cannot do this through the UI is simply because there is not a good graphical way to resolve recording/viewing conflicts amongst more than 2 tuners for a given TuningSpace.&amp;nbsp; Instead of being able to choose which of the 4 tuners to "steal", you can only choose from 2 of them.&amp;nbsp; However, with 4 tuners you're much less likely to actually&lt;I&gt; &lt;/I&gt;need conflict resolution, so IMHO it's acceptable.&lt;/P&gt;
&lt;P&gt;To actually get the n-tuner scenario working properly, every tuner must be in the same TuningSpace, and change channels the same way.&amp;nbsp; So you cannot mix STB with non-STB, Satellite with Cable, etc. This is due to limitations in the Guide and PVR engine, not in the capture or playback engines.&amp;nbsp; STB tuners are somewhat of a pain, so I recommend using Method 2 (below) if you are going to go with n-tuners on STBs.&amp;nbsp; Also, you must have an STB for each and every tuner... not a fun scenario if you have to pay for each one.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;This week's Media Center tweak is getting N tuners working in Media Center.&amp;nbsp; There are various versions floating around out there on the internet, most of which include extra, unnecessary steps, likely because the authors figured out this stuff without the benefit of internal knowledge of the codebase, so they included everything they did to get it all working.&amp;nbsp; &lt;A href="http://www.thegreenbutton.com/community/shwmessage.aspx?ForumID=27&amp;amp;MessageID=106105"&gt;The version of this tweak posted on The Green Button&lt;/A&gt; works just like Method 2 below, but requires a reboot between each configuration run.&lt;/P&gt;
&lt;P&gt;If you have NTSC + ATSC, you can use this method for the ATSC tuners, the NTSC tuners, or both!&amp;nbsp; The only limitations are your hard drive's bandwidth, your system bus bandwidth, CPU time, and the number of tuners you can attach to the machine.&amp;nbsp; For NTSC that means a practical limit of about 10 tuners, if they are all recording non-DRM content.&amp;nbsp; For High Definition ATSC and DVB it's a little more intensive, but since there's no encoding going on (digital broadcasts are already encoded!), it actually balances out a little, with a top limit of around 7-8 tuners.&amp;nbsp; I have personally run 3 ATSC + 6 NTSC on my home system (through dual-tuner USB devices like the Adaptec AVC-3610), and it hummed right along (1 GB DDR Dual-Channel DDR 3200 RAM, Pentium 4 2.8 GHz (HT), 2x 7200 RPM 500GB Hitachi SATA drives in RAID-0 with the system/boot drive on a 40 GB PATA drive).&amp;nbsp; That's a bit more than I need, so I backed off to only 3 NTSC (2 USB + 1 PCI) and 2 ATSC (both PCI).&lt;/P&gt;
&lt;P&gt;Step-by-step, here's how to get n-tuner going.&amp;nbsp; Both methods assume you've already installed the tuners and have the drivers installed.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;B&gt;N Tuners in MCE, Method 1 (only registry editing):&lt;/B&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Stop the Media Center Receiver Service (&lt;TT&gt;net stop ehrecvr&lt;/TT&gt;) 
&lt;LI&gt;Open Registry Editor (&lt;TT&gt;regedit.exe&lt;/TT&gt;) and open this key:&lt;BR&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Service\Video\Tuners\&lt;I&gt;{GUID}&lt;/I&gt;&lt;BR&gt;where &lt;I&gt;{GUID}&lt;/I&gt; is either {71985F48-1CA1-11D3-9CC8-00C04F7971E0} for Digital (ATSC or DVB-T) or {A799A800-A46D-11D0-A18C-00A02401DCD4} for Analog (NTSC or PAL). 
&lt;LI&gt;Under the &lt;I&gt;{GUID}&lt;/I&gt; key, there will be one key per tuner device. 
&lt;LI&gt;Select the first tuner's key. 
&lt;LI&gt;Select the UserSettings key. 
&lt;LI&gt;Set these DWORD values as follows (case sensitive, all values in hexadecimal), creating them if they do not exist:&lt;BR&gt;EnabledForMCE = 0xffffffff&lt;BR&gt;UseSTB = 0 
&lt;LI&gt;Create a REG_SZ value named UserDefName and set its value to "Tuner X", where X is the tuner number (1 for the first tuner, 2 for the 2nd, etc.) 
&lt;LI&gt;&lt;B&gt;If this is the FIRST tuner:&lt;/B&gt;&lt;BR&gt;RecordOrder = 0&lt;BR&gt;RecordPrefered = 0xffffffff&lt;BR&gt;WatchOrder = number of tuners - 1, e.g. for 4 tuners set this to 3&lt;BR&gt;WatchPrefered = 0&lt;BR&gt;&lt;BR&gt;&lt;B&gt;If this is the LAST tuner:&lt;/B&gt;&lt;BR&gt;RecordOrder = number of tuners - 1, e.g. for 4 tuners set this to 3&lt;BR&gt;RecordPrefered = 0&lt;BR&gt;WatchOrder = 0&lt;BR&gt;WatchPrefered = 0xffffffff&lt;BR&gt;&lt;BR&gt;&lt;B&gt;If this is a tuner somewhere in the middle:&lt;/B&gt;&lt;BR&gt;RecordOrder = whatever you put for the last tuner + 1&lt;BR&gt;RecordPrefered = 0&lt;BR&gt;WatchOrder = whatever you put for the last tuner - 1&lt;BR&gt;WatchPrefered = 0&lt;BR&gt;&lt;BR&gt;The idea here is that you increment the RecordOrder by 1 for each tuner, and decrement the WatchOrder by 1.&amp;nbsp; RecordOrder starts at 0 on the first tuner and goes up to #Tuners - 1; WatchOrder starts at #Tuners - 1 and ends at 0 on the last tuner.&amp;nbsp; RecordPrefered is true (0xffffffff) on the first tuner, false (0x00000000) everywhere else; WatchPrefered is true on the last tuner, false everywhere else. 
&lt;LI&gt;Repeat steps 7 - 10 for each tuner, adjusting the values of RecordOrder, RecordPrefered, WatchOrder and WatchPrefered as appropriate. 
&lt;LI&gt;Close Registry Editor. 
&lt;LI&gt;Start Media Center. Voila!&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Yes, "Prefered" is misspelled.&amp;nbsp; We caught that after we shipped, and it's a little late to change now...&lt;/P&gt;
&lt;P&gt;&lt;B&gt;N Tuners in MCE Method 2 (a little registry stuff, no manual editing though):&lt;/B&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Start the Media Center shell (Green Button) 
&lt;LI&gt;Go to Settings--&amp;gt;TV--&amp;gt;Set Up TV Signal 
&lt;LI&gt;Choose the 2 tuners from the list of tuners that you will configure this time (first time through, just the first 2) 
&lt;LI&gt;Close the Media Center shell. 
&lt;LI&gt;Stop the Media Center Receiver service (&lt;TT&gt;net stop ehrecvr&lt;/TT&gt; or stop the service from Control Panel--&amp;gt;Administrative Tools--&amp;gt;Services) 
&lt;LI&gt;Open Registry Editor (&lt;TT&gt;regedit.exe&lt;/TT&gt;) and open this key:&lt;BR&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Service\Video\Tuners\&lt;I&gt;{GUID}&lt;/I&gt;&lt;BR&gt;where &lt;I&gt;{GUID}&lt;/I&gt; is either {71985F48-1CA1-11D3-9CC8-00C04F7971E0} for Digital (ATSC or DVB-T) or {A799A800-A46D-11D0-A18C-00A02401DCD4} for Analog (NTSC or PAL). 
&lt;LI&gt;Under the &lt;I&gt;{GUID}&lt;/I&gt; key, there will be one key per tuner device. 
&lt;LI&gt;Find the 2 keys that were just configured by Media Center.&amp;nbsp; You can tell which ones they are by looking for the "EnabledForMCE" value under the UserSettings key.&amp;nbsp; If it is set to 0xffffffff, it was configured--otherwise it will be 0x00000000 (0). 
&lt;LI&gt;Export the 2 keys to .reg files on your hard disk. (right-click on the {GUID} key and choose Export [selected branch only]).&amp;nbsp; Make a note of where you save those files... you're going to need them!&amp;nbsp; Name each one differently (e.g. Tuner1.reg, Tuner2.reg). 
&lt;LI&gt;Repeat steps 1 - 8 for each set of 2 tuners (if you have 3, then just then 3rd, etc.), selecting different tuners each time. 
&lt;LI&gt;Repeat steps 4 and 5. 
&lt;LI&gt;Double-click on each of the .reg files you created in step 9 to import them into the registry. 
&lt;LI&gt;Close Registry Editor. 
&lt;LI&gt;Start Media Center. Voila!&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Next week we'll talk about the PVR engine and recording management.&lt;/P&gt;
&lt;P&gt;This posting is provided AS-IS with no warranties.&amp;nbsp; The views expressed above do not represent those of Microsoft Corporation.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=567832" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category></item><item><title>Media Center Technical Discussion Series</title><link>http://blogs.msdn.com/peterrosser/archive/2006/04/03/567506.aspx</link><pubDate>Mon, 03 Apr 2006 21:52:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:567506</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>9</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/567506.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=567506</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=567506</wfw:comment><description>&lt;P&gt;One of the more popular subjects for users who email me is how to get Media Center to do something that cannot be done (or is hard to do) from the UI.&amp;nbsp; Since I have not been able to talk about my current work much (Windows Vista and unannounced other stuff)&amp;nbsp;I am kicking off a roughly weekly technical discussion on tweaking Media Center.&lt;/P&gt;
&lt;P&gt;Planned discussions:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A HREF="/peterrosser/archive/2006/04/03/MCE_TechTalk_1.aspx"&gt;Tuners and Tuning Spaces &lt;/A&gt;
&lt;LI&gt;PVR and Recording 
&lt;LI&gt;Unattended/Scripted Configuration 
&lt;LI&gt;Video Playback 
&lt;LI&gt;Writing Your Own Media Center Application&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Want to know how to tweak something in Media Center that's not listed above?&amp;nbsp; Let me know and I'll see if I can work it in.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=567506" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category></item><item><title>VoodooPC's 8TB Media Center PC</title><link>http://blogs.msdn.com/peterrosser/archive/2006/03/02/542493.aspx</link><pubDate>Fri, 03 Mar 2006 01:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:542493</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/542493.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=542493</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=542493</wfw:comment><description>&lt;P&gt;From Engadget:&lt;/P&gt;
&lt;DIV align=center&gt;&lt;A href="http://news.com.com/2100-1003_3-6044142.html?part=rss"&gt;&lt;IMG alt="" hspace=4 src="http://img.engadget.com/common/images/5178632431807386.jpg?0.19406108734385585" align=absBottom vspace=4 border=0&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;BR&gt;When we heard that VoodooPC was planning a media PC with 16 drive bays and a maximum capacity of 8 terabytes... [&lt;A href="http://www.engadget.com/2006/02/28/voodoopc-plans-8tb-media-pc/"&gt;Read full posting on Engadget&lt;/A&gt;]&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;Sounds pretty cool--maybe I'll get one here to "test" with ^_^.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=542493" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Found/default.aspx">Found</category></item><item><title>DVB Guide issues - "cannot schedule recoding because guide data cannot be accessed"</title><link>http://blogs.msdn.com/peterrosser/archive/2006/02/15/DvbGuideProblem.aspx</link><pubDate>Thu, 16 Feb 2006 10:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:533073</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>9</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/533073.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=533073</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=533073</wfw:comment><description>&lt;P&gt;We have been getting reports about Guide problems&amp;nbsp;from DVB users across&amp;nbsp;Europe and the world, hopefully in time for the next Rollup release (external date not yet announced, but should be late Q1 to early Q2).&amp;nbsp; The problem typically manifests itself when scheduling many shows to record, but can occur anytime.&amp;nbsp; Without a code fix, you cannot work around the issue cleanly/easily, but closing the shell (Media Center UI) and restarting the "Media Center Scheduler Service" (ehsched) will reset the state of the machine.&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Edit: This is the "cannot schedule recording because guide data can't be accessed" issue.&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;We root-caused the problem to an unusual memory management problem in how we deal with the Guide data.&amp;nbsp; For performance reasons, we temporarily increase certain buffer sizes during a Guide download, and decrease them again later.&amp;nbsp; There is a timing issue with garbage collection events in some situations, though, that can cause the decrease to not take effect "in time", thus keeping the buffer sizes large.&amp;nbsp; This does not actually reduce the amount of real memory used, but it does exhaust the virtual address space eventually.&amp;nbsp; You can observe the behavior using &lt;A href="http://www.sysinternals.com/Utilities/ProcessExplorer.html"&gt;SysInternals' Process Explorer&lt;/A&gt; by adding the "Virtual Size" column (under the Process Performance tab) and observing its value for ehrec.exe.&lt;/P&gt;
&lt;P&gt;With better knowledge of the cause, though, comes a better workaround than "gun ehshell.exe and restart ehsched when it happens".&amp;nbsp; Until the fix comes out, the best thing to do to &lt;EM&gt;prevent&lt;/EM&gt; this problem from occurring is probably to set up a Scheduled Task to do those things for you at a predictable time.&amp;nbsp;To wit:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Download recycle_mce.cmd from&amp;nbsp;&lt;A href="http://pegasi.com/recycle_mce.zip"&gt;here&lt;/A&gt;.&amp;nbsp;(script to recycle ehshell.exe and TV services).&amp;nbsp; Unpack the script somewhere on your drive. 
&lt;LI&gt;Change your Guide download time to a time that you are not likely to have a need to either watch TV on your MCE or record a show.&amp;nbsp; 4am is pretty safe for me, but to each his own.&amp;nbsp; I wrote a tool that lets you edit this time easily, you can &lt;A href="http://www.pegasi.com/MceDlTimeEditor_0.1.zip"&gt;download it from my site&lt;/A&gt;. 
&lt;LI&gt;Create a Scheduled Task to run the script daily about 30 minutes after the time you configured the Guide to download.&amp;nbsp; If you have a modem, you may need to give it more time.&amp;nbsp; If you have a pretty fast computer and broadband, 30 minutes is very generous. &lt;A href="http://www.uwec.edu/help/WinXP/scheduledtasks.htm"&gt;Guide to creating scheduled tasks&lt;/A&gt;.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;It's not a perfect solution, since a) it presumes you have a time during the day you will not make recordings or watch TV, and b) it cannot prevent the problem 100%, especially if you are a "heavy" user.&amp;nbsp; If you run into the problem, though, running recycle_mce.cmd will at least reset your state.&lt;/P&gt;
&lt;P&gt;The real fix is coming with the next rollup, but since there are users out there feeling pain &lt;EM&gt;now&lt;/EM&gt;, I thought I'd try to help a little.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;The programs, scripts, and instructions in this posting are provided AS-IS, with no warranties, and are not sanctioned nor released by Microsoft.&lt;/STRONG&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=533073" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Tools/default.aspx">Tools</category></item><item><title>A Brief History of ATSC in Media Center</title><link>http://blogs.msdn.com/peterrosser/archive/2006/02/03/AtscInMce.aspx</link><pubDate>Fri, 03 Feb 2006 11:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:523878</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>26</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/523878.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=523878</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=523878</wfw:comment><description>&lt;p&gt;In the beginning there was NTSC in Freestyle (Media Center 2002), and it was good.&amp;nbsp; Media Center supported the #1 market and proved that computers could do a great job recording television, pausing Live TV, and organizing recordings.&amp;nbsp; With support for one tuner under our belt and an enthusiastic user base, we moved forward with Harmony (Media Center 2004) to a more mature, flexible and polished product that supported&amp;nbsp;dual NTSC or PAL tuners, opening up the European, Asian and Australian marketplaces.&amp;nbsp; A few intrepid souls figured out how to hack together ATSC support into Harmony using little-known interfaces and scarce hardware like the VBox 110.&lt;/p&gt;
&lt;p&gt;Between the release of Harmony and Symphony (Media Center 2005), ATSC demand increased by leaps and bounds, though still smaller than the NTSC base by far.&amp;nbsp; To this day, only a very small percentage of Media Center users actually use ATSC, although it's a matter of some discussion whether that number is small because the number of HDTVs is small, or because Media Center's support is... less than optimal.&amp;nbsp; In any case, by the release of Symphony the user community was clamoring for ATSC support without hacks, and was disappointed when Symphony shipped without it.&amp;nbsp; An update quickly followed, though, and Symphony Rollup 1 with HDTV Support was released as a free update through Windows Update and the Microsoft Download Center. The changes in Emerald (Rollup 2) and Diamond (Windows Vista) did/will not not substantively change the architecture of ATSC, so what we have today will more or less be the way it works for another couple of years. &lt;/p&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;em&gt;••• design decisions&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;When we (speaking in generalities here, since I was not a member of the team at the time) first investigated how to include ATSC into the product, there were several major hurdles standing in the way.&amp;nbsp; The first was a consequence of our decision to use the VMR (Video Mixing Renderer) instead of the deprecated Overlay Mixer for rendering video.&amp;nbsp; Overlay rendering differs from mixing in the way that video is prepared for display.&amp;nbsp; In overlay mode, the video is literally painted over the top of whatever else is being rendered.&amp;nbsp; In mixing mode, "surfaces" with video or other graphics are blended together, either in software or hardware-accelerated, prior to rendering on the monitor.&amp;nbsp; The advantage of mixing mode is greatly increased flexibility in what you can display at the cost of performance.&amp;nbsp; It takes a lot more horsepower to process all those pixels, especially with alpha (transparency) and 3D effects.&amp;nbsp; 99% of the video hardware on the market today uses a form of overlay mode, which drastically reduces the hardware requirements (e.g. no 3D hardware required), but hamstrings them when viewed side-by-side with the sort of effects you can get with mixing.&amp;nbsp; The semi-transparent menus on top of video that you see in Media Center that give it such a cool look are just not possible with overlay mode.&amp;nbsp; All that alpha blending and those 3D effects come at a hefty cost, though.&amp;nbsp; Media Center has to work many times harder to get the video to the screen, even when &lt;i&gt;no&lt;/i&gt; special effects are on-screen at the time.&amp;nbsp; That, in a nutshell, is why Media Center requires not just an OK video card to shine.&amp;nbsp; And a faster CPU.&amp;nbsp; As a result of the increased power needed to render video, and with the hardware available to consumers in 2000-2002, it wasn't really feasible to offer HD with the first couple of releases.&lt;/p&gt;
&lt;p&gt;Even if the video could keep up (which it could on higher-end systems, even in 2002), there was another difficulty: Guide data.&amp;nbsp; The problem is that when you get multiple lineups (the term we use for the programming information associated with the set of channels available on a given medium in a geographical area), merging them into a single lineup and making it easy for the user is not an easy solution.&amp;nbsp; The decision was made to punt it until demand was increased, and to stick with a simpler homogenous lineup, rather than the more advanced heterogeneous lineup that would be required to support both NTSC and ATSC on a single system.&amp;nbsp; The market of people that have more than one TV provider is, after all, not that large, and we wanted to get it right for the most people we could.&lt;/p&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;em&gt;••• support for ATSC gathers steam&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;A vocal minority of the user community, along with a large majority of the eHome TV product team, were not pleased with the lack of support.&amp;nbsp; We got the funding to put ATSC in the product, as long as we could fit it into the schedule and without major risks to the architecture of Media Center's TV and PVR functionality.&amp;nbsp; With compressed schedules the norm, and the development and testing staff already deeply into a bad work/life balance, many options were considered for getting ATSC out to users.&amp;nbsp; What was finally implemented is a good first stab at doing it, with a few facets that are, um, less than what we'd like them to be.&amp;nbsp; Since we did not have ATSC-specific listings available through our Guide data provider for many, many areas, we looked instead at reusing the data available from existing analog lineups via "mapping".&amp;nbsp; Since ATSC channels are in a completely different format (like 13-1 or 9-5), and to avoid putting a new button on the remote (requiring a redesign), ATSC channels are renumbered in the UI.&amp;nbsp; The scheduling/PVR conflicts were just ignored, leaving it up to the user to say "only record this channel", omitting support like "record this in HD if you can, but get it in SD if not".&amp;nbsp; The end result was a pseudo-heterogeneous lineup support that we have today.&amp;nbsp; You do get the additional ATSC lineup merged into your Guide, but the analog source is still required--you cannot have ATSC without NTSC today.&lt;/p&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;em&gt;••• the current state of things&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;During First Run (the initial Media Center setup wizard), or TV Signal Setup, we detect whether you are in a region that supports ATSC, and then detect if you have a compatible ATSC card installed (or for Emerald, up to 2 ATSC cards).&amp;nbsp; After configuring your SD tuner, ATSC is configured as an adjunct to the "primary" analog tuners.&amp;nbsp; If you choose an analog, sans-STB (set-top box) cable lineup for your analog tuners, then that data is what's available to ATSC to map to its channels.&amp;nbsp; The same goes for satellite or OTA (off-the-air/broadcast) lineups.&amp;nbsp; Only with digital cable lineups do you usually get the full Guide data to assign to your ATSC channels.&lt;/p&gt;
&lt;p&gt;To assign listings to the ATSC channels in the lineup, we run a heuristic match against the available channel metadata, and try to get a "best-fit" match for existing channels to the new ATSC channels.&amp;nbsp; For example, if there is a channel "KOMO-DT" in the primary lineup, it can be matched to the known ATSC channel KOMO-DT on 4-1.&amp;nbsp; In some areas, the match can't be made automatically, but you can go to the Guide settings (Settings--&amp;gt;TV--&amp;gt;Guide--&amp;gt;Edit Digital TV Listings) and manually associate the listings of an existing channel to the ATSC channel.&amp;nbsp; Basically what you are doing is saying "this channel that exists on my "primary" lineup has identical programming to that ATSC channel".&amp;nbsp; It works best with digital cable lineups because they carry all of the local OTA ATSC channels on their networks (due to Federal must-carry laws).&amp;nbsp; To get the minor channels (where the "minor channel" &amp;gt; 1, e.g. KCTS-DT2 on 9-2 in Seattle), you have to add them to your lineup manually using Add Missing Channels, and then map them to listings using Edit Digital TV Listings.&lt;/p&gt;
&lt;p&gt;The end result of all of this is a unified lineup that can be presented to the user in a single Guide grid.&amp;nbsp; ATSC channels are assigned numbers like 1041 for channel 4-1, and slotted in where they fit best.&amp;nbsp; If your primary lineup already has a channel 1041, we look for another block of numbers to put the ATSC channels.&amp;nbsp; A side-effect of this is that if your primary lineup is changed--like if Comcast decides to add a channel 1000 to their lineup--the ATSC channel numbers may get reassigned to another empty block.&amp;nbsp; Personally, I'd like to implement a better solution, but as I've said before, we Americans are unnaturally attached to our channel numbers.&amp;nbsp; Most would just give you a blank look if you suggested that we don't even really &lt;i&gt;need&lt;/i&gt; channel numbers at all.&amp;nbsp; Not when you have a good enough search/filter mechanism, anyhow.&lt;/p&gt;
&lt;p&gt;&lt;font size=4&gt;&lt;em&gt;••• the days to come&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;For the Diamond release, we have announced support for OCUR (OpenCable Unidirectional Receiver) tuners, which will allow native tuning of digital cable signals, with CableCard support (for premium channels like HBO).&amp;nbsp; This includes HDTV signals, which should be good news to most users.&amp;nbsp; More people pay for TV service now than don't, and if you own a Media Center, you are about 20 times more likely to have cable or satellite service than not.&amp;nbsp; Roughly.&amp;nbsp; OCUR support probably means (definitely, for Diamond) that we won't be supporting heterogeneous lineups anytime soon, which is a shame, but hard to make a business case against.&amp;nbsp; Why spend time and treasure on something that most people won't use, and could possibly destabilize the entire product?&amp;nbsp; That's a little hyperbolic, but the onus is on the people who want the feature to justify it.&lt;/p&gt;
&lt;p&gt;We announced a deal with DirecTV where we will directly support their newest STB in Media Center, just like--or very similar to--the OCUR does with digital cable.&amp;nbsp;&amp;nbsp;The field is finally opening up and we're getting to a point where we can offer our users very attractive options for "traditional" TV services.&amp;nbsp; The European market, or more precisely, the non-U.S./S.Korea/Japan market, has already standardized (for the most part) on a fairly sensible broadcasting standard--DVB--which we are improving our support for with every release.&lt;/p&gt;
&lt;p&gt;Non-traditional video services are also booming in popularity, with Online Spotlight partners offering more movies and other multimedia content for free (in many cases) or on an ala-carte basis, directly competing with PPV services offered by traditional TV providers.&amp;nbsp; Apple has changed course on its "we'll never get into the PVR business" policy with iTunes video (and their toe-dip product Front Row, which is a pretty spiffy little QuickTime automation script), and The Market is scrambling all over itself to get on the bandwagon.&amp;nbsp; Internet TV is coming, just as soon as we (as in "we the market", not necessarily "we at Microsoft") figure out what Internet TV is.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=523878" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Musing/default.aspx">Musing</category></item><item><title>Fix for ATSC after uninstalling Rollup 2</title><link>http://blogs.msdn.com/peterrosser/archive/2006/01/24/AtscFixForSymphony.aspx</link><pubDate>Tue, 24 Jan 2006 22:24:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:517006</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/517006.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=517006</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=517006</wfw:comment><description>&lt;P&gt;In some cases you may find that ATSC (HDTV) no longer works after uninstalling Media Center Rollup 2 from your computer.&amp;nbsp; The issue is caused by a schema change in the Tuners registry key.&amp;nbsp; Today I identified a workaround to get your ATSC back up and running without reinstalling Symphony or Rollup 2.&lt;/P&gt;
&lt;P&gt;To restore your ATSC functionality in Symphony:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Stop all Media Center services and processes&lt;/LI&gt;
&lt;OL&gt;
&lt;LI&gt;Close Media Center&lt;/LI&gt;
&lt;LI&gt;Start--&amp;gt;Run--&amp;gt;services.msc (or Control Panel--&amp;gt;Administrative Tools--&amp;gt;Services)&lt;/LI&gt;
&lt;LI&gt;Stop "Media Center Receiver Service"&lt;/LI&gt;
&lt;LI&gt;Stop "Media Center Scheduler Service"&lt;/LI&gt;&lt;/OL&gt;
&lt;LI&gt;Open Registry Editor (Start--&amp;gt;Run--&amp;gt;regedit.exe)&lt;/LI&gt;
&lt;LI&gt;Delete the key at:&lt;BR&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Service\Video\Tuners&lt;/LI&gt;
&lt;LI&gt;Start Media Center&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;This has not been rigorously tested, and has not been "officially" released to the Microsoft Knowledge Base yet.&amp;nbsp; I am fairly confident of the fix, but this is posted AS-IS, with no warranties.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=517006" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category></item><item><title>DVB Radio "No TV Signal" Workaround</title><link>http://blogs.msdn.com/peterrosser/archive/2006/01/22/DvbRadioWorkaroundForNoSignalError.aspx</link><pubDate>Mon, 23 Jan 2006 07:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:516080</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>9</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/516080.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=516080</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=516080</wfw:comment><description>&lt;P&gt;I&amp;nbsp;am currently investigating a fix for two DVB Radio issues identified a workaround for those affected.&amp;nbsp; If you are getting a "No TV Signal" blue overlay when tuning to a DVB Radio station, particularly&amp;nbsp;a low-bitrate station like BBC World Service, or you are seeing 15+ second channel change times for changing between DVB Radio and DVB Video channels, this workaround may apply to you.&lt;/P&gt;
&lt;P&gt;This involves editing your registry, so if you are not comfortable doing that, please wait for the binary fix to be released.&lt;/P&gt;
&lt;P&gt;The key is:&lt;/P&gt;
&lt;P&gt;HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Media Center\Service\Video\Tuners\DVR&lt;/P&gt;
&lt;P&gt;Set &lt;STRONG&gt;NearUnderflowCheckMillis=4000 (0x00000fa0)&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;If you are not experiencing problems with DVB Radio, do not change this value.&amp;nbsp; If you are in the U.S., for example, it can cause instability with ATSC tuning.&amp;nbsp; Once the binary fix is released, you should return this value to its original value of 2000 (decimal).&lt;/P&gt;
&lt;P&gt;This is a non-supported, non-official&amp;nbsp;workaround and is provided AS-IS, with no warranty.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=516080" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Coding/default.aspx">Coding</category><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category></item><item><title>Recording over 1394 (Firewire) in Media Center</title><link>http://blogs.msdn.com/peterrosser/archive/2005/10/25/Firewire-Recording-on-MCE.aspx</link><pubDate>Wed, 26 Oct 2005 09:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:485033</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>17</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/485033.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=485033</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=485033</wfw:comment><description>&lt;P&gt;There has been some recent effort to pry open the 1394 interface in various STBs (set-top boxes), most notably that of timmmoore's STB package that goes to extraordinary lengths to hook into Media Center's experience.&amp;nbsp; The state of the world today, at least with Media Center, is that the "outside looking in" hooks of Tim's package are the only way to get that HD content off of digital cable and into Media Center.&lt;/P&gt;
&lt;P&gt;Here's how his package works, in a nutshell.&amp;nbsp; You install a couple of drivers that provide a software interface to the various commands you might expect to be available from an STB: channel changing, power toggle, etc.&amp;nbsp; An application then runs in the notification area, or tray, and acts as an intermediary between Media Center and the STB drivers.&amp;nbsp; When Media Center says "Change channel to 54", MyTray (Tim's tray application) listens in via a "hook" into Media Center and sends the channel-change command to the STB.&amp;nbsp; When Media Center starts a recording, another hook lets MyTray know that's happened and MyTray sends a "start streaming video over 1394" command to the STB.&amp;nbsp; When Media Center stops the recording, a similar event happens.&lt;/P&gt;
&lt;P&gt;Physically, you connect your computer with the STB by plugging in a IEEE.1394 (Firewire) cable into each.&amp;nbsp; If you have two STBs, you can daisy-chain them together.&amp;nbsp; The traditional "IR" blaster for each STB is removed from the receiver so that it does not interfere with the commands sent over the 1394 connection.&lt;/P&gt;
&lt;P&gt;There are a couple of significant downsides to doing it this way:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;It's a lot harder to hook in from outside Media Center and try to figure out when channels are changing, recordings are starting or stopping, and in multi-tuner scenarios, which tuner/STB to use than it would be if Media Center could just treat the STB as a virtual tuner. 
&lt;LI&gt;You still need an analog tuner for each STB you need to control.&amp;nbsp; This may seem odd, but it's part of the reason this works.&amp;nbsp; From Media Center's point of reference, it is still managing all of the recording and channel changing.&amp;nbsp; The fact that the actual channel change is triggered by another application is unknown and unknowable within Media Center. 
&lt;LI&gt;Since Media Center is still recording over the analog tuners, you end up with two copies of the same program.&amp;nbsp; MyTray can be set to clean up the Media Center version once it knows its recording completed successfully (e.g. no 5C protection from the STB prevented the recording), but you still churn the disk more (2x more for non-HD shows). 
&lt;LI&gt;Premium content like HBO is likely protected by the STB by the 5C standard, which MyTray does not support.&amp;nbsp; Nor can it without obtaining a 5C certificate, which are pretty hard to get.&amp;nbsp; The sticky parts for most interested parties are the &lt;EM&gt;unlimited &lt;/EM&gt;liability clause you have to sign, and the certification process itself, which I hear is stringent. 
&lt;LI&gt;MyTray is the product of a single developer, and one person alone cannot bring to bear the necessary development, testing, and packaging resources that bring a high polish to a product.&amp;nbsp; A common saying that applies here is "90% of the work is in the last 10% of the project".&amp;nbsp; Tim did a great job and some impressive detective work getting the app where it is, but getting that "shipping product" quality is a hard job to do all by yourself, working in your spare time.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;I am personally using this at home right now, despite the downsides.&amp;nbsp; The fact that I am willing to do this probably means I'm not alone, and in the few informal hallway conversations I've had about it there's a lot of interest in getting this sort of thing done natively in Media Center.&amp;nbsp; There's not matching excitement about funding the cost of doing it, but there seldom is, when it comes down to it.&lt;/P&gt;
&lt;P&gt;As Media Center becomes the default SKU for OEMs shipping Windows and our user base grows, there is a tremendous downward pressure on the unit cost of the machines.&amp;nbsp; The first target for downsizing seems to be the tuners, since a fair number of those new Media Centers are being sold as "Tuner Ready" instead of "Tuners Inside".&amp;nbsp;&amp;nbsp; In my humble opinion, implementing a 1394 recording solution is the single best way to get broad market appeal while keeping hardware costs low.&amp;nbsp; Everybody wins: we sell our Windows licenses, OEMs move more units, customers get reliable, scalable&amp;nbsp;SD &amp;amp; HD recording, and the cable companies get their $10 a month from renting their STBs.&lt;/P&gt;
&lt;P&gt;Consumers are used to paying the fee, and I think they would continue to do so.&amp;nbsp; There's been a market for leasing otherwise expensive equipment for many years, and there's no reason to think that will change soon.&amp;nbsp; When faced with a decision between $10 a month (or $20 for two STBs), or buying a $250 tuner (or two), a lot of people go for the monthly fee.&amp;nbsp; After all, it takes over 2 years to amortize that, and with technology that seems like a good bet to me.&amp;nbsp; Being on the bleeding edge is more comfortable if you can stay there on a lease. ^_^&lt;/P&gt;
&lt;P&gt;Which brings me to the true point of my post: I want to hear how much this feature is wanted in the user community.&amp;nbsp; Is it only wanted by the technically savvy, or do "average" users want it?&amp;nbsp; I really want it, and I don't want this relegated to the "power user" or "enthusiast" bin, because that will result in, at most, a power toy implementation.&amp;nbsp; If we can bring a full feature team to bear on this, I bet we could really make our users happy.&lt;/P&gt;
&lt;P&gt;Just think, you could have everything Media Center gives you, plus VOD support (including Pay-Per-View, integrated into Media Center), and HDTV over digital cable.&amp;nbsp; If I'm not mistaken, this could easily expand into satellite STBs, too, if they don't &lt;EM&gt;already&lt;/EM&gt; support streaming over 1394.&lt;/P&gt;
&lt;P&gt;I'm going to get back to tinkering with the Network Provider and 1394 tuner classdriver code some more... I'm all worked up with excitement now. ^_^&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=485033" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Musing/default.aspx">Musing</category></item><item><title>The procedure entry point GetRequestedRuntimeVersion could not be located in the dynamic link library mscoree.dll</title><link>http://blogs.msdn.com/peterrosser/archive/2005/10/24/484460.aspx</link><pubDate>Tue, 25 Oct 2005 07:08:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:484460</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/484460.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=484460</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=484460</wfw:comment><description>&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;EM&gt;&lt;FONT size=4&gt;Symptoms&lt;/FONT&gt;&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Aaron Stebner blogged this a few days ago, but some folks are still running into it, so I'll speak to it a bit.&amp;nbsp; If you get an error dialog with the message "&lt;FONT color=#ff0000&gt;The procedure entry point GetRequestedRuntimeVersion could not be located in the dynamic link library mscoree.dll&lt;/FONT&gt;" during Media Center updates or while running MceRepair, you have (most likely) gotten&amp;nbsp;a corrupt .NET Framework 1.1 installation.&amp;nbsp;&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;EM&gt;&lt;FONT size=4&gt;Solution&lt;/FONT&gt;&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The fix is to reinstall the Framework from: &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=262D25E3-F589-4842-8157-034D1E7CF3A3&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=262D25E3-F589-4842-8157-034D1E7CF3A3&amp;amp;displaylang=en&lt;/A&gt;&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;P&gt;&lt;EM&gt;&lt;FONT size=4&gt;Root Cause&lt;/FONT&gt;&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The most likely cause for this issue is a "clean" reinstall of Windows into the same&amp;nbsp;directory without formatting the disk first.&amp;nbsp; Since the .NET Framework 1.0 is included with Windows XP Media Center Edition, the 1.0 version of mscoree.dll is saved into the Windows directory, overwriting any version (e.g. the 1.1 version) already there.&amp;nbsp; Since the Windows registry is stored in a file that is not completely overwritten during the install, most of the v1.1 entries are left behind, making the .NET Framework v1.1 &lt;EM&gt;almost&lt;/EM&gt; work.&amp;nbsp; Compounding the problem, there are reports that v1.1 is not offered on Windows Update, because the update logic looks for the registry entries that tell it whether it's installed already, and gets fooled.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=484460" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category></item><item><title>MceRepair 0.2</title><link>http://blogs.msdn.com/peterrosser/archive/2005/10/21/483723.aspx</link><pubDate>Sat, 22 Oct 2005 08:20:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:483723</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>21</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/483723.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=483723</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=483723</wfw:comment><description>&lt;P&gt;I've posted an update to MceRepair&amp;nbsp;at &lt;A href="http://www.pegasi.com/MceRepair_0.2.zip"&gt;http://www.pegasi.com/MceRepair_0.2.zip&lt;/A&gt;, which&amp;nbsp;adds additional error logging in case of problems.&amp;nbsp; If you tried 0.1&amp;nbsp;and it failed,&amp;nbsp;0.2 may work for you.&amp;nbsp; If not, at least you will have more complete information with which I can debug it. [;)]&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=483723" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Tools/default.aspx">Tools</category></item><item><title>DRM Business Rules in Rollup 2</title><link>http://blogs.msdn.com/peterrosser/archive/2005/10/21/483663.aspx</link><pubDate>Sat, 22 Oct 2005 01:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:483663</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>15</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/483663.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=483663</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=483663</wfw:comment><description>&lt;P&gt;To clarify the somewhat vague statement I made about "business rules" for DRM changing in Emerald (Rollup 2), the changes were to include the new &lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/graphics/hh/graphics/dxvaguide_93abb133-d7f1-4a97-ac25-1a9596e0242e.xml.asp"&gt;COPP (Certified Output Protection Protocol)&lt;/A&gt; support in the release and to support the new version of the DRM engine.&amp;nbsp; The actual behavioral changes in Media Center are not that great: we included the&amp;nbsp;new "CopyNoMore" setting (previously "Reserved" in the CGMS-A standard) in our matrix of when to apply COPP, and were the "ship vehicle" for the new version of DRM from the DRM team.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Whether we even engage DRM at all is governed by those "business rules" I was talking about; it's a matrix that defines which protection level we apply to the recorded content based on multiple input vectors.&amp;nbsp; The entire response matrix is quite large, and defines things like whether you can create a recording&lt;SUP&gt;1&lt;/SUP&gt;, whether DRM encryption is applied&lt;SUP&gt;2&lt;/SUP&gt;, whether we permit recording the content to portable media, and whether to allow presenting the video over an given output&lt;SUP&gt;3&lt;/SUP&gt;.&amp;nbsp; In a nutshell, DRM protection/encryption is only triggered in existing analog scenarios when the input content is protected by a) &lt;A href="http://en.wikipedia.org/wiki/CGMS-A"&gt;CGMS-A&lt;/A&gt;, b) PAL's Copy Protection Flag, or c) Macrovision.&amp;nbsp; Realistically, you're only going to see Macrovision if you are doing pass-through from a VCR or DVD player, or you live in Korea and get your TV from a certain satellite service.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I've only personally seen &lt;A href="http://www.hbo.com/corpinfo/faq/cgmsfaq.shtml"&gt;CGMS-A broadcast on HBO &amp;amp; Cinemax&lt;/A&gt;, Showtime, and other "premium" channels.&amp;nbsp; VOD channels are usually marked CopyNever, while scheduled premium channels generally have CopyOnce tags.&amp;nbsp; I hear via forum postings that some people are seeing Fox News' "The O'Reilly Factor" getting marked as Copy Protected in Media Center, but I haven't witnessed it myself.&amp;nbsp; There's certainly nothing stopping broadcasters from setting the 2-bit attribute in their VBI data.&lt;/P&gt;
&lt;P&gt;&lt;SUP&gt;1&lt;/SUP&gt; - true for everything but CopyNever content&lt;BR&gt;&lt;SUP&gt;2&lt;/SUP&gt; - true for everything but CopyFree (or no CGMS-A at all) and no Macrovision&lt;BR&gt;&lt;SUP&gt;3&lt;/SUP&gt; - governed by COPP&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=483663" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category></item><item><title>DRM in MCE Rollup 2</title><link>http://blogs.msdn.com/peterrosser/archive/2005/10/20/483294.aspx</link><pubDate>Fri, 21 Oct 2005 05:33:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:483294</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>40</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/483294.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=483294</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=483294</wfw:comment><description>&lt;P&gt;I was posting to TheGreenButton.com and thought I'd save myself typing the same thing again, since it's good info, even if I am restating/repackaging existing opinion.&amp;nbsp;&amp;nbsp;The following is a response to people who thought for some reason that Rollup 2 was applying DRM to things that it did not before:&lt;/P&gt;
&lt;P&gt;Rollup 2 did not substansively change the way that we determine whether something should be copy protected or not; what it did was change some of the infrastructure of the underlying protection scheme.&amp;nbsp; Basically we revved the DRM version and refined some of the business rules that determine what level of DRM a piece of content gets.&lt;/P&gt;
&lt;P&gt;Whether something is protected by DRM depends on whether the broadcaster sends us CGMS/A (Copy Generation Management System / Analog) flags on Line21 of the analog signal.&amp;nbsp; This is *not* the (in)famous "broadcast flag".&amp;nbsp; If you want to know more about how CGMS/A works, there is plenty of material on the net.&amp;nbsp; Another factor is Macrovision (software and/or hardware), or in Europe, the CP flag.&lt;/P&gt;
&lt;P&gt;CGMS/A can set 4 different modes: CopyFreely (i.e. no protection), CopyOnce, CopyNoMore (i.e. it used to be CopyOnce, but you made a copy... so you don't get to copy it again), and CopyNever (no copies at all).&amp;nbsp; Since our whole business is built around timeshifting content, we don't count the one stored version as a copy at all, though in CopyNever circumstances the license is generally good for only a limited time.&lt;/P&gt;
&lt;P&gt;&amp;lt;soapbox&amp;gt;&lt;/P&gt;
&lt;P&gt;I'm not a big fan of DRM, but I do&amp;nbsp;see the business need for it.&amp;nbsp; Microsoft makes a big, inviting target for lawsuits if we even appear to be soft on protecting copy protected content.&amp;nbsp; That doesn't make me happy, since it attempts to restrict what I can do with "my" content, and no matter how much I am told (and cerebrally understand) that it's not mine at all, but I'm just licensed to view it, I still persist in thinking of it as "mine".&amp;nbsp; After all, I paid for it!&amp;nbsp; As a consumer, I want complete freedom in what I do with my content.&amp;nbsp; As a stockholder in Microsoft, I want to both protect from lawsuits and grow the consumer market, which seem to be opposing goals.&lt;/P&gt;
&lt;P&gt;So what we have is a compromise: DRM.&amp;nbsp; We have encryption technology strong enough to make it not worth cracking (by the time you have cracked it, you've spent more than it would have cost to just go out and buy another copy of the content... probably many hundred/thousand/million times).&amp;nbsp; With the technology also comes the ability for us to open up windows to use the content in limited ways... hopefully the ways that consumers really want to use it.&amp;nbsp; Of course, you can't just send copies around to everyone.&amp;nbsp; But you CAN (or should, if it's working right) put the content on a portable device.&amp;nbsp; Or make a DVD backup.&lt;/P&gt;
&lt;P&gt;There's more to this than most people realize, though.&amp;nbsp; Not only do companies like Microsoft and Apple have to guard against lawsuits, etc., but they have to make the studios and other content producers happy enough with the DRM solutions that they will go *farther* and give us more content in more flexible ways.&amp;nbsp; Do you think that Comcast, DirecTV or EchoStar would agree to&amp;nbsp;attach a digital tuner to a PC that can decode their signal without an ironclad guarantee that the content would not just end up on the net?&amp;nbsp; They are terrified of that prospect... and with (arguably) good reason.&amp;nbsp; DRM is what we need to open up PC-based solutions for all of our content.&amp;nbsp; I don't want to pirate my Comcast Digital Cable feed... but I *do* want to watch it!&amp;nbsp; In high-definition and on my Media Center.&amp;nbsp; If the DRM gets out of my way, and lets me burn a DVD for my collection (hard drives are finite, after all), then I'm game.&amp;nbsp; I don't care if I can't just post a video of some HBO movie on the internet.&amp;nbsp; I don't really have the inclination anyhow.&lt;/P&gt;
&lt;P&gt;I know there are a lot of folks out there who vociferously oppose DRM on principal.&amp;nbsp; The "information should be free" crowd argues on the principal that you cannot own information, and content is just information.&amp;nbsp; That isn't reality, though, and the courts and laws agree that people who create content can sell it.&amp;nbsp; I won't pontificate further on that, but leave with a parting piece of information relating to the prior paragraph: if the "no DRM" crowd wins, we won't have lots of content with no DRM suddenly... what we'll have is broadcasters and content creators that won't have any reason to share their content.&amp;nbsp; Hollywood will release it's next generation of DVD replacements, this time with something less laughable than CSS protection, and that'll be it.&amp;nbsp; No PC viewing of digital content, just analog.&amp;nbsp; Depressing to me...&lt;/P&gt;
&lt;P&gt;&amp;lt;/soapbox&amp;gt;&lt;/P&gt;
&lt;P&gt;This is just my opinion... I'm not a policy setter, and not on any DRM or Copy Protection team.&amp;nbsp; Fill in all the other disclaimers about my opinion not being my employer's, and all that. ;)&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=483294" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Musing/default.aspx">Musing</category></item><item><title>MceRepair 0.1 (alpha)</title><link>http://blogs.msdn.com/peterrosser/archive/2005/10/20/482974.aspx</link><pubDate>Thu, 20 Oct 2005 10:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:482974</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>25</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/482974.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=482974</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=482974</wfw:comment><description>&lt;P&gt;Having gotten a little fed up with manually re-registering MCE files when MedCtrRO.exe fails, I have created &lt;A href="http://www.pegasi.com/MceRepair_0.1.zip"&gt;a new command-line utility&lt;/A&gt; to automate the task.&lt;/P&gt;
&lt;P&gt;MceRepair.exe will:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Repair the ACLs to get COM+ Services working again (&lt;A href="http://support.microsoft.com/kb/909444"&gt;see KB909444&lt;/A&gt;) 
&lt;LI&gt;Repair the registration for .NET Framework v1.1 libraries (should fix the "Entry Point Not Found in mscoree.dll" error during registration). 
&lt;LI&gt;Reinstalls all MCE Windows Services 
&lt;LI&gt;Re-registers COM components of MCE 
&lt;LI&gt;Reinstalls managed assemblies into the GAC 
&lt;LI&gt;Recreates native images for managed assemblies (ngen)&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Of course, I can't warranty any of this stuff, but if you find it useful, feel free to use it.&amp;nbsp; If you run this and still cannot get things working on your machine, please let me know!&amp;nbsp; Please include your %windir%\MedCtrOC.log file, %windir%\ehome\ehshell.crash (if it exists), and if you're experiencing EPG problems, a zipped/RARed copy of your %ALLUSERSPROFILE%\Application Data\Microsoft\eHome\EPG folder.&lt;/P&gt;
&lt;P&gt;MceRepair 0.1 (alpha) is posted at &lt;A href="http://www.pegasi.com/MceRepair_0.1.zip"&gt;http://www.pegasi.com/MceRepair_0.1.zip&lt;/A&gt; [obsolete, use 0.2 below]&lt;/P&gt;
&lt;P&gt;EDIT: A newer version, 0.2, is now available at &lt;A href="http://www.pegasi.com/MceRepair_0.2.zip"&gt;http://www.pegasi.com/MceRepair_0.2.zip&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=482974" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Tools/default.aspx">Tools</category></item><item><title>Dealing with the COM+ Patch</title><link>http://blogs.msdn.com/peterrosser/archive/2005/10/18/482435.aspx</link><pubDate>Wed, 19 Oct 2005 01:39:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:482435</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/482435.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=482435</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=482435</wfw:comment><description>&lt;P&gt;Last week the COM+ folks released a critical&amp;nbsp;update that has &lt;A href="http://support.microsoft.com/kb/909444"&gt;some unfortunate side-effects&lt;/A&gt; for&amp;nbsp;people&amp;nbsp;who have tinkered with the ACLs (security permissions) on their drives.&amp;nbsp; Since Microsoft has been beating the security drum for several years now, the number of users who have tightened down the screws wrt their ACLs is probably quite large.&lt;/P&gt;
&lt;P&gt;The COM+ update, and the attendant KB articles explaining the problems that can be caused, are very generic, though, so if you are impacted by this problem it's a little harder to link it up with the update.&amp;nbsp; Basically you'll get a lot of spurious error messages in the event log about "inconsistent internal state" and "0x80070005" (which maps to a CRC error according to winerror.exe).&lt;/P&gt;
&lt;P&gt;Who does this affect?&amp;nbsp; Only the people running COM+.&amp;nbsp; Who's that?&amp;nbsp; Anyone running Media Center, for example.&amp;nbsp; If you have this problem, the fix is noted on &lt;A href="http://support.microsoft.com/kb/909444"&gt;the KB909444 page&lt;/A&gt;; basically you have to grant Full Access permissions to System and Administrators to %windir%\Registration, and Traverse Folder (List Folder Contents) permissions to Everyone for %systemdrive%, and %windir% (including subdirs).&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=482435" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category></item><item><title>Update Rollup KB908250 for Update Rollup 2 for Windows XP Media Center Edition 2005</title><link>http://blogs.msdn.com/peterrosser/archive/2005/10/18/482352.aspx</link><pubDate>Tue, 18 Oct 2005 21:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:482352</guid><dc:creator>Peter Rosser</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/peterrosser/comments/482352.aspx</comments><wfw:commentRss>http://blogs.msdn.com/peterrosser/commentrss.aspx?PostID=482352</wfw:commentRss><wfw:comment>http://blogs.msdn.com/peterrosser/rsscomments.aspx?PostID=482352</wfw:comment><description>&lt;P&gt;We finally shipped the Rollup QFE, which fixes some ugly issues with Rollup 2, especially in countries with DVB-T service.&amp;nbsp; If you're using DVB-T and Media Center, &lt;A href="http://support.microsoft.com/default.aspx/kb/908250"&gt;you really want this update&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;If you have DVB-T service and got the "scrambled guide" bug manifesting on your machine before you could install this QFE, what you need to fix it is to reset your EPG data.&amp;nbsp; The easiest way to do that is to go into Settings--&amp;gt;TV--&amp;gt;Scan for more services, click the Delete Existing Services button, and then scan.&amp;nbsp; If you live in an area that can receive more than one DVB-T service that broadcasts the same program, you may still see "duplicates" in your lineup, but that's to be expected.&lt;/P&gt;
&lt;P&gt;Even if you haven't experienced the scrambling bug, you should at the very least scan for more services, because we added a bit more flexibility into the scanning code to recognize transport streams with corrupt, missing or downright lying to us NITs (Network Information Tables).&amp;nbsp; If you live in Italy or Spain, in particular, you should get the update and rescan.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=482352" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/peterrosser/archive/tags/Media+Center/default.aspx">Media Center</category></item></channel></rss>