KR0181083B1 - 엠펙 시스템의 피시알 부호화장치 - Google Patents
엠펙 시스템의 피시알 부호화장치 Download PDFInfo
- Publication number
- KR0181083B1 KR0181083B1 KR1019960025093A KR19960025093A KR0181083B1 KR 0181083 B1 KR0181083 B1 KR 0181083B1 KR 1019960025093 A KR1019960025093 A KR 1019960025093A KR 19960025093 A KR19960025093 A KR 19960025093A KR 0181083 B1 KR0181083 B1 KR 0181083B1
- Authority
- KR
- South Korea
- Prior art keywords
- pcr
- flag
- time
- clock
- transmission
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 MPEG-2시스템 디코딩시, PCR을 효율적으로 부호화하는 PCR부호화장치에 관한 것으로서, 이를 해결하기 위하여 엠펙 권고안을 근거하여 오디오/비디오신호를 인코딩하는 엘리멘트리 스트림 인코더와, 상기 엘리멘트리 스트림 인코더의 출력을 PES패킷화하는 PES패킷타이저, 상기 PES패킷을 전송 패킷화하며, 상기 전송 패킷화된 스트림이 처음 전송버퍼에 기록되는 시점부터 상기 전송버퍼에는 처음 수신되는 PCR이 기록되는 시점까지 누적된 데이터량을 전송율로 나누어 초기 PCR를 구하며, 상기 디코더의 디코딩 시간의 기준을 맞추기 위한 PCR을 상기 전송패킷과 함께 전송채널로 출력하는 장치에 있어서, 상기 엘리멘트리 스트림 인코터의 엘리멘트리 스트림에서 오디오 및 비디오신호의 시작을 알리는 스타트코드의 검출 결과에 따라 플래그를 발생하거나 상기 디코더의 디코딩 시간의 기준을 맞추기 위하여 PCR가 기록되어 전송되는 시점부터 카운트 행한 카운트 값과 기설정된 값간의 비교에 의거하여 플래그 요구신호를 제공하는 플래그 발생수단과, 상기 PES 패킷타이저의 PES 패킷을 전송 패킷화하며, 이 전송 패킷화된 상기 전송패킷에 상기 플래그 발생수단으로부터의 플래그를 기록하는 전송 패킷타이저, 상기 초기의 PCR값과 시스템 클럭에 기초하여 상기 디코더의 디코딩 시간의 기준을 맞추기 위한 PCR을 발생하여 출력하는 인코더 클럭 시스템, 상기 인코더 클럭 시스템의 출력인 PCR를 기록하며, 상기 전송 패킷타이저의 전송패킷에서 플래그의 검출 결과에 응답하여 상기 기록된 PCR를 독출하여 상기 전송버퍼로 출력하는 검출 및 기록수단을 포함함으로써 PCR의 복호화 시간을 단축할 수 있는 효과가 있다.
Description
제1도는 MPEG-2(ISO/IEC 13818)시스템에서 전송스트림의 인코더를 개략적으로 도시한 블럭 구성도.
제2도는 엘리멘트리 스트림, 패빗타이저 및 PES패킷의 관계를 설명한 도면.
제3도 내지 제5도는 패킷구성 및 전송스트림의 구성을 도시한 도면.
제6도는 오디오/비디오 엘리멘트리 스트림을 구성하는 프로그램을 도시한 도면.
제7도는 본 발명에 따른 엠펙(MPEG)시스템의 PCR 부호화 장치도.
* 도면의 주요 부분에 대한 부호의 설명
510 : 엘리멘트리 스트림 인코더 520 : PES패킷타이저
530 : 플래그 발생수단 540 : 전송 패킷타이저
550 : 인코더클럭 시스템 560 : 검출 및 기록수단
570 : 전송버퍼
본 발명은 시스템 복호화시(특히 MPEG - 2 시스템 디코딩)복호화기에서 PCR(전송스트림에 대한 클럭정보)을 기준으로 빠른 시간내에 전송 스트림을 복호화할 수 있도록 상기 PCR을 효율적으로 부호하하여 기록하는 엠펙(MPEG)시스템의 PCR 부호화장치에 관한 것이다.
MPEG -2 전송스트림은 MPEG 시스템 스트림의 일종으로서 MPEG 시스템에 대한 종개의 기술로는 현재 국제 표준으로 정해진 MPEG - 2 IS(Internation Standard)에서 알려진 바와 같이 MPEG - 2의 공식명칭은 ITU-T Rec.H.222.0|ISO/IEC 13818이다.
MPEG - 2에는 크게 제 1 파트인 시스템과 제 2파트인 비디오 및 제 3파트인 오디오로 나누어지며, 상기 제 1 파트는 시스템 레이어 코딩(System Layer Coding)에 관한 전반적인 분야에 대한 권고안이다.
여기서, 시스템 레이어 코딩(이하, 시스템 코딩)이란 MPEG - 1이나 MPEG - 2의 데이타 압축방법으로 압축된 오디오/비디오 스트림뿐만 아니라 필요에 따라 사용자 데이터(user data)등을 멀티플렉싱하여 전송 또는 저장에 적합하도록 포맷팅하는 기술에 관한 것이다.
이와 같이 여러개의 비트 스트림을 입력받아 일련의 스트림으로 포맷팅하는 과정을 시스템 인코팅(System Encoder)이라 하고, 포맷팅한 것을 원래의 입력된 스트림의 형태로 풀어내는 과정을 시스템 디코팅(system decoder)이라 한다.
그리고 포맷팅하는 규칙을 신택스(syntax)라하며, 이 신택스를 만드는 과정에서 각 부분의 의미를 규정해 둔 것이 시맨틱스(semantics)라 한다.
MPEG시스템 IS에서는 포맷팅 규칙인 신택스, 시맨틱스를 규정하고 있으므로, 시스템 인코더에서의 인코딩시, 이와 같은 규칙에따라 비트스트림을 만들어야 하며, 시스템 디코더는 이 규칙으로 만들어진 스트림을 디코더할 수 있도록 구성되어야 한다.
상기 시스템 인코딩은 단순히 각각의 오디오/비디오 스트림을 묶어 결합시키는 기능뿐만 아니라 스트림을 디코딩하는 과정에서 시스템 디코더 내부의 버퍼제어 및 각 디코딩된 스트림들의 동기를 맞추어 재생하기 위한 몇 가지의 파라메타가 삽입되는 과정을 포함한다.
시스템 인코딩 방법에 있어서, 전송스트림 인코딩과 프로그램 스트림 인코딩의 두가지 형태가 있는데, 상기는 프로그램 스트림은 주로 저장을 위해 사용된다.
참고적으로 도면 1은 MPEG - 2 시스템에서 전송스트림의 인코더를 개략적으로 도시한 도면으로, 오디오/비디오 스트림으로부터 패킷타이저를 거쳐 전송스트림을 만드는 과정이다.
동도면에 도시된 바와 같이, 오디오, 및 비디오 인코더(11)(12)는 MPEG - 1 또는 MPEG -2 가정할 수도 있지만, MPEG-2 시스템 인코딩은 MPEG계열이 아닌 다른 인코더로 인코딩된 스트림을 배제하지 않으므로 H.261비디오 인코더나 CCITT G.721 오디오 인코더, 혹은 특정하게 제한된 사용자들만을 위해 사용하는 독특한 오디오/비디오 인코더가 될 수도 있다.
이들 비디오 및 오디오 인코더(11)(12)에서 인코딩된 데이터를 엘리멘트리 스트림이라 하는데, 이 엘리멘트리 스트림들은 일차적으로 각각의 오디오 및 비디오 패킷타이저(13)(14)를 통하여 패빗타이징된다.
이 과정을 거친 데이터를 패킷화된 엘리멘트리 스트림(Packetized Elementary Stream : PES)이라 하며, 이 PES패킷을 만드는 패킷타이저를 PES 패킷타이저라 한다.
즉, 오디오 패킷타이저(13)와 비디오 패킷타이저(14)를 거쳐 만들어진 각각의 오디오 PES 패킷, 비디오 PES패킷은 전송스트림(또는 프로그램 스트림)은 멀티플렉서(15)에 입력되고, 이 멀티플렉서(15)에서는 프로그램 스트림, 전송스트림을 만들어 출력하게 된다.
시스템 인코딩이란 결국, 엘리멘트리 스트림을 입력받아 PES 패킷타이징, 전송스트림을 만드는 과정에 해당한다. 즉, 크게 나누어 시스템 코딩과정은 두가지의 기능을 수행한다고 볼 수 있는데, PES 패킷과 TS/PS 멀티플렉싱이다.
PES를 패킷타이저는 엘리멘트리 스트림들을 PES패킷으로 만들고, TS/PS멀티플렉싱과정은 PES 패킷으로부터 TS/PS패킷을 만드는 과정에 해당한다.
이와 같이, MPEG - 2 시스템 권고안에서는 디코딩을 위하여 구현되는 스펙(spec)은 특별히 인코딩하는 과정을 따로 규정하지 않고 있으며, 때에 따라 발생할 수 있는 응용시스템에 대한 별도한 규정 또한, 없다.
따라서, 인코딩 시스템에서는 출력되는 스트림이 MPEG - 2 스트림 IS에서 규정한 디코더 스펙에 맞는 정확한 스트림을 제공해 주면 되는 것인데, 이러한 인코딩 과정에서 인코더 구성하는 방법과 효율적인 디코더를 만드는 기술등은 표준화되어 있지 않다.
도면 2는 시스템 코딩의 권고안을 참조하여 입력되는 엘리멘트리 스트림이 PES패킷화되는 과정을 도시한 것으로서, 시스템 인코더에서 부호화된 모든 정보는 패킷단위로 포맷팅된다. 제4도는 PES패킷의 구성을 도시한 것으로, PES패킷은 헤더(Header)와 패이로드(Payload)로 이루어진다.
상기 패이로드(32)부분은 엘리멘트리 스트림을 일정한 길이로 잘라서 삽입하고, 헤더(31)부분에 기타의 유용한 정보(예:시간정보, 주소, 꼬리표등)가 삽입하게 된다. 여기서, PES패킷을 만드는 장치를 패킷타이저라하고, 엘리멘트리 스트림을 입력받아 패킷을 만드는 장치를 PES패킷타이저(도면2의 참조번호 22)라 한다.
본 시스템 인코더에서의 엘리멘트리 스트림이란 패킷타이징(패킷을 만드는 과정)을 수행하기 위한 입력스트림을 의미하고, 좀더 광범위한 의미로는 어떤 형태로든 부호화된 스트림이 시스템 인코더로 입력되는 경우의 스트림을 의미한다.
시스템 인코딩 과정은 얼리멘트리 스트림을 입력받아 PES패킷을 만들고, 다시 PES 패킷을 입력받아 전송스트림 패킷이나 프로그램 스트림 패킷을 만드는 과정으로 이해할 수 있게 된다.
도면 4는 오디오 PES스트림과 비디오 PES스트림 및 전송헤더정보에 기초하여 전송 스트림화한 일예를 도시한 것으로, 전송패킷의 길이는 항상 188 바이트로 동일하게 짧기 때문에 멀티플렉싱, 리-멀티플렉싱, 디멀티플렉싱, 수신기 제작등에 있어서 용이하고 셀 로스(cell-loss)와 같은 전송오차시의 손실이 적다는 장점을 내포하고 있다.
종합적으로 볼 때 전송 패킷으로 구성되는 전송 스트림은 전송오차가 많은 채널을 이용하여 프로그램을 전송하는 방송용으로 적합하다.
이와 같이 전송스트림은 고정된 길이의 짧은 패킷들로 구성되기 때문에 다른 스트림으로의 변환이 용이하고 셀로스와 같은 손실의 영향을 최소화할 수 있다.
도면 5는 도면 3내지 도면 4에서 상술된 전송패킷과 PES패킷, 압축된 비디오 및 오디오 스트림의 관계를 개략적으로 한 것으로, 압축된 비디오 및 오디오신호에는 스타트코드를 포함하고 있음을 알 수 있다.
그리고, 도면 6은 도면1에 도시된 인코더외에 시간개념을 도시한 것으로서, 오디오/비디오 엘리멘드리 스트림으로 구성되는 프로그램을 나타낸 것이다. 오디오 신호 및 비디오 신호가 인코더(61)(62)에 의해서 부호화된 각 엘리멘드리 스트림은 PES패킷 타이저(63)(64)로 입력된다.
여기에서 시스템 클럭단(65)은 시간정보클럭(ESCR/PTS/DTS)를 발생시켜 PES패킷 타이저 (63)(64)로 제공하게 되는데, 이때, PES패킷 타이저(63)(64)에서는 상기 입력된 시간정보클럭(ESCR/PTS/DTS)를 PES패킷내의 헤더부분에 삽입함과 아울러 상기 엘리멘트리 스트림을 패킷타이징하여 TS/PS패킷다이저(또는 멀티플렉서)(66)로 입력한다.
따라서 TS/PS 패킷타이저(66)는 시스템 클럭단(65)로부터의 다른 시간정보클럭(PCR/SCR)을 전송패킷의 헤더부분에 삽입함과 아울러 상기 PES 패킷을 패킷타이징하여 TS/PS스트림으로 출력하게된다.
여기에서 시스템 클럭은 시스템 인코더를 구성하는 모든 블록에 제공되는 시스템을 클럭(System Clock)에 해당되며, 이 시스템 클럭의 주파수는 다음과 같은 제한 조건을 만족한다.
27 MHz-810 Hz ≤ 시스템_클럭_주파수 ≤ 27 MHz + 810 Hz 시스템_클럭_주파수의 시간변화율≤75 ×10-3Hz/sec ………(A)
상기 식 (A)의 의미로 보면, 시스템 클럭 주파수는 27MHz에서 +, - 810 HZ의 오차를 허용하는데, 이는 27 MHz를 기준으로 +,- 0.003%의 범위에 해당된다. 또한, 이 오차의 범위에서 동작을 한다할 지라도 클럭의 변화가 급격하게 생기면 안되는데 이를 다음 식에서 규정하고 있다. 즉, 1 초에 0.075 Hz의 변화까지를 허용하는 것으로서 1 초에 27 MHz의 클럭 주파수로 동작한다면, 360M 클럭에 한 클럭이 어긋남을 의미한다. 종합적으로 정리하면 식(A)의 규정은 시스템 클럭의 동작 주파수 범위와 동작 주파수의 변화율을 규정한 것이다.
다음으로, MPEG 시스템에서 규정하는 PCR( Program Clock Reference ; 이하 PCR)는 전송 스트림에서 프로그램에 대한 기준 시간값을 나타내며, 이 기준값은 식 (B)과 같이 계산된다.
여기에서 프로그램은 동일한 기준시간을 갖는 프로그램 엘리멘트리(엘리멘트리 스트림)들의 집합으로서 일반적으로 오디오 스트림, 비디오 스트림들이 멀티플렉싱되어 디코더에서 상호간의 동기간 맞도록 디코딩할 수 있는 스트림을 의미한다.
식(B)에서 i 는 i 번째 바이트를 의도하고 t(i)는 i번째 바이트가 시스템 타켓 디코터에 입력되는 시간으로서 이 시간값을 식(A)의 제한 조건을 만족하는 시스템_클럭_주파수로 샘플링하여 만든다.
시스템 타켓 디코더라 함은 MPEG 시스템에서 가상적인 디코더 모델을 의미하는데, 이는 시스템 규격을 정하는 과정에서 개념적인 모델을 기준으로 기술한다.
이 과정에서 PCR은 90 KHz 단위(시스템_클럭_주파수/300)로 표현되는 33비트길이의 PCR_base와 27 MHz 단위(시스템_클럭_주파수)로 표현되는 9 비트의 PCR_ext로 구성된다.
PCR(i)에서의 i는 PCR_base 데이터의 마지막 바이트를 의미하며, 상기 PCR(i)는 PCR_base 데이터의 마지막 바이트가 시스템 타켓 디코더에 입력되는 시간을 시스템_클럭_주파수로 나타낸 것이다.
PCR_Base(i) = (시스템_클럭_주파수 × t(i) DIV300)% 233
PCR_ext(i) = (PCR_base(i) × t(i) DIV 1) %300
PCR (i) = PCR_base(i) × 300 + PCR _ext(i) --------------(B)
(DIV는 정수 나누기의 연산으로 나머지들 0 으로 만드는 트런케이션(truncation)연산이며, %는 모듈러(modulo)연산으로 나머지를 취하는 연산이다.
즉, PCR는 PCR 데이터 포맷으로 시스템 인코더에서 인코딩되어 전송되며, 시스템 디코더는 이 값을 이용하여 디코더 시스템의 클럭으로 재생한다.
또한, PCR 데이터 포맷은 다음과 같다. MPEG에서 규정된 PCR 데이터는 48비트로서 3개의 필드로 구성된다.
program_clock_reference_base 33비트
reserved 6비트
program_clock_reference_extension 33비트
상기 PCR데이터는 6바이트로 구성되고, 6비트의 reserved 데이터는 의미없는 값이며, program_clock_reference_base는 MPEG - 1에서의 시스템 클럭을 표현하는 SCR(System Clock Reference)와 동일한 포맷을 갖도록 한다. MPEG - 2 시스템에서 이와 같은 구성은 MPEG-1 과의 호환성을 이루기 위함이다.
상술된 바와 같이, MPEG에서 권고안에 가초하여 PCR신호와 PCR데이터 포맷을 설명하였고 이하에서는 전송시기에 관련하여 설명한다. 즉, MPEG에서 권고한 바에 따르면, PCR의 전송시기는, 전송패킷에 삽입되어 오디오/비디오 스타트코드에 관계없이 0.1초 이내에 시스템 디코더로 재전송해야 한다.
그러면, 시스템 디코더는 수신된 PCR에 의거하여 모든 클럭을 안정화 한후에 비로서 엘리멘트리 스트림을 디코딩하게 된다. 이는 시트템 디코더의 모든 클록을 안정화시키는 PCR보다 엘리멘트리 스트림(오디오/비디오)이 먼저 수신되는 경우에는 복호화시간이 길어지는 문제점이 발생되는 것이다.
따라서, 본 발명은 상기한 문제점을 해결하기 위하여 안출한 것으로서, 본 발명의 목적은 엘리멘트리 스트림이 시작되는 시점을 기준으로하여 엘리멘트리 스트림의 시작점 이전에 이전에 PCR를 기록하는 엠펙(MPEG)시스템의 PCR부호화장치를 제공하는데 있다.
상기의 목적을 달성하기 위한 본 발명에 따르면, 엠펙 권고안을 근거하여 오디오/비디오신호를 인코딩하는 엘리멘트리 인코더와, 상기 엘리멘트리 인코더의 출력을 PES패킷화하는 PES패킷타이저, 상기 PES패킷을 전송 패킷화하며, 상기 전송 패킷화된 패킷내에 디코더의 디코딩 시간의 기준을 맞추기 위한 PCR을 소정시점에 기록하여 전송채널로 출력하는 장치에 있어서, 상기 PES 패킷타이저(520)의 출력인 PES 패킷에서 오디오 및 비디오신호의 시작을 알리는 스타트코드의 검출 결과에 따라 플래그 세팅신호를 제공하거나 상기 디코더의 디코딩 시간의 기준을 맞추기 위하여 PCR가 기록되어 전송되는 시점부터 카운트를 행한 카운트 값과 기설정된 값간의 비교에 의거하여 플래그 세팅신호를 제공하는 플래그 발생수단(530)과 ; 상기 PES 패킷타이저(520)의 출력인 PES패킷을 전송 패킷화하며, 이전송 패킷화된 상기 전송패킷에 상기 플래그 발생수단(530)로부터의 플래그 세팅신호를 기록하는 전송 패킷타어저(540)와 ; 초기의 PCR값과 시스템 클럭에 기초하여 상기 디코더의 디코딩 시간의 기준을 맞추기 위한 PCR을 발생하여 출력하는 인코더 클럭시스템(550)과; 상기 인코더 클럭 시스템(550)의 출력인 PCR를 기록하며, 상기 전송 패킷타이저(540)의 출력인 전송패킷에서 플래그 세팅신호의 검출 결과에 응답하여 상기 기록된 PCR를 독출하여 출력하는 검출 및 기록수단(560)과 ; 상기 검출 및 기록수단(560)로부터 독출되는 PCR를 상기전송 패킷타이저(540)의 출력인 전송패킷 스트림내에 기록하여 전송채널로 출력하는 전송버퍼(570)를 포함함을 특징으로 하는 엠펙(MPEG)시스템의 피시알(PCR)부호화장치가 제공된다.
이하, 예시된 도면을 참조하여 본 발명을 상세히 설명한다. 도면 7은 본 발명의 엠펙(MPEG)시스템의 피시알(PCR) 부호화장치를 도시한 블럭 구성도이다.
도면 7를 참조하면, 본 발명의 장치는 엘리멘트리 스트림 인코더(510), 패킷타이저(520), 플래그 발생수단(530), 전송 패킷타이저 (540), 인코더 클럭 시스템(550), 검출 및 기록수단(560) 및 전송버퍼(670)로 구성된다.
엘리멘트리 스트림 인코더(510)는 비디오 및 오디오신호가 MPEG 표준안을 근거로하여 인코딩되며, 인코딩된 신호를 엘리멘트리 스트림 형태로 후술하는 PES 패킷타이저(520)로 제공하도록 구성된다.
PES 패킷타이저(520)는 엘리멘트리 스트림 인코더(510)로부터 제공되는 엘리멘트리 스트림을 도면 2에 도시된 바와 같이 가변정보데이터(예:시간정보, 주소, 꼬리표등)를 포함시켜(MPEG 권고안 참조) 패킷화된 PES를 후술하는 스타트코드 검출부(531)와 전송 패킷타이저(540)로 제공되도록 구성된다.
플래그 발생수단(530)은 스타트코드 검출부(531), 시간경과 조사부(532), 플래그 처리부(533)로 구성되어져 PCR를 기록하기 위한 시점을 검출하고, 이 검출시점에 플래그를 기록할 수 있도록 플래그를 발생한다.
스타트코드 검출부(531)는 엘리멘트리 스트림 인코더(510)로부터 출력되는 엘리멘트리 스트림에서 스타트코드(전술한 바 있는 시작코드, 스타트코드등)의 검출 결과에 응답하여 플래그 요구신호를 후술하는 플래그 처리부(533)로 제공되도록 구성된다.
시간경과 조사부(532)는 후술되는 전송버퍼(570)에 PCR이 기록되어 전송되는 시점에 초기화되며, 상기 초기화된 시점부터 카운트되는 값과 기설정된 카운트 값(0.1초에 상응되는 카운트값)간의 비교 결과에 의거하여 플래그 요구신호를 후술하는 플래그 처리부(533)로 제공하도록 구성된다. 이는 이전에 전송된 PCR의 시점을 저장하고 있다가 시간을 조사(카운트)하여 엘리멘트리 스트림이 0.1초 이내에 다시 시작되지 않으면, 엘리멘트리 스트림의 시작에 관계없이 PCR을 기록하여 전송하기 위한 것이다.
플래그 처리부(533)는 스타트코드 검출부(531)의 플래그 요구신호에 응답하여 플래그를 후술하는 전송 패킷타이저(540)로 제공하며, 상기 시간경과 조사부(532)의 플래그 요구신호에 응답하여 플래그를 후술하는 전송 패킷타이저(540)로 각각 제공되도록 구성된다.
전송 패킷타이저(540)는 PES 패킷타이저(520)의 출력인 PES을 MPEG 표준안을 근거로 한 전송패킷으로 변환함과 아울러 상기 플래그 처리부(533)로부터 플래그가 인간되면, 이를 상기 전송패킷의 헤더부분에 기록하여 후술하는 검출및 기록수단과 전송버퍼(570)로 제공하도록 구성된다.
인코더 클럭 시스템(55)은 초기 PCR 검출부(551)와, 시스템 클럭부(552), 제1카운터(553), 비교기(554), 제2카운터(555), 조합 처리부(556)로 구성되며, 초기 PCR에 의해서 시시각각 변동되는 PCR을 발생시켜 출력하는 기능을 수행한다.
초기 PCR 검출부(551)는 전송 패킷타이저(540)로부터 출력되는 전송패킷 스트림이 처음 전송 버퍼(570)에 기록되는 시점부터 상기 전송 버퍼(570)에 처음 수신되는 PCR이 기록하는 시점까지 상기 누적된 데이터량을 전송율로 나누어 얻어지는 초기의 PCR값을 검출하여 그 초기의 PCR를 후술하는 제1, 2카운터(553)(555)로 제공하도록 구성된다.
시스템 클럭부(552)는 안정된 클럭을 발생시켜 후술하는 제1카운터(553)등으로 제공하도록 구성되며, 상기 발생 클럭은 27MHz-810 Hz≤시스템-클럭-주파수≤27MHz+810 Hz;시스템-클럭-주파수의 시간변화율≤75×10-3Hz/sec 조건을 만족하고 있다.
제1카운터(553)는 초기 PCR 검출부(551)에 의해서 검출되는 초기 PCR값에 기초하여 초기 값을 0으로 리셋시킬 수도 있고 또한, 0이 아닌 다른 기준치를 제공받을 수도 있다.
즉, 제1카운터(553)는 초기 PCR 검출부(551)의 리셋 또는 기준값에 의거하여 초기화되며, 상기 시스템 클럭부(552)의 한 클럭마다 9 비트 카운터가 1개씩 증가되고, 이 값은 매 시스템 클럭마다 비교기(554)와 조합 처리부(556)로 제공되며, 상기 제1카운터(553)는 모듈 300 9 비트 카운터로 이루어진다. 여기서, 모듈 300 9 비트 카운터란 0에서 299값이 되면, 다음 클럭에 다시 0으로 세트하여 주기가 300임을 의미한다.
비교기(554)는 제1카운터(543)로부터 제공되어 카운트된 값과 기준값(299의 9비트 2 진수값)과의 비교 결과, 일치되는 시점에 캐리를 발생하여 후술하는 제2카운터(555)로 출력하며, 상기 제1카운터(553)에 의해서 9비트단위의 표현될 카운트값은 후술하는 조합 처리부(556)로 제공되도록 구성된다.
제2카운터(555)는 초기 PCR 검출부(551)의 리셋 또는 기준값에 의거하여 초기화되며, 상기 비교기(554)로부터 제공되는 캐리를 카운트하고, 이 카운트된 값(PCR-base(90KHz단위)을 후술하는 조합 처리부(556)로 제공되도록 구성되며, 상기 제2카운터(555)는 33 비트 카운터로 이루어진다. 여기에서, 33비트 카운터는 시스템 클럭의 매 300 클럭마다 한 번씩 증가하게 연산하게 된다.
조합 처리부(546)는 6비트단위의 추가비트를 구비하며, 상기 비교기(554)의 카운트값과 상기 추가비트(reserved bits) 및 상기 제2카운트(555)의 카운트 값을 논리 조합하여 48비트단위 PCR를 후술하는 검출 및 기록수단(560)로 제공되도록 구성된다.
검출 및 기록수단(560)은 플래그 검출부(561), PCR 메모리(562)로 구성되어져 계속하여 변환되는 PCR를 저장하고 있다가 전송 스트림내의 플래그가 검출시점에 저장되어 있던 PCR를 독출(복원)하도록 이루어진다.
플래그 검출부(561)는 전송 패킷타이저(540)로부터 출력되는 전송패킷의 헤더부분에서 플래그의 존재 여부를 검출하고, 이에 따른 독출신호를 후술하는 PCR 메모리(562)으로 제공하도록 구성된다.
PCR 메모리(562)는 인코더 클럭 시스템(550)으로부터 제공되는 PCR를 저장하고 있다가 상기 플래그 검출부(561)로부터 플래그가 검출될 때, 상기 PCR 메모리(562)에 저장되어 있던 PCR를 독출하여 후술하는 전송버퍼(570)로 출력하도록 구성된다.
전송버퍼(570)는 검출 및 기록수단(560)로부터 독출되는 PCR를 전송 패킷타이저(540)의 출력인 전송패킷 스트림내에 기록하여 전송채널로 출력하도록 구성되며, 상기 전송버퍼(570)는 상기 전송패킷화된 스트림이 처음 전송버퍼(570)에 기록되는 시점부터 상기 전송버퍼(570)에 처음 수신되는 PCR이 기록되는 시점까지 누적된 데이터량을 전송율로 나누어 초기 PCR를 구하게 된다.
상기와 같이 구성된 본 발영을 바람직한 실시예를 들어 상세히 설명한다.
먼저, 초기 PCR 검출부(551)는 전송 패킷타이저(540)로부터 출력되는 전송패킷 스트림이 처음 전송 버퍼(570)에 기록되는 시점부터 전송 버퍼(570)에 처음 수신되는 PCR이 기록하는 시점까지 상기 누적된 데이터량을 전송율로 나누어 얻어지는 초기의 PCR을, 제 1,2 카운터(553)(555)로 로딩한후 이 값을 시스템 인코더 클럭부(552)의 동작에 따라 카운터 값이 증가된다.
인코더 클럭 시스템(550)의 시스템 클럭부(552)은 안정된 클럭을 발생시켜서 제 1 카운터(553)등으로 제공하며, 이와 동시에 클럭과 동기를 맞추어 동작된다. 즉, 시스템 클럭부(552)은, 「27 MHz-810 Hz ≤ 시스템_클럭_주파수≤ 27MHz + 810 Hz, 시스템_클럭_주파수의 시간 변화율≤75×10-13Hz/sez」조건을 만족하게 된다.
예컨데, 시스템 클럭부(552)에서의 시스템 클럭이 27MHc인 경우에는 매 클럭마다 동작하는 카운트인 27M 클럭의 값이 0.1 초에 해당함으로, 이 값이 되는 지를 보고 시간경과를 조사하게 된다.
그리고 전송버퍼(570)의 동작에 연동되어 제 1는 카운터(553)와 제 2 카운터(555)의 초기동작을 수행하며, 이로부터의 시스템 클럭부(552)는 상술된바 있는 조건의 범위내에서 안정된 클럭(27MHz)을 발생시켜 제 1 카운터(553)로 제공하게 된다.
제 1 카운터(553)는 초기 PCR검출부(551)에 의해서 검출되는 초기 PCR에 기초하여 상기 클럭부(552)로부터 시스템 클럭을 카운트하고, 이로부터 9 비트단위의 PCR_ext에 관련되어 카운트된 값을 출력하는 비교기(554)로 제공하게 된다.
비교기(554)는 제 1카운터(553)로부터의 9비트단위의 PCR_ext 관련되어 카운트된 값과 기설정된 기준값(299)의 비교 결과, 일치되는 시점에 캐리를 발생함과 아울러 상기 캐리는 제 2카운터(555)로 제공하고, 상기 9 비트단위의 PCR_ext에 관련되어 카운트된 값은 조합처리부(556)로 제공된다.
제 2카운터(555)는 비교기(554)로부터 제공되는 캐리를 카운트하며,이로부터 33비트단위의 PCR_base 관련되어 카운트된 값을 조합처리부(556)로 제공된다.
조합 처리부(556)는 비교부(554)로부터 출력되는 9 비트단위의 PCR_ext관련되어 카운트된 값과 6비트단위의 추가비트(reserved bits)및 상기 제 2카운터(555)로부터 출력되는 33비트단위의 PCR_base에 관련되어 카운트된 값을 논리 조합하여 발생되는 48비트단위의 PCR을 , PCR메모리(562)로 제공하게 된다.
이와 같은 동작은 계속적으로 행하여 상기 48비트단위의 PCR을 상기PCR 메모리(562)로 기억하게 된다.
한편, 엘리멘트리 스트림 인코더(510)는 비디오 및 오디오 신호등을 MPEG 권고안을 근거로하여 인코딩하여 엘리멘트리 스트림 형태로 변환하고, 이를 PES패킷타이저(520)로 제공하게 된다.
PES패킷타이저(520)는 엘리멘트리 스트림 인코더(510)로부터 제공되는 엘리멘트리 스트림에 관련한 정보를 기록하고, 완성된 PES(도면 3 참조)패킷을 스타트코드 검출부(531)와 전송패킷 타이저(540)로 제공하게 된다.
스타트코드 검출부(532)는 PES 패킷타이저(520)로부터 출력되는 PES에서 스타트코드가 검출되면, 플래그 요구신호를 플래그 처리부(533)로 제공하게 된다. 여기서, 스타트코드가 검출은 오디오 프레임 스타트코드나 비디오 시작 코드로 판별가능하게 된다. 플래그 처리부9533)은 스타트코드검출부(531)의 플래그 요구신호에 응답하여 플래그를 전송 패킷타이저(540)로 제공하게 된다.
따라서 전송 패킷타이저(540)는 PES패킷타이저(520)로부터 출력되는 PES패킷을 전송 스트림화하며, 이로부터 전송 스트림화된 전송 패킷의 헤더 부분에 상기 플래그 처리부(533) 로부터 제공되는 플래그를 기록한 후 플래그 검출부(561)와 전송버퍼로 제공된다.
보다 상세하게는 PES패킷을 전송 스트림(패킷)의 패이로드 부분에 기록하고, 동시에 프로그램에 관련된 시간 정보인 PCR을, 전송 스트림의 헤더(adatational header)부분에 1 로 만들어 기록된다. 이어서, 플래그 검출부(561)는 전송패킷 타이저(540)로부터 제공되는 전송스트림의 헤더부분에서 플래그(1)가 가록되었는지를 조사하게 된다. 조사결과 플래그가 검출되면, PCR메모리(562)에는 기록되어 있던 디코더에서의 시간의 기준을 맞추기 위한 PCR을 독출하여 상술된 바 있는 전송버퍼(570)로 제공하게 된다.
따라서, 전송버퍼(570)는 전송패킷 타이저(540)로부터 제공되는 전송스트림의 헤더부분에 PCR를 기록한 다음 이를 미도시된 디코더로 출력하게 된다.
엘리멘트리 스트림 인코딩 과정이 끝나면, 엘리멘트리 스트림이 PES패킷 타이저(520)로 입력되고, 이후에 패킷 타이징된 PES은 전송 패킷타이저(540) 과정을 거치면서 시스템 인코딩이 완료되면, 이 데이터는 전송버퍼(570)로 입력되어 전송채널로의 전송을 기다린다.
상기 전송버퍼(570)에 존재하는 전송패킷은 일정시간 후 전송채널로 전송되면서 동시에 전송버퍼(570)의 상태를 클럭 시스템(551)에 제공한다.
이 과정에서 전송버퍼(570)의 버퍼레벨은 곧, 경과시간을 의미하므로 이 전송버퍼를 이용하여 초기의 전송버퍼의 PCR값을 계산하는데 이용된다. 예컨데, PCR(i)의 값은 i 번째의 데이터가 복호화기에 입력되는 시점을 나타내는 값인데, 이 값은 실제의 복호화기(또는 디코더)에 입력되는 절대시간을 기술할 수 없다. 이는 현재 전송되는 있는 프로그램이 언제 어느 순간에 어떠한 복호화기로 입력될 지는 절대적인 시간으로 표현할 수 없기 때문이다.
따라서, 시스템 부호화기에서는 상대적인 기준시간으로서 PCR를 발생하면서 이 값에 대한 기준시점을 잡아야 한다. 즉, 프로그램에는 PCR과 같은 프로그램 기준시간이 있는가 하면, 엘리멘트리 스트림이 복호화기에서 디코딩해야하는 시점인 DTS(Decoding Time Stamp)및 재생하는 시점을 알려주는 PTS(Presenatation Time Stamp)등이 있다.
이와 같은 값들은 PES패킷 헤더부분으로 기록되어 전송되는데, 복호화기의 수신단에서는 이 값을 복호화한 후 PCR데이터와 비교하여 디코딩과정이나 재생동작을 수행한다.
또한, 시간경과 조사부(532)는 PCR가 기록되어 전송되는 시점에 초기화한 후, 이로부터 카운트를 행하게 된다. 그리고 기설정된 카운트값(예:0.1초)과 카운트되어지는 값을 비교하여 일치되는 시점에 플래그 요구신호를 플래그 처리부(533)로 제공하게 된다.
보다 상세히 설명하면, PCR 는 최대 0.1초 이내에 재전송되어야 한다. 이는 복호화기의 수신단에서 클럭 시스템을 안정화하기 위한 조건임으로 (MPEG 권고안임), 시간경과 조사부(532)는 바로 이전에 PCR데이터가 있으면, 이 시점으로부터 시간을 조사(카운트)하여 0.1초가 되면, 이시점에서 플래그 요구신호(PCR)를 주어 PCR를 기록하여 전송할 수 있게 된다.
예를 들면, 엘리멘트리 스트림 스타트코드가 현재의 PCR데이터를 기록한 시점으로부터 0.1초 이후에 있게 되는 경우에는 상기 시간 경과 조사부(532)의 제어동작에 따라서 기록된다.
따라서, 플래그 처리부(533)는 시간경과 조사부(532)의 플래그 요구신호에 응답하는 플래그를 전송 패킷타이저(540)로 제공함과 더불어 PES패킷타이저(520)로부터 출력되는 PES화 되고, 전송스트림화된 전송스트림의 헤더 부분에 플래그를 기록하게 되는 것이다.
상기 플래그의는 기록시점은, 엘리멘트리 스트림 스타트코드보다 빠른 시점에 전송버퍼(570)에 기록하게 된다. 이는 엘리멘트리 스트림 스타트코드가 시작되기 이전에 PCR 데이터가 전송되어야 복호화기에서 PCR데이터를 먼저 복호화를 행하여 클럭시스템을 안정화한 후 엘리멘트리 스트림을 디코딩하기 위한 것이다.
이후에, 전송스트림은 상술된 바와 같이 전송 패킷타이저(540)및 전송 버퍼(570)를 통해 채널로 출력하게 된다. 즉, 이와 같은 동작을 반복하여 PCR을 함께 기록하여 출력하게 되는 것이다.
이상에서 설명한 이와 같이 본 발명은 MPEG 시스템에서 규정하는 PCR데이더의 최대 전송시간 제한조건을 만족하면서 복호화 시간을 단축할 수 있고, 엘리멘트리는 스트림의 시작과 보조를 맞추면서 부호화기의 클럭과 동기를 일치시켜 PCR를 기록할 수 있는 효과가 있다.
Claims (5)
- 엠펙 권고안을 근거하여 오디오/비디오 신호를 인코딩하는 엘리멘트리 스트림 인코더와, 상기 엘리멘트리 스트림 인코더의 출력을 PES패킷화하는 PES패킷타이저, 상기 PES패킷을 전송 패킷화하며, 상기 전송 패킷화된 스트림이 처음 전송버퍼에 기록되는 시점부터 상기 전송버퍼에 처음 수신되는 PCR이 기록되는 시점까지 누적된 데이터량을 전송율로 나누어 초기 PCR를 구하며, 상기는 디코더의 디코딩 시간의 기준을 맞추기 위한 PCR을 상기 전송패킷과 함께 전송채널로 출력하는 장치에 있어서, 상기 엘리멘트리 스트림 인코더(510)의 출력인 엘리멘트리 스트림에서 오디오 및 비디오신호의 시작을 알리는 스타트코드의 검출 결과에 따라 플래그를 발생하거나 상기 디코더의 디코딩 시간의 기준을 맞추기 위하여 PCR가 기록되어 전송되는 시점부터 카운트를 행한 카운트 값과 기설정된 값간의 비교에 의거하여 플래그 요구신호를 제공하는 플래그 발생수단(530)과 ; 상기 PES패킷타이저(520)의 출력인 PES패킷을 전송 패킷화하며, 이 전송 패킷화된 상기 전송패킷에 상기는 플래그 발생수단(530)으로부터의 플래그를 기록하는 전송 패킷타이저(540)와 ; 상기 초기의 PCR 값과 시스템 클럭에 기초하여 상기 디코더의 디코딩 시간의 기준을 맞추기 위한 PCR을 발생하여 출력하는 인코더 클럭 시스템(550)과 ; 상기 인코더 클럭 시스템(550)의 출력인 PCR를 기록하며, 상기 전송 패킷타이저(540)의 출력인 전송패킷에서 플래그의 검출 결과에 응답하여 상기 기록된 PCR를 독출하여 상기 전송버퍼(570)로 출력하는 검출 및 기록수단(560)를 포함함을 특징으로 하는 엠펙(MPEG)시스템의 피시알(PCR)부호화장치.
- 제1항에 있어서, 상기 플래그 발생수단(530)은, 상기 엘리멘트리 스트림 인코더(510)로부터 출력되는 엘리멘트리 스트림에서 스타트코드의 검출 결과에 응답하여 플래그 요구신호를 제공하는 스타트코드 검출부(531)와 ; 상기 전송버퍼(570)에 PCR가 기록되어 전송되는 시점에 초기화되며 해야 이초기화된 시점부터 카운트되는 값과 기설정된 카운트 값이 일치되는 시점에 플래그 요구신호를 제공하는 시간경과 조사부(532)와 ; 상기는 스타트코드 검출부(531)로부터 제공되는 플래그 요구신호에 응답하여 플래그를 상기 전송 패킷타이저(540)로 제공하거나, 상기 시간경과 조사부(532)로부터의 플래그 요구신호에 응답하여 플래그를 상기 전송 패킷타이저(540)로 제공하는 플래그 처리부(533)로 구성됨을 특징으로하는 엠펙(MPEG)시스템의 피시알(PCR)부호화장치.
- 제1항에 있어서, 상기 검출및 기록수단(560)은, 상기 전송 패킷타이저(540)로부터 출력되는 전송스트림에서 플래그의 존재 여부를 검출하여 그에 따른 독출신호를 제공하는 플래그 검출부(561)와 ; 상기 인코더 클럭 시스템(550)로부터 제공되는 PCR를 저장하고 있다가 상기는 플래그 검출부(561)로부터의 플래그 검출에 응답하여 상기 저장되어 있던 PCR를 독출하여 상기 전송버퍼(570)로 출력하는 PCR메모리(562)로 구성됨을 특징으로 하는 엠펙(MPEG)시스템의 피시알(PCR)부호화장치.
- 제 3 항에 있어서, 상기 플래그는 전송패킷 스트림의 헤더 부분에 기록됨을 특징으로 하는 엠펙(MPEG)시스템의 피시알(PCR)부호화장치.
- 제 1 항내지 제 4항중 어느 한 항에 있어서, 상기 인코더 클럭 시스템(550)은, 상기 전송버퍼(570)로부터 초기 PCR을 검출하며, 이 검출결과로서, 리셋신호 또는 기설정된 기준값을 출력하는 초기 PCR검출부(551)와 ; 시스템 인코터의 온 동작에 따라서 초기화되며, 「27 MHz-810 Hz ≤시스템_클럭_주파수≤27MHz+810Hz, 시스템_클럭_주파수의 시간 변화율≤75×10-3Hz/sec」조건을 만족하는 시스템 클럭을 출력하는 시스템 클럭부(552)와 ; 상기 초기 PCR검출부(551)의 리셋신호 또는 기준값에 의거하여 초기화되며, 상기는 시스템 클럭부(552)의 한 클럭마다 9비트 카운트가 1씩 증가되면서 카운트된 값을 출력하는 제 1카운터(553)와 ; 상기 제 1카운터(553)에 의해서 카운트된 값과 기설정된 기준값과의 비교 결과, 일치되는 시점에 캐리를 발생시켜 출력하며, 상기 제 1카운터(553)에 의해서 9 비트단위의 PCR_ext로 표현될 카운트 값을 출력하는 비교기(554)와 ; 상기 초기 PCR검출부(551)의 리셋신호 또는 기준값에는 의거하여 초기화되며, 상기 비교기(554)의 캐리를 카운트하여, 33비트단위의 PCR_base로 표현될 카운트값을 출력하는 제 2카운터(555)와 ; 상기 추가비트를 구비하며, 상기 비교부(554)의 카운트값과 상기 추가비트 및 상기 제 2카운트(555)의 카운트 값을 논리조합하여 48비트단위의 PCR을 상기 PCR메모리(562)로 제공하는 조합 처리부(556)를 구비함을 특징으로 하는 엠펙(MPEG)시스템의 피시알(PCR)부호화장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960025093A KR0181083B1 (ko) | 1996-06-28 | 1996-06-28 | 엠펙 시스템의 피시알 부호화장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960025093A KR0181083B1 (ko) | 1996-06-28 | 1996-06-28 | 엠펙 시스템의 피시알 부호화장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR980006944A KR980006944A (ko) | 1998-03-30 |
KR0181083B1 true KR0181083B1 (ko) | 1999-04-01 |
Family
ID=19464277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960025093A KR0181083B1 (ko) | 1996-06-28 | 1996-06-28 | 엠펙 시스템의 피시알 부호화장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0181083B1 (ko) |
-
1996
- 1996-06-28 KR KR1019960025093A patent/KR0181083B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR980006944A (ko) | 1998-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1976448B (zh) | 用于音频和视频传输的方法和系统 | |
RU2273111C2 (ru) | Способ преобразования пакетизированного потока информационных сигналов в поток информационных сигналов с временными отметками и наоборот | |
US5621772A (en) | Hysteretic synchronization system for MPEG audio frame decoder | |
US5838678A (en) | Method and device for preprocessing streams of encoded data to facilitate decoding streams back-to back | |
JP3666625B2 (ja) | データ記録方法およびデータ記録装置 | |
WO1999016196A1 (en) | Device and method for generating encoded stream, system and method for transmitting data, and system and method for edition | |
JP2004508777A (ja) | ビデオマテリアルとデータの結合 | |
KR20010095264A (ko) | 데이터 다중화 장치, 데이터 다중화 방법, 및 기록 매체 | |
KR980010748A (ko) | 피다중화 데이터 생성장치, 인코딩된 데이터 재생 장치, 클럭 변환 장치, 인코딩된 데이터 기록 매체, 인코딩된 데이터 전송 매체, 피다중화 데이터 생성 방법, 인코딩된 데이터 재생 방법 및 클럭 변환 방법 | |
US6731658B1 (en) | Data recording method and data recording apparatus | |
CN118192925A (zh) | 即时播放帧(ipf)的生成、传输及处理的方法、设备及系统 | |
JP4339524B2 (ja) | データ伝送方法、データ伝送装置、データ受信方法、データ受信装置、データ記録方法およびデータ記録装置 | |
US7346054B2 (en) | Method and system for co-relating transport packets on different channels using a cyclic redundancy check (CRC) | |
CN100416689C (zh) | 再现设备和方法以及记录介质 | |
JPH0730886A (ja) | 画像および音声信号処理方法とその装置 | |
KR0181082B1 (ko) | 엠펙 시스템의 피티에스 부호화장치 | |
US8155506B2 (en) | System and method for transport PID version check | |
KR0181083B1 (ko) | 엠펙 시스템의 피시알 부호화장치 | |
JP2000308023A (ja) | データ伝送方法およびデータ伝送装置 | |
JP2005151463A (ja) | ストリームデータ受信装置およびストリームデータ受信方法 | |
KR0177314B1 (ko) | 엠펙시스템에서의 전송패킷 보호장치 | |
KR0181080B1 (ko) | 엠펙 시스템의 이에스씨알 부호화장치 | |
KR0181084B1 (ko) | 엠펙 시스템의 디티에스 부호화장치 | |
US6701065B1 (en) | Methods and apparatus for buffering information prior to decoding | |
KR0181081B1 (ko) | 시스템 복호화기의 이에스씨알 재생장치 |
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: 20121203 Year of fee payment: 15 |
|
LAPS | Lapse due to unpaid annual fee |