US 7,596,624 B2
Data stream selection/output apparatus and control program for achieving the apparatus
Yoshihisa Terada, Kadoma (Japan); Toshiya Mori, Settsu (Japan); Koichiro Yamaguchi, Ashiya (Japan); Hideki Kagemoto, Nara (Japan); and Akihiro Tanaka, Osaka (Japan)
Assigned to Panasonic Corporation, Osaka (Japan)
Filed on Oct. 21, 2002, as Appl. No. 10/278,118.
Claims priority of application No. 2001-323711 (JP), filed on Oct. 22, 2001; and application No. 2002-169069 (JP), filed on Jun. 10, 2002.
Prior Publication US 2003/0079036 A1, Apr. 24, 2003
Int. Cl. G06F 15/16 (2006.01)
U.S. Cl. 709—231 31 Claims
OG exemplary drawing
 
1. A data stream selection/output apparatus that selects a data stream out of a plurality of data streams each of which is composed of sequentially obtained data, and outputs the selected data stream, the data stream selection/output apparatus comprising:
a timing information obtaining unit obtaining timing information that indicates a time at which a first data stream being output is switched to a second data stream;
a detecting unit, in a time period including the time indicated by the timing information, scanning the first data stream and the second data stream and detecting a first boundary and a second boundary, the first boundary being an end point of a data block which, among data blocks which exist in the first data stream before the time indicated by the timing information, ends at a position closest to the time indicated by the timing information, the data block conforming to a transmission protocol that is higher than Transport Layer of OSI Reference Model, the second boundary being a start point of a data block that is, among data blocks existing in the second data stream after a time of the first boundary, closest to the time of the first boundary; and
a selection/output unit stopping an outputting of the first data stream at the detected first boundary and starting an outputting of the second data stream at the detected second boundary, wherein
each data stream is generated in accordance with a DSM-CC protocol, each data block is either DII or DDB, each of the DII and DDB being defined by the DSM-CC protocol as a section being a unit of data that is repeatedly transmitted, and each data block includes, at an end thereof, check data used for checking whether or not the each data block is valid.