One program is constructed by one or more cells, each of which is, in turn, constructed by one or more video object units VOBU. Each VOBU is constructed by packs each containing a plurality of kinds of data, and each pack is constructed by one or more packets and a pack header.