Model and command set for an AV/C-based disc media player recorder

In a home audio visual network including a plurality of devices coupled via an IEEE 1394 bus, a system for accessing a media drive mechanism of a multi-item-type media player. The multi-item-type media player can play any type of disc media item. A media drive mechanism is included within the mutli-item-type media player and is configured to play or record the media item stored within the multi-item-type media player. A computer system is built-in to the multi-item-type media player. A software based media player model executes on the computer system, and in turn, causes the computer system to implement a method of accessing the media drive mechanism. In so doing, the computer system interfaces with a plurality of devices coupled to the multi-item media player via an IEEE 1394 communications link of an IEEE 1394 based network and provides a standardized command set for the media drive mechanism. The media player model provides a set of standardized commands that allow the plurality of devices on the network to access the media drive mechanism and thereby access the installed media item and control the functionality of the media drive mechanism.

FIELD OF THE INVENTION 
The field of the present invention pertains to audio-video systems. More 
particularly, the present invention pertains to interfacing audio visual 
media devices via an IEEE 1394 bus using industry standard AV/C protocols. 
BACKGROUND OF THE INVENTION 
A typical home audiovisual equipment set up includes a number of 
components. For example, a radio receiver, a CD player, a pair of 
speakers, a television, a VCR, a tape deck, and alike. Each of these 
components are connected to each other via a set of wires. One component 
is usually the central component of the home audiovisual system. This is 
usually the radio receiver, or the tuner. The tuner has a number of 
specific inputs for coupling the other components. The tuner has a 
corresponding number of control buttons or control switches which provide 
a limited degree of controllability and interoperability for the 
components. The control buttons and control switches are usually located 
on the front of the tuner. In many cases, some, or all, of these buttons 
and switches are duplicated on a hand held remote control unit. A user 
controls the home audiovisual system by manipulating the buttons and 
switches on the front of the tuner, or alternatively, manipulating buttons 
on the hand held remote control unit. 
This conventional home audiovisual system paradigm has become quite 
popular. As the number of new consumer electronics devices for the home 
audiovisual system have grown and as the sophistication and capabilities 
of these devices have increased, a number of problems with the 
conventional paradigm have emerged. One such problem is incompatibility 
between devices in the home audiovisual system. Consumer electronic 
devices from one manufacturer often couple to an audiovisual system in a 
different manner than similar devices from another manufacturer. 
For example, a multi-disc-type player made by one manufacturer may not 
properly couple with a television made by another manufacturer, and thus 
may not allow full access to all of it's capabilities. For example, the 
multi-disc-type player might not incorporate hardware (e.g., specific 
inputs and outputs) which enables the more sophisticated functions of the 
multi-disc-type player. As such, these functions may not be usable with 
simpler, less sophisticated televisions or cable decoders. 
Home AV systems which include multi-disc-type player devices are 
particularly problematic because of the wide variety of information the 
multi-disc-type player is able to contain and access. For example, there 
are several multi-disc-type compact disc players on the market that can 
support CDs, DVDs, and CD-ROMs. This problem may be made even more 
difficult given the fact that there may be no intuitive, readily usable 
way to access the various tracks with any other remote control (e.g., the 
tuner's remote control) of the home AV system. 
While the emergence of networking and interface technology (e.g., IEEE 1394 
serial communication bus and the wide spread adoption of digital systems) 
offers prospects for correcting the above problems, there is still no 
coherent, open, extensible architecture which can provide for intelligent 
content navigation and selection with multi-disc-type player devices. 
There is no system for keeping a user informed by providing status 
reporting and notification between devices within a home AV system. As 
IEEE 1394 technology spreads across product lines) it is necessary to 
define logical models and command sets for various devices or functional 
groups such as VCR's and multi-disc players. As the aggregate amount of 
media content available to users geometrically increases, as is the case 
with multi-disc-type players, providing a standardized means of flexibly 
and efficiently accessing the media content becomes essential. 
SUMMARY OF THE INVENTION 
Thus, what is required is a device model which is disc media type 
independent and thereby supports any type of disc media (CD's, MiniDiscs, 
etc.). What is required is a model which supports enhancements to the AV/C 
protocol for content navigation and selection, providing both a detailed 
and a general abstraction of content discovery and description, and 
allowing for a range of controllers (from very simple to very complex) to 
make use of its features. What is required is a model that supports status 
reporting and notification mechanisms so that controllers are aware of 
what is occurring within the device, and thus keep the user informed. This 
is especially important in a distributed network environment where the 
device may be in a closet or a different room of the house from the 
controller/user. What is further required is a logical model and command 
set for a Disc player/recorder mechanism for multi-disc-type players 
capable of storing vast amounts of media content. The required model and 
command should allow any interested entity to navigate the contents of the 
media in the drive, to access the contents (such as the selection of a 
track on the disc), and to monitor the status of the drive. The present 
invention provides a method and system which satisfies the above 
requirements. 
In a typical embodiment, such as, for example, a home audio visual network 
including a plurality of devices coupled via an IEEE 1394 bus, the present 
invention comprises a multi-disc-type media player for playing a plurality 
of media item types. A media drive mechanism is included within the 
multi-item-type media player and is configured to play or record the media 
item type stored within the multi-item media player. A built-in computer 
system is included within the multi-item media player. A software based 
media player model executes on the computer system, and in turn, causes 
the computer system to implement a method of accessing the media drive 
mechanism. In so doing, the computer system interfaces with a plurality of 
devices coupled to the multi-item media player via an IEEE 1394 
communications link of an IEEE 1394 based network and provides a 
standardized command set for the media drive mechanism. The media player 
model provides a set of standardized commands that allow the plurality of 
devices on the network to access the media drive mechanism and thereby 
access the installed media item and control the functionality of the media 
drive mechanism. 
In this manner, the present invention provides a model which is media type 
independent and thereby supports any type of disc media (CD's, MiniDiscs, 
etc.). The model of the present invention supports enhancements to the 
AV/C protocol for content navigation and selection, providing both a 
detailed and a general abstraction of content discovery and description, 
and allowing for a range of controllers (from very simple to very complex) 
to make use of its features. In addition, the present invention includes 
support for status reporting and notification mechanisms so that 
controllers are aware of what is occurring within the device, and thus 
keep the user informed. 
The model of the present invention supports new enhancements to the well 
known AV/C protocol for content navigation and selection, providing both a 
detailed and a general abstraction of content discovery and description, 
allowing for a range of controllers (from very simple to very complex) to 
make use of its features. 
The present invention defines a logical model and command set for a disc 
player/recorder mechanism. The model and command set allow any interested 
entity (such as, for example, a receiver/amplifier) to navigate the 
contents of the media in the drive, to access the contents (such as the 
selection of a track on the disc), and to monitor the status of the drive. 
The present invention provides these benefits within the context of IEEE 
1394 based home audio visual networks. The present invention defines a 
software based logical model and command set for a disc media 
player-recorder which is media type independent. The model of the present 
invention supports any type of disc media (CD's, MiniDiscs, LaserDiscs, 
etc.). It provides a general content description mechanism, with the 
ability to specialize the data structures based on the specific details of 
the media which happens to be installed at the moment. The model does not 
impose any restrictions on a disc subunit based on any particular kind of 
media, but it does support the various real-world restrictions that might 
occur (such as a disc being write-protected so that it cannot be 
modified). 
The model of the present invention supports status reporting and 
notification mechanisms so that controllers may always be aware of what is 
going on in the device, and thus keep the user informed. This is 
especially important in a distributed network environment where the device 
may be in a closet or a different room of the house from the 
controller/user. 
Additionally, the model of the present invention supports products that may 
choose to be only media players or those which may be both players and 
recorders (herein after referred to as player-recorders). However, it 
should be appreciated that the model of the present invention can function 
as a mere player as opposed to a player-recorder. 
The media player-recorder subunit model of the present invention is defined 
by a specification, which in turn, defines several data structures for 
media type description (how to describe a compact disc, a DVD disc, etc.), 
the contents of the media (titles for each track on a disc, the duration 
of each track, etc.), and for status reporting and notification. In 
accordance with the present invention, these data structures could be 
modified in any number of ways to include or exclude various pieces of 
information which may or may not be available depending on the media and 
the capabilities built into the corresponding drive mechanism hardware and 
software. For example, a designer may choose to leave some portions of the 
specification of the present invention unimplemented in order to design a 
device which is a media recorder and not a player.

DETAILED DESCRIPTION OF THE INVENTION 
Reference will now be made in detail to the embodiments of the invention, 
examples of which are illustrated in the accompanying drawings. While the 
invention will be described in conjunction with the preferred embodiments, 
it will be understood that they are not intended to limit the invention to 
these embodiments. On the contrary, the invention is intended to cover 
alternatives, modifications and equivalents, which may be included within 
the spirit and scope of the invention as defined by the appended claims. 
Furthermore, in the following detailed description of the present 
invention, numerous specific details are set forth in order to provide a 
thorough understanding of the present invention. However, it will be 
obvious to one of ordinary skill in the art that the present invention may 
be practiced without these specific details. In other instances, well 
known methods, procedures, components, and circuits have not been 
described in detail as not to unnecessarily obscure aspects of the present 
invention. 
The present invention provides a device model which is disc media type 
independent and thereby supports any type of disc media (CD's, MiniDiscs, 
etc.). The present invention provides a model which supports enhancements 
to the AV/C protocol for content navigation and selection, providing both 
a detailed and a general abstraction of content discovery and description, 
and allowing for a range of controllers (from very simple to very complex) 
to make use of its features. The model of the present invention supports 
status reporting and notification mechanisms so that controllers are aware 
of what is occurring within the device, and thus keep the user informed. 
This capability is especially important in a distributed IEEE-1394 network 
environment where the device may be located away from the controller/user. 
In addition, the present invention provides a software based model and 
command set for a Disc player/recorder mechanism for multi-disc-type 
players capable of storing vast amounts of media content, thereby allowing 
any interested entity to navigate the contents of the media in the drive, 
to access the contents (such as the selection of a track on the disc), and 
to monitor the status of the drive. The present invention and its benefits 
are further described below. 
NOTATION AND NOMENCLATURE 
Some portions of the detailed descriptions which follow are presented in 
terms of procedures, steps, logic blocks, processing, and other symbolic 
representations of operations on data bits within a computer memory. These 
descriptions and representations are the means used by those skilled in 
the data processing arts to convey most effectively the substance of their 
work to others skilled in the art. A procedure, computer executed step, 
logic block, process, etc., are here, and generally, conceived to be 
self-consistent sequences of steps or instructions leading to a desired 
result. The steps are those requiring physical manipulations of physical 
quantities. Usually, though not necessarily, these quantities take the 
form of electrical or magnetic signals capable of being stored, 
transferred, combined, compared, and otherwise manipulated in a computer 
system. It has proven convenient at times, principally for reasons of 
common usage, to refer to these signals as bits, values, elements, 
symbols, characters, terms, numbers, or the like. 
It should be borne in mind, however, that all of these and similar terms 
are to be associated with the appropriate physical quantities and are 
merely convenient labels applied to these quantities. Unless specifically 
stated otherwise as apparent from the following discussions, it is 
appreciated that throughout the present invention, discussions utilizing 
terms such as "processing," "computing," "translating," "instantiating," 
"determining," "displaying," "recognizing," or the like, refer to the 
action and processes of a computer system, or similar electronic computing 
device, that manipulates and transforms data represented as physical 
(electronic) quantities within the computer system's registers and 
memories into other data similarly represented as physical quantities 
within the computer system registers or memories or other such information 
storage, transmission, or display devices. 
COMPUTER SYSTEM ENVIRONMENT 
Refer to FIG. 1A which illustrates a computer system 112. Within the 
following discussions of the present invention, certain processes and 
steps are discussed that are realized, in one embodiment, as a series of 
instructions (e.g., software program) that reside within computer readable 
memory units of system 112 and executed by processors of system 112. When 
executed, the instructions cause the computer system 112 to perform 
specific actions and exhibit specific behavior which is described in 
detail to follow. 
In general, computer system 112 used by the present invention comprises an 
address/data bus 100 for communicating information, one or more central 
processors 101 coupled with the bus 100 for processing information and 
instructions, a computer readable volatile memory unit 102 (e.g., random 
access memory, static RAM, dynamic, RAM, etc.) coupled with the bus 100 
for storing information and instructions for the central processor(s) 101, 
a computer readable non-volatile memory unit 103 (e.g., read only memory, 
programmable ROM, flash memory, EPROM, EEPROM, etc.) coupled with the bus 
100 for storing static information and instructions for the processor(s) 
101. System 112 can optionally include a mass storage computer readable 
data storage device 104 such as a magnetic or optical disk and disk drive 
coupled with the bus 100 for storing information and instructions. 
Optionally, system 112 can also include a display device 105 coupled to 
the bus 100 for displaying information to the computer user, an 
alphanumeric input device 106 including alphanumeric and function keys 
coupled to the bus 100 for communicating information and command 
selections to the central processor(s) 101, a cursor control device 107 
coupled to the bus for communicating user input information and command 
selections to the central processor(s) 101, and a signal input/output 
device 108 coupled to the bus 100 for communicating messages, command 
selections, data, etc. to and from processor(s) 101. 
With reference now to FIG. 1B, a home audio visual network 120 in 
accordance with one embodiment of the present invention is shown. Network 
120 includes 6 devices, a television 121, a receiver 122, a 
multi-disc-type player/recorder 123, a CD unit 124, a set top box 125, and 
a video camera 126. Each of the devices 121-126 are communicatively 
coupled via respective IEEE 1394 bus links 130a through 130e to form a 
single network, wherein each device on the network can communicate with 
any other device on the network (e.g., in accordance with well known IEEE 
1394 bus protocols). While network 120 is shown including 6 devices, it is 
understood that network 120 is suited to include any number of devices up 
to the physical limits of the bus technology (e.g., 63 devices for IEEE 
1394). 
The IEEE 1394 serial bus used by network 120 of FIG. 1 is a high-speed bus 
architecture for interconnecting digital devices thereby providing a 
universal input/output connection. The IEEE 1394 standard defines a 
digital interface for the applications thereby eliminating the need for an 
application to covert digital data to analog data before it is transmitted 
across the bus. Correspondingly, a receiving application receives digital 
data from the bus, not analog data, and therefore is not required to 
covert analog data to digital data. The cable required by the IEEE 1394 
standard is very thin in size compared to other bulkier cables used to 
connect such devices. Devices can be added to and removed from an IEEE 
1394 bus while the bus is active. If a device is so added or removed, the 
bus automatically reconfigures itself for transmitting data between the 
then existing nodes. A node is considered a logical entity having a unique 
address on the bus structure. Each node provides an identification ROM, a 
standardized set of control registers and its own address space. 
The IEEE 1394 communication standard of network 120 of FIG. 1B supports 
isochronous data transfers of digital encoded information. Isochronous 
data transfers are real-time transfers which take place such that the time 
intervals between significant instances have the same duration at both the 
transmitting and receiving applications. Each packet of data transferred 
isochronously is transferred in its own time period. An example of an 
application for the transfer of data isochronously is from a set top box 
125 to a television 121. The set top box 125 receives the video stream 
from a cable company and divides the stream into discrete packets. The set 
top box 125 then transfers each packet, representing the images and sounds 
recorded over a limited time period, during that time period, for display 
by the television 121. The IEEE 1394 standard bus architecture provides 
multiple channels for isochronous data transfers between applications. 
Specifically, a six bit channel number is broadcast with the data to 
ensure reception by the appropriate application. This allows multiple 
applications to simultaneously transmit isochronous data across the bus 
structure. Asynchronous transfers are traditional data transfer operations 
which take place as soon as possible and transfer an amount of data from a 
source to a destination. 
It should be appreciated that the present invention is equally well suited 
for home audio visual networks based upon other well known network or bus 
standards besides IEEE 1394. Such standards include, for example, 
ethernet, universal serial bus, token ring, and the like. Accordingly, the 
IEEE 1394 structure of network 120 is shown and described herein as an 
example bus architecture only. 
As described above, the present invention provides a software data 
structure which abstracts the functionality of a device on the network and 
provides a standardized method and system for interacting with the device 
and controlling, using, invoking, etc., the functionality of the device. 
Particularly, the present invention provides a standardized data structure 
for interacting with disc-based media player/recorders (e.g., 
multi-disc-type player 123) and other such media devices. This data 
structure is referred to herein as a "model". As its name implies, a model 
in accordance with the present invention abstracts the features and 
functionality of a device, thereby providing a means of interacting with 
the device which is media type independent and which is compatible with a 
wide range of "controller devices", such as, for example, receiver 122 or 
set top box 125. The device model of the present invention is instantiated 
within a computer system which is typically embedded within the device 
itself. Multi-disc-type player 123 and its embedded computer system 112 
are described in FIG. 1C below. 
FIG. 1C shows a multi-disc-type player/recorder in accordance with one 
embodiment of the present invention. As described above, multi-disc-type 
player/recorder includes computer system 112 embedded within its internal 
electronics. Instantiated within computer system 112 is a media 
player/recorder subunit model 151 in accordance with one embodiment of the 
present invention. 
With respect to media player/recorder subunit model 151, it provides an 
abstraction of the functionality and features of the disc drive mechanism 
subunit 160 specifically. Via computer system 112, the functions, status, 
etc. of disc drive mechanism 160 are accessed and controlled by other 
software modules and controllers within network 120. Other devices on 
network 120 interact with disc drive mechanism 160 by interacting with 
media player/recorder subunit model 151. An IEEE 1394 interface 140 
provides a communications link to the network 120 via link 130d and 130e. 
The disc drive mechanism subunit 160 of the present embodiment can playback 
or record disc media. There are many kinds of disc media, some which 
contain audio and video data and others which contain computer data. For 
example, multi-disc-type player 123 is adapted to play audio visual media 
(e.g., high quality digital video from DVD discs). 
Media player/recorder subunit model 151, in accordance with the present 
invention, abstracts the features and functionality of disc drive 
mechanism subunit 160 using well known AV/C protocols. In so doing, media 
player/recorder subunit model 151 provides a means of interacting with the 
functionality and features of the disc drive mechanism subunit 160 in a 
media-type independent manner which is compatible with a wide range of 
"controller devices", such as, for example, receiver 122 or set top box 
125. 
For example, media player/recorder subunit model 151 supports status 
reporting and notification mechanisms so that other controllers (e.g., set 
top box 125) are aware of what is occurring within the device, and thus 
keep the user informed. This is especially important in a distributed 
network environment where, for example the controlling set top box 125 may 
be in another room of the house. 
It should be noted that in the present embodiment (e.g., multi-disc-type 
player 123) media player recorder subunit model 151 supports audio visual 
disc media as opposed to computer data media. However, to access the 
computer data content of a disc as well as the audio visual content, the 
appropriate computer data protocols and control commands are implemented 
as well. 
Referring still to FIG. 1C, media player recorder subunit model 151 is 
defined by a specification, which in turn, defines several data structures 
for media type description (how to describe a compact disc, a DVD disc, 
etc.), the contents of the media (titles for each track on a disc, the 
duration of each track, etc.), and for status reporting and notification. 
It should be noted that these data structures can be modified in any 
number of ways to include or exclude various pieces of information which 
may or may not be available depending on the characteristics of a 
particular media item and the capabilities built into the multi-disc-type 
player 123 (e.g., the capabilities of disc drive mechanism subunit 160, 
etc.). 
Media player/recorder subunit model 151 supports status reporting and 
notification mechanisms so that other controllers (e.g., set top box 125) 
are aware of what is occurring within the device, and thus keep the user 
informed. This is especially important in a distributed network 
environment where, for example the controlling set top box 125 may be in 
another room of the house. 
The Media player/recorder subunit model 151 is defined by a technical 
specification in which the specific implementation is left to the product 
manufacturer. The media player/recorder subunit model specification of the 
present invention defines several data structures for media type 
description (how to describe a compact disc, a DVD disc, etc.) the 
contents of the media (titles for each track on a disc, the duration of 
each track, etc.), and for status reporting and notification. These data 
structures could be modified in any number of ways to include or exclude 
various pieces of information which may or may not be available depending 
on the media and the capabilities built into the disc drive mechanism 
subunit 160. 
The software data structure of a typical media player/recorder subunit 
model of the present invention (e.g., media player/recorder subunit model 
151) and one embodiment of a disc drive mechanism subunit (e.g., disc 
drive mechanism subunit 160) are described below. 
Media player/recorder subunit model overview 
In a typical application, a media player/recorder subunit model of the 
present invention is used to implement an AV/C media player/recorder. As 
described above, an AV/C media player/recorder subunit in accordance with 
the present embodiment is a stand-alone piece of functionality separate 
from any specific type of media playing mechanism (e.g., disc drive 
mechanism 160). The AV/C disc media player/recorder subunit model supports 
various types of disc media. 
It should be appreciated that the model and data structures used for the 
AV/C media player/recorder subunit model are consistent with those 
proposed for the AV/C Tuner subunit. The general descriptor structures and 
commands (e.g., OPEN DESCRIPTOR, READ DESCRIPTOR, WRITE DESCRIPTOR, OBJECT 
NUMBER SELECT commands and subunit identifier, objects and object lists) 
are described in the AV/C 3.0 specification. An understanding of the 
general AV/C enhancements described above is helpful in understanding the 
AV/C media changer subunit proposal, and as such, the AV/C 3.0 
specification is incorporated herein by reference as background material. 
Therefore, that information is not generally repeated here. As such, only 
the AV/C media player/recorder subunit model-specific model, structures, 
commands and implementation profiles are primarily described. 
The structure of the media player/recorder subunit model of the present 
invention 
As described above, a disc drive mechanism subunit in accordance with the 
present invention can playback or record disc media. A media 
player/recorder subunit model in accordance with the present invention 
abstracts the features and functionality of the disc drive mechanism 
subunit. In so doing, the media player/recorder subunit model provides a 
means of interacting with the functionality and features of the disc drive 
mechanism subunit 160 in a media-type independent, highly compatible 
manner. To provide these advantages, the media player/recorder subunit 
model includes software data structures which are typically instantiated 
within a computer system embedded within a media player device (e.g., 
computer system 112 of FIG. 1B). These data structures are described in 
the Figures and discussions below. 
Referring now to FIG. 2, a table 200 illustrating a disc subunit identifier 
descriptor of the media player/recorder subunit present invention. As 
shown in table 200, the descriptor length field contains the number of 
bytes used for this descriptor structure. The number.sub.-- of.sub.-- 
root.sub.-- object.sub.-- lists field contains the number of object lists 
directly associated with this subunit. The root.sub.-- object.sub.-- 
list.sub.-- id.sub.-- x fields are the ID values for each of the 
associated object lists. The number.sub.-- of.sub.-- root.sub.-- 
object.sub.-- lists field indicates how many of these ID values are 
present. The manufacturer.sub.-- dependent.sub.-- length and 
manufacturer.sub.-- dependent.sub.-- information fields are used for 
vendor-specific data. The format and contents are completely up to the 
manufacturer. 
FIG. 3 shows a table 300 illustrating a disc.sub.-- subunit.sub.-- 
dependent.sub.-- information in accordance with one embodiment of the 
present invention. It should be noted that the attributes.sub.-- of.sub.-- 
subunit.sub.-- dependent.sub.-- information field of table 300 is reserved 
for future definition. As shown in FIG. 3, the number.sub.-- of.sub.-- 
supported.sub.-- disc.sub.-- types.sub.-- field contains the number of 
different types of discs supported by this subunit. For example, a DVD/CD 
player would support two disc.sub.-- types. The disc.sub.-- type.sub.-- 
specification fields are an array of supported (as opposed to installed) 
disc specification contains both common and type-specific entries. 
Referring now to FIG. 4, a table 400 showing the format of the media type 
specification in accordance with one embodiment of the present invention. 
As shown in table 400, the disc.sub.-- type field of the present invention 
shows the type of disc. The upper byte indicates the medium family, while 
the lower byte specifies more detailed specifications or its functions. 
The type.sub.-- dependent.sub.-- length contains the number of bytes used 
by the type.sub.-- dependent.sub.-- information field. The type.sub.-- 
dependent.sub.-- information field contains information that is specific 
to each type of medium supported by the subunit. 
FIG. 5 shows a table 500 illustrating the disc.sub.-- type from table 400 
in greater detail. As shown in table 500, the media player/recorder 
subunit supports various types of discs (e.g., CD-DA, Video CD, data, 
premastered, etc.). 
Object Lists and Objects of the media player/recorder subunit 
With reference now to FIG. 6, a table 600 illustrating two list types in 
accordance with one embodiment of the present invention is shown. Table 
600 shows an audio track list field and a video track list field. The 
audio track list represents an audio disc (CD-DA, MD etc.). The audio 
track list contains information describing the contents of the disc as a 
whole (such as the disc title), as well as a collection of objects, each 
of which represents a single audio track. This list contains information 
that is obtained by reading the contents of the media. The Audio Track 
List list.sub.-- specific.sub.-- information contains "global" information 
about the disc. The format of the AudioTrack List.sub.-- specific.sub.-- 
information is described in FIG. 700 below. 
FIG. 7 shows a table 700 illustrating the format of the AudioTrack 
List.sub.-- specific.sub.-- information field from table 600. As shown in 
table 700, the last.sub.-- update field indicates the time stamp when this 
list was last modified. If the most significant bit of the last.sub.-- 
update field is set to one, the last.sub.-- update value contains a 27-bit 
counter which is incremented on each modification of the object list (the 
lsb of this counter is at address offset 03.sub.16). If the MSB is zero, 
the last.sub.-- update field contains a time stamp as shown below in table 
800 of FIG. 8. 
The disc.sub.-- total.sub.-- playback.sub.-- time field specifies the 
entire playback time of the disc. This field is formatted as HH:MM:SS:FF, 
with the hours component (HH) in the most significant byte (MSB). The 
disc.sub.-- maximum.sub.-- recording.sub.-- capacity field specifies the 
maximum recording time of the disc. This field is formatted as 
HH:MM:SS:FF, with the hours component (HH) in the most significant byte 
(MSB). 
The disc.sub.-- recording.sub.-- remaining.sub.-- time field specifies the 
remaining recording time on the disc. This field is formatted as 
HH:MM:SS:FF, with the hours component (HH) in the most significant byte 
(MSB). The number.sub.-- of.sub.-- disc.sub.-- titles field contains the 
number of disc titles. It is possible that the disc title is provided in 
several different languages (English, Japanese, etc.). 
The disc.sub.-- title[x].sub.-- length field contains the number of bytes 
used by this disc title. The disc.sub.-- title[x].sub.-- character.sub.-- 
code specifies the character code of this disc title. The character code 
identifies which character set is used to encode the title characters. 
Referring still to table 700 of FIG. 7, the disc.sub.-- title[x] field 
contains the title of the disc in the specified character code. The 
media.sub.-- type.sub.-- dependent.sub.-- length field contains the number 
of bytes used by the media.sub.-- type.sub.-- dependent.sub.-- information 
field. The media.sub.-- type.sub.-- dependent.sub.-- information field 
contains information that is specific to the media.sub.-- type. At present 
there is no media.sub.-- type.sub.-- dependent.sub.-- information defined 
for the currently defined media types. When no information exists, the 
media.sub.-- type.sub.-- dependent.sub.-- information.sub.-- length field 
shall be set to zero and this field shall not exist. 
FIG. 8 shows a table 800 illustrating the year bit is 1 when the year is 
odd and 0 when the year is even. This allows the time stamp mechanism to 
cover a two-year period. The reader of the time stamp can examine the year 
bit and the current calendar year (which is presumed to be available 
elsewhere) to determine if the time stamp represents a change in the 
current or previous year. 
Referring now to FIG. 9, a table 900 illustrating the format of an audio 
track entry.sub.-- specific.sub.-- information field of an audio track 
object of the present invention is shown. As shown in table 900, the 
entry.sub.-- specific.sub.-- information field contains various track 
information which describes the content of the disc. The content of the 
entry.sub.-- specific.sub.-- attributes field is shown in greater detail 
in table 1000 below. 
FIG. 10 shows a table 1000 illustrating the entry.sub.-- specific.sub.-- 
attributes field from table 900 in greater detail. As shown in table 1000, 
the recordable bit indicates whether this particular disc is recordable. 
The write.sub.-- protected bit tells whether this recordable disc is 
protected by a write protect mechanism. This bit is defined only when the 
recordable bit is 1. When the recordable bit is 0, then this bit shall be 
set to 0. 
FIG. 11 shows a table 1100 illustrating the media.sub.-- type field in 
accordance with one embodiment of the present invention. As shown in table 
1100, the media.sub.-- type field indicates the format of the information 
on the particular media item. The upper byte indicates the media family, 
while the lower byte specifies more detailed specifications or its 
functions. The Data type means that this is something other than an AV 
format (such as CD-ROM). 
As shown in table 11, for example, a DVD movie disc would have the value 
0501.sub.16. The track.sub.-- playback.sub.-- time field contains the 
total playing time of the track. This field is formatted as HH:MM:SS:FF, 
with the hours component (HH) in the most significant byte (MSB). The 
number.sub.-- of.sub.-- track.sub.-- titles field contains the number of 
titles supplied for this track. As with the disc title, it is possible 
that each track title may be provided in several different languages. The 
track.sub.-- title[x].sub.-- character.sub.-- code specifies the character 
code of the track title. The track.sub.-- title[x].sub.-- length field 
contains the number of bytes used by the track title. 
The track.sub.-- title[x] field contains the title of the track, in the 
specified character code. The track.sub.-- dependent.sub.-- 
information.sub.-- length field contains the number of bytes used by the 
track.sub.-- dependent.sub.-- information field. The track.sub.-- 
dependent.sub.-- information field contains track-specific information for 
the disc media. 
Disc drive subunit commands 
Referring now to FIG. 12, a table 1200 illustrating the drive subunit 
commands of the present invention is shown. As shown in table 1200, the 
drive subunit commands include import medium commands, export medium 
commands, play commands, etc. Except for the record command, each of these 
commands are further illustrated in the tables of FIGS. 13 through 21. 
FIG. 13 shows a table 1300 illustrating the import medium command from 
table 1200. The import medium command is used to place the medium into the 
disc drive mechanism subunit. 
FIG. 14 shows a table 1400 illustrating the export medium command from 
table 1200. The export medium command is used to take the medium out of 
the disc drive mechanism subunit. 
FIG. 15 shows a table 1500 illustrating the play command from table 1200. 
The play command is used to start playback. If a playback start point is 
specified before this command, playback is started from the beginning of 
the medium. 
FIG. 16 shows a table 1600 illustrating the stop control command from table 
1200. The stop control command is used to stop the media being played 
back. 
FIG. 17 shows a table 1700 illustrating the pause control command from 
table 1200. The pause control command is used to pause the media being 
played. If this command is used while the media being played, the media is 
paused at the current playback point. If not, the media is paused at its 
beginning. 
FIG. 18 shows a table 1800 illustrating the next control command from table 
1200. The next control command is used to playback the next playback point 
scaled by a "unique unit". 
FIG. 19 shows a table 1900 illustrating the prev control command from table 
1200. The prev control command is used to playback the previous playback 
point scaled by its unique unit. 
FIG. 20 shows a table 2000 illustrating the access play control command 
from table 1200. The access play command is used to play back from the 
point specified by this command. 
FIG. 21 shows a table 2100 illustrating the access pause command from table 
1200. The access pause command is used to pause at a particular point 
specified by the command. 
With reference now to FIG. 22, a flow chart of the steps of a process 2200 
in accordance with one embodiment of the present invention is shown. 
Process 2200 is an exemplary interface process between a multi-disc-type 
player/recorder and other devices on a home audio visual network. The 
interface process is implemented via a media player/recorder subunit model 
in accordance with one embodiment of the present invention (e.g., media 
player/recorder subunit model 151 of FIG. 1C). The home audio visual 
network, as described above, is based on IEEE 1394 protocols. 
In step 2201 an external device coupled to the home audio visual network 
accesses a media player recorder subunit model of a multi-disc-type player 
(e.g., DVD player 123 of FIG. 1C) via an IEEE 1394 communications link. As 
described above, a controller device (e.g., a receiver/amplifier, set top 
box, etc.), typically responding to some user input, accesses the 
multi-disc player by sending standardized messages to the media 
player/recorder subunit model. The media player/recorder subunit model is 
instantiated on a computer system embedded within the multi-disc player. 
In step 2202, the media player/recorder subunit model, responding to the 
request from the controller device, accesses a disc in a disc drive 
mechanism to determine the disc's content information. As described above, 
the disc drive mechanism interfaces directly with the media 
player/recorder subunit model and interfaces with other devices via the 
media player/recorder. The other devices are informed of the disc's 
content (e.g., number of tracks, the length of the tracks, track titles, 
etc.) by the media player/recorder subunit model via the IEEE 1394 
communications link. 
In step 2203, the controller device selects one of the tracks of the disc 
and plays the selected track. As described above, disc drive mechanism 
commands are defined by the media player/recorder subunit model. Using 
these commands, the controller device assesses the functions of the disc 
drive mechanism subunit. It should be noted the full functionality of the 
disc drive mechanism subunit is available via the commands. For example, 
the controller could in the same manner send a "record" command, "fast 
forward" command, "pause" command, or the like. 
In step 2204, after implementing the command on the disc drive mechanism, 
the media player/recorder subunit updates the status of the disc drive 
mechanism and the status of the disc being played. The status information 
includes, for example, the particular track being played, the amount of 
time remaining on the track, and the like. The updated status is then sent 
to the controller device and other devices on the network via the IEEE 
1394 communications link. 
Thus, the present invention provides a device model which is disc media 
type independent and thereby supports any type of disc media (CD's, 
MiniDiscs, etc.). The present invention provides a model which supports 
enhancements to the AV/C protocol for content navigation and selection, 
providing both a detailed and a general abstraction of content discovery 
and description, and allowing for a range of controllers (from very simple 
to very complex) to make use of its features. The model of the present 
invention supports status reporting and notification mechanisms so that 
controllers are aware of what is occurring within the device, and thus 
keep the user informed. This capability is especially important in a 
distributed IEEE-1394 network environment where the device may be located 
away from the controller/user. In addition, the present invention provides 
a software based model and command set for a Disc player/recorder 
mechanism for multi-disc-type players capable of storing vast amounts of 
media content, thereby allowing any interested entity to navigate the 
contents of the media in the drive, to access the contents (such as the 
selection of a track on the disc), and to monitor the status of the drive. 
The foregoing descriptions of specific embodiments of the present invention 
have been presented for purposes of illustration and description. They are 
not intended to be exhaustive or to limit the invention to the precise 
forms disclosed, and obviously many modifications and variations are 
possible in light of the above teaching. The embodiments were chosen and 
described in order best to explain the principles of the invention and its 
practical application, thereby to enable others skilled in the art best to 
utilize the invention and various embodiments with various modifications 
as are suited to the particular use contemplated. It is intended that the 
scope of the invention be defined by the Claims appended hereto and their 
equivalents.