KR100335441B1 - 다중 비디오 디코딩 장치 및 그 방법 - Google Patents
다중 비디오 디코딩 장치 및 그 방법 Download PDFInfo
- Publication number
- KR100335441B1 KR100335441B1 KR1019990015808A KR19990015808A KR100335441B1 KR 100335441 B1 KR100335441 B1 KR 100335441B1 KR 1019990015808 A KR1019990015808 A KR 1019990015808A KR 19990015808 A KR19990015808 A KR 19990015808A KR 100335441 B1 KR100335441 B1 KR 100335441B1
- Authority
- KR
- South Korea
- Prior art keywords
- decoding
- video
- channel
- channels
- slice
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000015654 memory Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- 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/2365—Multiplexing of several video streams
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
-
- 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
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- 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/42607—Internal components of the client ; Characteristics thereof for processing the incoming bitstream
- H04N21/42615—Internal components of the client ; Characteristics thereof for processing the incoming bitstream involving specific demultiplexing 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/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/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
-
- 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/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4347—Demultiplexing of several 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Systems (AREA)
Abstract
복수채널의 비디오 신호를 하나의 비디오 디코더에서 다중으로 디코딩하고 각각 독립적으로 디스플레이하는 다중 비디오 디코딩 장치 및 그 방법이 개시되어 있다. 본 발명은 어느한 채널로 부터 입력되는 비트스트림을 슬라이스 단위로 디코딩하고 난 후 다른 채널의 슬라이스 단위의 디코딩 태스크로 전환하는 과정, 상기 과정을 복수채널에 순환적으로 반복하여 복수채널의 비트스트림을 다중 디코딩하는 과정을 포함한다.
Description
본 발명은 MPEG(Moving Picture Eperts Group) 비디오 디코딩 장치 및 그 방법에 관한 것으로서, 특히 복수채널의 비디오 신호를 하나의 비디오 디코더에서 다중으로 디코딩하고 각각 독립적으로 디스플레이하는 다중 비디오 디코딩 장치 및 그 방법에 관한 것이다.
일반적으로 MPEG2 하이 레벨 비디오(HD:High Definition Video) 규격은 수평으로 1920, 수직으로 1080 픽셀에 1초에 30프레임이 전송되는 압축 비디오 스트림을 디코딩하여 비디오를 복원한다. 그 데이터량은 SD(Standard Definition)급인 수평 720, 수직 480, 초당 30프레임 비디오의 6배이다. HD급의 비디오를 디코딩할 수있는 디코더라면 6개 까지의 SD급 비디오를 디코딩 할 수있다. 디지털 TV의 서비스중에 스포츠 중계를 예로 들면 서로 다른 각도에서 촬영한 영상과 같이 하나의 프로그램에서 관련된 여러개의 채널을 SD급으로 전송하여 수신기에서 하나의 HD 화면으로 시청할 수있다. 이를 위하여 디지털 TV에서는 여러개의 SD급 비디오를 동시에 병렬로 디코딩하여야한다. 그러나 실제적으로는 각 비디오의 필드 구조, 3:2 풀 다운(pull-down), 디코딩과 디스플레이 콘트롤 방법등에 따라 각각 독립적으로 제어하고 동시에 각 비디오를 병렬로 처리하기 위해서는 각각에 대해서 독립적으로 하드웨어가 필요해짐에 따라 회로 구조가 복잡해지며, 또한 소프트웨어적으로 처리할 경우 각각의 비디오에 대한 디코딩 태스크 관리를 위해 OS(Operating System)수준의 알고리듬이 필요하므로 소프트웨어적으로도 복잡한 문제점이 있다.
본 발명이 이루고자하는 기술적 과제는 복수 채널의 비디오 신호를 슬라이스 단위로 순환적으로 디코딩함으로써 복수채널의 비디오를 다중으로 디코딩하는 다중 비디오 디코딩 장치 및 그 방법을 제공하는 데있다. .
도 1은 본 발명에 따른 다중 비디오 디코딩 장치를 보이는 전체 블럭도이다.
도 2는 도 1의 신택스프로세서(150)의 상세도이다.
도 3은 도 2의 디코딩 제어부(270)의 상세도이다.
도 4는 도 3의 장치를 적용한 태스크 스위칭 함수의 흐름도이다.
도 5는 본 발명에 따른 다중 비디오 디코딩 방법을 보이는 전체 흐름도이다.
도 6은 도 5의 다중 디코딩 방법이 구현하는 개념도이다.
상기의 기술적 과제를 해결하기 위하여, 본 발명은 다중 비디오 디코딩 장치에 있어서, 복수개의 슬라이스 단위로 구성되는 비트스트림이 복수채널로 입력되고 그 복수개 채널의 비트스트림을 다중으로 디코딩하는 방법에 있어서,
상기 복수개중 한 채널 비트스트림의 슬라이스 단위를 디코딩하고 난 후 다른 채널의 슬라이스 디코딩 작업으로 전환하여 순차적으로 디코딩하는 과정;
상기 각 채널의 다른 슬라이스 단위에 대해서 상기 과정을 순환적으로 반복하여 복수채널의 비트스트림을 다중 디코딩하는 과정을 포함하는 것을 특징으로 하는 다중 비디오 디코딩 방법이다.
상기의 기술적 과제를 해결하기 위하여, 본 발명은 다중 비디오 디코딩 방법에 있어서,
복수채널로 부터 선택된 채널의 비트스트림을 슬라이스 단위로 디코딩하는 과정;
상기 과정이 완료된 후 다른 채널의 디코딩 태스크를 슬라이스 단위로 전환하여 복수채널의 비트스트림이 시간 분할로 다중 디코딩되는 과정을 포함하는 것을 특징으로 하는 다중 비디오 디코딩 방법이다.
이하 첨부된 도면을 참조로하여 본 발명의 바람직한 실시예를 설명하기로 한다.
도 1은 본 발명에 따른 다중 비디오 디코딩 장치를 보이는 전체 블럭도이다.
도 1에 도시된 장치는 제1,제2,제3,제4 FIFO(First-In First-Out) 메모리(110,120,130,140), 신택스프로세서(150), 심볼FIFO메모리(160), 비디오프로세서(170)로 구성된다.
일반적으로 DTV규격은 하나의 전송 트랜스폰더(transponder)에 4개의 SD급 채널을 둘수 있다. 도 1의 장치를 참조하여 설명하면, 먼저 압축 부호화된 비디오스트림은 제1,제2,제3,제4 FIFO메모리(110,120,130,140)를 통해 신택스프로세서 (150)로 입력된다. 여기서 4개의 비디오 채널을 동시에 디코딩하기 위해 4개의 FIFO를 사용한다. 신택스프로세서(150)는 제1,제2,제3,제4 FIFO메모리 (110,120,130,140)로 부터 입력되는 복수 채널의 비트 스트림중에서 디코딩할 비트스트림을 인덱스 신호에 의해 순환적으로 지정하여 다중으로 디코딩한다. 즉, 신택스프로세서(150)는 비디오 인에이블신호로 선택된 입력비트 스트림을 비디오 압축 부호화 규격에 따라 제로-런 렝스(zero-run-length)와 DC 계수쌍으로 디코딩하여 심볼(symbol) 형태로 생성하고 또한 디코딩할 비디오 채널을 나태내는 플래그 정보를 생성한다. 심볼FIFO메모리(160)는 신택스프로세서(150)와 비디오프로세서(170)간의 심볼 신호 처리 속도차를 인터페이스하며, 신택스프로세서(150)에서 디코딩된 심볼 형태의 비디오 파라메터들 및 런렝스 DCT 계수들 및 플래그 정보를 버퍼링하여 비디오프로세서(170)로 출력시킨다.
비디오프로세서(170)는 심볼FIFO메모리(160)로 부터 입력된 디코딩된 심볼을 플래그 정보를 이용하여 움직임 보상, IDCT를 수행하고 디스플레이할 비디오신호인 픽셀값을 출력한다. 이때 신택스 프로세서(150)로 부터 수신되는 정보에는 4개의 비디오 채널에 대한 소속을 나타내는 플래그가 첨부되어 있기 때문에 비디오프로세서(170)는 각 비디오 채널 영역에 해당하는 메모리를 이용하여 동작을 수행한다.
도 2는 도 1의 신택스프로세서(150)의 상세도이다.
도 2의 장치는 비트스트림으로 부터 고정 길이 부호, 가변 길이 부호들을 디코딩하여 심볼형태의 비디오 파라미터, 제로-런-렝스와 DCT계수쌍을 추출하는 비트스트림디코더(260), MPEG 비디오 규격(syntax)에 따라 비트스트림 디코더(260)에 디코딩 명령(command, command enable, code size)을 내리고, 각 채널의 비디오 인에이블신호(video0 enable, video1 enable, video2 enable, video3 enable)를 선택하여 슬라이스(slice) 간격으로 다중 비디오 디코딩을 수행하는 디코딩제어부(270)로 구성된다.
비트스트림디코더(260)는 비디오 압축 코딩 규격에 따라 비트스트림에서 코딩된 고정 길이 부호, 가변 길이 부호등을 디코딩하여 비디오 파라미터, 심볼 형태의 제로-런-렝스와 DCT계수쌍으로 변환한다.
디코딩 제어부(270)는 제1,제2,제3,제4FIFO메모리(110,120,130,140)로 부터 입력되는 4개의 SD급 비디오를 동시에 디코딩하기 위해 멀티플렉서(MUX:250)에 인덱스(index) 신호를 인가하여 각 디코딩 작업간의 태스크 스위칭을 수행하며, FIFO 엠티 및 FIFO리드 신호에 의해 제1,제2,제3,제4FIFO메모리(110,120,130,140)와 FIFO 엠티 및 FIFO리드 신호를 주고 받으며, 심볼FIFO메모리(160)와 FIFO 엠티 및 FIFO라이트 신호를 주고 받는다. 이와 함께 디코딩 제어부(270)는 MPEG 규격에 따라 비트스트림디코더(260)를 제어한다. 즉, 가변 부호 테이블의 종류를 지정하는 명령(command), 명령 인에이블신호(command enable),추출할 고정 부호의 비트수 (code size)등을 지정하여 비트스트림 디코더(260)가 해당하는 디코딩을 수행하고 결과를 출력할 수있도록한다. 또한 디코딩 제어부(270)는 호스트 CPU와의 인터페이스, 동작 모드 결정, 디코딩 시간 제어, 3:2 풀-다운이나 스킵(skip)/리피트 (repeat)프레임과 같은 디스플레이 시간 제어를 수행한다.
도 3은 도 2의 디코딩 제어부(270)의 상세도이다.
도 3의 장치는 크게 RISC프로세서(310)와 매크로블럭디코더(350)로 구분된다.
도 3의 장치는 각 채널의 비디오 헤더로 부터 비디오 파라미터를 디코ㄷ이하고 전체 비디오 디코더의 콘트롤 및 디스플레이 콘트를을 수행하는 프로세서(310), 상기 프로세서(310)의 프로그램을 저장하는 프로그램 메모리(340), 다중 디코딩을 수행하기 위한 다중 스택(372,374,376,378) 및 제2멀티플렉서(370), 각 채널의 비디오의 콘트롤 파라미터 및 프로그램 파라미터를 독립적으로 저장하는 복수개의 다중 레지스터 뱅크(320), 인덱스값에 의해각 비디오의 동작 여부를 지시하는 복수개의 비디오 인에이블 신호(video 0, 1, 2, 3 enable)를 선택하는 제1멀티플렉서(330), 매크로 블럭을 빠른 속도로 디코딩하는 하드웨어 매크로블럭디코더(350), 프로세서(310)와 매크로블럭디코더 (350)에서 발생하는 명령(command, command enable, bit size)을 선택하는 제3멀티플렉서(360), 현재 디코딩할 비디오 채널을 지정하는 인덱스 레지스터(380)로 구성된다.
먼저, 제1멀티플렉서(330)는 인덱스 레지스터에 의해 4개의 비디오를 다중으로 동작시키기 위해 해당하는 비디오 인에이블신호(video0,1,2,3)를 선택한다. 4개의 레지스터 뱅크(320)는 제1멀티플렉서(330)에 의해 선택된 각 비디오에 대한 콘트롤 파라미터 및 프로그램 파라미터를 독립적으로 저장한다. 제3멀티플렉서(360)는 프로세서(310)와 매크로블럭디코더(350)에서 발생하는 명령(command, command enable, bit size)을 선택한다.
프로세서(310)는 호스트 CPU로 부터 비디오 디코딩 및 제어프로그램을 프로그램 메모리(340)에 다운로드하여 매크로블럭이상의 레벨로 디코딩하고 소프트웨어로 여러가지 제어를 수행한다. 매크로블럭디코더(350)는 압축 데이터의 대부분을 차지하는 매크로 블럭을 디코딩하는 하드웨어 모듈이다. 프로세서(310)가 매크로 블럭 이상의 레벨을 디코딩한 후 매크로블럭디코더(350)에 비트스트림디코더(260)의 제어권을 넘겨주면 매크로블럭디코더 (350)는 비트스트림디코더(260)에 대한 명령(command), 명령인에이블(command enable), 코드사이즈(code size) 신호의 제어권을 갖게된다. 다중 비디오 디코딩은 4개의 독립적인 디코딩 태스크가 하나의 프로세서(310)와 매크로블록디코더(350)를 공유하며 순서적으로 수행된다.
다중 비디오 디코딩을 위해 4개의 스택0,1,2,3(372,374,376,378)이 제2멀티플렉서(370)에 의해 멀티플렉싱되어 있으며, 제2멀티플렉서(370)는 인덱스 레지스터(380)값에 의해 각 스택을 선택한다. 인덱스 레지스터(380)는 2비트로서 프로세서(310)에서 발생하는 래치신호에 의해 '1'씩 증가(390)시키면 0, 1, 2, 3, 0, 1 , 2,......의 순서대로 4개의 채널 디코딩 태스크를 순환적으로 지정하게 된다. 각 채널에서 디코딩 태스크는 각각의 전용 입력 FIFO와 레지스터뱅크(320)를 갖고 있어서 각 디코딩 태스크의 비트 스트림과 비디오 파라메터 및 프로그램 상태(status)를 저장하고 있으며, 태스크 스위칭시 입력 FIFO와 레지스터뱅크(320)도 역시 지정된다.
스택들0,1,2,3(372,374,376,378)은 기존에 주메모리의 일정한 영역을 할당하여 사용되는 것과는 달리 하드웨어 레지스터로서 RISC의 프로그램 카운터(PC)값만이 저장된다.
프로세서(310)에서 명령어중 태스크 전환 함수 호출 명령어가 수행되면 현재의 PC값이 스택들(372,374,376,378)에 저장되도록 라이트(write)신호가 인에이블되고 해당 함수가 수행되며, 반대로 호출된 함수에서 리턴(return) 명령이 수행되면 리드(read)신호가 인에이블되어 스택들(372,374,376,378)에 저장되었던 PC값이 다시 로드되어 함수를 호출했던 PC값으로 복귀한다. 태스크 전환 함수 복귀 명령이 수행되면 새로 지정된 스택의 PC값이 로드되어 과거에 중지되었던 PC값에서 부터 새로운 태스크가 다시 수행된다.
도 4는 도 3의 장치를 적용한 태스크 스위칭 함수의 흐름도이다.
메인프로그램 수행중에 이 태스크 스위칭 함수가 호출되면 디코딩할 비디오 태스크의 PC값이 인덱스 레지스터(380)에서 지정된 스택들(372,374,376,378)중의 어느하나에 저장되며 태스크 스위칭 함수가 수행된다. 즉, 태스크 전환함수가 호출되면(410과정) 인덱스 레지스터(180)에 래치(latch)신호를 인가하여 그 값을 '1'증가시킨다(420과정). 이어서 비디오 인에이블인가를 체크하여(430과정) 비디오 인에이블이면 태스크 전환을 종료하고 그렇지 않으면 인덱스 레지스터값을 증가시켜 그 비디오 태스크를 스킵한다(440과정).
도 5는 본 발명에 따른 다중 비디오 디코딩 방법을 보이는 전체 흐름도이다.
MPEG-2 규격에서 사용되는 비트스트림은 비트열 신택스를 고려하여 시퀀스(sequence), GOP(Group Of Picture), 픽쳐, 슬라이스(slice), 매크로블럭(Macroblock)등의 계층으로 구분된다. 즉, 픽쳐 레이어는 복수개의 슬라이스 단위를 포함한다.
복수채널의 비트스트림은 슬라이스 단위로 태스크 스위칭되어 4채널의 비트스트림이 슬라이스 간격으로 시간 분할 다중화된다.
먼저, 메인프로그램 수행중 입력되는 비트스트림의 헤더(header) 정보중에서 스타트 코드(Start Code)를 서치한다(512과정). 이때 슬라이스 스타트 코드(Slice Start Code)이면(514과정) 슬라이스를 디코딩하고(516과정) 도 4의 태스크 스위칭 함수를 호출한다(518과정). 그러나 슬라이스 스타트 코드(Slice Start Code)가 아니고 픽쳐 스타트 코드(Picture Start Code)이면(524과정) 픽쳐 헤더를 디코딩하고(526과정) 난 후 디코딩 시작 시간을 대기하고 있는 동안 도 4의 태스크 스위칭 함수를 호출한다(528과정). 다음 픽쳐 스타트 코드(Picture Start Code)가 아니고 GOP 스타트 코드이면(534과정) GOP 헤더를 디코딩하고(536과정), GOP 스타트 코드가 아니고 시퀀스 스타트 코드(Sequence Start Code)이면(544과정) 시퀀스 헤더를 디코딩하며(546과정), 시퀀스 스타트 코드(Sequence Start Code)가 아니고 익스텐션 스타트 코드(Extention Start Code)이면(554과정) 익스텐션을 디코딩한다(556과정).
그러므로 스위칭 포인트(switching point)는 슬라이스 디코딩 직 후이며, 한 채널의 슬라이스 디코딩이 완료되면 디코딩 태스크로 스위칭하여 다음 채널의 슬라이스 디코딩을 수행한다. 또한 디코딩 디스플레이 시간 제어를 위해 수직 동기를 기다리는 대기 루프(waiting loop)내에 스위칭 포인트를 둠으로써 하나의 태스크가 대기 루프 상태에 진입하면 다음 태스크로 이동한다.
도 6은 도 5의 다중 디코딩 방법이 구현하는 개념도이다.
복수개의 채널중 제1채널로 부터 입력되는 픽쳐단위의 비트스트림을 먼저 제1슬라이스 디코딩하고 난 후 다음 채널의 제1슬라이스 디코딩 작업으로 전환한다. 여기서 다음 채널의 비디오 인에이블 상태를 체크하면서 순서적으로 제2,제3,제4채널의 슬라이스 단위을 디코딩한다. 각 채널들의 제1슬라이스 디코딩이 완료되면 제1채널로 복귀하여 다시 순서적으로 디코딩 작업을 수행하여 병렬로 입력되는 각 채널을 다중적으로 디코딩하게 된다.
상술한 바와 같이 본 발명에 의하면, 한 세트의 튜너 및 채널을 이용할 경우 하나의 HD급 비디오 디코더를 이용하여 한개의 트랜스폰더내의 4개채널의 SD급 비디오를 시간 다중 분할 방식으로 디코딩 함으로써 최소한의 하드웨어로 4개의 비디오 디코더를 병렬로 사용하는 것과 유사한 효과가 있으며, 특히 비디오 디코딩 태스크간의 전환을 위해 다중 스택 및 다중 레지스터 뱅크 구조를 포함시킴으로써 오퍼레이팅 시스템 커널(Operating System kernal) 수준의 복잡한 알고리듬을 구현하지 않고도 소프트웨어로 간단하게 태스크 전환 및 각 비디오에 대해 독립적으로 제어할 수있다.
또한 두 세트의 튜너 및 채널을 사용하여 서로 다른 트랜스폰더간의 비디오 채널을 입력할 경우 임의의 채널간의 다중 디코딩이 가능하며 PIP(Picture In Picture), POP(Picture Out of Picture)등의 기능을 구현할 수있다.
Claims (10)
- 복수개 슬라이스 단위의 비트스트림이 복수채널로 입력되고 그 복수개 채널의 비트스트림을 다중으로 디코딩하는 방법에 있어서,상기 복수개 채널중 한 채널의 슬라이스 단위를 디코딩하고 난 후 다음 채널의 슬라이스 단위의 디코딩 작업으로 전환하면서 순차적으로 상기 복수개 채널들의 슬라이스 단위를 디코딩하는 과정;상기 복수채널의 슬라이스 단위의 디코딩 작업이 완료되면 다시 한 채널 부터 다음 슬라이스 단위를 순차적으로 디코딩하여 상기 복수개 채널의 마지막 슬라이스 단위 까지 순환적으로 디코딩하는 과정을 포함하는 것을 특징으로 하는 다중 비디오 디코딩 방법.
- 제1항에 있어서, 상기 디코딩 작업은 슬라이스 단위 간격으로 전환되는 것임을 특징으로 하는 다중 비디오 디코딩 방법.
- 제1항에 있어서, 상기 디코딩 작업은 디코딩 전환 명령이 호출되면 인덱스 값을 증가시키고, 그 인덱스값에서 현재 채널의 디코딩이 비디오 인에이블인가를 체크하고, 상기 채널에서 비디오 인에이블이면 디코딩을 수행하고 그렇지 않으면 다음 채널의 디코딩으로 전환하는 과정을 포함하는 것을 특징으로 하는 다중 비디오 디코딩 방법.
- 제1항에 있어서, 상기 디코딩이 전환될 때마다 각 채널마다 디코딩할 비트스트림과 비디오 파라미터 및 프로그램 상태가 지정되는 것임을 특징으로 하는 다중비디오 디코딩 방법.
- 제1항에 있어서, 상기 디코딩 및 디스플레이 타임 콘트롤에 관련된 대기 루우프내에서 태스크가 전환되는 과정을 더 포함하는 것을 특징으로 하는 다중 비디오 디코딩 방법.
- 복수채널의 비디오 신호중에서 디코딩할 비디오 채널을 스위칭하는 태스크 전환 방법에 있어서,상기 태스크 전환 명령이 호출되면 인덱스 레지스터 값을 증가시키는 과정;상기 과정의 인덱스 레지스터값에서 현재 채널의 비디오 디코딩이 인에이블이면 태스크 전환을 종료하고 그렇지 않으면 인덱스 레지스터값을 증가시켜 다음 태스크로 전환하는 과정을 포함하는 것을 특징으로 하는 다중 비디오 디코딩 방법.
- 다중 비디오 디코딩 장치에 있어서,복수개 채널로 부터 입력되는 비트스트림중에서 디코딩할 채널의 비트스트림을 인덱스에 의해 순환적으로 지정하여 다중으로 디코딩하는 신택스프로세서;상기 신택스프로세서에서 디코딩된 해당 채널의 비트스트림를 소정의 비디오 복원 포맷에 의해 비디오 데이터로 복원하는 비디오프로세서를 포함하는 것을 특징으로 하는 다중 비디오 디코딩 장치.
- 제7항에 있어서, 상기 신택스 프로세서는디코딩할 채널의 프로그램 카운트값이 저장되어 있는 다중 스택;상기 다중 스택에 디코딩할 비디오 채널을 선택하는 인덱스값을 발생하는 인덱스 레지스터;디코딩 채널 전환시 프로그램 카운트값이 상기 다중 스택에 푸쉬된 상태에서 상기 인덱스 레지스터값을 증가시켜 디코딩할 채널을 슬라이스간격으로 순환선택하는 프로세서를 포함하는 것을 특징으로 하는 다중 비디오 디코딩 장치.
- 제8항에 있어서, 상기 프로세서는 슬라이스 단위 간격으로 디코딩 채널을 스위칭하는 것임을 특징으로 하는 다중 비디오 디코딩 장치.
- 제9항에 있어서, 각 채널 비트스트림의 콘트롤 파라미터 및 프로그램 파라미터를 독립적으로 저장하여 상기 인덱스 레지스터값에 의해 다중으로 지정되는 다중 레지스터를 더 포함하는 것을 특징으로 하는 다중 비디오 디코딩 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990015808A KR100335441B1 (ko) | 1999-05-01 | 1999-05-01 | 다중 비디오 디코딩 장치 및 그 방법 |
US10/789,984 US7421026B2 (en) | 1999-05-01 | 2004-03-02 | Multiplexing video decoding apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990015808A KR100335441B1 (ko) | 1999-05-01 | 1999-05-01 | 다중 비디오 디코딩 장치 및 그 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20000072875A KR20000072875A (ko) | 2000-12-05 |
KR100335441B1 true KR100335441B1 (ko) | 2002-05-04 |
Family
ID=19583451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019990015808A KR100335441B1 (ko) | 1999-05-01 | 1999-05-01 | 다중 비디오 디코딩 장치 및 그 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7421026B2 (ko) |
KR (1) | KR100335441B1 (ko) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7116712B2 (en) * | 2001-11-02 | 2006-10-03 | Koninklijke Philips Electronics, N.V. | Apparatus and method for parallel multimedia processing |
CN1985477B (zh) | 2004-05-13 | 2012-11-07 | 高通股份有限公司 | 用于分配信息到通信系统的信道的方法和设备 |
US7542042B1 (en) * | 2004-11-10 | 2009-06-02 | Nvidia Corporation | Subpicture overlay using fragment shader |
US8385427B2 (en) * | 2005-04-15 | 2013-02-26 | Apple Inc. | Reduced resolution video decode |
KR100700984B1 (ko) * | 2005-06-20 | 2007-03-29 | 삼성전자주식회사 | 영상처리장치 |
KR100801630B1 (ko) * | 2007-06-15 | 2008-02-05 | 디비코 주식회사 | 멀티코어 프로세서를 이용한 분산 디코딩 처리 장치 및방법 |
KR101392349B1 (ko) * | 2007-08-23 | 2014-05-19 | 삼성전자주식회사 | 비디오 디코딩 방법 및 장치 |
US9131240B2 (en) | 2007-08-23 | 2015-09-08 | Samsung Electronics Co., Ltd. | Video decoding method and apparatus which uses double buffering |
CN110235438B (zh) * | 2016-12-01 | 2021-12-28 | Lg 电子株式会社 | 图像显示设备和包含该图像显示设备的图像显示系统 |
CN107809684B (zh) * | 2017-10-27 | 2018-10-09 | 广东省南方数字电视无线传播有限公司 | 视频切片生成方法和装置、缓存服务器 |
CN113453075A (zh) * | 2020-03-26 | 2021-09-28 | 龙芯中科技术股份有限公司 | 多路视频的解码方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19980067540A (ko) * | 1997-02-05 | 1998-10-15 | 구자홍 | 트랜스포트 스트림(transport stream)의 다중·분리장치 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5691768A (en) * | 1995-07-07 | 1997-11-25 | Lucent Technologies, Inc. | Multiple resolution, multi-stream video system using a single standard decoder |
EP0783817B1 (en) * | 1995-07-19 | 2000-05-10 | Koninklijke Philips Electronics N.V. | Method and device for decoding digital video bitstreams and reception equipment including such a device |
JPH09205630A (ja) * | 1996-01-26 | 1997-08-05 | Matsushita Electric Ind Co Ltd | テレビジョン信号送信・受信方法、及びテレビジョン信号送信・受信装置 |
US5818539A (en) * | 1996-03-29 | 1998-10-06 | Matsushita Electric Corporation Of America | System and method for updating a system time constant (STC) counter following a discontinuity in an MPEG-2 transport data stream |
US5812760A (en) * | 1996-06-25 | 1998-09-22 | Lsi Logic Corporation | Programmable byte wise MPEG systems layer parser |
US6061711A (en) * | 1996-08-19 | 2000-05-09 | Samsung Electronics, Inc. | Efficient context saving and restoring in a multi-tasking computing system environment |
US6275507B1 (en) * | 1997-09-26 | 2001-08-14 | International Business Machines Corporation | Transport demultiplexor for an MPEG-2 compliant data stream |
KR100601602B1 (ko) * | 1999-03-24 | 2006-07-14 | 삼성전자주식회사 | 비트스트림 디코딩 장치 |
-
1999
- 1999-05-01 KR KR1019990015808A patent/KR100335441B1/ko not_active IP Right Cessation
-
2004
- 2004-03-02 US US10/789,984 patent/US7421026B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19980067540A (ko) * | 1997-02-05 | 1998-10-15 | 구자홍 | 트랜스포트 스트림(transport stream)의 다중·분리장치 |
Also Published As
Publication number | Publication date |
---|---|
US7421026B2 (en) | 2008-09-02 |
US20040174912A1 (en) | 2004-09-09 |
KR20000072875A (ko) | 2000-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100320476B1 (ko) | 비디오 디코더 및 디코딩 방법 | |
US10511849B2 (en) | Decoding method and apparatus enabling fast channel change of compressed video | |
KR100375845B1 (ko) | 가변 레이트 mpeg2 비디오 신택스 프로세서 | |
KR100504471B1 (ko) | 비디오 디코딩 시스템 | |
RU2511595C2 (ru) | Устройство декодирования сигнала изображения, способ декодирования сигнала изображения, устройство кодирования сигнала изображения, способ кодирования изображения и программа | |
JP3836143B2 (ja) | 複数のディジタルビデオビットストリームを復号化する方法及び装置及びこのような装置を含む受信装置 | |
US9020047B2 (en) | Image decoding device | |
KR100215444B1 (ko) | 더 낮은 레벨에서의 부호화된 복수 채널의 비데오데이터를 복호화하기 위한 더 높은 레벨의 복호화성능을 갖는 복호화 장치 | |
US7292772B2 (en) | Method and apparatus for decoding and recording medium for a coded video stream | |
KR100335441B1 (ko) | 다중 비디오 디코딩 장치 및 그 방법 | |
KR100334364B1 (ko) | 온-스크린 디스플레이 스크롤 장치 | |
KR100902007B1 (ko) | 비디오 스트림 처리 장치 | |
KR100640885B1 (ko) | 듀얼 비디오 디코딩을 위한 비디오 버퍼 제어 장치 | |
US5666115A (en) | Shifter stage for variable-length digital code decoder | |
JP4906197B2 (ja) | 復号装置および方法、並びに記録媒体 | |
EP1051839A2 (en) | Method and apparatus for advanced television signal encoding and decoding | |
JPH11239347A (ja) | 画像データ符号化装置及び画像データ符号化方法 | |
JPH09247667A (ja) | 動画像符号化装置および動画像復号化装置 | |
JP2001309371A (ja) | Mpegデコーダ | |
KR100988622B1 (ko) | 영상 부호화 방법, 복호화 방법, 영상 표시 장치 및 그기록 매체 | |
KR20010056374A (ko) | 다중 비디오 디코딩 장치 | |
KR20010037712A (ko) | Hd급 비디오 디코더를 이용한 sd급 영상의 2화면 디스플레이 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
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: 20120329 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20130328 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20160330 Year of fee payment: 15 |
|
LAPS | Lapse due to unpaid annual fee |