Listen Here  

Direct DownloadSubscribe via RSSSubscribe via iTunesSubsribe with Zune

The Custom Integrator Show Installment 008 is live. In Installment 007, we covered some of the basics that need to be addressed as part of implementing a reliable and predictable CableCARD-based Windows Media Center deliverable.  We also provided some links to the standards as a way to help you familiarize yourself with how the technology works behind the scenes.  As mentioned, it is essential to get a grasp on the components that make up the pipeline for you to be able to test and troubleshoot the platform well.


This installment takes us into the next phase of the Digital Cable Tuner (DCT) and CableCARD implementation – the architecture.  Microsoft has done a great job of simplifying the pairing and activation process using the TV Signal Setup wizard via the Windows Media Center experience.  We assume you are familiar with doing that and have been successful in setting up a CableCARD-based Windows Media Center ecosystem.  In this installment, we focus more on the components that influence the operation and handshaking of the DCT and CableCARD in relation to the head-end and what is necessary to understand about the architecture when troubleshooting it if things are not working correctly for some reason.  In the next installment, we will start to dive down into some of the specific troubleshooting aspects of dealing with the actual CableCARD implementation for Windows Media Center.


Remember that Windows Vista (and Windows 7) supports CableCARD technologies only when they are used with an approved Windows Media Center PC from an authorized OEM.  A DCT with a CableCARD provides a way to encode the premium high definition cable TV content in the same way set-top box does it – only without the need for the set top box.  Implementing CableCARDs requires coordination with the cable company and ample time should be allowed when getting the cards and the hardware paired and working.  For whatever reason, things always seem to go wrong with this process – whether it is with the cabling plant, the Windows Media Center PC, the Digital Cable Tuners, the CableCARDs, the handshaking with the head end, or with the provider’s ability to support CableCARD.  It is important to check all of the subsystems to ensure your clients have the expected experience when they use their Windows Media Center ecosystem for their TV viewing pleasure.


First, let’s get some of the terms out of the way.  This is not a comprehensive list, but it covers most of the acronyms we will use.  There is a lot of good content on the Internet regarding these terms and I find it useful for you to investigate them further because you usually end up finding some great resources related to the technologies in general. 

  • Single-Stream Card (S-Card™) – A two-way CableCARD module that follows the original CableCARD 1.0 Interface specification or implements only the single-stream portion of the CableCARD-2.0 Interface specification.

  • Multi Stream Card (M-Card™)M-Cards are newer CableCARD modules that implement all of the standard single-stream functionality (for backward compatibility purposes) in addition to the multi-stream functionality of the CableCARD 2.0 Interface specifications.

     Terminology also has been developed to help distinguish between the two different operating modes and product types:

  • S-Mode is the operating mode of the CableCARD’s interface when the original parallel transfer function is being used in single stream mode, which limits the video transfer rate to 40 Mbps in each direction.
  • M-Mode is the operating mode of the CableCARD’s interface when the newer serial transfer function is being used, regardless of how many transport streams are actually being delivered.  It provides up to a 200 Mbps data transfer rate for the video stream.
  • S-Host is when a CableCARD device operates exclusively in the S-Mode, regardless of how many tuners are available.
  • M-Host is when a CableCARD device implements the M-Mode variation of the interface.

Right now the Digital Cable Tuners supported by Windows Vista work with both S-Cards and M-Cards, but only operate in the S-Mode.  Although S-Cards work with the current release of Windows Media Center, it is recommended that you use M-Cards if the cable provider has them.  Be sure to update the firmware on the CableCARD tuners, especially when using M-Cards, since several issues have been resolved with firmware updates.  Also make sure that the cable provider has updated the firmware on the CableCARDs themselves.  Most M-Cards will update automatically when connected to the cable system.  Not all S-Cards will do that.  Sometimes it appears that the system is hung when you first plug the CableCARD into the DCT, but it really is updating the firmware over the cable infrastructure.  In the next installment, we will tell you where to look to get a better feel for the status of the card at that time.

Virtual Channel Table (VCT) – The Virtual Channel Table is a memory area in the DCT that maps actual Network IDs of the broadcast providers coming in as part of the Transport Stream (TS) to logical channel numbers used by Windows Media Center.  It contains information about the video stream (service type, analog or digital) the audio stream (single audio or multiple audio) and/or the data stream.  It also reflects the list of what channels are enabled to be viewed by the head end.  This is an important consideration when matching up the channels available from within Windows Media Center to those that are part of the client’s subscription package.

NTSC – For the sake of this discussion, these are the analog channels.  It is important to note that the digital transition (getting rid of the NTSC channels) in the US for Over the Air (OTA) broadcasts is independent of moving to an all digital cable system.  It gets confusing because many cable providers happen to be doing the same thing, but it is not part of the FCC mandate for June.  It is important, however, for you to understand which channels are analog and which are digital when working with the CableCARDs because the DCTs actually have two different tuner sections – one for analog and one for digital.  We will look at this more as part of the DCT architecture.

QAM (256) – For the sake of this discussion, these are the digital channels.  It actually refers to the modulation scheme used by the cable companies to fit the digital channels in what were the analog 6 MHz bands.  Most cable companies have either gone all digital (where they map previous analog channels to digital ones) or they are in the process of rolling that out by communities.

CableCARD Authorization Authenticates a specific CableCARD to tune/decrypt subscribed services and channels.  It also pairs the CableCARD to a specific Digital Cable Tuner device enabling playback of copy controlled content.  Pairing ties a particular CableCARD to a particular tuner.  If a CableCARD is moved to another device, pairing is lost.  Restoration of pairing requires the cable company to re-authorize the card.

Copy Control Information (CCI) – The CCI rules dictate if the show can be Copied Freely, Copied No More times, Copied only Once, or Copied Never.  These attributes match up to a numeric value of 0x00, 0x01, 0x02. or 0x03 respectfully.

Forward Application Transport (FAT) Tuner – This is the designator for the front-end tuner in an OpenCable system.  It is what receives either the digital or the analog signals.  This is in comparison to the Out of Band (OOB)/Forward Data Channel (FDC) tuners used for tuning the “handshaking channel” between the DCT and the head-end.


At a high level, this is how the pieces fit together.  Although Microsoft now only refers to OCUR devices as Digital Cable Tuners, I left the designator in because the DCT component is certified by CableLabs as a device that meets the OCUR specifications.


If we drill down into the DCT, we find that it consists of two tuner sections.  One for the transport stream and one for the Out of Band (OOB) communications used for handshaking with the head-end.  This OOB channel is referred to as the Forward Data Channel (FDC) if you are working with Scientific-Atlanta (SA) cards instead of those from Motorola (or NDS, as smaller player in the US market).  It, too, has an operating frequency on the cable just like a channel would and we will see that when we start to drill down into the troubleshooting process in future installments.



DCT/CableCARD Operation

     1. The Virtual Channel Table (VCT) gets downloaded into the DCT through the separate OOB/FDC tuner.  The VCT contains Virtual Channel Numbers (VCNs) that map to the actual frequencies used by the associated channels.

     2. The tuner no longer tunes by frequency, but instead passes the VCN to CableCARD to resolve.

     3. The CableCARD then determines if service is included in customer’s subscription based upon the additional information provided stored in the VCT.

     4. If the channel is subscribed, the CableCARD decryption is enabled for that Transport Stream.

     5. Windows Media Digital Rights Management (WMDRM) is applied by the DCT with the appropriate rights for the content to be viewed.  It is based on the CCI applied to that channel from Cable head-end. 

     6. Protected and unprotected video content (along with the associated command and control information) are sent via the DRI UPnP interfaces to PC.  Once again, I will refer you to the Digital Receiver Interface (DRI) specifications at www.cablelabs.com/specifications/OC-SP-DRI-I02-060210.pdf.


Hopefully the information we presented in this Installment sheds some light on the inner workings of the DCT, CableCARD, and how that information is passed into the Windows Media Center PC.  Now that we have some more of the architecture under our belts, the diagnostic information we will investigate next Installment will make a lot more sense.



Leave a Reply