KR100677099B1 - Recording medium recorded contents stream data thereon, recording apparatus, and reproducing apparatus therefor - Google Patents
Recording medium recorded contents stream data thereon, recording apparatus, and reproducing apparatus therefor Download PDFInfo
- Publication number
- KR100677099B1 KR100677099B1 KR1020010001234A KR20010001234A KR100677099B1 KR 100677099 B1 KR100677099 B1 KR 100677099B1 KR 1020010001234 A KR1020010001234 A KR 1020010001234A KR 20010001234 A KR20010001234 A KR 20010001234A KR 100677099 B1 KR100677099 B1 KR 100677099B1
- Authority
- KR
- South Korea
- Prior art keywords
- sobu
- ats
- size
- application packet
- pkt
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10009—Improvement or modification of read or write signals
- G11B20/10222—Improvement or modification of read or write signals clock-related aspects, e.g. phase or frequency adjustment or bit synchronisation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
- H04N21/42646—Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/10675—Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
- G11B2020/10703—Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control processing rate of the buffer, e.g. by accelerating the data output
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
본 발명은 컨텐츠 스트림 데이터가 기록된 기록매체, 그 기록장치, 및 재생장치에 관한 것이다.The present invention relates to a recording medium on which content stream data is recorded, a recording apparatus thereof, and a playback apparatus.
본 발명에 따라 컨텐츠 스트림 데이터가 소정 크기를 갖는 적어도 하나의 기록 단위가 모여서 이루어진 스트림 오브젝트로 기록된 기록매체에 있어서, 상기 기록 단위는 하나 또는 그 이상의 스트림 팩을 포함하고, 상기 스트림 팩은 재생 시간 정보를 표시하는 응용 타임 스탬프 및 컨텐츠 스트림 데이터가 패킹된 응용 패킷을 포함하며, 상기 기록 단위 중 마지막 기록 단위를 제외한 나머지는 각각 적어도 두 개의 응용 타임 스탬프를 전부 포함하는 것을 특징으로 한다. 이에 의해, 모든 SOBU에 대해 IAPAT 값을 제대로 구할 수 있게 되며, 따라서 매핑 리스트를 참조하여 이루어지는 프로그램 탐색이 오류없이 원활하게 수행할 수 있다.According to the present invention, in a recording medium recorded as a stream object in which at least one recording unit having a predetermined size of content stream data is collected, the recording unit includes one or more stream packs, and the stream packs have a playback time. And an application packet packed with an application time stamp and information stream data indicating information, and each of the recording units except for the last recording unit includes at least two application time stamps. As a result, the IAPAT value can be properly obtained for all SOBUs, so that the program search made with reference to the mapping list can be performed smoothly without error.
Description
도 1은 종래 프로그램의 데이터 구조도이다.1 is a data structure diagram of a conventional program.
도 2는 SOBU 내에 ATS가 존재하지 않는 경우를 도시한 것이다.2 illustrates a case where no ATS exists in the SOBU.
도 3은 마지막 SOBU 내에 ATS가 존재하지 않는 경우의 종래 대응책을 도시한 것이다.3 illustrates a conventional countermeasure when there is no ATS in the last SOBU.
도 4는 본 발명의 제 1실시예에 따른 데이터 구조도이다.4 is a data structure diagram according to a first embodiment of the present invention.
도 5는 본 발명의 제 2실시예에 따른 데이터 구조도이다.5 is a data structure diagram according to a second embodiment of the present invention.
도 6은 본 발명의 바람직한 실시예에 따른 기록장치의 블록도이다.6 is a block diagram of a recording apparatus according to a preferred embodiment of the present invention.
도 7은 본 발명의 바람직한 실시예에 따른 재생장치의 블록도이다.7 is a block diagram of a playback apparatus according to a preferred embodiment of the present invention.
도 8은 본 발명의 바람직한 실시예에 따른 기록재생장치의 블록도이다.8 is a block diagram of a recording / playback apparatus according to a preferred embodiment of the present invention.
본 발명은 컨텐츠 스트림 데이터의 기록 및 재생분야에 관한 것으로, 보다 상세하게는 컨텐츠 스트림 데이터가 기록된 기록매체, 그 기록장치, 및 재생장치에 관한 것이다.BACKGROUND OF THE
영화, 음악, 등 사용자에게 보여지는 다양한 컨텐츠는 통상 "프로그램"이라고 부른다.Various contents shown to the user such as movies, music, etc. are commonly referred to as "programs".
도 1은 종래 프로그램의 데이터 구조도이다.
일반적으로, 프로그램을 구성하는 컨텐츠 스트림 데이터는 하나의 스트림 오브젝트(SOB: Stream OBject)로 형성된다. 도 1을 참조하면, SOB는 하나 또는 그 이상의 스트림 오브젝트 유닛(SOBU: Stream OBject Unit)이 연결된 체인으로 구성된다. SOBU는 데이터의 기록/편집 단위로서 일정한 데이터 크기를 가진다. 다만, 데이터의 기록/재생시 프로그램을 구성하는 데이터 스트림의 입력속도/출력속도는 시간에 따라 달라질 수 있으므로 시간 축 상에 대응되는 SOBU의 길이는 서로 달라질 수 있다. 하나의 SOBU에는 복수개의 스트림 팩이 존재한다. 동일한 SOB에 속하는 SOBU는 같은 개수의 스트림 팩을 포함한다.1 is a data structure diagram of a conventional program.
In general, the content stream data constituting the program is formed of one stream object (SOB: Stream OBject). Referring to FIG. 1, an SOB is composed of a chain in which one or more Stream Object Units (SOBUs) are connected. The SOBU is a unit of recording / editing data and has a constant data size. However, since the input speed / output speed of the data stream constituting the program may vary with time when data is recorded / reproduced, the length of the SOBU corresponding to the time axis may be different. There are a plurality of stream packs in one SOBU. SOBUs belonging to the same SOB contain the same number of stream packs.
스트림 팩은 팩 헤더와 스트림 패킷으로 구성된다. 스트림 패킷은 하나 또는 그 이상의 응용 패킷(AP_PKT: Application Packet)을 포함한다. 응용 패킷은 기록/재생장치가 데이터를 기록/재생할 때 입력/출력되는 비트스트림의 조각을 가리킨다. 응용 패킷의 앞에는 응용 타임 스탬프(ATS: Application Time Stamp)가 위치한다. ATS는 바로 뒤에 위치한 응용 패킷의 재생시간 정보를 의미한다. 응용 패킷의 시작과 끝은 스트림 팩의 시작과 끝에 일치되지 않을 수 있다. 다시 말해, 응용 패킷은 스트림 팩의 경계, 즉 서로 이웃하는 SOBU의 경계에 걸쳐서 위치될 수 있다.The stream pack consists of a pack header and a stream packet. The stream packet includes one or more application packets (AP_PKTs). An application packet indicates a fragment of a bitstream that is input / output when the recording / reproducing apparatus records / reproduces data. The application time stamp (ATS) is located in front of the application packet. ATS means the play time information of the application packet located immediately after. The start and end of the application packet may not match the start and end of the stream pack. In other words, application packets may be located across the boundaries of the stream pack, that is, the boundaries of neighboring SOBUs.
삭제delete
삭제delete
한편, 도 1과 같이 기록된 프로그램에 임의로 접근할 수 있도록 하기 위해 통상 별개로 만들어진 탐색정보를 사용한다. 탐색정보는 프로그램 내에서의 소정 데이터의 위치정보, 프로그램의 재생시간 정보, 프로그램의 기록시간 정보를 포함할 수 있다. 탐색정보는 응용분야에 따라 다양한 형식을 가질 수 있지만, 정보의 양을 줄이고 신속한 탐색이 가능하도록 하기 위해 계층적 구조를 사용하여 프로그램 내의 데이터를 가리키는 경우가 많다.On the other hand, in order to be able to arbitrarily access the recorded program as shown in FIG. The search information may include location information of predetermined data in the program, information of a reproduction time of the program, and information of a recording time of the program. The search information may have various formats according to the application field, but the hierarchical structure is often used to refer to the data in the program in order to reduce the amount of information and enable fast searching.
프로그램을 구성하는 탐색정보가 셀(Cell), SOB, 및 SOBU의 3계층으로 이루어져 있다면 탐색정보는 소정 프로그램에 해당되는 셀이 무엇인지를 가리키는 정보, 소정 셀에 해당되는 SOB가 무엇인지를 가리키는 정보, 및 소정 SOB에 해당되는 SOBU가 무엇인지를 가리키는 정보를 포함한다. 특히, SOB에 해당되는 SOBU가 무엇인지를 가리키는 정보를 매핑 리스트(MAPL: MAPping List)라고 한다.If the search information constituting the program is composed of three layers of cells, SOBs, and SOBUs, the search information indicates information about a cell corresponding to a predetermined program, and information indicating what SOB corresponds to a predetermined cell. , And information indicating what is an SOBU corresponding to a predetermined SOB. In particular, the information indicating the SOBU corresponding to the SOB is called a mapping list (MAPL).
매핑 리스트는 대응 SOBU의 지속시간(duration)을 가리키는 IAPAT (Incremental Application Packet Arrival Time)을 포함한다. DVD-SR Draft 0.9에 따르면 IAPAT를 구하기 위해서는 대응 SOBU에 속하는 응용 패킷의 도달시간이 필요하다.The mapping list includes an Incremental Application Packet Arrival Time (IAPAT) indicating the duration of the corresponding SOBU. According to DVD-SR Draft 0.9, in order to obtain IAPAT, the arrival time of an application packet belonging to a corresponding SOBU is required.
한편, DVD-SR Draft 0.9에 따르면 응용 패킷의 크기(AP_PKT_SZ)는,Meanwhile, according to the DVD-SR Draft 0.9, the size of the application packet (AP_PKT_SZ) is
AP_PKT_SZ ≤ 2018*[SOBU_SZ]-2AP_PKT_SZ ≤ 2018 * [SOBU_SZ] -2
의 범위를 가진다. 여기서, SOBU_SZ는 SOBU의 크기를 의미한다. 윗 식은 하나의 SOBU가 SOBU_SZ 개수 만큼의 스트림 팩을 가진다고 가정했을 때 팩 헤더를 위해 최소한 30 byte가 필요하고 스트림 패킷에 정의된 헤더 익스텐션(Header extention)과 스터핑 패킷(Stuffing Packet)을 위한 2 byte를 고려하여 결정된 것이다. 즉, 하나의 SOBU를 위한 2048 byte에서 30 byte를 뺀 2018 byte에서 다시 2 byte를 뺀 것이 응용 패킷을 위한 최대 영역이 되기 때문이다.Has a range of. Here, SOBU_SZ means the size of the SOBU. The above expression assumes that one SOBU has as many stream packs as SOBU_SZ, and at least 30 bytes are needed for the pack header, and 2 bytes for the header extension and stuffing packet defined in the stream packet are defined. It was decided in consideration. That is, subtracting 2 bytes from 2018 byte minus 30 bytes from 2048 byte for one SOBU becomes the maximum area for the application packet.
그런데, 상기한 응용 패킷의 크기의 범위에 따르면 하나의 SOBU 내에 ATS가 존재하지 않게 되는 경우가 발생한다.However, according to the range of the size of the application packet described above, there is a case where ATS does not exist in one SOBU.
도 2는 하나의 SOBU 내에 ATS가 존재하지 않는 경우를 도시한 것이다.2 illustrates a case where an ATS does not exist in one SOBU.
SOB에 속하는 마지막 스트림 팩이 도 2에 도시된 바와 같이 위치될 때 ATS를 구성하는 첫 바이트가 SOBU #M-1에 포함되어 있지 않으며, SOBU #M은 마지막 스트림 팩에 구성된 응용 패킷의 일부분이 위치되어 있을 뿐이므로 포함되는 ATS가 존재하지 않는다.When the last stream pack belonging to the SOB is located as shown in FIG. 2, the first byte constituting the ATS is not included in SOBU # M-1, and SOBU #M indicates that a part of the application packet configured in the last stream pack is located. There is no included ATS because it is only.
이처럼 DVD-SR Draft 0.9에 정의된 응용 패킷의 크기에 따르면 SOBU #M-1 및 SOBU #M과 같이 대응되는 ATS가 존재하지 않는 경우가 발생된다. 대응 ATS가 존재하지 않는 SOBU에 대해서는 IAPAT를 구할 수 없고, 이에 따라 탐색정보로서 IAPAT로 구성된 매핑 리스트를 얻을 수 없게 되어 프로그램에 대한 탐색이 불가능하게 되는 문제점이 있다.As described above, according to the size of the application packet defined in the DVD-SR Draft 0.9, a corresponding ATS such as SOBU # M-1 and SOBU #M does not exist. There is a problem that an IAPAT cannot be obtained for a SOBU in which a corresponding ATS does not exist, and thus, a mapping list composed of IAPATs cannot be obtained as search information, and thus a search for a program is impossible.
특히, DVD-SR Draft 0.9에는 SOB의 마지막 SOBU가 대응 ATS를 갖지 않을 경우에는 도 3에 도시된 바와 같이 마지막 응용 패킷의 ATS를 복사한 값을 사용하여 IAPAT를 구하도록 규정하고 있으나, DVD-SR Draft 0.9에 정의된 IAPAT를 구하는 규 칙에 따르면 SOBU #M-1의 IAPAT의 값인 IAPAT(M-1)과 SOBU #M의 IAPAT의 값인 IAPAT(M)의 값이 모두 0이 되므로 IAPAT로 구성된 매핑 리스트에 기초한 프로그램의 탐색이 제대로 이루어 질 수 없게 된다. 왜냐하면 DVD-SR Draft 0.9에 정의된 바에 따르면 IAPAT(i)는 다음 조건을 만족해야 한다.In particular, in DVD-SR Draft 0.9, when the last SOBU of the SOB does not have a corresponding ATS, as shown in FIG. 3, the IAPAT is obtained by using a value obtained by copying the ATS of the last application packet. According to the rule for calculating IAPAT defined in Draft 0.9, the mapping composed of IAPAT because IAPAT (M-1), which is the value of IAPAT of SOBU # M-1, and IAPAT (M), which is the value of IAPAT of SOBU #M, are all 0. The list-based search of programs will not work properly. Because as defined in DVD-SR Draft 0.9, IAPAT (i) must meet the following conditions:
1 <= IAPAT(i) < 212, i=11 <= IAPAT (i) <212, i = 1
1 <= IAPAT(i) < 212-1, 1<i<M1 <= IAPAT (i) <212-1, 1 <i <M
0 <= IAPAT(i) < 212-1, i=M0 <= IAPAT (i) <212-1, i = M
하지만 도 3을 참조하면 IAPAT(M-1)은 0이 되어 상기 조건에 어긋나기 때문이다.However, referring to FIG. 3, IAPAT (M-1) becomes 0, which is inconsistent with the above condition.
따라서, 본 발명의 목적은 매핑 리스트에 기초한 프로그램의 탐색이 제대로 수행될 수 있도록 SOB에 포함된 SOBU가 대응 ATS를 갖는 데이터 구조로 기록된 컨텐츠 스트림 데이터를 포함하는 기록매체, 그 기록장치, 및 재생장치를 제공하는 데 있다.Accordingly, an object of the present invention is to provide a recording medium including the content stream data recorded in a data structure in which a SOBU included in an SOB has a corresponding ATS, so that a search of a program based on a mapping list can be performed properly, a recording apparatus, and reproduction thereof. To provide a device.
상기 목적은 본 발명에 따라, 컨텐츠 스트림 데이터가 소정 크기를 갖는 적어도 하나의 SOBU(Stream OBject Unit)가 모여서 이루어진 SOB(Stream OBject)로 기록된 기록매체에 있어서, 상기 SOBU는 하나 또는 그 이상의 스트림 팩을 포함하고, 상기 스트림 팩은 재생 시간 정보를 표시하는 타임 스탬프 (ATS: Application Time Stamp) 및 컨텐츠 스트림 데이터가 패킹된 응용 패킷을 포함하며, 상기 SOBU 중 마지막 SOBU를 제외한 나머지 SOBU 중 스터핑 패킷이 포함된 SOBU를 제외한 나머지는 각각 적어도 두 개의 ATS를 전부 포함하는 것을 특징으로 하는 기록매체에 의해 달성된다.
상기 응용 패킷의 크기는 상기 SOBU가 적어도 두 개의 ATS를 전부 포함할 수 있도록 충분히 작은 크기를 갖는 것이 바람직하고, 다음 식을 만족하는 것이 더욱 바람직하다.According to an embodiment of the present invention, a recording medium in which content stream data is recorded as a stream object (SOB) in which at least one stream object unit (SOBU) having a predetermined size is collected, wherein the SOBU is one or more stream packs. Wherein the stream pack includes an application time stamp (ATS) indicating the reproduction time information and an application packet packed with content stream data, and stuffing packets among remaining SOBUs except the last SOBU among the SOBUs. The remainder except for the SOBU is achieved by a recording medium, each comprising at least two ATSs.
The size of the application packet is preferably small enough to allow the SOBU to include at least two ATSs, and more preferably satisfies the following equation.
삭제delete
AP_PKT_SZ ≤ SPayload_SZ*[SOBU_SZ/2]- [ ceil( (N_AHE+N_SByte)/2 )+ ATS_SZ ]AP_PKT_SZ ≤ SPayload_SZ * [SOBU_SZ / 2]-[ceil ((N_AHE + N_SByte) / 2) + ATS_SZ]
여기서, ATS_SZ는 Byte단위로 된 ATS의 크기, SPayload_SZ는 스트림 팩에서 고정헤더 영역을 제외한, 정보를 담을 수 있는 데이터 공간 크기, N_AHE는 대응 SOBU의 어플리케이션 헤더 익스텐션의 수(number of Application Header Extension)을, N_SByte는 대응 SOBU의 스터핑 바이트의 수(number of stuffing byte)를 의미한다.Where ATS_SZ is the size of the ATS in bytes, SPayload_SZ is the size of the data space that can hold the information except the fixed header area in the stream pack, and N_AHE is the number of Application Header Extensions of the corresponding SOBU. , N_SByte means the number of stuffing bytes of the corresponding SOBU.
SOBU_SZ는 SOBU의 크기를 의미한다.SOBU_SZ means the size of the SOBU.
상기 기록매체는, 해당 SOB에 해당되는 SOBU가 무엇인지를 가리키는 탐색정보로서, 대응 SOBU의 지속시간(duration)을 가리키는 IAPAT(Incremental Application Packet Arrival Time)를 갖는 매핑 리스트(MAPL: MAPping List)를 더 포함한다.The recording medium may further include a mapping list (MAPL: Mapping List) having IAPAT (Incremental Application Packet Arrival Time) indicating a duration of the corresponding SOBU as search information indicating which SOBU corresponds to the SOB. Include.
또한, 상기 목적은, 컨텐츠 스트림 데이터가 소정 크기를 갖는 적어도 하나의 SOBU가 모여서 이루어진 SOB로 기록된 기록매체에 있어서, 상기 SOBU는 하나 또는 그 이상의 스트림 팩을 포함하고, 상기 스트림 팩은 재생 시간 정보를 표시하는 타임 스탬프 ATS 및 컨텐츠 스트림 데이터가 패킹된 응용 패킷을 포함하며, 상기 SOBU 중 마지막 SOBU를 제외한 나머지 SOBU 중 스터핑 패킷이 포함된 SOBU를 제외한 나머지는 각각 적어도 두 개의 ATS를 전부 포함하고, 상기 나머지 SOBU는 미리 결정된 ATS를 포함하고 상기 스트림 팩에 연결되어 기록되는 보정용 스터핑 패킷을 포함하는 것을 특징으로 하는 기록매체에 의해서도 달성된다.In addition, the object of the present invention is a recording medium recorded as an SOB in which at least one SOBU having a predetermined size of content stream data is gathered, wherein the SOBU includes one or more stream packs, and the stream packs include play time information. And an application packet packed with a time stamp ATS and a content stream data, wherein each of the SOBUs except for the last SOBU includes at least two ATSs except for a SOBU including a stuffing packet. The remaining SOBU is also achieved by a recording medium comprising a pre-determined ATS and a compensating stuffing packet recorded in connection with the stream pack.
상기 보정용 스터핑 패킷은 마지막 응용 패킷에 연속적으로 기록되고, 상기 보정용 스터핑 패킷에 포함된 ATS는 마지막 스트림 팩에 포함된 ATS와 동일한 값을 가지며, 미리 결정된 데이터가 기록되거나 어떠한 데이터도 기록되지 않는 패이로드(payload)를 더 포함하는 것이 바람직하고, 상기 패이로드에는 0이 기록되는 것이 특히 바람직하다.The correction stuffing packet is continuously recorded in the last application packet, the ATS included in the correction stuffing packet has the same value as the ATS included in the last stream pack, and the payload in which predetermined data is recorded or no data is recorded. It is preferable to further include a payload, and it is particularly preferable that 0 is recorded in the payload.
상기 응용 패킷의 크기는 상기 SOBU가 적어도 두 개의 ATS를 전부 포함할 수 있도록 충분히 작은 크기를 가지며, 다음 식을 만족하는 것이 바람직하다.The size of the application packet is small enough to allow the SOBU to include at least two ATSs, and it is preferable that the following equation is satisfied.
AP_PKT_SZ ≤ SPayload_SZ*[SOBU_SZ/2]- [ ceil( (N_AHE+N_SByte)/2 )+ ATS_SZ ]AP_PKT_SZ ≤ SPayload_SZ * [SOBU_SZ / 2]-[ceil ((N_AHE + N_SByte) / 2) + ATS_SZ]
여기서, ATS_SZ는 Byte단위로 된 ATS의 크기, SPayload_SZ는 스트림 팩에서 고정헤더 영역을 제외한, 정보를 담을 수 있는 데이터 공간 크기, N_AHE는 대응 SOBU의 어플리케이션 헤더 익스텐션의 수(number of Application Header Extension)을, N_SByte는 대응 SOBU의 스터핑 바이트의 수(number of stuffing byte)를 의미한다.Where ATS_SZ is the size of the ATS in bytes, SPayload_SZ is the size of the data space that can hold the information except the fixed header area in the stream pack, and N_AHE is the number of Application Header Extensions of the corresponding SOBU. , N_SByte means the number of stuffing bytes of the corresponding SOBU.
해당 SOB에 해당되는 SOBU가 무엇인지를 가리키는 탐색정보로서, 대응 SOBU의 지속시간(duration)을 가리키는 IAPAT(Incremental Application Packet Arrival Time)를 갖는 매핑 리스트(MAPL: MAPping List)를 더 포함한다.The search information indicating what is the SOBU corresponding to the SOB, and further includes a mapping list (MAPL) having an incremental application packet arrival time (IAPAT) indicating a duration of the corresponding SOBU.
한편, 본 발명의 다른 분야에 따르면, 상기 목적은, 소정 크기를 갖는 적어도 하나의 SOBU가 모여서 이루어진 SOB로 컨텐츠 스트림 데이터를 기록하는 기록장치에 있어서, 탐색정보로서 매핑 리스트를 생성하기 위한 제어부; 클럭값을 생성하기 위한 클럭생성부; 입력된 컨텐츠 스트림 데이터에 상기 클럭생성부로부터 공급되는 클럭값을 부가하고, 버퍼링하여 적절한 속도로 출력하기 위한 버퍼부; 상기 버퍼부로부터 출력된 컨텐츠 스트림 데이터를 패킹하여 상기 SOBU 중 마지막 SOBU를 제외한 나머지 SOBU 중 스터핑 패킷이 포함된 SOBU를 제외한 나머지는 각각 적어도 두 개의 ATS를 전부 포함하도록 SOBU를 생성하기 위한 SOBU 생성부; 및 상기 SOBU 생성부로부터 생성된 SOBU 및 상기 제어부에 의해 생성된 매핑 리스트를 기록하기 위한 기록부를 포함하는 것을 특징으로 하는 기록장치에 의해서도 달성된다.According to another aspect of the present invention, there is provided a recording apparatus for recording content stream data into an SOB composed of at least one SOBU having a predetermined size, comprising: a controller for generating a mapping list as search information; A clock generator for generating a clock value; A buffer unit for adding a clock value supplied from the clock generator to the input content stream data, buffering the buffer, and outputting the buffer at an appropriate speed; A SOBU generation unit for packing the content stream data output from the buffer unit to generate an SOBU so that each of the remaining SOBUs except for the last SOBU except the SOBU including stuffing packets includes at least two ATSs; And a recording unit for recording the SOBU generated from the SOBU generation unit and the mapping list generated by the control unit.
삭제delete
상기 응용 패킷의 크기는 상기 SOBU가 적어도 두 개의 ATS를 전부 포함할 수 있도록 충분히 작은 크기를 가지며, 다음 식을 만족하는 것이 바람직하다.The size of the application packet is small enough to allow the SOBU to include at least two ATSs, and it is preferable that the following equation is satisfied.
AP_PKT_SZ ≤ SPayload_SZ*[SOBU_SZ/2]- [ ceil( (N_AHE+N_SByte)/2 )+ ATS_SZ ]AP_PKT_SZ ≤ SPayload_SZ * [SOBU_SZ / 2]-[ceil ((N_AHE + N_SByte) / 2) + ATS_SZ]
여기서, ATS_SZ는 Byte 단위로 된 ATS의 크기, SPayload_SZ는 스트림 팩에서 고정헤더 영역을 제외한, 정보를 담을 수 있는 데이터 공간 크기, N_AHE는 대응 SOBU의 어플리케이션 헤더 익스텐션의 수(number of Application Header Extension)을, N_SByte는 대응 SOBU의 스터핑 바이트의 수(number of stuffing byte)를 의미한다.Where ATS_SZ is the size of the ATS in bytes, SPayload_SZ is the size of the data space that can hold information except the fixed header area in the stream pack, and N_AHE is the number of Application Header Extensions of the corresponding SOBU. , N_SByte means the number of stuffing bytes of the corresponding SOBU.
상기 매핑 리스트는, 해당 SOB에 해당되는 SOBU가 무엇인지를 가리키는 탐색정보로서, 대응 SOBU의 지속시간(duration)을 가리키는 IAPAT(Incremental Application Packet Arrival Time)를 포함한다.The mapping list is discovery information indicating what SOBU corresponds to the SOB, and includes IAPAT (Incremental Application Packet Arrival Time) indicating a duration of the corresponding SOBU.
또한, 소정 크기를 갖는 적어도 하나의 SOBU가 모여서 이루어진 SOB로 컨텐츠 스트림 데이터를 기록하는 기록장치에 있어서, 탐색정보로서 매핑 리스트를 생성하기 위한 제어부; 클럭값을 생성하기 위한 클럭생성부; 입력된 컨텐츠 스트림 데이터에 상기 클럭생성부로부터 공급되는 클럭값을 부가하고, 버퍼링하여 적절한 속도로 출력하기 위한 버퍼부; 상기 SOBU를 생성함에 있어, 대응되는 ATS를 갖지 못한 SOBU는 바로 앞의 SOBU에 속하는 ATS 중 마지막 ATS와 동일한 값을 갖는 ATS를 포함하는 보정용 스터핑 패킷을 포함시키는 SOBU 생성부; 및 상기 SOBU 생성부로부터 생성된 SOBU 및 상기 제어부에 의해 생성된 매핑 리스트를 기록하기 위한 기록부를 포함하는 것을 특징으로 하는 기록장치에 의해서도 달성된다.A recording apparatus for recording content stream data into an SOB composed of at least one SOBU having a predetermined size, comprising: a control unit for generating a mapping list as search information; A clock generator for generating a clock value; A buffer unit for adding a clock value supplied from the clock generator to the input content stream data, buffering the buffer, and outputting the buffer at an appropriate speed; In generating the SOBU, the SOBU having no corresponding ATS includes: a SOBU generation unit including a correction stuffing packet including an ATS having the same value as the last ATS among the ATSs belonging to the immediately preceding SOBU; And a recording unit for recording the SOBU generated from the SOBU generation unit and the mapping list generated by the control unit.
상기 SOBU 중 마지막 SOBU을 제외한 나머지는 각각 적어도 두 개의 ATS를 전부 포함하고, 상기 SOBU 생성부는 상기 보정용 스터핑 패킷을 상기 마지막 SOBU에 포함시키며, 상기 기록부는 상기 보정용 스터핑 패킷을 상기 SOB에 포함되는 마지막 응용 패킷에 이어서 연속적으로 기록하는 것이 바람직하다.Each of the SOBUs except for the last SOBU includes all of at least two ATSs, the SOBU generation unit includes the correction stuffing packet in the last SOBU, and the recording unit includes the last application packet included in the SOB. It is preferable to record continuously after the packet.
상기 보정용 스터핑 패킷에 포함된 ATS는 마지막 스트림 팩에 포함된 ATS와 동일한 값을 가지고, 상기 보정용 스터핑 패킷은 미리 결정된 데이터가 기록되거나 어떠한 데이터도 기록되지 않는 패이로드(payload)를 더 포함하며, 상기 기록부는, 상기 패이로드에 0을 기록하는 것이 바람직하다.The ATS included in the correction stuffing packet has the same value as the ATS included in the last stream pack, and the correction stuffing packet further includes a payload in which predetermined data is recorded or no data is recorded. The recording unit preferably records zero in the payload.
또한, ATS 및 컨텐츠 스트림 데이터가 패킹된 응용 패킷(A_PKT)을 포함하는 하나 또는 그 이상의 스트림 팩(S_PCK)을 포함하고, 일렬로 늘어선 상기 스트림 팩이 소정 크기로 분할되어 각각 순차적으로 할당된 적어도 하나의 SOBU를 포함하고, 상기 SOBU 중 마지막 SOBU를 제외한 나머지는 각각 적어도 두 개의 ATS를 전부 포함하는 SOB(Stream OBject)를 기록하는 기록장치에 있어서, 클럭값을 생성하기 위한 클럭생성부; 입력된 컨텐츠 스트림 데이터에 상기 클럭생성부로부터 공급되는 클럭값을 부가하고, 버퍼링하여 적절한 속도로 출력하기 위한 버퍼부; 상기 버퍼부로부터 출력된 컨텐츠 스트림 데이터를 패킹하여 SOBU를 생성하기 위한 SOBU 생성부; 대응되는 ATS를 갖지 못한 마지막 SOBU는 가상의 ATS를 갖는 것으로 간주하여 탐색정보로서 매핑 리스트를 생성하기 위한 제어부; 및 상기 SOBU 생성부로부터 생성된 SOBU 및 상기 제어부에 의해 생성된 매핑 리스트를 기록하기 위한 기록부를 포함하는 것을 특징으로 하는 기록장치에 의해서도 달성된다.And at least one stream pack S_PCK including an application packet A_PKT packed with ATS and content stream data, wherein the stream packs arranged in a row are divided into predetermined sizes and sequentially assigned to each other. A recording apparatus for recording a SOB (Stream OBject) including an SOBU of the SOBU, except for the last SOBU of the SOBU, each of which includes at least two ATSs, comprising: a clock generator for generating a clock value; A buffer unit for adding a clock value supplied from the clock generator to the input content stream data, buffering the buffer, and outputting the buffer at an appropriate speed; A SOBU generation unit for generating an SOBU by packing the content stream data output from the buffer unit; The last SOBU which does not have a corresponding ATS is considered to have a virtual ATS control unit for generating a mapping list as discovery information; And a recording unit for recording the SOBU generated from the SOBU generation unit and the mapping list generated by the control unit.
상기 제어부는 상기 SOB에 속하는 마지막 스트림 팩의 ATS를 상기 가상의 ATS로 간주하여 얻어된 IAPAT(Incremental Application Packet Arrival Time)를 포함하는 매핑 리스트를 생성한다.The controller generates a mapping list including an incremental application packet arrival time (IAPAT) obtained by considering the ATS of the last stream pack belonging to the SOB as the virtual ATS.
상기 응용 패킷의 크기는 상기 SOBU가 적어도 두 개의 ATS를 전부 포함할 수 있도록 충분히 작은 크기를 가지며, 다음 식을 만족하는 것이 바람직하다.The size of the application packet is small enough to allow the SOBU to include at least two ATSs, and it is preferable that the following equation is satisfied.
AP_PKT_SZ ≤ SPayload_SZ*[SOBU_SZ/2]- [ ceil( (N_AHE+N_SByte)/2 )+ ATS_SZ ]AP_PKT_SZ ≤ SPayload_SZ * [SOBU_SZ / 2]-[ceil ((N_AHE + N_SByte) / 2) + ATS_SZ]
여기서, AP_PKT_SZ은 응용 패킷의 크기를, SOBU_SZ는 SOBU의 크기를, ATS_SZ는 Byte단위로 된 ATS의 크기, SPayload_SZ는 스트림 팩에서 고정헤더 영역을 제외한, 정보를 담을 수 있는 데이터 공간 크기, N_AHE는 대응 SOBU의 어플리케이션 헤더 익스텐션의 수(number of Application Header Extension)을, N_SByte는 대응 SOBU의 스터핑 바이트의 수(number of stuffing byte)를 의미한다.Where AP_PKT_SZ is the size of the application packet, SOBU_SZ is the size of the SOBU, ATS_SZ is the size of the ATS in bytes, and SPayload_SZ is the size of the data space that can hold information in the stream pack, excluding the fixed header region, and N_AHE corresponds. The number of Application Header Extensions of the SOBU (N_SByte) means the number of stuffing bytes of the corresponding SOBU.
한편, 본 발명의 다른 분야에 따르면, 상기 목적은 컨텐츠 스트림 데이터가 소정 크기를 갖는 적어도 하나의 SOBU(Stream OBject Unit)가 모여서 이루어진 SOB(Stream OBject)로 기록되며, 상기 SOBU는 하나 또는 그 이상의 스트림 팩을 포함하고, 상기 스트림 팩은 재생 시간 정보를 표시하는 타임 스탬프 (ATS: Application Time Stamp) 및 컨텐츠 스트림 데이터가 패킹된 응용 패킷을 포함하며, 상기 SOBU 중 마지막 SOBU를 제외한 나머지 SOBU 중 스터핑 패킷이 포함된 SOBU를 제외한 나머지는 각각 적어도 두 개의 ATS를 전부 포함하고, 상기 마지막 SOBU는 가상의 ATS를 갖는 것으로 간주하여 생성된 매핑 리스트가 탐색정보로서 기록되어 있는 기록매체로부터 컨텐츠 스트림 데이터를 재생하는 재생장치에 있어서, 탐색정보로서 매핑 리스트 및 상기 SOBU를 독출하기 위한 독출부; 상기 독출부에 의해 독출된 매핑 리스트를 참조하여 해당 SOBU를 독출하도록 상기 독출부를 제어하기 위한 제어부; 클럭값을 생성하기 위한 클럭생성부; 상기 제어부로부터 상기 독출부에 의해 독출된 SOBU를 해석하여 컨텐츠 스트림 데이터를 추출하기 위한 SOBU 해석부; 및 상기 클럭생성부로부터 공급되는 클럭값에 기초하여 상기 SOBU 해석부로부터 제공된 컨텐츠 스트림 데이터를 버퍼링하여 적절한 속도로 출력하기 위한 버퍼부를 포함하는 것을 특징으로 하는 재생장치에 의해서도 달성된다.On the other hand, according to another field of the present invention, the object is recorded as a stream object (SOB) composed of at least one stream object unit (SOBU) having a predetermined size of the content stream data, the SOBU is one or more streams A pack, wherein the stream pack includes an application time stamp (ATS) indicating the play time information and an application packet packed with content stream data, and stuffing packets of the remaining SOBUs except the last SOBU in the SOBU Each of the remaining SOBUs includes at least two ATSs, and the last SOBU is regarded as having a virtual ATS, and a reproduction for reproducing content stream data from a recording medium on which a mapping list generated as search information is recorded. An apparatus, comprising: a reading unit for reading a mapping list and the SOBU as search information; A controller configured to control the reader to read the corresponding SOBU by referring to the mapping list read by the reader; A clock generator for generating a clock value; An SOBU analyzer for extracting content stream data by analyzing the SOBU read by the reader from the controller; And a buffer unit for buffering and outputting the content stream data provided from the SOBU analyzing unit based on the clock value supplied from the clock generating unit at an appropriate speed.
상기 응용 패킷의 크기는 다음 식을 만족하는 것이 바람직하다.The size of the application packet preferably satisfies the following equation.
AP_PKT_SZ ≤ SPayload_SZ*[SOBU_SZ/2]- [ ceil( (N_AHE+N_SByte)/2 )+ ATS_SZ ]AP_PKT_SZ ≤ SPayload_SZ * [SOBU_SZ / 2]-[ceil ((N_AHE + N_SByte) / 2) + ATS_SZ]
여기서, AP_PKT_SZ은 응용 패킷의 크기를, SOBU_SZ는 SOBU의 크기를, ATS_SZ는 Byte단위로 된 ATS의 크기, SPayload_SZ는 스트림 팩에서 고정헤더 영역을 제외한, 정보를 담을 수 있는 데이터 공간 크기, N_AHE는 대응 SOBU의 어플리케이션 헤더 익스텐션의 수(number of Application Header Extension)을, N_SByte는 대응 SOBU의 스터핑 바이트의 수(number of stuffing byte)를 의미한다.Where AP_PKT_SZ is the size of the application packet, SOBU_SZ is the size of the SOBU, ATS_SZ is the size of the ATS in bytes, and SPayload_SZ is the size of the data space that can hold information in the stream pack, excluding the fixed header region, and N_AHE corresponds. The number of Application Header Extensions of the SOBU (N_SByte) means the number of stuffing bytes of the corresponding SOBU.
상기 매핑 리스트는, 해당 SOB에 해당되는 SOBU가 무엇인지를 가리키는 탐색정보로서, 대응 SOBU의 지속시간(duration)을 가리키는 IAPAT(Incremental Application Packet Arrival Time)를 포함한다.The mapping list is discovery information indicating what SOBU corresponds to the SOB, and includes IAPAT (Incremental Application Packet Arrival Time) indicating a duration of the corresponding SOBU.
또한, 상기 목적은, 컨텐츠 스트림 데이터가 소정 크기를 갖는 적어도 하나의 SOBU(Stream OBject Unit)가 모여서 이루어진 SOB(Stream OBject)로 기록되며, 상기 SOBU는 하나 또는 그 이상의 스트림 팩을 포함하고, 상기 스트림 팩은 재생 시간 정보를 표시하는 타임 스탬프 (ATS: Application Time Stamp) 및 컨텐츠 스트림 데이터가 패킹된 응용 패킷을 포함하며, 상기 SOBU 중 마지막 SOBU를 제외한 나머지 SOBU 중 스터핑 패킷이 포함된 SOBU를 제외한 나머지는 각각 적어도 두 개의 ATS를 전부 포함하고 상기 마지막 SOBU는 미리 결정된 ATS를 갖는 보정용 스터핑 패킷을 포함하는 기록매체로부터 컨텐츠 스트림 데이터를 재생하는 재생장치에 있어서, 탐색정보로서 매핑 리스트 및 상기 SOBU를 독출하기 위한 독출부; 상기 독출부에 의해 독출된 매핑 리스트를 참조하여 해당 SOBU를 독출하도록 상기 독출부를 제어하기 위한 제어부; 클럭값을 생성하기 위한 클럭생성부; 상기 제어부로부터 상기 독출부에 의해 독출된 SOBU를 해석하여 컨텐츠 스트림 데이터를 추출하기 위한 SOBU 해석부; 및 상기 클럭생성부로부터 공급되는 클럭값에 기초하여 상기 SOBU 해석부로부터 제공된 컨텐츠 스트림 데이터를 버퍼링하여 적절한 속도로 출력하기 위한 버퍼부를 포함하는 것을 특징으로 하는 재생장치에 의해서도 달성된다.In addition, the object is recorded as a SOB (Stream OBject) composed of at least one SOBU (Stream OBject Unit) having a content stream data having a predetermined size, the SOBU includes one or more stream packs, the stream The pack includes an application time stamp (ATS) indicating the play time information and an application packet packed with content stream data, and the rest of the SOBUs except for the last SOBU except for the SOBU including stuffing packets A reproducing apparatus for reproducing content stream data from a recording medium including at least two ATSs in total and the last SOBU includes a correction stuffing packet having a predetermined ATS, the read list for reading the mapping list and the SOBU as search information. Reading unit; A controller configured to control the reader to read the corresponding SOBU by referring to the mapping list read by the reader; A clock generator for generating a clock value; An SOBU analyzer for extracting content stream data by analyzing the SOBU read by the reader from the controller; And a buffer unit for buffering and outputting the content stream data provided from the SOBU analyzing unit based on the clock value supplied from the clock generating unit at an appropriate speed.
상기 보정용 스터핑 패킷에 포함된 ATS는, 마지막 스트림 팩에 포함된 ATS와 동일한 값을 가지고, 상기 보정용 스터핑 패킷은, 미리 결정된 데이터가 기록되거나 어떠한 데이터도 기록되지 않는 패이로드(payroad)를 더 포함하는 것이 바람직하다.The ATS included in the correction stuffing packet has the same value as the ATS included in the last stream pack, and the correction stuffing packet further includes a payroad in which predetermined data is recorded or no data is recorded. It is preferable.
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
이하, 첨부된 도면을 참조하여 본 발명 바람직한 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
본 발명에 따른 기록매체는 재기록가능한 기록매체로서 컨텐츠 스트림 데이터로 이루어진 프로그램을 사용자가 직접 기록하고 편집할 수 있다. 컨텐츠 스트림 데이터를 기록하는 것은 입력된 컨텐츠 스트림 데이터를 인코딩하지 않고 그대로 기록하는 것을 의미한다. 즉, 음악 또는 영화 등의 오디오 또는 비디오 스트림 데이터를 입력받아 버퍼링하고 소정 기록단위로 팩킹하여 기록매체에 기록하는 방식을 말한다.The recording medium according to the present invention is a rewritable recording medium which allows a user to directly record and edit a program consisting of content stream data. Recording the content stream data means recording the input content stream data as it is without encoding. That is, a method of receiving and buffering audio or video stream data such as music or movie, packing them in predetermined recording units, and recording them on a recording medium.
본 실시예에 따른 기록매체인 DVD(Digital Versatile Disc)-SR(Stream Recording)은 SOB로 기록된 적어도 하나의 프로그램과 프로그램의 네비게이션을 위한 탐색정보를 포함한다.The DVD (Digital Versatile Disc) -SR (Stream Recording) recording medium according to the present embodiment includes at least one program recorded in SOB and navigation information for navigation of the program.
여기서, SOB는 종래와 마찬가지로 컨텐츠 스트림 데이터로 기록된 하나의 음악 또는 영화 등의 프로그램를 의미하며, 하나 또는 그 이상의 스트림 팩(S_PCK)을 포함한다. 일렬로 늘어선 스트림 팩을 일정한 크기를 갖도록 하나 또는 그 이상으로 분할한 것이 SOBU가 된다. 따라서, 하나의 SOBU은 복수개의 스트림 팩을 포함할 수 있으나 스트림 팩의 시작과 끝은 SOBU의 시작과 끝에 일치되지 않을 수 있다. 즉, 스트림 팩은 SOBU의 경계에 걸쳐서 위치될 수 있다.Here, the SOB means a program such as music or movie recorded as content stream data as in the related art, and includes one or more stream packs S_PCK. SOBU is divided into one or more stream packs arranged in a row to have a constant size. Therefore, one SOBU may include a plurality of stream packs, but the start and end of the stream pack may not coincide with the start and end of the SOBU. That is, stream packs may be located across the boundaries of the SOBU.
스트림 팩은 팩 헤더와 스트림 패킷으로 구성된다. 스트림 패킷은 하나 또는 그 이상의 응용 패킷(AP_PKT: Application Packet)을 포함한다. 응용 패킷은 기록/재생장치가 데이터를 기록/재생할 때 입력/출력되는 비트스트림의 조각을 가리킨다. 따라서, 응용 패킷의 앞에는 ATS가 위치한다.The stream pack consists of a pack header and a stream packet. The stream packet includes one or more application packets (AP_PKTs). An application packet indicates a fragment of a bitstream that is input / output when the recording / reproducing apparatus records / reproduces data. Therefore, the ATS is located before the application packet.
한편, 탐색정보는 소정 프로그램에 해당되는 셀이 무엇인지를 가리키는 정보, 소정 셀에 해당되는 SOB가 무엇인지를 가리키는 정보, 및 소정 SOB에 해당되는 SOBU가 무엇인지를 가리키는 정보를 포함하는 계층구조를 가진다. 특히, SOB에 해당되는 SOBU가 무엇인지를 가리키는 정보를 매핑 리스트(MAPL: MAPping List)라고 한다. 매핑 리스트는 대응 SOBU의 지속시간(duration)을 가리키는 IAPAT(Incremental Application Packet Arrival Time)을 포함한다. IAPAT를 구하는 규칙은 후술한다.The search information includes a hierarchical structure including information indicating what cells correspond to a given program, information indicating what SOB corresponds to a given cell, and information indicating what SOBU corresponds to a given SOB. Have In particular, the information indicating the SOBU corresponding to the SOB is called a mapping list (MAPL). The mapping list includes an Incremental Application Packet Arrival Time (IAPAT) indicating the duration of the corresponding SOBU. The rules for obtaining the IAPAT will be described later.
한편, 본 발명에 따라 소정 SOB에 속하는 마지막 SOBU를 제외한 나머지 SOBU는 적어도 두 개의 ATS를 포함한다. 다시 말해, 적어도 두 개의 ATS는 그 첫 바이트가 대응 SOBU에 포함된다. 왜냐하면, 본 발명에 따른 응용 패킷의 크기 (AP_PKT_SZ)는 다음 식을 만족하기 때문이다. 다만 스터핑 패킷이 포함된 SOBU경우는 그렇지 아니하다. 여기서, 스터핑 패킷은 저비트율에서 IAPAT로 표현할 수 있는 최대 지속시간(duration)으로도 응용 패킷으로 SOBU를 채울 수 없을 때 IAPAT의 오버플로우(overflow)를 방지하기 위하여 강제로 삽입하는 패킷 데이터로서, 컨텐트 내용과는 무관하며 재생에 필요한 타이밍 재생성(timing regeneration)에 사용됨을 주목적으로 한다.Meanwhile, according to the present invention, the remaining SOBU except the last SOBU belonging to a predetermined SOB includes at least two ATSs. In other words, at least two ATSs have their first byte included in the corresponding SOBU. This is because the size (AP_PKT_SZ) of the application packet according to the present invention satisfies the following equation. However, this is not the case in SOBU including stuffing packets. Here, the stuffing packet is packet data that is forcibly inserted in order to prevent the overflow of the IAPAT when the SOBU cannot be filled with the application packet even with the maximum duration that can be represented by the IAPAT at a low bit rate. Its main purpose is to be independent of the content and used for timing regeneration required for playback.
응용 패킷의 크기는 다음의 일반식이 나타내는 범위로 제한된다.The size of the application packet is limited to the range represented by the following general formula.
AP_PKT_SZ ≤ SPayload_SZ*[SOBU_SZ/2]- [ ceil( (N_AHE+N_SByte)/2 )+ ATS_SZ ]AP_PKT_SZ ≤ SPayload_SZ * [SOBU_SZ / 2]-[ceil ((N_AHE + N_SByte) / 2) + ATS_SZ]
여기서, AP_PKT_SZ은 응용 패킷의 크기를, SOBU_SZ는 SOBU의 크기를, ATS_SZ는 Byte단위로 된 ATS의 크기, SPayload_SZ는 스트림 팩에서 고정헤더 영역을 제외한, 정보를 담을 수 있는 데이터 공간 크기, N_AHE는 대응 SOBU의 어플리케이션 헤더 익스텐션의 수(number of Application Header Extension)을, N_SByte는 대응 SOBU의 스터핑 바이트의 수(number of stuffing byte)를 의미한다.Where AP_PKT_SZ is the size of the application packet, SOBU_SZ is the size of the SOBU, ATS_SZ is the size of the ATS in bytes, and SPayload_SZ is the size of the data space that can hold information in the stream pack, excluding the fixed header area, and N_AHE corresponds. The number of Application Header Extensions of the SOBU (N_SByte) means the number of stuffing bytes of the corresponding SOBU.
상기 일반식을 다음과 같은 특수한 경우에 적용하면 간략화할 수 있다.The general formula can be simplified by applying the following special cases.
즉, 종래 기술의 문제점에서 언급한 바와 같이, 하나의 SOBU가 SOBU_SZ 개수 만큼의 스트림 팩을 가진다고 가정했을 때 팩 헤더를 위해 최소한 30 byte(고정헤더의 크기)가 필요하고 스트림 패킷에 정의된 헤더 익스텐션(Header extention)과 스터핑 패킷(Stuffing Packet) 모두를 2 byte로 하면 2018*[SOBU_SZ]-2이 남는다. 여기서 2018은 2048 크기의 스트림 팩에서 고정헤더 영역의 크기를 제외한, 정보를 담을 수 있는 데이터 공간의 크기(SPayload_SZ)를 의미한다. 그런데, ATS의 크기가 4 byte임을 고려하여 본 발명에 따라 응용 패킷의 크기를 2018*[SOBU_SZ/2]-6보다 작거나 같게 하면, 마지막 SOBU를 제외한 나머지 SOBU 중 스터핑 패킷이 포함된 SOBU를 제외한 나머지에는 각각 적어도 두 개의 ATS의 첫 바이트가 포함되게 된다. 이에 상기 일반식은 다음과 같이 간단해진다.That is, as mentioned in the problem of the prior art, assuming that one SOBU has as many stream packs as SOBU_SZ, at least 30 bytes (fixed header size) are required for the pack header and the header extension defined in the stream packet If both (Header extention) and Stuffing Packet (Stuffing Packet) are 2 bytes, 2018 * [SOBU_SZ] -2 remains. Here, 2018 refers to a size of a data space (SPayload_SZ) that can hold information except the size of a fixed header region in a stream pack of 2048 size. However, considering that the size of the ATS is 4 bytes, if the size of the application packet is smaller than or equal to 2018 * [SOBU_SZ / 2] -6 according to the present invention, except for the SOBU including stuffing packets among the remaining SOBUs except the last SOBU. The rest will contain the first byte of at least two ATSs each. The general formula is thus simplified as follows.
(AP_PKT_SZ+4)*2 ≤ 2018*[SOBU_SZ]-2*2(AP_PKT_SZ + 4) * 2 ≤ 2018 * [SOBU_SZ] -2 * 2
AP_PKT_SZ ≤ 2018*[SOBU_SZ/2]-6AP_PKT_SZ ≤ 2018 * [SOBU_SZ / 2] -6
한편, 본 발명에 따라 마지막 SOBU가 IAPAT을 갖도록 하기 위한 데이터 구조 는 이하에서 설명하는 2가지 실시예로 구현할 수 있다.Meanwhile, according to the present invention, a data structure for allowing the last SOBU to have IAPAT may be implemented in two embodiments described below.
먼저 마지막 SOBU가 IAPAT을 갖도록 하기 위한 데이터 구조의 제1 실시예를 설명하면 다음과 같다.First, a first embodiment of a data structure for allowing the last SOBU to have IAPAT will be described.
도 4는 본 발명의 제1 실시예에 따른 데이터 구조도이다.4 is a data structure diagram according to a first embodiment of the present invention.
도 4를 참조하면, SOB는 M개의 SOBU이 연결된 SOBU 체인으로 형성된다. 응용 패킷의 크기가 본 발명에 따라 전술한 바와 같은 크기를 갖기 때문에, 마지막 SOBU를 제외한 나머지 SOBU에는 적어도 두 개의 ATS의 첫 번째 바이트가 포함된다. 즉, SOBU #M-1에는 ATS #N-1 및 ATS #N의 첫 번째 바이트가 포함되어 있다.Referring to FIG. 4, the SOB is formed of an SOBU chain in which M SOBUs are connected. Since the size of the application packet has the size as described above according to the present invention, the remaining SOBUs except the last SOBU contain at least two first bytes of ATS. That is, SOBU # M-1 includes the first bytes of ATS # N-1 and ATS #N.
한편, SOBU #M는 ATS를 포함하지 않고 응용 패킷 AP_PKT #N의 일부 또는 전부가 속한다. 즉, 마지막 SOBU인 SOBU #M에 속하는 ATS가 존재하지 않는 경우에는 본 실시예에 따라 마지막 응용 패킷인 AP_PKT #N에 이어서 보정용 스터핑 패킷(100)이 기록된다. 보정용 스터핑 패킷(100)은 ATS #N(101)과 패이로드 (Payload)(102)로 구성된다. 즉, 보정용 스터핑 패킷에 포함된 ATS는 AP_PKT #N에 부가되어 있는 ATS #N을 그대로 복사한 값을 가진다. 패이로드(102)에는 본 실시예에 따라 0이 기록된다. 한편, SOB는 사실상 마지막 응용 패킷인 AP_PKT #N으로 종료되고 SOB의 재생시에도 마지막 응용 패킷인 AP_PKT #N 이후에 기록된 데이터는 독출되지 않기 때문에 패이로드(102)에 기록되는 데이터의 형식 및 내용은 필요에 따라 다양하게 변경될 수 있다. 때에 따라서 패이로드(102)에는 어떤 데이터도 기록되지 않을 수 있다.On the other hand, the SOBU #M does not include the ATS and part or all of the application packet AP_PKT #N belongs. That is, when there is no ATS belonging to SOBU #M which is the last SOBU, the
다음으로 마지막 SOBU가 IAPAT을 갖도록 하기 위한 제2 실시예에 따른 데이 터 구조를 설명한다.Next, a data structure according to the second embodiment for allowing the last SOBU to have IAPAT will be described.
도 5는 본 발명의 제 2실시예에 따른 데이터 구조도이다.5 is a data structure diagram according to a second embodiment of the present invention.
도 5를 참조하면, SOB는 M개의 SOBU이 연결된 SOBU 체인으로 형성된다. 응용 패킷의 크기가 본 발명에 따라 전술한 바와 같은 크기를 갖기 때문에, 마지막 SOBU를 제외한 나머지 SOBU에는 적어도 두 개의 ATS의 첫 번째 바이트가 포함된다. 즉, SOBU #M-1에는 ATS #N-1 및 ATS #N의 첫 번째 바이트가 포함되어 있다.Referring to FIG. 5, an SOB is formed of an SOBU chain in which M SOBUs are connected. Since the size of the application packet has the size as described above according to the present invention, the remaining SOBUs except the last SOBU contain at least two first bytes of ATS. That is, SOBU # M-1 includes the first bytes of ATS # N-1 and ATS #N.
이 때 SOBU #M에 속하는 ATS는 도 4를 참조하여 전술한 바와 같이 AP_PKT #N에 부가되어 있는 ATS #N와 동일한 값을 가지지만 실제로 기록되는 것은 아니다. 다시 말해, 탐색정보로서 매핑 리스트를 기록할 때 필요한 IAPAT 값을 계산함에 있어, ATS #N를 읽어들인 다음 이 값을 SOBU #M에 포함된 ATS로 간주할 뿐이다. 다만, ATS #N을 SOBU #M에 대한 ATS로 간주하여 구해진 IAPAT는 탐색정보로서 매핑 리스트에 기록된다.At this time, the ATS belonging to SOBU #M has the same value as ATS #N added to AP_PKT #N as described above with reference to FIG. 4, but is not actually recorded. In other words, in calculating the IAPAT value required when recording the mapping list as the search information, the ATS #N is read and only this value is regarded as the ATS included in the SOBU #M. However, IAPAT obtained by considering ATS #N as an ATS for SOBU #M is recorded in the mapping list as search information.
도 4 및 도 5를 참조하여 설명한 제1 및 제2 실시예에 따르면, SOBU #M-1 및 SOBU #M에 속하는 첫 번째 ATS가 각각 ATS #N-1 및 ATS #N이 되어 서로 다른 값을 갖게 되므로, SOBU #M-1의 IAPAT의 값이 0이 되지 않는다. 즉, 모든 SOBU에 대해 DVD-SR Draft 0.9에 규정된 규칙에 따라 모든 SOBU의 IAPAT 값을 제대로 구할 수 있게 된다. 이에 따라 모든 SOBU가 상호 변별가능한 IAPAT 값을 갖게 되므로 매핑 리스트를 참조하여 이루어지는 프로그램 탐색이 오류없이 원활하게 수행할 수 있게 된다.According to the first and second embodiments described with reference to FIGS. 4 and 5, the first ATS belonging to SOBU # M-1 and SOBU #M becomes ATS # N-1 and ATS #N, respectively, and different values are obtained. Therefore, the value of IAPAT of SOBU # M-1 does not become zero. In other words, IAPAT values of all SOBUs can be properly obtained for all SOBUs according to the rules set forth in DVD-SR Draft 0.9. As a result, all SOBUs have IAPAT values that can be distinguished from each other, so that a program search made by referring to a mapping list can be smoothly performed without errors.
한편, DVD-SR Draft 0.9에 따르면 IAPAT를 구하는 규칙은 다음과 같다. Meanwhile, according to the DVD-SR Draft 0.9, the rules for obtaining IAPAT are as follows.
하나의 SOB에 M개의 SOBU가 존재하는 경우 SOBU #M를 제외한 i 번째 SOBU(i)에 대하여 첫 번째 IAPAT인 IAPAT(1)부터 i 번째 IAPAT인 IAPAT(i)까지 누적하여 더한 값이 SOBU(i+1)의 첫 번째 응용 패킷의 도달시간 보다 크거나 같고 SOBU(i+1)의 첫 번째 응용 패킷의 도달시간에 1을 더한 값보다는 작아야 한다. 이때 IAPAT는 정수값을 가지며 초기값은 0이다. 수식으로 나타내면 다음과 같다.If there are M SOBUs in one SOB, the cumulative sum from the first IAPAT IAPAT (1) to the i th IAPAT IAPAT (i) for the i th SOBU (i) excluding SOBU #M is the SOBU (i It must be greater than or equal to the arrival time of the first application packet of +1) and less than the sum of the arrival time of the first application packet of SOBU (i + 1). At this time, IAPAT has an integer value and the initial value is 0. The expression is as follows.
SOBU_S_APAT(i+1) <= SUM_IAPAT(i) < SOBU_S_APAT(i+1)+1SOBU_S_APAT (i + 1) <= SUM_IAPAT (i) <SOBU_S_APAT (i + 1) +1
여기서, SOBU_S_APAT(i+1)는 SOBU #i+1에 속한 첫 번째 응용 패킷의 도달시간을, SUM_IAPAT(i)은 해당 SOBU #i를 포함하여 선행하는 모든 SOBU의 IAPAT 값을 누적하여 더한 값을 의미한다.Here, SOBU_S_APAT (i + 1) is the sum of the arrival time of the first application packet belonging to SOBU # i + 1, and SUM_IAPAT (i) is the sum of IAPAT values of all preceding SOBUs including the corresponding SOBU #i. it means.
또한 SOBU #M은 IAPAT를 누적하여 더한 값이 SOBU #M에 속하는 마지막 응용 패킷의 도달시간보다 크고 SOBU #M에 속하는 마지막 응용 패킷의 도달시간에 1을 더한 값보다 작거나 같아야 한다. 수식으로 나타내면 다음과 같다.In addition, SOBU #M must be equal to or larger than the arrival time of the last application packet belonging to SOBU #M and the sum of IAPATs is less than or equal to the arrival time of the last application packet belonging to SOBU #M. The expression is as follows.
SOBU_E_APAT(M) < SUM_IAPAT(M) < SOBU_E_APAT(M)+1SOBU_E_APAT (M) <SUM_IAPAT (M) <SOBU_E_APAT (M) +1
여기서, SOBU_E_APAT(M)는 SOBU #M에 속하는 마지막 응용 패킷의 도달시간을 의미한다.Here, SOBU_E_APAT (M) means the arrival time of the last application packet belonging to SOBU #M.
도 6은 본 발명의 바람직한 실시예에 따른 기록장치의 블록도이다.6 is a block diagram of a recording apparatus according to a preferred embodiment of the present invention.
도 6을 참조하면, 기록장치(5)는 음악, 영화 등의 컨텐츠를 전술한 바와 같은 데이터 구조를 갖는 하나의 SOB로 기록하는 기록장치로서, 버퍼부(51), 클럭생성부(52), SOBU 생성부(53), 기록부(55), 및 제어부(56)를 구비한다. 버퍼부(51)는 외부로부터 컨텐츠 스트림을 입력받아 클럭생성부(52)로부터 공급되는 클럭값에 기초하여 버퍼링하여 적절한 속도로 출력한다. SOBU 생성부(53)는 컨텐츠 스트림을 패킹하여 SOBU를 생성한다. 기록부(55)는 제어부(56)의 제어에 기초하여 SOBU 및 매핑 리스트 등의 탐색정보를 광 디스크(500)에 기록한다. 제어부(56)는 매핑 리스트를 생성하여 기록부(55)로 제공하는 한편 컨텐츠 스트림이 광 기록매체(500)에 기록되도록 기록장치(5)를 총괄제어한다.Referring to FIG. 6, the recording device 5 is a recording device for recording contents such as music, movies, and the like into one SOB having a data structure as described above, and includes a
상기와 같은 구성에 따라 먼저 본 발명의 제1 실시예에 따른 기록방법을 설명한다.First, the recording method according to the first embodiment of the present invention will be described.
셋 톱 박스(Set-Top-Box)와 같은 응용장치로부터 컨텐츠 스트림이 버퍼부 (51)로 입력되고, 사용자가 기록장치에 구비된 기록버튼(도시되지 않음)을 누르면, 제어부(56)는 클럭생성부(52)를 리셋시킨다. 이에 클럭생성부(52)는 클럭값을 0부터 생성하여 버퍼부(51)로 제공한다. When the content stream is input to the
버퍼부(51)는 수신된 컨텐츠 스트림에 클럭생성부(52)로부터 수신된 클럭값을 부가하는 한편 수신된 컨텐츠 스트림을 버퍼링하여 적절한 속도로 출력한다. SOBU 생성부(53)는 버퍼부(51)로부터 수신된 컨텐츠 스트림을 패킹하여 SOBU를 생성한다. 생성된 SOBU는 기록부(55)로 전달되고, 기록부(55)는 전달받은 SOBU를 제어부(56)의 제어에 기초하여 광 디스크(500)에 기록한다.The
이 때, 도 4에 도시된 바와 같이, SOB에 속하는 SOBU 중 마지막 SOBU를 제외한 나머지에 적어도 두 개의 ATS가 포함되고 마지막 SOBU에 속하는 ATS는 존재하지 않는 경우에는 마지막 응용 패킷인 AP_PKT #N에 이어서 보정용 스터핑 패킷(100)을 기록한다. 본 실시예에서의 보정용 스터핑 패킷(100)에 포함된 ATS로는 앞의 ATS #N(101)가 복사되어 기록된다. 패이로드(102)에는 본 실시예에 따라 0이 기록된다.In this case, as shown in FIG. 4, when at least two ATSs are included in the SOBUs belonging to the SOB except for the last SOBU, and there are no ATSs belonging to the last SOBU, subsequent correction is performed after AP_PKT #N.
더불어, 기록부(55)는 제어부(56)로부터 수신된 매핑 리스트를 광 디스크 (500)의 탐색정보 기록영역 네비게이션 데이터로서 기록한다.In addition, the
다음으로 본 발명의 제2 실시예에 따른 기록방법을 설명한다.Next, a recording method according to the second embodiment of the present invention will be described.
셋 톱 박스(Set-Top-Box)와 같은 응용장치로부터 컨텐츠 스트림이 버퍼부 (51)로 입력되고, 사용자가 기록장치에 구비된 기록버튼(도시되지 않음)을 누르면, 제어부(56)는 클럭생성부(52)를 리셋시킨다. 이에 클럭생성부(52)는 클럭값을 0부터 생성하여 버퍼부(51)로 제공한다. When the content stream is input to the
버퍼부(51)는 수신된 컨텐츠 스트림에 클럭생성부(52)로부터 수신된 클럭값을 부가하는 한편 수신된 컨텐츠 스트림을 버퍼링하여 적절한 속도로 출력한다. SOBU 생성부(53)는 버퍼부(51)로부터 수신된 컨텐츠 스트림을 패킹하여 SOBU를 생성한다. 생성된 SOBU는 기록부(55)로 전달되고, 기록부(55)는 전달받은 SOBU를 제어부(56)의 제어에 기초하여 광 디스크(500)에 기록한다.The
더불어, 기록부(55)는 매핑 리스트를 광 디스크(500)의 탐색정보 기록영역 네비게이션 데이터로서 기록한다. 여기서, 매핑 리스트는 제어부(56)에 의해 생성되어 기록부(55)로 제공된다. 보다 구체적으로 제어부(56)는 도 5에 도시된 바와 같이, ATS #N을 읽어 들여 이 값을 SOBU #M의 ATS로 간주하고 이 값에 의해 기초하여 전술한 규칙에 의해 얻어진 IAPAT 값을 매핑 리스트에 기록한다. 다시 말해, SOBU #M의 ATS는 ATS #N와 동일한 값을 가지지만 실제로 데이터로서 기록되는 값이 아니라, 매핑 리스트를 구성하는 IAPAT 값을 계산함에 있어 제어부에 의해 사용되는 가상의 값이다.In addition, the
도 7은 본 발명의 바람직한 실시예에 따른 재생장치의 블록도이다.7 is a block diagram of a playback apparatus according to a preferred embodiment of the present invention.
도 7을 참조하면 재생장치는 도 4, 5, 및 6을 참조하여 설명한 바와 같은 데이터 구조로 기록된 광 디스크(600)로부터 컨텐츠를 재생하기 위한 재생장치로서, 제어부(66), 독출부(65), SOBU 해석부(64), 클럭생성부(62), 및 버퍼부(61)를 구비한다.Referring to FIG. 7, the playback apparatus is a playback apparatus for playing back contents from the
제어부(66)는 매핑 리스트를 포함한 각종 제어정보를 해독하여 사용자의 요구에 기초하여 광 기록매체(600)에 기록된 컨텐츠가 재생되도록 재생장치를 총괄제어한다. 독출부(65)는 광 기록매체(600)로부터 데이터를 독출한다. SOBU 해석부 (64)는 독출된 SOBU를 해석하여 컨텐츠를 구성하는 컨텐츠 스트림 데이터를 추출하고, 버퍼부(61)는 클럭 생성부(62)로부터 공급된 클럭값에 기초하여 컨텐츠 스트림 데이터를 버퍼링함으로써 적절한 속도로 컨텐츠 스트림 데이터가 출력되도록 한다.The
상기와 같은 구성에 따라 먼저 본 발명의 제1 실시예에 따른 재생방법을 설명한다.First, the playback method according to the first embodiment of the present invention will be described.
사용자가 재생장치에 구비된 재생버튼(도시되지 않음)을 눌러 소정 컨텐츠의 재생을 요구하면, 제어부(66)는 광 기록장치(600)에 기록된 매핑 리스트를 포함한 탐색정보를 독출할 것을 독출부(65)에 명령하고, 독출부(65)로부터 전달된 매핑 리스트를 포함한 탐색정보를 전달받아 해당 SOB 또는 해당 SOBU를 찾아낸다. 이때, 도 4에 도시된 바와 같이, 광 기록매체(600)에는 SOB에 속하는 SOBU 중 마지막 SOBU를 제외한 나머지에 적어도 두 개의 ATS가 포함되고 마지막 SOBU에 속하는 ATS는 존재하지 않는 경우라도, 마지막 응용 패킷인 AP_PKT #N에 이어서 ATS #N를 포함한 보정용 스터핑 패킷(100)이 기록되어 있고 이에 기초하여 얻어진 IAPAT를 갖는 매핑 리스트가 탐색정보로서 기록되어 있으므로 컨텐츠의 탐색 및 원하는 위치에서의 컨텐츠의 재생을 원활하게 수행할 수 있다.When the user presses a play button (not shown) provided in the playback device to request playback of predetermined content, the
한편, 제어부(66)는 클럭생성부(62)를 리셋시킨다. 이에 클럭생성부(62)는 클럭값을 0부터 생성하여 버퍼부(61)로 제공한다.On the other hand, the
독출부(65)는 SOBU로 기록된 컨텐츠를 독출하여 SOBU 해석부(64)로 제공한다. SOBU 해석부(64)는 제공된 SOBU로부터 컨텐츠 스트림 데이터를 추출한다. 버퍼부(61)는 클럭생성부(62)로부터 제공된 클럭값이 수신된 컨텐츠 스트림 데이터에 부가된 클럭값과 동일해지는 시점에 해당 컨텐츠 스트림 데이터를 출력한다.The reading unit 65 reads the content recorded in the SOBU and provides it to the
다음으로 본 발명의 제2 실시예에 따른 재생방법을 설명한다.Next, a reproduction method according to a second embodiment of the present invention will be described.
사용자가 재생장치에 구비된 재생버튼(도시되지 않음)을 눌러 소정 컨텐츠의 재생을 요구하면, 제어부(66)는 광 기록장치(600)에 기록된 매핑 리스트를 포함한 탐색정보를 독출할 것을 독출부(65)에 명령하고, 독출부(65)로부터 전달된 매핑 리스트를 포함한 탐색정보를 전달받아 해당 SOB 또는 해당 SOBU를 찾아낸다. 이때, 도 5에 도시된 바와 같이, 광 기록매체(600)에는 SOB에 속하는 SOBU 중 마지막 SOBU를 제외한 나머지에 적어도 하나의 ATS가 포함되고 마지막 SOBU에 속하는 ATS는 존재하지 않는 경우라도 SOB #M에 ATS #N이 포함된 것으로 간주하여 얻어진 IAPAT가 포함된 매핑 리스트가 탐색정보로서 기록되어 있으므로 컨텐츠의 탐색 및 원하는 위치에서의 컨텐츠의 재생을 수행할 수 있다.When the user presses a play button (not shown) provided in the playback device to request playback of predetermined content, the
한편, 제어부(66)는 클럭생성부(62)를 리셋시킨다. 이에 클럭생성부(62)는 클럭값을 0부터 생성하여 버퍼부(61)로 제공한다.On the other hand, the
독출부(65)는 SOBU로 기록된 컨텐츠를 독출하여 SOBU 해석부(64)로 제공한다. SOBU 해석부(64)는 제공된 SOBU로부터 컨텐츠 스트림 데이터를 추출한다. 버퍼부(61)는 클럭생성부(62)로부터 제공된 클럭값이 수신된 컨텐츠 스트림 데이터에 부가된 클럭값과 동일해지는 시점에 해당 컨텐츠 스트림 데이터를 출력한다.The reading unit 65 reads the content recorded in the SOBU and provides it to the
도 8은 본 발명의 바람직한 실시예에 따른 기록재생장치의 블록도이다.8 is a block diagram of a recording / playback apparatus according to a preferred embodiment of the present invention.
도 8을 참조하면 기록재생장치(7)는 도 6의 기록장치(5) 및 도 7의 재생장치(6)가 일체로 구현된 것으로서, 기록시, 음악, 영화 등의 컨텐츠를 전술한 바와 같은 데이터 구조를 갖는 하나의 SOB로 기록하고, 재생시 도 4, 5, 및 6을 참조하여 설명한 바와 같은 데이터 구조로 기록된 광 디스크(700)로부터 컨텐츠를 재생하기 위해 기록/독출부(75), SOBU 생성부(73), SOBU 해석부(74), 버퍼부(71), 클럭생성부(72), 및 제어부(76)를 구비한다.Referring to FIG. 8, the recording and reproducing
버퍼부(71)는 기록시 외부로부터 컨텐츠 스트림 데이터를 입력받아 클럭생성부(72)로부터 공급되는 클럭값에 기초하여 버퍼링하여 적절한 속도로 출력하고, 재생시 클럭 생성부(62)로부터 공급된 클럭값에 기초하여 컨텐츠 스트림 데이터를 버퍼링함으로써 적절한 속도로 컨텐츠 스트림 데이터가 출력되도록 한다.The
SOBU 생성부(73)는 컨텐츠 스트림 데이터를 패킹하여 SOBU를 생성한다. SOBU 해석부(74)는 SOBU를 해석하여 컨텐츠를 구성하는 컨텐츠 스트림 데이터를 추 출한다.The
기록/독출부(75)는 기록시, SOBU로 패킹된 컨텐츠 스트림 및 제어부(76)의 제어에 기초하여 SOBU 및 매핑 리스트 등의 탐색정보를 광 디스크(700)에 기록하고, 재생시, 제어부(76)로부터 요청에 따라 광 디스크(700)에 기록된 매핑 리스트를 포함한 탐색정보 또는 SOBU를 독출한다.The recording /
제어부(76)는 기록시 매핑 리스트를 생성하여 기록/독출부(75)로 제공하는 한편 컨텐츠 스트림 데이터가 광 디스크(700)에 기록되도록 기록재생장치(7)를 총괄제어하고, 재생시 매핑 리스트를 포함한 각종 제어정보를 해독하여 사용자의 요구에 기초하여 광 디스크(700)에 기록된 컨텐츠가 재생되도록 기록재생장치를 총괄제어한다.The
상기와 같은 구성에 따른 기록재생장치의 기록방법 및 재생방법은 전술한 기록장치 및 재생장치의 그것과 동일하므로 반복되는 설명은 생략한다.Since the recording and reproducing methods of the recording and reproducing apparatus according to the above constitution are the same as those of the above-described recording and reproducing apparatus, repeated description thereof will be omitted.
이에 의해, 모든 SOBU에 대해 IAPAT 값을 제대로 구할 수 있게 되며, 따라서 매핑 리스트를 참조하여 이루어지는 프로그램 탐색이 오류없이 원활하게 수행할 수 있다.As a result, the IAPAT value can be properly obtained for all SOBUs, so that the program search made with reference to the mapping list can be performed smoothly without error.
Claims (41)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010001234A KR100677099B1 (en) | 2001-01-10 | 2001-01-10 | Recording medium recorded contents stream data thereon, recording apparatus, and reproducing apparatus therefor |
US10/041,761 US20020097988A1 (en) | 2001-01-10 | 2002-01-10 | Recording medium with content stream data recorded thereon, recording apparatus, and reproducing apparatus therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010001234A KR100677099B1 (en) | 2001-01-10 | 2001-01-10 | Recording medium recorded contents stream data thereon, recording apparatus, and reproducing apparatus therefor |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20020060274A KR20020060274A (en) | 2002-07-18 |
KR100677099B1 true KR100677099B1 (en) | 2007-02-01 |
Family
ID=27691225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020010001234A KR100677099B1 (en) | 2001-01-10 | 2001-01-10 | Recording medium recorded contents stream data thereon, recording apparatus, and reproducing apparatus therefor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100677099B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000055028A (en) * | 1999-02-02 | 2000-09-05 | 구자홍 | Method for recording digital data stream and for generating search information thereof |
KR20000055848A (en) * | 1999-02-10 | 2000-09-15 | 구자홍 | Method for recording search information of digital data stream and searching the recorded data by using the search information |
WO2000068949A1 (en) * | 1999-05-07 | 2000-11-16 | Deutsche Thomson-Brandt Gmbh | Method for marking digital data |
JP2000339929A (en) * | 1999-05-18 | 2000-12-08 | Deutsche Thomson Brandt Gmbh | Method for marking digital data |
-
2001
- 2001-01-10 KR KR1020010001234A patent/KR100677099B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000055028A (en) * | 1999-02-02 | 2000-09-05 | 구자홍 | Method for recording digital data stream and for generating search information thereof |
KR20000055848A (en) * | 1999-02-10 | 2000-09-15 | 구자홍 | Method for recording search information of digital data stream and searching the recorded data by using the search information |
WO2000068949A1 (en) * | 1999-05-07 | 2000-11-16 | Deutsche Thomson-Brandt Gmbh | Method for marking digital data |
JP2000339929A (en) * | 1999-05-18 | 2000-12-08 | Deutsche Thomson Brandt Gmbh | Method for marking digital data |
Also Published As
Publication number | Publication date |
---|---|
KR20020060274A (en) | 2002-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6898370B2 (en) | Signal encoding apparatus, audio data transmitting method, audio data recording method, audio data decoding method and audio disc | |
US7373079B2 (en) | Method and an apparatus for stream conversion, a method and an apparatus for data recording, and data recording medium | |
JP4299836B2 (en) | Data processing device | |
KR20000003325A (en) | Apparatus and method of reading and writing optical disk and data structure for the same | |
KR100520869B1 (en) | Recording medium, recorder, reproducing device and optical disk recording medium | |
KR100712150B1 (en) | Method, apparatus and storage medium for recording or playback of low bitrate data streams | |
JP3927365B2 (en) | optical disk | |
US7359625B2 (en) | Recording medium with content stream data recorded thereon, recording apparatus, and reproducing apparatus therefor | |
KR100677099B1 (en) | Recording medium recorded contents stream data thereon, recording apparatus, and reproducing apparatus therefor | |
JP3986973B2 (en) | AV data recording method, AV data recording apparatus, data recording medium, and program | |
KR100677098B1 (en) | Recording medium recorded contents stream data thereon, recording apparatus, and reproducing apparatus therefor | |
KR100625406B1 (en) | Data processing device | |
JP4312783B2 (en) | AV data reproducing method, AV data reproducing apparatus, program, and recording medium | |
US20020097988A1 (en) | Recording medium with content stream data recorded thereon, recording apparatus, and reproducing apparatus therefor | |
JP2005063627A (en) | Data processor | |
JP2003006983A (en) | Recording/playing back method and system for optical disk |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121228 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20131230 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20141223 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20151229 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |