Patent ID: 7493023

Claim:
A data stream generating apparatus, comprising: a control module for generating a video elementary stream from inputted video data, and for generating an audio elementary stream from inputted audio data; wherein the control module is configured to provide an output data stream, said output data stream including a plurality of units, each unit of the plurality of units of the output data stream having a same size; wherein the control module is configured to determine an output order of a navigation pack, a plurality of video packs generated from said video elementary stream, and a plurality of audio packs generated from said audio elementary stream based on said size of each unit of the plurality of units of the output data stream; wherein each unit of the plurality of units of the output data stream is large enough to include at least one video pack of the plurality of video packs and at least one audio pack of the plurality of audio packs; wherein the control module is configured to output said navigation pack, said plurality of video packs, and said plurality of audio packs as at least a portion of the output data stream in accordance with said output order, said control module configured to output the navigation pack in a particular unit of the plurality of units of the output data stream; wherein the control module is configured to provide certain data only in the navigation pack before the navigation pack is first output in the output data stream, said certain data identifying both (i) a timing of occurrence of a certain unit of the plurality of units in the output data stream and (ii) an address of the certain unit of the plurality of units in the output data stream, said certain unit output after said particular unit in the output data stream, wherein the certain data is not provided in said video packs or said audio packs; wherein said control module is configured to determine said output order while carrying out a simulation to know whether or not a first virtual buffer overflows; and wherein the simulation is utilized to determine a multiplexing order of the audio packs and the video packs.