1. A method for recording a data stream having a base stream and an enhancement stream on a storage medium comprising the steps of:
receiving the data stream;
storing I-pictures from the base stream in a first buffer;
storing all remaining data in a second buffer;
each time the first buffer becomes full, writing I-pictures stored in the first buffer onto an intra-coded allocation unit on the storage medium;
writing contents of second buffer onto at least one subsequent inter-coded allocation unit.
2. The method according to claim 1, wherein the remaining data from the data streams are I-pictures from the enhancement stream and P-pictures, B-picture and non-video data from both streams.
3. The method according to claim 2, wherein the non-video data comprises audio data, private data and system information.
4. The method according to claim 1, wherein the at least one inter-coded allocation unit contains P-picture, B-picture and non-video data associated with the I-pictures stored in the preceding intra-coded allocation unit.
5. The method according to claim 1, wherein non-video data is stored with the I-pictures.
6. The method according to claim 1, further comprising the steps of:
receiving a trick play request for the stored data;
reading the data in the intra-coded allocation units to create the requested trick play stream of recorded data.
7. The method according to claim 1, wherein data in the intra-coded allocation units are coded with a first code and the data in the inter-coded allocation units are coded with a second code.
8. The method according to claim 1, wherein the first buffer and second buffer are located in different sections of a single buffer.
9. The method according to claim 1, further comprising the steps of:
storing I-pictures from the enhancement stream in the first buffer;
storing all remaining data from the base and enhancement streams in the second buffer.
10. The method according to claim 1, further comprising the steps of:
storing I-pictures from the enhancement stream in a third buffer;
storing all remaining data from the base and enhancement streams in the second buffer.
11. A method for recording a data stream having a base stream and an enhancement stream on a storage medium comprising the steps of:
receiving the data stream;
storing I-pictures from the base stream in a first buffer;
storing P-pictures and non-video data from the base stream in a second buffer;
storing B-pictures from the base stream in a third buffer;
each time the first buffer becomes full, writing I-pictures stored in the first buffer onto an intra-coded allocation unit on the storage medium;
writing the contents of the second buffer into at least one P-picture allocation unit which is after the previously written intra-coded allocation unit;
writing the contents of the third buffer into at least one B-picture allocation unit which is after the at least one P-picture allocation unit.
12. The method according to claim 11, further comprising the steps of:
storing I-pictures from the enhancement stream in the first buffer;
storing P-pictures from the enhancement stream in the second buffer;
storing B-pictures from the enhancement stream in the third buffer.
13. An apparatus for recording a data stream having a base stream and an enhancement stream on a storage medium (300) comprising:
means for receiving (31) the data stream;
a first buffer (402) for storing I-pictures from the base stream;
a second buffer (404) for storing all remaining data from the data stream;
means for writing (6, 8) I-pictures stored in the first buffer onto an intra-coded allocation unit (302) on the storage medium each time the first buffer becomes full;
means for writing (6, 8) contents of second buffer onto at least one subsequent inter-coded allocation unit (304).
14. The apparatus according to claim 13, wherein I-pictures from the enhancement stream are stored in the first buffer and all remaining data from the base and enhancement streams are stored in the second buffer.
15. The apparatus according to claim 13, further comprising:
a third buffer (704) for storing I-pictures from the enhancement stream, wherein all remaining data from the base and enhancement streams are stored in the second buffer.
16. An apparatus for recording a data stream having a base stream and an enhancement stream on a storage medium (300) comprising:
means for receiving (31) the data stream;
a first buffer (700) for storing I-pictures from the base stream;
a second buffer (702) for storing P-pictures and non-video data from the base stream;
a third buffer (704) for storing B-pictures from the base stream;
means for writing (6, 8) I-pictures stored in the first buffer onto an intra-coded allocation unit (302) on the storage medium each time the first buffer becomes full;
means for writing (6, 8) the contents of the second buffer into at least one P-picture allocation unit (310) which is after the previously written intra-coded allocation unit;
means for writing (6, 8) the contents of the third buffer into at least one B-picture allocation unit (312) which is after the at least one P-picture allocation unit.
17. The apparatus according to claim 16, wherein I-pictures from the enhancement stream are stored in the first buffer, P-pictures from the enhancement stream are stored in the second buffer, and B-pictures from the enhancement stream are stored in the third buffer.
18. A method for storing a data stream comprising a base stream and an enhancement stream on a storage medium comprising at least one base allocation unit and at least one enhancement allocation unit, the method comprising the steps of:
receiving the data stream;
storing the base stream in the base allocation unit on the storage medium; and storing the enhancement stream in the enhancement allocation unit on the storage medium.
19. An apparatus for storing a data stream comprising a base stream and an enhancement stream on a storage medium comprising at least one base allocation unit and at least one enhancement allocation unit, comprising:
a receiver (31) for receiving the data stream;
means (35) for storing the base stream in the base allocation unit on the storage medium; and
means (35) for storing the enhancement stream in the enhancement allocation unit on the storage medium.
20. A storage medium, comprising:
at least one base allocation unit (402) for storing a base stream; and
at least one enhancement allocation unit (404) for storing an enhancement stream.
21. An apparatus for reading a data stream comprising a base stream and an enhancement stream from a storage medium having at least one base allocation unit (402) for storing the base stream and at least one enhancement allocation unit (404) for storing an enhancement stream and wherein the apparatus comprises:
a first reading unit for reading the base stream from the base allocation unit;
a second reading unit for reading the enhancement stream from the enhancement allocation unit (404);
a combining unit for combining the base stream with the enhancement stream in order to provide the data stream; and
a reproduction unit for reproducing the data stream.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method of monitoring a fault tolerant system, comprising:
maintaining an abstract model of the fault tolerant system; monitoring operation of the fault tolerant system;
applying fault events received from the fault tolerant system to the abstract model; and
reporting one or more changes in the abstract model to a component in the fault tolerant system, wherein maintaining an abstract model of the fault tolerant system comprises:
receiving a configuration event indicating the removal of at least one component to the fault tolerant system; and
in response, removing at least one corresponding component from the abstract model; and
wherein removing at least one corresponding component from the abstract model comprises:
dissolving the logical association between the at least one corresponding component and one or more components dependent on the at least one corresponding component; and
recalculating a state of the one or more components dependent on the at least one corresponding component.
2. The method of claim 1, wherein maintaining an abstract model of the fault tolerant system comprises: receiving a configuration event indicating the addition of at least one component to the fault tolerant system; and in response, adding at least one corresponding component to the abstract model.
3. The method of claim 2, further comprising representing redundancy relationships between the at least one corresponding component and one or more other components in the abstract model.
4. The method of claim 3, further comprising representing dependency relationships between the at least one corresponding component and one or more other components in the abstract model.
5. The method of claim 1, wherein removing at least one corresponding component from the abstract model comprises:
dissolving one or more logical associations between the at least one corresponding component and at least one additional component in the abstract model.
6. The method of claim 1, wherein maintaining an abstract model of the fault tolerant system comprises:
receiving a configuration event indicating an addition or a removal of at least one component to a logical group in the fault tolerant system; and
in response, updating the logical group to reflect the addition or removal of the at least one component; and
recalculating a state of a group of components dependent on the at least one component.
7. The method of claim 6, wherein recalculating a state of one or more components dependent on the at least one component comprises propagating a failure state associated with the at least one component to a group of components dependent on the at least one component.
8. The method of claim 7, further comprising:
maintaining a failure indicator that represents one or more failure parameters in the group of components dependent on the at least one component; and
setting a group state parameter to indicate a group failure if the failure indicator exceeds a threshold.
9. The method of claim 7, further comprising:
maintaining a failure indicator that represents one or more failure parameters in the group of components dependent on the at least one component; and
setting a group state parameter to indicate a group failure if any group state parameter indicates a failure.
10. The method of claim 1, wherein applying fault events received from the fault tolerant system to the abstract model comprises: receiving a state change event for one or more components in the fault tolerant system; updating the abstract model to propagate the state change event to a group of components dependent on the at least one component.
11. The method of claim 10, wherein updating the abstract model to propagate the state change event to a group of components dependent on the at least one component comprises:
maintaining a failure indicator that represents one or more failure parameters in the group of components dependent on the at least one component; and
setting a group state parameter to indicate a group failure if the failure indicator exceeds a threshold.
12. The method of claim 10, wherein updating the abstract model to propagate the state change event to a group of components dependent on the at least one component comprises:
maintaining a failure indicator that represents one or more failure parameters in the group of components dependent on the at least one component; and
setting a group state parameter to indicate a group failure if any group state parameter indicates a failure.
13. The method of claim 1, wherein reporting one or more changes in the abstract model to a component in the fault tolerant system comprises searching an event generation registry table for entries corresponding to a specific node in the abstract model.
14. The method of claim 1, wherein the means for generating one or more reporting events in response to changes in the availability of a component in the abstract model comprises logic instructions executable on a processor that search an event generation registry table for entries corresponding to a specific node in the abstract model.
15. A method of monitoring a fault tolerant system, comprising:
maintaining an abstract model of the fault tolerant system;
monitoring operation of the fault tolerant system; applying fault events received from the fault tolerant system to the abstract model; and
reporting one or more changes in the abstract model to a component in the fault tolerant system, wherein maintaining an abstract model of the fault tolerant system comprises:
receiving a configuration event indicating an addition or a removal of at least one component to a logical group in the fault tolerant system; and
in response, updating the logical group to reflect the addition or removal of the at least one component; and recalculating a state of a group of components dependent on the at least one component, and wherein recalculating a state of one or more components dependent on the at least one component comprises propagating a failure state associated with the at least one component to a group of components dependent on the at least one component;
maintaining a failure indicator that represents one or more failure parameters in the group of components dependent on the at least one component; and
setting a group state parameter to indicate a group failure if the failure indicator exceeds a threshold.
16. The method of claim 15, wherein maintaining an abstract model of the fault tolerant system comprises:
receiving a configuration event indicating the addition of at least one component to the fault tolerant system; and
in response, adding at least one corresponding component to the abstract model.
17. The method of claim 16, further comprising representing redundancy relationships between the at least one corresponding component and one or more other components in the abstract model.
18. The method of claim 17, further comprising representing dependency relationships between the at least one corresponding component and one or more other components in the abstract model.
19. The method of claim 15, wherein maintaining an abstract model of the fault tolerant system comprises: receiving a configuration event indicating the removal of at least one component to the fault tolerant system; and in response, removing at least one corresponding component from the abstract model.
20. The method of claim 19, wherein removing at least one corresponding component from the abstract model comprises:
dissolving the logical association between the at least one corresponding component and one or more components dependent on the at least one corresponding component; and
recalculating a state of the one or more components dependent on the at least one corresponding component.
21. The method of claim 19, wherein removing at least one corresponding component from the abstract model comprises:
dissolving one or more logical associations between the at least one corresponding component and at least one additional component in the abstract model.
22. The method of claim 15, further comprising:
maintaining a failure indicator that represents one or more failure parameters in the group of components dependent on the at least one component; and
setting a group state parameter to indicate a group failure if any group state parameter indicates a failure.
23. The method of claim 15, wherein applying fault events received from the fault tolerant system to the abstract model comprises:
receiving a state change event for one or more components in the fault tolerant system;
updating the abstract model to propagate the state change event to a group of components dependent on the at least one component.
24. The method of claim 23, wherein updating the abstract model to propagate the state change event to a group of components dependent on the at least one component comprises:
maintaining a failure indicator that represents one or more failure parameters in the group of components dependent on the at least one component; and
setting a group state parameter to indicate a group failure if the failure indicator exceeds a threshold.
25. The method of claim 23, wherein updating the abstract model to propagate the state change event to a group of components dependent on the at least one component comprises:
maintaining a failure indicator that represents one or more failure parameters in the group of components dependent on the at least one component; and
setting a group state parameter to indicate a group failure if any group state parameter indicates a failure.
26. The method of claim 15, wherein reporting one or more changes in the abstract model to a component in the fault tolerant system comprises searching an event generation registry table for entries corresponding to a specific node in the abstract model.