Table of Contents

RI Goals

What are the requirements for the OCAP RI?

The current OCAP RI requirements are:

  • RI runs on a PC
    • Windows for 2008
    • Linux considered for 2009
  • RI and PC IDE must be available on open-source terms
  • RI and PC IDE must only include components with licenses compatible with the ODL dual-license plans
    • Components available only under GPL are not OK
    • Licenses for all third-party RI components must be reviewed by both CableLabs and the ODL legal teams
  • RI works with existing CableLabs ATE/CTP tests
  • RI adheres to current and future OCAP core specs
  • RI adheres to current and future OCAP extensions specs

Is the PC-based RI an OCAP RI, or an OpenCable Host RI?

The answer is, “Both, when it makes sense.” Our general approach to meeting OpenCable Host requirements in the RI is as follows.

  • Supply the minimum functionality in the stack+PC platform in order to pass CTP validation. In practical terms, it should be impossible to tell from CTP test results alone, whether the tests were run on the PC-based RI or on a actual host device.
  • Go beyond this minimum functionality as our experience guides us. In particular, make a cost/benefit judgment of the difficulty of emulating a hardware feature vs the perceived value (in our opinion) of having such a feature. For example, we will probably never implement some features such as complete CableCard emulation.
  • Go beyond this minimum functionality in order to support the major features of “standard” OCAP applications such as MSO guide apps. Again this will be a judgment call on our part, with guidance from our members.

For a summary of Host functionality that has been implemented in the RI PC Platform, see https://community.cablelabs.com/svn/OCAPRI/support_files/opensource_documents/Project%20Documentation/RI%20Feature%20Support.xls.

RI Development Environment

How do I set up a Windows/XP RI build environment?

See Quick Start.

What is the difference between a tag and a branch in the RI source code repository?

SubVersion does not distinguish functionally between a tag and a branch. Both constructs involve a copy of a file tree. The rules for using one vs the other are:

  • Use a branch when you are intending to maintain the new tree.
  • Use a tag when you are merely marking it as a snapshot in time, and do not expect to maintain it further.

RI Test Environment

General

How do I debug MPE and JNI code using Eclipse?

For debugging platform code (C) : Eclipse Platform Configuration.
For debugging stack code (Java): Configuring Eclipse for OCAP stack debugging.
See Debugging MPE and JNI code using Eclipse.

How can I view thread dumps and monitor information for the Java stack?

Stack trace and thread dumps can be generated via jdb - Generating Java thread dumps and monitor information.

Is there a way to automate key events?

The RI PC Platform implementation provides a mechanism for receiving key events via telnet. This mechanism allows key events to be inserted into the event queues as if the keys were generated from an actual remote. For more information concerning this feature, please read Automating Key Events.

PC Emulator Platform

No FAQ entries as yet

 

  • No labels