KR20010050811A - Apparatus and Method for Processing Timing - Google Patents
Apparatus and Method for Processing Timing Download PDFInfo
- Publication number
- KR20010050811A KR20010050811A KR1020000057910A KR20000057910A KR20010050811A KR 20010050811 A KR20010050811 A KR 20010050811A KR 1020000057910 A KR1020000057910 A KR 1020000057910A KR 20000057910 A KR20000057910 A KR 20000057910A KR 20010050811 A KR20010050811 A KR 20010050811A
- Authority
- KR
- South Korea
- Prior art keywords
- video
- audio
- dts
- information
- timing
- Prior art date
Links
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving management of server-side video buffer
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2368—Multiplexing of audio and video streams
-
- 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- 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/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
-
- 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/439—Processing of audio elementary streams
- H04N21/4392—Processing of audio elementary streams involving audio buffer management
-
- 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
Abstract
Description
본 발명은 연관 시스템과 독립적인 타이밍 처리 장치 및 그 방법에 관한 것으로, 특히 멀티미디어 데이터 처리 시스템에서 요소시스템간의 인터페이스를 단순하게 하고 요소시스템과 독립적으로 타이밍 동기를 처리하는 연관 시스템과 독립적인 타이밍 처리 장치 및 그 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a timing processing device and a method thereof independent of an associative system. In particular, the present invention relates to a timing processing device independent of an associative system that simplifies the interface between element systems and processes timing synchronization independently of the element system in a multimedia data processing system. And to a method thereof.
본 발명은 엠펙(MPEG : Motion Picture Expert Group, MPEG-1 및 MPEG-2) 시스템 등과 같은 멀티미디어 데이터 처리 시스템의 비디오/오디오 타이밍 동기를 위한 다중화기 및 역다중화기에서의 타이밍 처리에 관한 것으로서, 종래 기술은 다중화기가 타이밍 정보를 계산함에 있어 비디오인코더와 오디오인코더를 제어하며 동작중에 변하는 파라미터를 별도의 신호선을 통해 받아들였다. 또한, 역다중화기는 타이밍동기를 위해 비디오디코더 및 오디오디코더로 타이밍정보를 전달하고 이들 요소디코더는 타이밍동기를 위한 별도의 하드웨어를 갖추는 것을 요구하였다. 이에 따라 타이밍처리시스템(다중화기와 역다중화기)과 요소시스템과의 인터페이스가 복잡하였으며, 요소시스템의 사양 결정에 타이밍처리시스템의 요구를 반영해야 하는 등의 문제점이 있었다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to timing processing in a multiplexer and demultiplexer for video / audio timing synchronization of a multimedia data processing system such as MPEG (Motion Picture Expert Group, MPEG-1 and MPEG-2) system. The multiplexer controls the video and audio encoders in calculating timing information and accepts parameters that change during operation through separate signal lines. In addition, the demultiplexer transmits timing information to the video decoder and the audio decoder for timing synchronization, and these element decoders require separate hardware for timing synchronization. As a result, the interface between the timing processing system (multiplexer and demultiplexer) and the element system is complicated, and there is a problem such that the requirements of the timing processing system must be reflected in the specification of the element system.
본 발명은 상기 문제점을 해결하기 위하여 안출된 것으로, 멀티미디어 데이터 처리 시스템에서 시스템의 다른 요소들과는 독립적으로 데이터의 타이밍 동기를 처리하는 연관 시스템과 독립적인 타이밍 처리 장치 및 그 방법을 제공하는데 그 목적이 있다.Disclosure of Invention The present invention has been made to solve the above problems, and an object thereof is to provide a timing processing apparatus and a method independent of an associated system which processes timing synchronization of data independently of other elements of the system in a multimedia data processing system. .
즉, 본 발명은, 요소시스템과의 인터페이스를 단순하게 하고 요소시스템이 독자적으로 구현될 수 있도록 하기 위해, 다중화기에서는 요소시스템의 동작전에 설정되는 고정값 파라미터와 요소스트림에 포함되어 있는 타이밍 파라미터를 이용하여 타이밍 정보를 산출하고, 역다중화기에서는 비디오스트림과 오디오스트림의 요소디코더로의 출력 시점을 제어하여 동기를 맞추는, 연관 시스템과 독립적인 타이밍 처리 장치 및 그 방법을 제공하는데 그 목적이 있다.That is, in the present invention, in order to simplify the interface with the element system and allow the element system to be independently implemented, the multiplexer uses a fixed value parameter set before the operation of the element system and a timing parameter included in the element stream. It is an object of the present invention to provide a timing processing apparatus and a method independent of an associated system that calculate timing information by using the demultiplexer and synchronize the timing of output of the video stream and the audio stream to the element decoder.
도 1 은 본 발명을 설명하기 위한 엠펙(MPEG) 코덱 지연 모델의 일예시도.1 is an exemplary view of an MPEG codec delay model for explaining the present invention.
도 2 는 본 발명에 따른 다중화기와 역다중화기를 이용한 타이밍 처리 장치 및 그 방법에 대한 일실시예 구성도.2 is a block diagram illustrating a timing processing device and method using a multiplexer and a demultiplexer according to the present invention.
* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings
110 : 비디오인코더 120 : 오디오인코더110: video encoder 120: audio encoder
130 : 다중화기 140 : 역다중화기130: multiplexer 140: demultiplexer
150 : 비디오디코더 160 : 오디오디코더150: video decoder 160: audio decoder
상기 목적을 달성하기 위한 본 발명의 장치는, 연관 시스템과 독립적인 타이밍 처리 장치에 있어서, 다중화 전략에 따라 입력된 비디오 정보를 버퍼링하기 위한 비디오 버퍼; 오디오 정보와 비디오 정보의 동기화 처리를 위해 입력된 오디오 정보를 소정 시간 동안 지연시키기 위한 지연 버퍼; 다중화 전략에 따라 상기 지연 버퍼로부터의 오디오 정보를 버퍼링하기 위한 오디오 버퍼; 및 상기 비디오 버퍼와 상기 오디오 버퍼로부터 비디오 정보와 오디오 정보를 전달받아 동작전에 결정되는 파라미터, 요소비트스트림 속의 타이밍정보, 그리고 자체적으로 결정할 수 있는 정보를 이용하여 타이밍정보를 구하고 다중화 처리를 수행하기 위한 다중 처리수단을 포함하는 것을 특징으로 한다.An apparatus of the present invention for achieving the above object comprises: a timing processing apparatus independent of an associating system, comprising: a video buffer for buffering input video information according to a multiplexing strategy; A delay buffer for delaying the input audio information for a predetermined time for the synchronization processing of the audio information and the video information; An audio buffer for buffering audio information from the delay buffer according to a multiplexing strategy; And receiving video information and audio information from the video buffer and the audio buffer to obtain timing information by using parameters determined before operation, timing information in an element bitstream, and information that can be determined by itself. It characterized in that it comprises multiple processing means.
또한, 본 발명의 다른 장치는, 연관 시스템과 독립적인 타이밍 처리 장치에 있어서, 다중화기로부터의 비트스트림이 통신 매체를 통해 전달될 때 포함되는 지터의 보상을 처리하기 위한 지터 버퍼; 비디오와 오디오의 출력을 동기시키기 위해 요소스트림의 출력시점을 산출하고 제어하기 위한 역다중 처리수단; 가상의 디코더(STD)를 만족하는 어떠한 비트스트림도 역다중화할 수 있는 크기를 가지며 타이밍 동기에 상관없이 비디오 정보를 역다중화 처리할 수 있도록 하는 비디오 버퍼; 가상의 디코더(STD)를 만족하는 어떠한 비트스트림도 역다중화할 수 있는 크기를 가지며 타이밍 동기에 상관없이 오디오 정보를 역다중화 처리할 수 있도록 하는 오디오 버퍼; 및 비디오와 오디오의 출력 동기를 맞추기 위해 상기 역다중 처리수단의 제어에 따라 비디오 정보 또는 오디오 정보를 선택적으로 소정시간동안 지연시키기 위한 지연 버퍼를 포함하는 것을 특징으로 한다.Another apparatus of the present invention is a timing processing apparatus independent of an associated system, comprising: a jitter buffer for processing compensation of jitter included when a bitstream from a multiplexer is passed through a communication medium; Demultiplex processing means for calculating and controlling an output time of the element stream to synchronize output of video and audio; A video buffer having a size capable of demultiplexing any bitstream satisfying the virtual decoder STD and allowing demultiplexing of video information regardless of timing synchronization; An audio buffer having a size capable of demultiplexing any bitstream satisfying the virtual decoder STD and allowing demultiplexing of audio information regardless of timing synchronization; And a delay buffer for selectively delaying the video information or the audio information for a predetermined time according to the control of the demultiplexing means in order to synchronize the output of the video and the audio.
또한, 본 발명의 또 다른 장치는, 연관 시스템과 독립적인 타이밍 처리 장치에 있어서, 요소인코더를 제어함이 없이, 동작전에 결정되는 파라미터와 요소비트스트림 속의 타이밍정보, 그리고 자체적으로 결정할 수 있는 정보를 이용하여 타이밍정보(DTS, PTS)를 산출하여 타이밍을 처리하는 다중화 처리수단; 및 획득된 요소디코딩에서 출력까지의 디코딩지연시간, 타이밍 정보 및 브이비브이(vbv) 지연시간을 바탕으로 요소스트림의 출력 시점을 산출하여 비디오와 오디오를 동기시키며 요소스트림의 출력시점을 제어하기 위한 역다중화 처리수단을 포함주는 것을 특징으로 한다.In addition, another apparatus of the present invention is a timing processing apparatus that is independent of an associated system, wherein the parameters determined before operation, timing information in the element bitstream, and information that can be determined on its own are controlled without controlling the element encoder. Multiplexing processing means for calculating timing information (DTS, PTS) by using the multiplication processing means; And calculates the output time of the element stream based on the obtained decoding delay time from the element decoding to the output, timing information, and vbv delay time to synchronize video and audio and control the output time of the element stream. It is characterized by including the multiplexing processing means.
한편, 본 발명의 방법은, 연관 시스템과 독립적인 타이밍 처리 장치에 적용되는 타이밍 처리 방법에 있어서, 동작전에 결정되는 파라미터(M, Tvideo, dVE, dAE, dVB)와 입력되는 요소비트스트림 속의 타이밍정보(tI video(j), tI audio(j), dvbv(j)), 그리고 자체적으로 결정할 수 있는 정보(dsys)를 획득하는 제 1 단계; 획득된 정보(tI video(j), dvbv(j), dsys)를 바탕으로 비디오에 대한 디코딩 타임 정보(DTS : Decoding Time Stamp)를 산출하는 제 2 단계; 처리 비디오의 타입에 따라 산출된 비디오 디코딩 타임 정보(DTSvideo) 또는 비디오 디코딩 타임 정보(DTSvideo)에 최대 프레임 간격(M)과 프레임주기(Tvideo)를 곱하여 얻은 시간(M*Tvideo)을 더한 값을 비디오 프리젠테이션 타임 정보(PTS : Presentation Time Stamp)로 판단하는 제 3 단계; 및 획득된 정보(tI audio(j), dVE, dAE, dVB, M*Tvideo, dsys)에 대해 오디오 인코딩 지연시간(dAE)을 제외한 정보의 값을 더하고 오디오 인코딩 지연시간(dAE)을 제하여 오디오에 대한 타이밍 정보(DTS, PTS)를 산출하는 제 4 단계를 포함하는 것을 특징으로 한다.On the other hand, the method of the present invention is a timing processing method applied to a timing processing device independent of the associated system, the parameters (M, T video , d VE , d AE , d VB ) determined before operation and the input element bits A first step of obtaining timing information (t I video (j), t I audio (j), d vbv (j)) in the stream , and information that can be determined by itself (d sys ); A second step of calculating decoding time information (DTS: Decoding Time Stamp) for the video based on the obtained information t i video (j), d vbv (j), d sys ; M * T video obtained by multiplying the maximum frame interval (M) and the frame period (T video ) by the video decoding time information (DTS video ) or the video decoding time information (DTS video ) calculated according to the type of processed video. A third step of determining the added value as the video presentation time information (PTS); And for the obtained information (t I audio (j), d VE , d AE , d VB , M * T video , d sys ), adding the value of the information excluding the audio encoding delay time (d AE ) and the audio encoding delay time. and d) calculating a timing information (DTS, PTS) for audio by subtracting (d AE ).
또한, 본 발명의 다른 방법은, 연관 시스템과 독립적인 타이밍 처리 장치에 적용되는 타이밍 처리 방법에 있어서, 역다중화 처리에 있어 요소스트림의 출력시점을 제어하기 위해 비디오 디코딩 지연시간(dVD)이 오디오 디코딩 지연시간(dAD)보다 큰지를 판단하는 제 1 단계; 상기 제 1 단계의 판단 결과, 비디오 디코딩 지연시간(dVD)이 더 크면, 획득된 비디오 디코딩 타임 정보(DTSvideo)에서 브이비브이(VBV) 지연시간(dVBV)을 제하여 비디오 출력시간(tO video)을 산출하고 오디오 디코딩 타임 정보(DTSaudeo)에 비디오 디코딩 지연시간(dVD)에서 오디오 디코딩 지연시간(dAD)을 제한 값을 더하여 오디오 출력시간(tO audeo)을 산출하는 제 2 단계; 및 상기 제 1 단계의 판단 결과, 비디오 디코딩 지연시간(dVD)이 크지 않으면, 획득된 비디오 디코딩 타임 정보(DTSvideo)에서 브이비브이(VBV) 지연시간(dVBV)을 제하고 비디오 디코딩 지연시간(dVD)에서 오디오 디코딩 지연시간(dAD)을 제한 값을 더하여 비디오 출력시간(tO video)을 산출하고 오디오 디코딩 타임 정보(DTSaudeo)를 오디오 출력시간(tO audeo)을 산출하는 제 3 단계를 포함하는 것을 특징으로 한다.In addition, another method of the present invention is a timing processing method applied to a timing processing apparatus independent of an associated system, wherein the video decoding delay time d VD is controlled to control an output time of an element stream in a demultiplexing process. Determining whether the decoding delay time is greater than d AD ; As a result of the determination of the first step, if the video decoding delay time d VD is greater, the video output time t is subtracted from the obtained video decoding time information DTS video by subtracting the VBV delay time d VBV . second calculating a O video), and calculating the audio decoding time information (DTS audeo) video decode delay time (d VD) audio output time (t O audeo) plus limit value for an audio decoding delay (d AD) in the step; And when the video decoding delay time d VD is not large as a result of the determination of the first step, the VBV delay time d VBV is subtracted from the obtained video decoding time information DTS video and the video decoding delay time is A video output time t O video is calculated by adding the limit value of the audio decoding delay time d AD at (d VD ), and the audio output time t o audeo is calculated from the audio decoding time information DTS audeo . Characterized in that it comprises three steps.
이처럼 본 발명은, 비디오인코더, 오디오인코더, 다중화기로 구성되는 MPEG(MPEG-1 및 MPEG-2) 인코더와 역다중화기, 비디오디코더, 오디오디코더로 구성되는 MPEG 디코더에서 비디오와 오디오의 디코더 최종 출력이 동기(Lip Sync)되도록 해주는 다중화기와 역다중화기를 요소인코더(비디오인코더, 오디오인코더)와 요소디코더(비디오디코더와 오디오디코더)와의 인터페이스를 단순하게 하고 요소시스템이 타이밍처리기와 무관하게 독립적으로 구현될 수 있도록 하는 것이 그 요지이다.As described above, the present invention synchronizes the decoder final output of video and audio in an MPEG decoder including an MPEG (MPEG-1 and MPEG-2) encoder including a video encoder, an audio encoder, and a multiplexer, a demultiplexer, a video decoder, and an audio decoder. The multiplexer and demultiplexer, which allows Lip Sync, to simplify the interface between element encoders (video encoders, audio encoders) and element decoders (video decoders and audio decoders), and allow the element system to be implemented independently of the timing processor. That's the point.
실시간 멀티미디어 통신은 데이터가 인코더의 입력에서와 동일한 속도로 디코더에서 출력이 되어야 하며 출력되는 미디어간에는 동기(Lip Sync)가 이루어져야 한다. MPEG-2에서는 이를 위해 피시알(PCR : Program Clock Reference), 디티에스(DTS : Decoding Time Stamp), 피티에스(PTS : Presentation Time Stamp)라는 타이밍정보를 전송한다. 본 발명에서는 MPEG-2 시스템의 타이밍을 분석하고 비디오/오디오의 타이밍동기 구현(다중화기에서의 DTS/PTS 값 계산, 역다중화기에서의 타이밍처리, 동기를 위한 다중화기와 역다중화기의 버퍼 구성)을 제시한다. 이의 구현은 다중화기와 역다중화기가 비디오/오디오의 동기를 위해 요소시스템에 대해 어떠한 제어나 통신을 요구함이 없이 동작전에 설정되는 상수 파라미터와 입력 데이터로부터 추출하는 변수 파라미터만을 사용하여 타이밍처리를 한다. 이에 따라 본 발명은 요소시스템과 다중화/역다중화기와의 인터페이스를 단순하게 하며, 요소인코더와 요소디코더가 다중화기 및 역다중화기와 관계없이 독립적으로 구현될 수 있다.In real-time multimedia communication, data should be output from the decoder at the same speed as the input of the encoder, and sync between the output media. MPEG-2 transmits timing information such as Program Clock Reference (PCR), Decoding Time Stamp (DTS), and Presentation Time Stamp (PTS). The present invention analyzes the timing of MPEG-2 system and presents the timing synchronization implementation of video / audio (calculation of DTS / PTS value in the multiplexer, timing processing in the demultiplexer, and buffer configuration of the multiplexer and demultiplexer for synchronization). do. Its implementation is timed using only the variable parameters extracted from the input data and the constant parameters set before operation, without requiring any control or communication to the element system for the video / audio synchronization by the multiplexer and demultiplexer. Accordingly, the present invention simplifies the interface between the element system and the multiplexer / demultiplexer, and the element encoder and the element decoder can be independently implemented without regard to the multiplexer and the demultiplexer.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
본 발명에 대해 엠펙-2(MPEG-2)를 예로 들어 간단히 설명한다.The present invention will be briefly described taking MPEG-2 as an example.
MPEG-2는 비디오와 오디오에 대한 부호화와 다중화를 규정하고 있는 국제표준이다. MPEG-2의 압축계층에서는 비디오와 오디오에 대한 압축부호화를 규정하고 시스템계층에서는 비디오데이터와 오디오데이터의 다중화를 규정한다. 다중화는 인코더/디코더의 동기 및 비디오/오디오 동기를 위한 타이밍 정보를 포함한다.MPEG-2 is an international standard that defines coding and multiplexing for video and audio. The compression layer of MPEG-2 defines compression encoding for video and audio, and the system layer defines multiplexing of video data and audio data. Multiplexing includes timing information for encoder / decoder synchronization and video / audio synchronization.
본 발명의 실시예에서는 MPEG-2 시스템의 구현에서 비디오와 오디오를 동기시켜 출력하기 위한 시스템 계층에서의 타이밍 구현(다중화기에서의 타이밍 파라미터 계산, 역다중화기에서의 이들 타이밍 정보의 처리, 동기를 구현하기 위한 다중화기와 역다중화기의 버퍼)을 다룬다.An embodiment of the present invention implements timing in a system layer for synchronizing and outputting video and audio in an implementation of an MPEG-2 system (calculating timing parameters in a multiplexer, processing these timing information in a demultiplexer, and synchronizing). Multiplexer and demultiplexer buffers).
인코더와 디코더가 지연을 갖는 실제 구현에서 비디오와 오디오를 동기시켜 주기 위한 방법들이 제시되어 왔으나, 이들 방법은 다중화기가 요소인코더(비디오인코더, 오디오인코더)의 동작을 제어하며 역다중화기가 요소디코더(비디오디코더, 오디오디코더)에게 타이밍 처리를 위해 요소시스템과의 어떠한 제어나 통신없이 동작전에 결정되는 상수 파라미터만을 사용함으로써 MPEG-2 시스템의 모듈화 및 인터페이스를 단순하게 하며 요소시스템이 독립적으로 구현될 수 있게 한다.Although methods have been proposed for synchronizing video and audio in practical implementations where the encoder and decoder have delays, these methods allow multiplexers to control the operation of element encoders (video encoders, audio encoders), and demultiplexers control element decoders (video). Decoders and audio decoders use only constant parameters determined before operation without any control or communication with the element system for timing processing, simplifying the modularity and interface of the MPEG-2 system and allowing the element system to be implemented independently. .
MPEG 시스템의 타이밍에 관하여 살펴보면 다음과 같다.The timing of the MPEG system is as follows.
도 1 은 본 발명을 설명하기 위한 엠펙(MPEG) 코덱 지연 모델의 일예시도이다.1 is an exemplary view of an MPEG codec delay model for explaining the present invention.
MPEG 인코더는 비디오데이터를 압축하는 비디오인코더(110), 오디오데이터를 압축하는 오디오인코더(120), 그리고 이들 데이터를 타이밍정보와 함께 다중화하는 다중화기(130)로 구분되며, MPEG 디코더는 비디오와 오디오데이터의 역다중화와 타이밍처리하는 역다중화기(140), 비디오데이터를 복호화하는 비디오디코더(150), 오디오데이터를 복호하는 오디오디코더(160)로 구분된다.The MPEG encoder is divided into a video encoder 110 for compressing video data, an audio encoder 120 for compressing audio data, and a multiplexer 130 for multiplexing these data with timing information. A demultiplexer 140 for demultiplexing and timing data, a video decoder 150 for decoding video data, and an audio decoder 160 for decoding audio data are divided.
여기서 비디오인코더(110)는 부호화의 픽쳐 순서 조정을 위해 B픽쳐를 지연시키는 인코더재배열버퍼(111), 가변율로 부호화하는 비디오부호화기(112), 가변율의 부호화 비트를 고정율로 출력해주는 채널버퍼(113)로 나누어지며, 비디오디코더(150)는 고정율로 입력되는 비트를 가변율로 출력해주는 브이비브이(VBV : Video Buffering Verifier)버퍼, VBV버퍼로부터 가변율로 읽어 복호화하는 비디오복호기, I픽쳐와 P픽쳐를 인코더에서의 B픽쳐만큼 지연시켜주는 디코더재배열버퍼로 나누어진다.Here, the video encoder 110 is an encoder rearrange buffer 111 for delaying a B picture for adjusting the picture order of encoding, a video encoder 112 for encoding at a variable rate, and a channel for outputting a variable rate of encoded bits at a fixed rate. It is divided into a buffer 113, the video decoder 150 is a VBV (VBV: Video Buffering Verifier) buffer for outputting the input bit at a fixed rate, a video decoder for reading and decoding at a variable rate from the VBV buffer, I It is divided into a decoder reordering buffer that delays the picture and the P picture by the B picture in the encoder.
비디오부호화기(112)는 입력픽쳐를 I픽쳐(프레임내(Intra)의 정보만을 이용하여 부호화하는 픽쳐부호화모드), P픽쳐(순방향예측(Prediction)픽쳐부호화모드로서 입력순서상에서 이전 프레임을 참조하여 부호화하는 픽쳐모드), 또는 B픽쳐(양방향(Bi-direction)예측픽쳐부호화모드로서 입력순에서 이전(previous) 프레임과 이후(next) 프레임을 참조하여 부호화하는 픽쳐모드)로 부호화하며, I픽쳐나 P픽쳐로 부호화되는 픽쳐는 비디오인코더에 입력되는대로 부호화가 이루어지나 B픽쳐의 경우 뒤따라 입력되는 P픽쳐를 부호화한 후에야 부호화가 가능하다. 도 1 에 제시된 인코더재배열버퍼(111)가 이러한 B픽쳐를 저장하기 위한 버퍼이다.The video encoder 112 encodes an input picture using an I picture (picture encoding mode for encoding using only intra-frame information) and a P picture (forward prediction picture encoding mode) with reference to a previous frame in the input order. Picture mode) or B picture (Bi-direction predictive picture encoding mode), which is encoded by referring to a previous frame and a next frame in the input order. A picture encoded as a picture is encoded as input to a video encoder, but in the case of a B picture, encoding is possible after encoding a P picture that is subsequently input. The encoder rearrangement buffer 111 shown in FIG. 1 is a buffer for storing such a B picture.
비디오디코더(150)에서는 비디오인코더의 입력순서와 동일하게 픽쳐를 출력시키기 위해 B픽쳐는 복호화되는대로 출력(presentation)하며 I나 P픽쳐는 인코더에서 B픽쳐가 지연된 만큼 디코더에서 지연시켜 출력한다.In the video decoder 150, in order to output a picture in the same order as the input sequence of the video encoder, the B picture is presented as it is decoded, and the I or P picture is delayed and output by the decoder as much as the B picture is delayed in the encoder.
그리고, 비디오인코더(110)는 픽쳐의 부호화모드(I, P, B픽쳐) 및 입력영상의 특성에 따라 픽쳐의 부호화비트 발생율이 변한다. 그러나, 비디오인코더(110)의 출력은 고정비트율(constant bit rate)이다. 비디오인코더(110)에 위치하는 채널버퍼(113)가 이를 위한 버퍼이다. 비디오인코더(110)의 출력 비트스트림에는 출력비트율(bit_rate), 프레임율(frame_rate), VBV버퍼크기(vbv_buffer_size), VBV지연(vbv_delay)이라는 타이밍 정보가 포함되어 있으며, 비디오인코더(110)는 이들 파라미터에 따라 동작하는 가상의 디코더(VBV : Video Buffering Verifier)가 디코딩했을 때 VBV버퍼의 넘침이나 고갈이 없이 정상적으로 동작하는 그런 비트스트림을 생성해 주어야 한다.The video encoder 110 changes the encoding bit generation rate of the picture according to the coding modes (I, P, and B pictures) of the picture and the characteristics of the input video. However, the output of video encoder 110 is a constant bit rate. The channel buffer 113 located in the video encoder 110 is a buffer for this. The output bitstream of the video encoder 110 includes timing information such as the output bit rate (bit_rate), frame rate (frame_rate), VBV buffer size (vbv_buffer_size), and VBV delay (vbv_delay), and the video encoder 110 includes these parameters. When a virtual decoder (VBV: Video Buffering Verifier) operating in accordance with the decoding should generate such a bitstream that operates normally without overflowing or exhausting the VBV buffer.
여기서, 픽쳐마다 전송되는 vbv_delay는 해당 픽쳐데이터의 최초 바이트가 VBV 디코더에 입력되는 시점으로부터 VBV가 디코딩할 때까지의 VBV버퍼에서 기다려야 할 시간을 나타내며 이때 데이터의 VBV버퍼 입력율은 비트스트림에 포함되어 있는 비트율(bit_rate)이고 버퍼크기는 vbv_buffer_size이다. 한편 비디오디코더는 VBV로 디코딩하여 문제없는 어떠한 비트스트림도 디코딩할 수 있는 그런 크기의 버퍼를 마련하고 있어야 하는데 도 1 에서 VBV버퍼가 그것이다.Here, vbv_delay transmitted for each picture represents a time to wait in the VBV buffer from the time when the first byte of the corresponding picture data is input to the VBV decoder until the VBV decodes. In this case, the VBV buffer input rate of the data is included in the bitstream. Bit_rate, and the buffer size is vbv_buffer_size. On the other hand, the video decoder should have a buffer of such a size that it can decode to VBV and decode any problem-free bitstream, as shown in FIG.
입력순서와 부호화순서가 같지 않고 픽쳐의 부호화비트 발생율이 일정하지 않은 비디오와 달리 오디오는 입력 프레임의 순서대로 부호화가 이루어지고 프레임당 부호화비트 발생수도 입력 데이터 샘플율(sampling_frequency)과 출력 데이터율(bit_rate)에 따라 결정되는 고정값이다. 이에 따라 도 1 의 지연모델에서 오디오에 대해서는 내부가 구분되지 않고 있다.Unlike video in which the input order and encoding order are not the same and the encoding bit rate of the picture is not constant, the audio is encoded in the order of the input frames, and the number of encoding bits per frame is also input data sampling rate (sampling_frequency) and output data rate (bit_rate). Is a fixed value determined by Accordingly, the audio is not distinguished in the delay model of FIG. 1.
실시간 멀티미디어 서비스에서 미디어내의 모든 데이터는 인코더의 입력 시점에서 디코더의 출력시점까지 동일한 지연을 가져야 하며, 미디어간에는 타이밍동기(Lip Sync)가 이루어져야 한다. 도 1 의 다중화기(130)와 역다중화기(140)에 대해 규정한 MPEG-1 및 MPEG-2 표준의 시스템부에서는 디코더(150)에서의 인코더(110)와의 타이밍동기를 위해 에스씨알(SCR : System Clock Reference) 또는 피씨알(PCR : Program Clock Reference)이라는 타이밍 정보와 디코더(150)에서의 비디오와 오디오의 타이밍동기(Lip Sync)를 위해 디티에스(DTS : Decoding Time Stamp)와 피티에스(PTS : Presentation Time Stamp)라는 타이밍정보를 규정하고 있다.In the real-time multimedia service, all data in the media must have the same delay from the input point of the encoder to the output point of the decoder, and the timing synchronization (Lip Sync) must be performed between the media. In the system section of the MPEG-1 and MPEG-2 standards defined for the multiplexer 130 and the demultiplexer 140 of FIG. 1, SCR (SCR) is used for timing synchronization with the encoder 110 in the decoder 150. Decoding Time Stamp (DTS) and PTS (TTS) for timing information called System Clock Reference (PCR) or Program Clock Reference (PCR) and timing synchronization of video and audio at decoder 150. It defines the timing information called Presentation Time Stamp.
SCR은 디지털저장매체를 위해 규정한 MPEG-1과 MPEG-2의 피에스(PS : Program Stream) 규격에서 사용되고, PCR은 방송, 통신 등 전송오류의 가능성이 있는 응용을 위해 규정한 티에스(TS : Transport Stream) 규격에서 사용된다. DTS와 PTS는 MPEG-1 및 MPEG-2의 PS와 TS에 동일하게 적용되는 타이밍변수이며 타이밍의 단위데이터인 에이유(AU : access unit)의 디코딩 시점과 AU의 디코딩데이터인 피유(PU : presentation unit)의 출력(presentation) 시점을 나타낸다. MPEG 디코더는 PCR을 통해 인코더의 시스템클럭을 복원하며 DTS와 PTS를 통해 비디오와 오디오의 출력을 동기시킨다.SCR is used in the MPEG-1 and MPEG-2 PS (Program Stream) standards specified for digital storage media, and PCR is defined in TS (Transport) for applications that may cause transmission errors such as broadcasting and communication. Stream) is used in the specification. DTS and PTS are timing variables that are equally applied to PS and TS of MPEG-1 and MPEG-2, and the decoding time of an access unit (AU), which is the unit data of timing, and the PU, which is the decoding data of AU, The presentation time of a unit is shown. The MPEG decoder restores the system clock of the encoder through PCR and synchronizes the output of video and audio through DTS and PTS.
MPEG은 이들 타이밍의 기준을 위해 에스티디(STD : System Target Decoder)라는 가상의 디코더와 비디오 및 오디오의 타이밍의 단위데이터인 에이유(AU : access unit)를 규정하고 있다. 비디오는 픽쳐를, 오디오는 프레임을 AU로 하며 STD는 AU 데이터를 DTS 시점에 순간적으로 디코딩하고 PTS 시점에 순간적으로 출력하는 것으로 되어 있다. 또한 복호화시 비디오의 B픽쳐나 오디오 프레임 같이 디코딩 후 바로 출력되는 AU는 DTS와 PTS값이 동일해야 하며 디코더에서 픽쳐재배열지연을 겪는 비디오의 I나 P픽쳐는 DTS와 PTS의 값이 픽쳐 주기의 배수가 되어야 한다. 이때 인코더의 타이밍처리기인 다중화기는 이 가상 디코더가 디코딩할 때 비디오와 오디오가 동기가 되도록 비디오 AU 및 오디오 AU에 대한 DTS와 PTS를 계산하여 전송해야 하며 MPEG 디코더의 타이밍처리기인 역다중화기는 이러한 DTS와 PTS 정보를 이용하여 동기처리를 해 주어야 한다. 또한, STD는 비디오, 오디오, 및 시스템정보등을 다중화하기 위한 버퍼크기, 각 버퍼의 버퍼링데이터, 각 버퍼의 입출력율, 인코더의 시스템클럭주파수 정밀도, STD 입력율 등의 규정을 포함한다.MPEG defines a virtual decoder called STD (System Target Decoder) and access unit (AU), which is unit data of timing of video and audio, for reference of these timings. The video is the picture, the audio is the AU, and the STD decodes the AU data instantaneously at the DTS time point and outputs it instantaneously at the PTS time point. Also, the AU output immediately after decoding, such as B picture or audio frame of video, should have the same DTS and PTS value when decoding, and the I or P picture of the video undergoing picture rearrangement delay in the decoder should have the DTS and PTS values of the picture period. It should be a drain. The multiplexer, which is the timing processor of the encoder, must calculate and transmit the DTS and PTS for the video AU and the audio AU so that the video and audio are synchronized when the virtual decoder decodes. The demultiplexer, which is the timing processor of the MPEG decoder, The PTS information should be used for synchronization processing. The STD also includes provisions for buffer size for multiplexing video, audio, and system information, buffering data of each buffer, input / output ratio of each buffer, system clock frequency precision of the encoder, STD input rate, and the like.
본 발명에서는 다중화기에서의 DTS와 PTS 산출 방식과 지연이 있는 실제의 디코더에서 역다중화기의 타이밍 처리 방식, 그리고 이러한 타이밍 처리를 위한 다중화기 및 역다중화기의 버퍼 구성에 대해 기술한다.In the present invention, a DTS and PTS calculation scheme in a multiplexer, a timing processing scheme of a demultiplexer in an actual decoder having a delay, and a buffer configuration of a multiplexer and a demultiplexer for such timing processing are described.
그럼 첫번째로, 다중화기에서의 타이밍정보(DTS, PTS) 산출 방식에 대하여 살펴보면 다음과 같다.First, the timing information (DTS, PTS) calculation method of the multiplexer will be described as follows.
다중화기(130)에서의 비디오와 오디오의 타이밍동기를 위한 처리는 비디오의 AU와 오디오의 AU에 대한 DTS와 PTS의 값을 구해 비트스트림의 피이에스(PES : Packetized Elementary Stream) 헤더에 심어주는 것이다.The processing for timing synchronization of video and audio in the multiplexer 130 is to obtain the values of DTS and PTS for the AU of the video and the AU of the audio, and plant the values in the packetized elementary stream (PES) header of the bitstream. .
다중화기(130)에서의 DTS와 PTS 값은 STD가 디코딩할때 버퍼링 조건을 만족하면서 비디오와 오디오가 동기되어 출력되도록 값을 설정해 주어야 한다. 다음은 본 발명의 비디오 및 오디오의 AU에 대한 DTS와 PTS 값의 계산식이다.The DTS and PTS values in the multiplexer 130 should set values such that video and audio are synchronized and output while satisfying buffering conditions when the STD decodes them. The following is a formula of DTS and PTS values for AU of video and audio of the present invention.
= DTSvideo(j) + M*TvideoI/P 픽쳐의 경우= DTS video (j) + M * T video I / P picture
비디오 DTS는 비디오 AU의 최초 바이트가 다중화기(130)에 입력되는 시점(tI video(j))을 기준으로 비디오 AU의 vbv_delay(dvbv(j))와 dsys(다중화기 지연(dmux)과 STD의 역다중화기 지연(ddemux)의 합)으로 결정되며, 비디오 PTS는 DTS를 기준으로 픽쳐부호화모드(I, P, B픽쳐), 참조프레임(I 또는 P프레임) 사이의 최대 프레임 간격(M), 프레임주기(Tvideo)에 따라 결정된다. 비디오 PTS에 대한 수학식인 [수학식 2]는 비디오인코더(110)가 B픽쳐를 M*Tvideo만큼 지연시켜 인코딩한 것에 대해 I와 P픽쳐를 디코더에서 그만큼 지연시키는 것을 나타내며 이것은 픽쳐 재배열 효과가 생긴다.The video DTS is based on the point in time at which the first byte of the video AU is input to the multiplexer 130 (t I video (j)) and the vbv_delay (d vbv (j)) and d sys (multiplexer delay (d mux ) of the video AU. ) Is the sum of the demultiplexer delay (d demux ) of the STD, and the video PTS is the maximum frame interval between the picture encoding mode (I, P, B picture) and the reference frame (I or P frame) based on the DTS. (M) is determined according to the frame period (T video ). Equation [2], which is the equation for the video PTS, indicates that the video encoder 110 delays the B picture by M * T video and encodes the I and P pictures by the decoder. Occurs.
[수학식 3]과 [수학식 4]는 오디오의 DTS와 PTS에 대한 수학식이다. 여기서 dVB는 dVbuf와 dvbv(j)를 합한값으로서 고정값이다. 동기를 위해 오디오의 인코더 입력시점에서 STD 디코더의 출력시점(PTS)까지의 전체 지연이 비디오의 전체 지연과 같아야 한다. 따라서 오디오의 DTS값은 [수학식 3]과 같이 AU의 첫 바이트 입력시점을 기준으로 (비디오전체지연 - dAE)값을 더해준 값이 된다. 여기서, DVE는 비디오 부호화기에서의 지연이고, DAE는 오디오 인코더(120)에서의 지연이다.Equations 3 and 4 are equations for DTS and PTS of audio. Where d VB is the sum of d Vbuf and d vbv (j) and is a fixed value. For synchronization, the total delay from the encoder input point of the audio to the output point PTS of the STD decoder should be equal to the total delay of the video. Therefore, the DTS value of the audio becomes the value obtained by adding (Video Total Delay-d AE ) based on the first byte input time of the AU as shown in [Equation 3]. Where D VE is the delay in the video encoder and D AE is the delay in the audio encoder 120.
이상과 같은 DTS/PTS 연산에는 동작전에 결정되는 파라미터(M, Tvideo, dVE, dAE, dVB)와 입력되는 데이터로부터 추출(tI video(j), tI audio(j), dvbv(j))되거나 자체적으로 결정(dsys)할 수 있는 파라미터만이 사용되고 있음을 볼 수 있다. 여기서 다중화기지연(dmux)은 자체적으로 알 수 있고, 역다중화기지연(ddemux)은 STD의 규정에 의해 유도할 수 있다. 따라서, 본 발명에 따른 DTS와 PTS 연산은 동작중에 변하는 파라미터를 별도의 신호선을 통해 받아들일 필요가 없으며 다중화기(130)가 비디오인코더(110) 및 오디오인코더(120)를 제어할 필요도 없다.The above DTS / PTS operation includes the parameters (M, T video , d VE , d AE , d VB ) determined before the operation and the input data (t I video (j), t I audio (j), d We can see that only parameters that can be either vbv (j)) or self-determined (d sys ) are used. Here, the multiplexer delay (d mux ) can be known by itself, and the demultiplexer delay (d demux ) can be derived by the STD specification. Accordingly, the DTS and PTS operations according to the present invention do not need to accept parameters that are changed during operation through separate signal lines, and the multiplexer 130 does not need to control the video encoder 110 and the audio encoder 120.
다음으로, 역다중화기(140)에서의 요소스트림 출력 시점 산출 방식을 살펴보면 다음과 같다.Next, the method of calculating the element stream output time point in the demultiplexer 140 is as follows.
이는 역다중화기(140)에서의 비디오/오디오 타이밍동기 처리에 관한 설명이다. 본 발명은 역다중화기(140)의 시스템클럭 복원에 대해서는 다루지 않으며 여기 설명에서는 역다중화기(140)가 MPEG-1 및 MPEG-2의 피에스(PS : Program Stream)의 경우 SCR을 통해, MPEG-2의 티에스(TS : Transport Stream)의 경우 PCR을 통해 이미 시스템클럭이 복원되어 있다는 것을 전제한다. 디코더의 시스템클럭 복원은 인코더에서 사용한 타이밍 클럭의 복원과 DTS와 PTS 처리를 위한 기준시계의 설정을 의미한다. 역다중화기(140)의 입력 데이터에는 STD가 디코딩할때 비디오와 오디오가 동기되어 출력되도록 하는 DTS와 PTS가 심어져 있다. 역다중화기(140)의 타이밍처리는 이들 타이밍 정보로부터 STD의 비디오 및 오디오디코더 동작 규정과 달리 각기 다른 지연값을 갖는 비디오디코더(150)와 오디오디코더(160)에서의 최종 출력이 동기되도록 하는 것이다. 본 발명은 역다중화기(140)가 요소스트림(비디오스트림과 오디오스트림)의 출력 시점을 제어하는 방식으로 비디오와 오디오의 최종 출력을 동기시킨다. 도 1 의 지연모델에 따른 비디오 및 오디오 AU의 역다중화기(140) 출력시점(tO video(j), tO audio(j))은 다음과 같다.This is a description of the video / audio timing synchronization processing in the demultiplexer 140. The present invention does not deal with the system clock recovery of the demultiplexer 140. In the description herein, the demultiplexer 140 uses the SCR in the case of the MPEG-1 and MPEG-2 program streams (PS). In the case of TS (Transport Stream), it is assumed that the system clock has already been restored by PCR. The system clock recovery of the decoder refers to the restoration of the timing clock used in the encoder and the setting of the reference clock for DTS and PTS processing. In the input data of the demultiplexer 140, a DTS and a PTS are planted so that video and audio are synchronized and output when the STD is decoded. Timing processing of the demultiplexer 140 allows the final outputs of the video decoder 150 and the audio decoder 160 having different delay values to be synchronized from the timing information of the STD from the video and audio decoder operating rules. The present invention synchronizes the final output of video and audio in such a way that the demultiplexer 140 controls the output timing of the element stream (video stream and audio stream). The output times t 0 video (j) and t O audio (j) of the demultiplexer 140 of the video and audio AU according to the delay model of FIG. 1 are as follows.
tO video(j) = DTSvideo(j) - dvbv(j)t O video (j) = DTS video (j)-d vbv (j)
dAD〉 dVD이면d AD 〉 d VD
tO video(j) = DTSvideo(j) - dvbv(j) + (dAD- dVD)t O video (j) = DTS video (j)-d vbv (j) + (d AD -d VD )
tO audio(j) = DTSaudio(j) + (dVD- dAD)t O audio (j) = DTS audio (j) + (d VD -d AD )
dAD〉 dVD이면,If d AD > d VD ,
tO audio(j) = DTSaudio(j)t O audio (j) = DTS audio (j)
여기서, dVD와 dAD는 요소디코더(비디오디코더와 오디오디코더)의 디코딩에서 출력까지의 시간으로서 디코딩지연시간이며 비디오의 픽쳐 재배열 지연은 포함하지 않는다.Here, d VD and d AD are the time from the decoding of the element decoders (video decoder and audio decoder) to the output as the decoding delay time and do not include the picture rearrangement delay of the video.
dVD와 dAD는 역다중화기(140)에 접속되는 비디오디코더(150)와 오디오디코더(160)의 구현 스펙에서 제공되는 상수이며, dvbv(j)는 비디오의 AU에 따라 변하는 변수로서 비디오스트림의 픽쳐헤더를 디코딩하여 추출한다.d VD and d AD are constants provided in the implementation specifications of the video decoder 150 and the audio decoder 160 connected to the demultiplexer 140, and d vbv (j) is a variable that varies depending on the AU of the video. Decode and extract the picture header of.
상기한 [수학식 5] 및 [수학식 6]에 따라 역다중화기()140가 요소스트림을 요소디코더에 공급해 주면 요소디코더는 요소인코더와 직접 접속되어 동작하듯이 AU를 디코딩하여 출력하며 그것에 따른 결과는 비디오와 오디오가 동기되어 있다. 물론 비디오디코더(150)는 자체적으로 픽쳐를 재배열하여 출력할 수 있다.According to Equations 5 and 6, the demultiplexer 140 supplies the element stream to the element decoder, and the element decoder decodes and outputs the AU as if it were connected to the element encoder. Video and audio are synchronized. Of course, the video decoder 150 may output the rearranged pictures by itself.
다음으로, 본 발명의 타이밍 처리를 위한 다중화기(130)와 역다중화기(140)의 버퍼 구성을 도 2 를 통해 살펴보면 다음과 같다.Next, a buffer configuration of the multiplexer 130 and the demultiplexer 140 for timing processing according to the present invention will be described with reference to FIG. 2.
도 2 는 본 발명에 따른 다중화기와 역다중화기를 이용한 타이밍 처리 장치에 대한 일실시예 구성도이다.2 is a block diagram illustrating a timing processing apparatus using a multiplexer and a demultiplexer according to the present invention.
다중화기(130)와 역다중화기(140)는 비디오와 오디오의 타이밍동기와 관계없이 비디오, 오디오 및 시스템 정보를 다중화 및 역다중화를 하기 위한 버퍼가 필요하다. 도 2 에서 다중화기(130) 및 역다중화기(140)의 비디오버퍼(131, 143)와 오디오버퍼(133, 144) 블록이 그것이다. 이들 버퍼의 크기는 다중화기(130)에서는 자신의 다중화 전략에 의해 결정되고, 역다중화기(140)에서는 STD를 만족하는 어떠한 비트스트림도 역다중화할 수 있는 크기가 되어야 한다.The multiplexer 130 and the demultiplexer 140 need a buffer for multiplexing and demultiplexing video, audio, and system information regardless of the timing synchronization of video and audio. In FIG. 2, the video buffers 131 and 143 and the audio buffers 133 and 144 of the multiplexer 130 and the demultiplexer 140 are the same. The size of these buffers is determined by their multiplexing strategy in the multiplexer 130, and the demultiplexer 140 should be a size capable of demultiplexing any bitstreams satisfying the STD.
역다중화기(140)에서의 지터버퍼는 ATM망과 같은 매체를 통해 다중화기(130)에서 출력되는 비트스트림이 역다중화기(140)로 전달될 때 포함되는 지터의 보상을 위한 버퍼로서 버퍼크기는 (최대지터시간 * TS비트율 *2) 이다. 도 2 에서 나머지 버퍼(다중화기 및 역다중화기에서의 지연버퍼(132, 146))는 비디오와 오디오의 동기를 위한 본 발명을 구현하기 위한 버퍼이다. 다중화기(130)의 다중처리와 역다중화기(140)의 역다중처리에는 비디오/오디오 타이밍동기를 위한 상수 파라미터가 제공된다.The jitter buffer in the demultiplexer 140 is a buffer for compensation of jitter included when the bitstream output from the multiplexer 130 is transferred to the demultiplexer 140 through a medium such as an ATM network. Maximum jitter time * TS bit rate * 2). In FIG. 2, the remaining buffers (delay buffers 132 and 146 in the multiplexer and demultiplexer) are buffers for implementing the present invention for synchronizing video and audio. Multiple processing of the multiplexer 130 and demultiplexing of the demultiplexer 140 are provided with constant parameters for video / audio timing synchronization.
다중화기(130)에서의 지연버퍼(132)는 다음과 같이 설명된다.The delay buffer 132 in the multiplexer 130 is described as follows.
다중화기(130)의 출력 비트스트림은 STD에서 버퍼 넘침없이 디코딩되어야 한다. 상기한 [수학식 3]에서 보듯이 오디오는 비디오와의 동기를 위해 많은 시간 지연을 포함하고 있다. 비디오의 지연은 비디오시스템내의 버퍼에서 수용되나 오디오의 경우는 오디오시스템내에 지연을 위한 어떠한 버퍼도 없으며 또한 STD에도 이를 위한 버퍼가 없다. 따라서 결국 오디오는 다중화기(130)에서 버퍼를 두어 지연을 시켜주어야 한다. 버퍼의 크기는 [(dVE- dAE+ dVB+ M*Tvideo+ dsys) * 오디오부호화 비트율]로서 이들 변수의 최대허용치를 규정함으로써 결정된다.The output bitstream of the multiplexer 130 should be decoded without buffer overflow in the STD. As shown in Equation 3, audio includes a large time delay for synchronization with video. The delay of the video is accepted in the buffer in the video system but in the case of audio there is no buffer for the delay in the audio system and there is no buffer in the STD for this. Therefore, audio must be delayed by putting a buffer in the multiplexer 130 after all. The size of the buffer is determined by specifying the maximum allowable value of these variables as [(d VE -d AE + d VB + M * T video + d sys ) * audio encoding bit rate].
역다중화기(140)에서의 지연버퍼(146)는 [수학식 5]와 [수학식 6]의 동기 처리를 위한 버퍼이다. dVD가 dAD보다 크면 오디오쪽에 [(dVD- dAD)*오디오 부호화비트율] 크기의 버퍼를, dAD가 dVD보다 크면 비디오 패스에 [(dAD- dVD)*비디오 부호화비트율] 크기의 버퍼가 요구된다. 디코딩지연(dVD, dAD)은 비디오의 경우 필드픽쳐모드에서 5ms 이내로, 오디오의 경우 48KHz의 샘플율에서 24ms(프레임 주기)가 될 수 있다. 이들 값은 각각 비디오와 오디오의 최소 지연값으로서 최소의 지연은 오디오가 크나 응용에 따라 비디오가 클 수도 있다. 도 2 는 어떠한 경우에도 가능하도록 하나의 버퍼로 비디오지연버퍼 혹은 오디오지연버퍼로 구성되도록 한 것이다.The delay buffer 146 in the demultiplexer 140 is a buffer for the synchronization processing of Equations 5 and 6. d VD is on the side is larger audio than d AD [(d VD - d AD) * The audio encoding bit rate; a buffer size, a d AD is larger than the d VD video path [(d AD - d VD) * video encoding bit rate; A buffer of size is required. The decoding delay d VD and d AD may be within 5 ms in the field picture mode for video and 24 ms (frame period) at a sample rate of 48 kHz for audio. These values are the minimum delays of video and audio, respectively. The minimum delay is large audio, but video may be large depending on the application. Figure 2 is to be configured as a video delay buffer or an audio delay buffer in one buffer to enable any case.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes can be made in the art without departing from the technical spirit of the present invention. It will be apparent to those of ordinary knowledge.
상기와 같은 본 발명은, 다중화기와 역다중화기의 타이밍처리시 요소인코더(비디오인코더와 오디오인코더) 및 요소디코더(비디오디코더와 오디오디코더)와 별도의 타이밍을 위한 정보 교환을 요구하지 않는 방법으로서, 타이밍처리기(다중화기와 역다중화기)와 요소시스템과의 인터페이스를 단순하게 하며, 요소시스템을 타이밍처리기와 무관하게 개발할 수 있게 하는 효과가 있다. 또한, 요소디코더로 하여금 비디오/오디오 타이밍동기를 위한 어떠한 하드웨어도 요구하지 않는다.The present invention as described above is a method that does not require information exchange for separate timing with element encoders (video encoders and audio encoders) and element decoders (video decoders and audio decoders) during timing processing of the multiplexer and demultiplexer. The interface between the processor (multiplexer and demultiplexer) and the element system is simplified, and the element system can be developed independently of the timing processor. In addition, the element decoder does not require any hardware for video / audio timing synchronization.
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000057910A KR100731488B1 (en) | 1999-10-02 | 2000-10-02 | Apparatus and Method for Processing Timing |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR19990042517 | 1999-10-02 | ||
KR1019990042517 | 1999-10-02 | ||
KR1020000057910A KR100731488B1 (en) | 1999-10-02 | 2000-10-02 | Apparatus and Method for Processing Timing |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010050811A true KR20010050811A (en) | 2001-06-25 |
KR100731488B1 KR100731488B1 (en) | 2007-06-21 |
Family
ID=19613784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000057910A KR100731488B1 (en) | 1999-10-02 | 2000-10-02 | Apparatus and Method for Processing Timing |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100731488B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100755836B1 (en) * | 2005-11-28 | 2007-09-07 | 엘지전자 주식회사 | An apparatus for buffering transport stream packet in digital broadcasting receiver and a method thereof |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100236822B1 (en) * | 1996-09-11 | 2000-01-15 | 이계철 | Method for determining multiplex rate of variable bit rate signal |
KR100250982B1 (en) * | 1997-12-03 | 2000-04-15 | 이계철 | Mpeg-2 system multiplexer |
-
2000
- 2000-10-02 KR KR1020000057910A patent/KR100731488B1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100755836B1 (en) * | 2005-11-28 | 2007-09-07 | 엘지전자 주식회사 | An apparatus for buffering transport stream packet in digital broadcasting receiver and a method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR100731488B1 (en) | 2007-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW519834B (en) | Method and apparatus for determining a transmission bit rate in a statistical multiplexer | |
US6157674A (en) | Audio and video data transmitting apparatus, system, and method thereof | |
CA2415299C (en) | Splicing compressed, local video segments into fixed time slots in a network feed | |
US6208759B1 (en) | Switching between bit-rate reduced signals | |
US7342961B2 (en) | Encoded data outputting apparatus and method | |
EP0708567B1 (en) | Method of video buffer synchronization | |
AU8699001A (en) | Regeneration of program clock reference data for mpeg transport streams | |
US20060034375A1 (en) | Data compression unit control for alignment of output signal | |
US6504576B2 (en) | Digital signal coding method and apparatus, signal recording medium, and signal transmission method for recording a moving picture signal and an acoustic signal | |
JPH11340938A (en) | Data multiplexer and its method | |
US20120213269A1 (en) | Method and system for dynamically allocating video multiplexing buffer based on queuing theory | |
Haskell et al. | Multiplexing of variable rate encoded streams | |
US6570921B1 (en) | Data compression assembly having several data-compression channels | |
JP3556381B2 (en) | Information multiplexing device | |
KR100731488B1 (en) | Apparatus and Method for Processing Timing | |
KR100233937B1 (en) | Video and audio synchronization method using timestamp compensation and mpeg-2 encoder | |
US20100272170A1 (en) | Image encoding apparatus, image encoding method and medium on which image encoding program is recorded | |
US8228999B2 (en) | Method and apparatus for reproduction of image frame in image receiving system | |
JPH09252290A (en) | Coder, coding method, transmitter, transmission method and recording medium | |
JP3573171B2 (en) | Transmission method and transmission system for multiple variable rate signals | |
Chen | Examples of Video Transport Multiplexer | |
JP2001217793A (en) | Method and device for generating stream | |
JPH04341086A (en) | Output controlling device for inter-frame predicting forecasting decoding signal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120607 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |