Bionic Buffalo Tech Note #116: Supporting Pegasus/ISA Services in MHP and OCAP Environments
Two such extended services include the
Directory
and
ServiceGateway
interfaces. The former
is similar to a tree-structured file system directory, while the latter is an extension of the
Directory
with two added operations,
attach
and
detach
. A ServiceGateway is meant to be used typically as
the top-level directory of a server, with
attach
and
detach
used to begin and end sessions with that
server. (The concept of a
ServiceGateway
in Time Warner's ISA is similar to that of the DSM-CC
concept, but not the same. The ISA
ServiceGateway
has very limited functionality compared to
that of DSM-CC. Also, the concept of distributed objects in ISA is limited to the server, so the ISA
ServiceGateway
object isn't directly accessible to STBs. )
Services may be discovered by the STB middleware in an implementation-dependent fashion. For
example, they may be found by browsing known content streams, by dereferencing URLs, or by
incorporating pre-configured services. The middleware implementation creates a list of such services
available to applications.
An application, in turn, may rely upon the service list prepared by the middleware, or it may find new
services on its own. (These may, in turn, be passed to other applications.) Applications extend their
knowledge of services by using the same techniques as does the middleware (browsing, URLs, and
preconfigured or preprogrammed services).
One form of browsing which may be employed by the middleware as well as by applications is
directory traversal. Specifically, starting with a
ServiceGateway
or
Directory
, a program can
traverse the tree to discover more services. One concrete implementation of a
ServiceGateway
is
an object carousel, which is transmitted using any of several protocols from the server to the STB. An
object carousel is seen by the application software as a
ServiceGateway
, which is the root of a
tree-structured directory of objects.
Pegasus/ISA doesn't use object carousels, but it does have a data carousel, called the Broadcast File
System (BFS). The BFS data carousel contains data, not objects. In order to incorporate Pegasus/ISA
services into the MHP/OCAP environment, Palestine and its components synthesize MHP/OCAP
application objects from BFS data carousels. The data carousel itself is seen by MHP/OCAP
applications as an object carousel, so they may be used transparently by compliant applications.
Although Palestine includes software to “translate” to BFS to object format, a STB manufacturer can
substitute alternative translation software. Such substitute translators can be used to recognize object
references embedded within known data formats. For example, an electronic program guide (EPG, also
known as an interactive program guide, or IPG) contains stream information within the data. A custom
translator can convert such stream information to stream object references, and an application can take
such references (which appear as specializations of
Service
objects) and use them with standard
MHP/OCAP APIs. Bionic Buffalo provides libraries for building such translators, including functions
which do such things as generate
Stream
object references from the appropriate MPEG transport
information.
When objects appear within directories, standard Java, MHP, DVB, and OCAP APIs can be used to
manipulate those objects. Usually, such objects have file, stream, or directory interfaces, or the objects
might be other applications (perhaps in Java bytecode format). Directory objects also can be mounted
Page 4 of 5