KR100934290B1 - 엠피이지-2 4:2:2-프로파일 비트스트림을 메인-프로파일비트스트림으로 컨버팅 하기 위한 방법 및 아키텍처 - Google Patents

엠피이지-2 4:2:2-프로파일 비트스트림을 메인-프로파일비트스트림으로 컨버팅 하기 위한 방법 및 아키텍처 Download PDF

Info

Publication number
KR100934290B1
KR100934290B1 KR1020017010469A KR20017010469A KR100934290B1 KR 100934290 B1 KR100934290 B1 KR 100934290B1 KR 1020017010469 A KR1020017010469 A KR 1020017010469A KR 20017010469 A KR20017010469 A KR 20017010469A KR 100934290 B1 KR100934290 B1 KR 100934290B1
Authority
KR
South Korea
Prior art keywords
chroma
format
data
bitstream
luma
Prior art date
Application number
KR1020017010469A
Other languages
English (en)
Other versions
KR20010102228A (ko
Inventor
쑤에민첸
리민왕
아재이루쓰라
로버트오.에이프릭
Original Assignee
제너럴 인스트루먼트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 제너럴 인스트루먼트 코포레이션 filed Critical 제너럴 인스트루먼트 코포레이션
Publication of KR20010102228A publication Critical patent/KR20010102228A/ko
Application granted granted Critical
Publication of KR100934290B1 publication Critical patent/KR100934290B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N11/00Colour television systems
    • H04N11/04Colour television systems using pulse code modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals

Abstract

본 발명은 디지털 비디오 비트스트림의 색 포맷을 컨버팅 하기 위한 시스템을 제공한다. 시스템은, 양자화기(355) 정밀도 레벨을 포함하여, 프리-컨버전 및 포스트-컨버전 비트스트림의 허용가능 포맷을 설명하고, 루마 및 크로마 데이터가 각각의 양자화 매트릭스(385, 390)를 갖는지의 여부, 또는 공통 양자화 매트릭스를 공유하는지의 여부를 설명한다. 특히 실행에 있어서, 4:2:2 또는 4:2:0의 색 포맷을 갖는 MPEG-2 4:2:P 비트스트림은 4:2:0의 색 포맷을 갖는 MP 비트스트림으로 컨버트 된다. 크로마 데이터를 재양자화 하기 위해 루마 양자화 매트릭스(390)를 사용하고, 크로마 데이터의 동작보상 320, 325, 510을 수행하기 위한 루마 움직임벡터 MV를 재사용함으로써 코딩 효율이 달성된다. 인터 코드된 프레임을 컨버팅 하기 위한 4:2:0 포맷의 4:2:2 기준 픽처를 표시하고, 픽셀 다운사이징 필터(340) 및 클립 기능(335)의 위치를 변경함으로써 효율이 더 달성될 수 있다. 양자화 정밀도의 조절 130, 230, 382가 원하는만큼 제공된다. 또한, 트랜스코딩 기능(800)도 달성될 수 있다.

Description

엠피이지-2 4:2:2-프로파일 비트스트림을 메인-프로파일 비트스트림으로 컨버팅 하기 위한 방법 및 아키텍처{METHOD AND ARCHITECTURE FOR CONVERTING MPEG-2 4:2:2-PROFILE BITSTREAMS INTO MAIN-PROFILE BITSTREAMS}
본 발명은, 디지털 비디오 비트스트림의 포맷을 컨버팅 하기 위한 시스템을 제공하는 것에 관한 것이다. 특히, 본 발명은 MPEG-2 디지털 비디오 데이터를 4:2:2 프로파일 포맷에서 메인 프로파일 포맷으로 컨버팅 하는데 적합하다.
이하의 두문자어(頭文字語) 및 약어가 이용된다.
4:2:2P - 4:2:2 프로파일(Profile);
CBP - 코드화 블록 패턴(Coded Block Pattern);
DCT - 이산코싸인변환(Discrete Cosine Transform);
HDTV - 고품질 텔레비젼(High Definition Television);
HL - 하이레벨(High Level);
IDCT - 역이산코싸인변환(Inverse DCT);
MB - 매크로블록(Macroblock);
MC - 동작보상(Motion Compensation);
ML - 메인 레벨(Main Level);
MP - 메인 프로파일(Main Profile);
MV - 움직임벡터(Motion Vector);
QDC - 양자화 다이렉트 커런트(Quantized Direct Current);
SDTV - 표준품질 텔레비젼(Standard Definition Television);
VBV - 비디오 버퍼 검증기(Video Buffer Verifier);
VLC - 가변길이 코더(Variable Length Coder);
VLD - 가변길이 디코더(Variable Length Decoder).
비디오 이미지는 픽셀(pixel)이나 펠(pel)로도 알려진 다수의 화소(picture element)로 정의된다. 이미지의 래스터 스캔라인의 가장 작은 요소인 픽셀은 관련된 색공간을 갖는다. 예컨대, YCrCb 색공간에서, Y는 루미넌스 성분이고, Cr 및 Cb는 색차성분이다. 4:4:4, 4:2:2 및, 4:2:0을 포함한 여러가지 샘플링 포맷이 정의된다. 예컨대, 4:2:2 포맷의 경우, 매크로블록은 4개의 8×8 Y블록, 2개의 8×8 Cr블록 및 2개의 8×8 Cb블록을 갖는다. 이러한 포맷의 경우, Y, Cr 및 Cb성분에 대한 샘플링 주파수는 각각 13.5MHz, 6.75MHz 및 6.75MHz이다.
4:2:0 포맷의 경우, 매크로블록은 4개의 8×8 Y블록, 1개의 8×8 Cr블록 및 1개의 8×8 Cb블록을 갖는다.
더욱이, 다양한 디지털 비디오 코딩 표준이, 특히 1995년 ISO/IEC 13818-2 MPEG-2 비디오(ITU-RH.262)에서 정의된 MPEG-2 표준을 포함하는 비디오 데이터를 코딩하기 위해 개발되었다.
MPEG-2는 2-디멘저널 랭킹 오더(two-dimensional ranking order)를 이용하는 몇몇 일련의 제한된 파라메터를 나타낸다. "프로파일(profile)" 시리즈라 불리워지는 하나의 디멘전(dimension)은 서포트된 코딩 특징을 지정한다. "레벨(level)"이라 불리워지는 또 다른 디멘전은 조절될 수 있는 픽처 해상도, 비트율 등을 지정한다. 가장 중요한 프로파일-레벨 결합은 메인 레벨에서 메인 프로파일, 또는 MP@ML로 불리워진다. MP@ML은 4:2:0 색 서브샘플링비를 서포트한다.
메인 프로파일 외에, 다른 프로파일이 존재한다. 예컨대, 심플 프로파일은 메인 프로파일과 유사하지만 B-픽처는 갖지 않는다. SNR 스케일가능 프로파일은 메인 프로파일에 SNR 스케일성을 추가한다. 공간적 스케일가능 프로파일은 SNR 스케일가능 프로파일에 공간 스케일성을 추가한다. 하이 프로파일은 공간 스케일가능 프로파일에 4:2:2 색 포맷 가능성을 추가한다.
메인 레벨은 CCIR 601 비디오를 위해 정의되고, 반면 심플 레벨은 표준중개포맷(SIF; Standard Intermediate Format) 비디오를 위해 정의된다. 또한, HDTV를 위한 2개의 고레벨은 라인마다 최대 1440픽셀을 갖는 하이-1440 레벨이고, 라인마다 최대 1920픽셀을 갖는 하이레벨이다.
더욱이, 4:2:2와 4:2:0 색 포맷 모두를 수용하는 4:2:2P로도 언급된 4:2:2 프로파일이 최근 개발되고 있다. 참조에 의해 각각 여기에 통합되는 1996년 1월의 ISO/IEC 13818-2 개정2, 메인 레벨에서의 MPEG-2 4:2:2 프로파일과; 1997년의 ANSI/SMPTE 308M, 하이레벨에서의 텔레비전-MPEG-2 4:2:2 프로파일을 위한 SMPTE STANDARD 및; 1998년 3월의 ISO/IEC 13818-2 제안 초안 개정5, 하이레벨에서의 4:2:2 프로파일 참조.
4:2:2 프로파일은 압축된 비디오의 쉬운 편집과 비디오의 멀티플-제네레이션 인코딩/디코딩이 중요한 요건인 전문적인 비디오 애플리케이션을 나타낸다. 이러한 프로파일에 의해 타겟된 주요한 애플리케이션은 이하와 같다:
ㆍ 저장
ㆍ 가상효과의 편집 및 생성
ㆍ 전문적인 사용을 위한 비디오 테이프 또는 디스크 레코딩(기여 품질)
ㆍ 고품질 비디오 시퀀스의 스튜디오 포스트-프로덕션
ㆍ 기여 품질 비디오의 저장 및 분배를 위한 효율적인 전송
4:2:2P는 보다 높은 비디오 품질과, 보다 양호한 크로마(croma) 해상도를 제공하고, 메인 프로파일(예컨대, MP@ML)보다 높은 비트율(메인 레벨(ML)에서, 50Mbit/s까지)을 허용할 수 있다. 특히, 4:2:2P는 루마(luma) 및 크로마 데이터를 위한 각각의 양자화 매트릭스를 제공한다. 스튜디오 애플리케이션에 있어서, 최고품질 비디오 및 ITU-R 601 4:2:2 비디오 포맷은 종종 쉬운 크로마 키잉 및 다른 특수효과를 필요로 한다. 쉬운 편집의 요구 때문에, 높은 코딩 비트율도 야기하는 빈번한 INTRA픽처가 필요하다. 4:2:2P는 모든 I-픽처 인코딩을 허락한다. 이것은 전송에러를 빠르게 복구할 수 있고 애플리케이션을 간단히 편집할 수 있다.
또한, 4:2:0 색 포맷을 갖는 4:2:2P조차도 4:2:2P가 보다 큰 양자화 정밀도를 허용하기 때문에 동일한 색 포맷을 갖는 MP보다 양호한 품질의 이미지를 제공할 수 있다.
더욱이, 4:2:2P는 고품질을 유지하기 위해 필요한 고비트율을 허용하지만 I-픽처 코딩만을 이용한다. 또한, 4:2:2P는 품질을 더 개선하거나 동일한 품질을 위해 비트율을 감소시킬 수 있는 P-픽처 및 B-픽처 코딩타입의 이용을 허용한다.
더욱이, 통상의 TV방송 네트워크에 있어서는, 비디오가 소비자 가정에서 수신되기 위해 소비자에게 분배되기 전에 로컬 프로그래밍 정보 및 광고를 비디오에 부가하는 로컬 TV 스테이션과 같은 인코드/디코드의 멀티플 제네레이션, 예컨대 케이블 텔레비전 네트워크를 통해 비디오가 전송된다. 더욱이, 아날로그 TV의 경우, 인코드/디코드의 멀티플 제네레이션은 상당한 픽처 품질의 손상을 야기할 수 있다. 한편, 4:2:2P는 멀티플 제네레이션의 인코딩/디코딩 후 고품질을 보호할 수 있다. 제네레이션간 픽처 코딩타입의 변경이나 픽처 조작이 없는 멀티플 제네레이션의 경우, 4:2:2P 코더로부터의 품질은 첫번째 제네레이션 이후 거의 일정함을 유지한다. 제네레이션간 픽처 코딩타입의 변경이나 픽처 조작의 이용은 약간의 품질의 저하를 야기한다. 그럼에도 불구하고, 그 결과의 품질은 광범위한 애플리케이션을 받아들일 수 있다.
통상, TV 스튜디오는 보통 ITU-R 601 소스 비디오인 "기여 품질(contribution quality)" 비디오, 또는 4:2:2P@ML(또는, 4:2:2P@HL) 압축 비디오를 생성한다. 다음에 이 비디오가 인코딩되어 "분배 품질(distribution quality)"TV로 전송된다. 북미의 디지털 텔레비전 및 HDTV는 비디오 코딩 표준으로서 MPEG-2 MP@ML 및 MP@HL을 채용하고 있다. MP@ML 및 MP@HL은 모두 4:2:0 포맷 분배 품질 비디오만을 인코딩 하여 전송한다. MP는 루마 및 크로마 데이터를 위한 공통 양자화 매트릭스를 제공한다. 예컨대, 압축 비디오, 압축 오디오, 조건적인 액세스 및, 보조 데이터 채널을 포함하는 HDTV 시스템을 위한 총 데이터율은 18 내지 20Mbits/s 근방이다.
따라서, 4:2:2P 프리-압축 기여 품질 비트스트림을 MP 분배 품질 비트스트림으로 컨버트(convert) 하기 위한 효율적인 시스템이 필요하다.
코딩의 복잡성을 감소시키기 위해, 시스템은 움직임벡터를 재생하고, MB 코딩타입 변경에 필요성을 피하며, 크로마 블록을 프로세싱 하기 위한 싱글 MC유닛만을 사용할 수 있게 한다. 더욱이, 시스템은 INTER 코드된 MB의 상주 크로마-블록에 10분의 1-필터링 프로세스를 수행할 가능성을 제공한다.
시스템은, 그것이 4:2:2P 비트스트림에 나타나면 포맷 컨버전(conversion)동안 크로마 양자화 매트릭스를 교체하기 위한 간단한 접근을 제공한다.
시스템은, 크로마 블록을 위한 CBP를 세분한다.
또한, 시스템은 사용된 코딩 표준에 맞추기 위해 요구된 MPEG DC 계수 정밀도 변수인 intra_dc_precision의 조절을 제공한다. 예컨대, MP 비트스트림을 위한 최대 허용 intra_dc_precision 레벨은 4:2:2P 비트스트림보다 낮다.
시스템은, 조합된 4:2:2 대 4:2:0 컨버터 및 포맷 컨버전에 의한 4:2:2P 대 MP 트랜스코딩을 수행하기 위한 통상 트랜스코더를 제공한다.
시스템은, 포맷 컨버전동안 프로세스된 비트스트림을 완전히 디코드하는 것을 피할 수 있다.
본 발명은 상술한 장점 및 그 이외의 장점을 갖는 시스템을 제공한다.
본 발명은, 4:2:2P 프리-압축 기여 품질 비트스트림을 MP 분배 품질 비트스트림으로 컨버팅 하기 위한 것과 같은 디지털 비디오 비트스트림의 포맷을 컨버팅 하기 위한 것이다.
제1포맷을 갖는 프리-컨버전 비트스트림을 제2포맷을 갖는 포스트-컨버전 비트스트림으로 컨버팅 하기 위한 방법은, 픽셀 도메인에서 크로마 데이터를 복원된 크로마 데이터로 복원하기 위해 프리-컨버전 비트스트림을 적어도 부분적으로 신장하는 단계와, 프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 양자화 매트릭스 데이터를 복원하는 단계 및, 상기 제2포맷을 갖는 상기 포스트-컨버전 비트스트림을 제공하기 위해 복원된 루마 양자화 매트릭스에 따라 복원된 크로마 데이터에 대응하는 데이터를 재양자화함으로써 복원된 크로마 데이터에 대응하는 데이터를 재압축하는 단계를 포함한다.
프리-컨버전 비트스트림이 인터 코드된 이미지로 이루어지고, 복원된 크로마 데이터가 프리-컨버트된 비트스트림의 제1포맷에 대응하는 제1크로마 포맷을 가질 경우, 상기 방법은, 프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 움직임벡터를 복원하는 단계와, 인터-코드된 이미지에 대한 복원된 크로마 데이터의 제1동작보상 프로세싱을 수행하기 위해 복원된 루마 움직임벡터를 이용하는 단계(여기서, 상기 제1동작보상 프로세싱은 제1크로마 포맷을 이용), 포스트-컨버전 비트스트림의 제2포맷에 대응하는 제2크로마 포맷을 갖는 크로마 데이터를 제공하기 위해 상기 제1동작보상 프로세싱 후에 크로마 데이터를 필터링하는 단계 및, 재압축 단계를 위한 데이터를 제공하기 위해 제2크로마 포맷을 갖는 크로마 데이터의 제2동작보상 프로세싱을 수행하도록 복원된 루마 움직임벡터를 이용하는 단계를 더 포함한다.
제2크로마 포맷의 경우, 하나의 크로마 블록은 제1크로마 포맷의 적어도 모든 2개의 크로마 블록에 제공된다(예컨대, 2개의 4:2:2의 블록 및 1개의 4:2:0의 블록).
필터링 단계에 의해 제공된 제2크로마 포맷을 갖는 크로마 데이터에 대응하는 데이터는, 제2동작보상 프로세싱을 위한 데이터를 제공하기 위해 픽셀 도메인에서 변환 도메인으로 변환된 후, 양자화 된 다음, 역양자화 된 후 역변환된다.
상기 방법은, 프리-컨버전 비트스트림으로부터 제1양자화 정밀도 레벨을 복원하는 단계와, 상기 제1양자화 정밀도 레벨이 포스트-컨버전 비트스트림의 제2포맷의 최대 허용 정밀도 레벨보다 크면, (i) 제1양자화 정밀도 레벨을 저하시키고, (ii) 프리-컨버전 비트스트림으로부터 DC 루마 변환 데이터를 복원하며, (iii) 저하된 양자화 정밀도 레벨에 따라 상기 복원된 DC 루마 변환 데이터에 대응하는 데이터를 재양자화 하는 단계를 더 포함한다.
또한, 프리-컨버전 비트스트림이 인터 코드된 이미지로 이루어지고, 복원된 크로마 데이터가 프리-컨버트된 비트스트림의 제1포맷에 대응하는 제1크로마 포맷을 가질 경우, 상기 방법은, 포스트-컨버전 비트스트림의 제2포맷에 대응하는 제2크로마 포맷을 갖는 상주 크로마 데이터를 제공하기 위해 복원된 크로마 데이터를 필터링하는 단계와, 프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 움직임벡터를 복원하기 위한 단계 및, 재압축 단계를 위한 데이터를 제공하기 위해 인터-코드된 이미지의 상주 크로마 데이터에 대응하는 데이터의 동작보상 프로세싱을 수행하도록 복원된 루마 움직임벡터를 이용하는 단계를 더 포함한다. 여기서, 상기 동작보상 프로세싱은 제2크로마 포맷을 이용하기 때문에, 하나의 동작보상기만이 요구된다. 크로마 에러가 결과 이미지의 루마 에러보다 검출가능성이 낮기 때문에, 보통 에러는 문제되지는 않는다.
제1포맷은 MPEG 4:2:2 프로파일 포맷이고, 제2포맷은 MPEG 메인 프로파일 포맷이다.
프리-컨버전 비트스트림의 코드된 블록 패턴은 포스트-컨버전 비트스트림에 이용하기 위해 변경된다.
더욱이, 프리-컨버전 비트스트림과 포스트-컨버전 비트스트림은 동일한 매크로블록 코딩타입을 이용한다.
더욱이, 재양자화 단계는 포스트-컨버전 비트스트림의 비트율을 설정하기 위한 비율제어신호에 따른다.
복원된 루마 양자화 매트릭스가 포스트-컨버전 비트스트림의 코딩 효율을 향상시키기 위해 변경된다.
또한, 대응하는 장치가 제공된다.
도 1은 본 발명에 따른 4:2:2P 대 MP 비트스트림 컨버팅에 대한 제1접근을 나타낸 도면이다.
도 2는 본 발명에 따른 4:2:2P 대 MP 비트스트림 컨버팅에 대한 제2접근을 나타낸 도면이다.
도 3은 본 발명에 따른 4:2:2P 4:2:2 비트스트림에서 MP 4:2:0 비트스트림으로의 크로미넌스 블록 비트스트림 컨버전을 나타낸 도면이다.
도 4는 본 발명에 따른 4:2:2P 4:2:2 비트스트림에서 MP 4:2:0 비트스트림으로의 단순화된 크로미넌스 블록 비트스트림 컨버전을 나타낸 도면이다.
도 5는 본 발명에 따른 4:2:2P 4:2:2 비트스트림에서 MP 4:2:0 비트스트림으로의 근사 크로미넌스 블록 비트스트림 컨버전을 나타낸 도면이다.
도 6은 본 발명에 따른 4:2:2P 4:2:0 비트스트림에서 MP 4:2:0 비트스트림으로의 크로미넌스- 블록 비트스트림 컨버전을 나타낸 도면이다.
도 7은 본 발명에 따른 intra_dc_precision=11일 경우, 4:2:2P 4:2:2 또는 4:2:0 비트스트림에서 MP 4:2:0 비트스트림으로의 루미넌스-블록 비트스트림 컨버전을 나타낸 도면이다.
도 8은 본 발명에 따른 4:2:2 대 4:2:0 컨버터와 트랜스코더의 결합을 나타낸 도면이다.
본 발명은, 4:2:2P 프리-압축 기여 품질 비트스트림을 MP 분배 품질 비트스트림으로 컨버팅 하기 위한 접근에 관한 것이다.
일반적으로, MPEG-2 트랜스코더(transcoder)는 프리-압축 MPEG-2 비트스트림을 새로운 비율의 또 다른 MPEG-2 비트스트림으로 컨버팅 하는 기구이다. MPEG-2 4:2:2P@ML(또는, 4:2:2P@HL) 비트스트림을 MP@ML(또는, MP@HL) 비트스트림으로 컨 버팅 하기 위한 트랜스코더는 캐스캐이드(cascade)된 4:2:2P(@ML 또는 @HL) 또는 MP 트랜스코더 및 비율제어의 4:2:0 컨버터(converter)일 수 있다. 이하의 트랜스코딩의 경우는 특수한 관계에 있다: 즉, 4:2:2P@ML 대 MP@ML, 4:2:2P@HL 대 MP@ML 및, 4:2:2P@HL 대 MP@HL. HL에서 ML로의 트랜스코딩, 예컨대 HDTV 포맷에서 SDTV 포맷으로의 트랜스코딩은 매우 흔하다. 그러나, 일반적으로 ML에서 HL로의 트랜스코딩은, 높은 비트율을 야기하지만 픽처 품질을 향상시키지 못하기 때문에 중요하지 않다. 일단, ML 비트스트림으로부터 고해상도를 원한다면, 비트스트림이 디코드될 수 있고, 포스트-프로세싱 보간법(interpolation)이 이미지를 확대시키기 위해 사용될 수 있다.
도 1 및 도 2에 도시한 바와 같이, 4:2:2P 대 MP 트랜스코딩을 달성하기 위한 2가지의 다른 접근이 있다.
도면에 있어서, 동일한 번호의 구성요소는 또 다른 것에 대응된다.
도 1은 본 발명에 따른 4:2:2P 대 MP 비트스트림 트랜스코딩에 대한 제1접근을 나타낸다. 여기서, 프리-압축된 4:2:2P 비트스트림이 입력되면, 4:2:2 대 4:2:0 비트스트림 컨버터(110)는 4:2:2 비트스트림을 부분적으로 디코드 하고, MP 비트스트림을 제공하기 위해 그 결과를 재어샘플 한다. 다음에, 기존의 4:2:0 트랜스코더(120)가 새로운 비율의 새로운 MP 압축 비트스트림을 생성하기 위해 이용된다. 비율제어 기능(130)은 트랜스코더(120)에 의해 출력된 비트스트림의 비율을 제어한다.
도 2는 본 발명에 따른 4:2:2P 대 MP 비트스트림 트랜스코딩에 대한 제2접근 을 나타낸다. 여기서, 프리-압축된 4:2:2P 비트스트림이 입력되면, 비율제어 기능(230)의 제어하에서, 새로운 비율의 MP 압축된 비트스트림을 생성하기 위해 4:2:2P 트랜스코더(210)가 4:2:2 대 4:2:0 비트스트림 컨버터(220)와 캐스캐이드 된다.
비율제어의 경우, 특별히 주의할 것은 4:2:0 크로마 포맷의 매크로블록 내의 최대 비트수가 4,608비트로 상회되기 때문에 각 매크로블록 내의 최대 비트수로 보상되어야 하지만, 4:2:2P 4:2:2 크로마 포맷의 매크로블록에 구애받지는 않는다.
본 발명은 4:2:2 대 4:2:0 비트스트림 컨버터(110, 220)에 초점을 맞춘다.
4:2:2P@ML 포맷은 많은 방식에서의 MP@ML 포맷에 대한 확장이다. 키 ML 특징이 표 1에 요약되어 있다. 유사하게, 4:2:2P@HL은 많은 방식에서의 MP@HL에 대한 확장이다. 키 HL 특징이 표 2에 요약되어 있다.
표 1 - 4:2:2P@ML 및 MP@ML
4:2:2P@ML MP@ML
크로마 포맷 4:2:2 또는 4:2:0 4:2:0
프로파일 및 레벨 식별 10000101 1001000
반복 제1필드 512라인 이상의 픽처에 대한 2개의 추가적인 제약조건을 갖는 MP@ML로 제한: B픽처는 프레임율이 25Hz이면 반복된 제1필드를 갖지 않는다. MPEG-2 비디오의 테이블 8-7
인트라 DC 정밀도: 8,9,10, 또는 11 bits 8,9 또는 10 bits
샘플밀도의 상한: 720 samples/line, 608 lines/frame, 30 frames/sec.(30Hz의 512 lines/frame, 25Hz의 608 lines/frame). 720 samples/line, 576 lines/frame, 30 frames/sec.
루마 샘플율의 상한: 11,059,200 pixels/sec. 10,368,000 pixels/sec.
비트율의 상한: 50 MB/sec. 15 Mbits/sec.
최대 VBV 버퍼크기: 9,437,184 bits 1,835,008 bits
양자화 테이블 각각의 루미넌스 및 크로미넌스 양자화 테이블 루미넌스 및 크로미넌스 모두의 동일한 테이블
매크로블록의 최대 비트수 4:2:2의 비제약, 4:2:0의 4,608 4,608
표 2 - 4:2:2P@HL 및 MP@HL
4:2:2P@HL MP@HL
크로마 포맷 4:2:2 또는 4:2:0 4:2:0
프로파일 및 레벨 식별 10000010 1000100
반복 제1필드 1152라인 이상의 픽처에 대한 2개의 추가적인 제약조건을 갖는 MP@HL로 제한: B픽처는 프레임율이 25Hz이면 반복된 제1필드를 갖지 않는다. MPEG-2 비디오의 테이블 8-7
인트라 DC 정밀도: 8,9,10, 또는 11 bits 8,9 또는 10 bits
샘플밀도의 상한: 1920 samples/line, 1152 lines/frame, 60 frames/sec. 1920 samples/line, 1152 lines/frame, 60 frames/sec.
루마 샘플율의 상한: 62,668,800 pixels/sec. 62,668,800 pixels/sec.
비트율의 상한: 300 MB/sec. 80 Mbits/sec.
최대 VBV 버퍼크기: 47,185,920 bits 9,781,248 bits
양자화 테이블 각각의 루미넌스 및 크로미넌스 양자화 테이블 루미넌스 및 크로미넌스 모두의 동일한 테이블
매크로블록의 최대 비트수 비제약 4,608
4:2:2P 비트스트림의 코드된 매크로블록 타입을 변경시키지 않고, 표 1 및 2에 주어진 4:2:2P와 MP간 차는 표 3에 리스트된 신택스로 변경가능하다.
VLC 코드화 용어 macroblock_type으로 주어진 매크로블록 타입은 이하를 포함하는 매크로블록의 다수의 다른 특성을 나타낸다:
quant_scale_code가 비트스트림에 존재하는지의 여부(macroblock_quant),
포워드 또는 백워드 동작보상이 사용되는지의 여부(각각 macroblock_motion_forward 및 macroblock_motion_backward),
coded_block_pattern이 비트스트림에 존재하는지의 여부( macroblock_pattern),
매크로블록이 intra-coded인지의 여부(macroblock_intra),
spatial_temporal_weight_code가 비트스트림에 존재하는지의 여부(spatial_temporal_weight_code_flag) 및,
허가된 spatial_temporal_weight_classes.
표 3 - 가능한 신택스 변경
신택스 변경의 요소 신택스 변경 액션
A Sequence_header()에서, re-set vbv_buffer_size_value=1,835,008@ML(9,781,248@HL) 및 re-set bit_rate_value. Sequence_extension()에서,re-set profile_and_level_indication=0 100 1000@ML(0 100 0100@HL). Picture_header()에서, re-compute 및 re-set vbv_delay.
B Sequence_extension()에서, re-set chroma_format="4:2:0".
C Picture_coding_extension()에서, re-set intra_dc_precision=8,9, 또는 10(programmable). Set chroma_420_type=progressive_frame;
D Quant_matrix_extension(), re-set load_chroma_intra_quantiser_matrix=0 및 제거 chroma_intra_quantiser_matrix[64].
E Quant_matrix_extension(), re-set load_chroma_non_intra_quantiser_matrix=0 및 제거 chroma_non_intra_quantiser_matrix[64].
F 각 매크로블록에 대한 코드된 블록 패턴을 변경.
표 3에 기술된 신택스 변경 액션은 MPEG-2 표준에 기술된 "시퀀스 헤더", "시퀀스 확장", "픽처 헤더", "픽처 코딩 확장" 및, "양의 매트릭스 확장"의 신택스에 의해 더 이해될 수 있다.
오리지널 intra_dc_precision=11비트이면, MP와의 호환성을 위해 8, 9 또는 10비트로 리셋된다.
MPEG 파라메터 intra_dc_precision은 각각 8, 9, 10 또는 11비트의 정밀도를 나타내기 위해 2진값 00, 01, 10 또는 11를 갖도록 정의된 2비트 정수이다. 파라메터 intra_dc_precision은 인트라 코드된 블록의 DC계수의 역양자화를 위해 사용된 승수 intra_dc_mult에 대한 값을 나타낸다. 즉, 각각의 00, 01, 10 또는 11의 intra_dc_precision에 대한 intra_dc_mult=8, 4, 2 또는 1이다.
일반적으로, 역양자화의 경우, 계수 QF[v][u]의 2-디멘저널 어레이는 재구성 된 DCT계수를 생성하기 위해 역양자화 된다. 본질적으로, 이러한 프로세스는 양자화기 스탭 크기에 의한 곱셈이다. 양자화기 스탭 크기는 2개의 메카니즘에 의해 변경된다. 즉, 블록 내에 스탭 크기를 변경하기 위해 가중 매트릭스가 이용되고, 몇비트만을 희생하여 스탭 크기가 변경될 수 있도록 스케일 요소가 이용된다(완전한 새로운 가중 매트릭스를 인코딩하도록 비교된 것과 같이).
양자화 스케일 요소를 나타내는 비표시의 1 내지 31 범위의 비제로 정수인 quantiser_scale_code와, 가중 매트릭스 W[w][v][u]를 이용하여 컨버트 되는 비트스트림의 변환계수로 적절한 역양자화 계산이 수행된다. F'[v][u]를 산출하기 위해 상기 결과의 계수인 F''[v][u]가 제공된 후, 최종 재구성된 DCT계수 F[v][u]를 부여하기 위해 미스매치(mismatch) 제어동작이 수행된다.
2개의 가중 매트릭스가 4:2:0 데이터에 이용된다. 그 하나가 인트라 매크로블록(루마 및 크로마)이고, 또 하나가 비인트라 매크로블록(루마 및 크로마)이다. 4:2:2 데이터의 경우에는 4개의 매트릭스가 이용된다(인트라 루마, 인트라 크로마, 비인트라 루마 및, 비인트라 크로마). 따라서, 루미넌스 및 크로미넌스 데이터에 다른 매트릭스가 이용될 수 있다. 각각의 매트릭스는, 사용자 정의 매트릭스를 다운로딩함으로써 겹쳐써지는 일련의 디폴트(default) 값을 갖는다.
가중 매트릭스 W[w][v][u]의 경우, w는, 매트릭스중 어느 것이 사용되는가를 나타내는 값 0 내지 3을 취한다. 표 4는 w의 선택을 제어하는 룰을 요약한다.

표 4 - w의 선택
4:2:0 4:2:2
루마 크로마 루마 크로마
인트라 블록(macroblock_intra=1 0 0 0 2
비인트라 블록(macroblock_intra=0 1 1 1 3
인트라 블록의 경우, 양자화된 DCT 변환계수 QF[0][0]의 2-디멘저널 어레이의 DC값은 AC값과 다르게 처리된다. 관계 F''[0][0]=intra_dc_mult×QF[0][0]에 따라 DCT 변환 DC계수 어레이 값을 생성하기 위해 DC값이 역양자화 된다.
더욱이, vbv_delay가 vbv_dely(n)=Bd(n)/R로부터 재계산된다. 여기서, Bd(n)은 픽처 n을 디코딩하기 직전의 디코더 (VBV) 버퍼 충만(fullness)이다. 일반적으로, vbv_delay 및 vbv_buffer_size 재설정은 VBV 버퍼 및 실제비율 버퍼의 오버플로우 또는 언더플로우를 피하기 위해 양자화 피드백 루프를 필요로 한다.
MP-비트스트림 내의 MB의 크로마 블록에 대한 새로운 코드화 블록 패턴(CBP)은 재양자화 크로미넌스 데이터에 의해 결정된다. CBP는, 각각의 매크로블록에 대한 코드화 블록수, 예컨대 8개의 4:2:2 색 포맷의 코드화 블록, 또는 6개의 4:2:0 색 포맷의 코드화 블록을 나타낸다. 예컨대, 4:2:2 대 4:2:0 컨버전의 경우, 신택스 변경 F는 4개의 크로마 블록이 아닌 2개의 존재를 나타내기 위해 CBP 변경을 수반한다. 루마 블록수(예컨대, 4개의 블록)에 대한 변경은 발생하지 않는다.
4:2:2P 대 MP 컨버전을 수행하기 위해, 이하의 키 신택스 요소는 4:2:2P 비 트스트림으로부터 분석될 필요가 있다:
a=(intra_dc_precision==11)?1:0;
b=(chroma_format=="4:2:2")?1:0;
c=(load_chroma_intra_quantiser_matrix==1)?1:0; 및
d=(load_chroma_non_intra_quantiser_matrix==1)?1:0.
상기 기술은 의사코드 신택스와 같은 C언어를 이용한다. 예컨대, "a=(intra_dc_precision==11)?1:0" 평균 "a"는 "intra_dc_precision==11"이 참이면 값 "1"이 할당된다. 그렇지 않으면, "a"는 값 "0"이 할당된다.
상술한 바와 같이, intra_dc_precision은 MP에 대해 8, 9 또는 10의 값을 가져야만 한다. 따라서, 그것은 intra_dc_precision==11(십진 11, 또는 1110)이면 리셋되어야만 한다.
용어 chroma_format은 컨버트 되는 비트스트림의 크로미넌스 포맷을 나타내는 2비트 정수이다. 즉, chroma_format = 01(2진)은 4:2:0 포맷을 나타내고, chroma_format = 10은 4:2:2 포맷을 나타낸다. 4:2:2P가 4:2:2 색 포맷(b=1) 및 4:2:0 색 포맷(b=0)을 모두 수용하는 것을 상기한다. 4:2:2P의 4:2:0 포맷도 중요한 케이스이다. 그것은, 4:2:2P의 경우, 루마 및 크로마 모두가 다른 양자화 매트릭스를 가질 수 있기 때문에, 그들 모두가 동일한 해상도를 가질지라도 ML과는 다르다. 반대로, ML의 경우, 루마 및 크로마 모두는 동일한 양자화 매트릭스를 사용한다. 실험들은, 각각의 루마 및 크로마 매트릭스에 의한 코딩이 양호한 품 질의 이미지를 제공하는 것을 보여준다.
용어 load_chroma_intra_quantiser_matrix는,chroma_intra_quantiser_matrix가 뒤따르면 "1"로 설정되는 1비트 플래그이다. 만약, "0"으로 설정되면, 사용되는 값의 변경은 없다. chroma_format이 "4:2:0"(즉, 10)이면, 플래그는 값 "0"을 취한다.
용어 chroma_intra_quantiser_matrix는 인트라 크로마 변환값을 양자화 하기 위해 이용된 비제로 8비트 비표시 정수인 리스트의 64이다.
용어 load_chroma_non_intra_quantiser_matrix는, chroma_non_intra_quantiser_matrix가 뒤따르면 "1"로 설정되는 1비트 플래그이다. 만약, "0"으로 설정되면, 사용되는 값의 변경은 없다. 만약, chroma_format이 "4:2:0"(즉, 01)이면, 이 플래그는 값 "0"을 취한다.
용어 chroma_non_intra_quantiser_matrix는 비인트라 크로마 변환값을 양자화 하기 위해 사용된 비제로 8비트 비표시 정수인 리스트의 64이다.
표 5는 컨버전 프로세스의 16개의 가능한 케이스를 정의한다. 예컨대, 케이스=0의 경우, abcd=0000(즉, a=0, b=0, c=0 및 d=0)이다. Q-매트릭스를 적용하기 위한 옵션의 경우, 이것은 수신된 비트스트림이 크로마에 대한 각 Q-매트릭스를 갖는지의 여부를 검출함으로써, 4:2:2P 대 MP 트랜스코딩/컨버팅(transcoding/converting)이 결정된다. 만약 그렇다면, 크로마 매트릭스는 루마 매트릭스로 교체된다.
표 5 - 신택스 변경 및 텍스처 컨버팅 프로세스의 케이스
케이스: abcd: 신택스 변경(표 3 참조) 컨버전 프로세스 옵션
0: 0000 A vbv_delay 및 vbv_size 변경
1: 0001 A,E 도 6 apply chroma_intra_quantiser_matrix
2: 0010 A,D 도 6 apply chroma_non_intra_quantiser_matrix
3: 0011 A,D,E 도 6
4: 0100 A,B,F 도 3~5
5: 0101 A,B,E,F 도 3~5 apply chroma_intra_quantiser_matrix
6: 0110 A,B,D,F 도 3~5 apply chroma_non_intra_quantiser_matrix
7: 0111 A,B,D,E,F 도 3~5
8: 1000 A,C 도 6,7 change intra_dc_precision
9: 1001 A,C,E 도 6,7 change intra_dc_precision apply chroma_intra_quantiser_matrix
10: 1010 A,C,D 도 6,7 change intra_dc_precision apply chroma_non_intra_quantiser_matrix
11: 1011 A,C,D,E 도 6,7 change intra_dc_precision
12: 1100 A,B,C,F 도 3~5,7 change intra_dc_precision
13: 1101 A,B,C,E,F 도 3~5,7 change intra_dc_precision apply chroma_intra_quantiser_matrix
14: 1110 A,B,C,D,F 도 3~5,7 change intra_dc_precision apply chroma_non_intra_quantiser_matrix
15: 1111 A,B,C,D,E,F 도 1,2,4,5,7 change intra_dc_precision
본 발명에 따른 포맷 컨버터의 텍스처 컨버팅 프로세스에 있어서, intra_dc_precision≠11비트이면, 크로미넌스만이 재인코드 될 필요가 있고, 루미넌스 블록에 의해 이미 결정된 움직임벡터가 크로미넌스 블록을 재인코딩하기 위해 사용되기 때문에 동작추정은 수행될 필요가 없다.
4:2:2P 비트스트림 내의 intra_dc_precision=11비트인 케이스의 경우, 컨버팅 프로세스를 위해 인트라 DCT DC 루마 성분의 재양자화가 요구된다(크로마 성분의 재양자화에 따라). 컨버팅 프로세스를 간단히 하기 위해, 움직임벡터가 MP 비트스트림을 위해 재사용된다. intra_dc_precision이 8, 9 또는 10비트로 리셋될 수 있기 때문에, 인트라-DCT DC 성분의 양자화의 세이빙 비트(saving bits)간 트레드-오프(trade-off)가 있어 재사용된 움직임벡터의 정확성을 유지한다. 따라서, intra_dc_precision을 조절하기 위한 방법은, 디폴트 intra_dc_precision=10(4:2:0 MP의 최고 허용값)을 설정하는 것이지만, 원한다면 사용자에 의해 8 또는 9로 겹쳐써질 수 있다.
높은 정밀도의 경우, 전송을 위해 많은 비트가 필요하다. 더욱이, 완전 펠(pel)과 절반 펠 움직임벡터 모두가 재사용될 수 있다. 적어도 절반 펠 MV가 재구성된 픽처로부터 생성되므로, intra_dc_precision의 변경이 에러를 야기하기 때문에, 포맷 컨버전중의 변경이 4:2:2P 대 MP 트랜스코딩의 가능한 에러를 감소시키는 것과 같이 최소화 된다.
재양자화 프로세스가 포맷 컨버전에 적용될 경우, 코드화 비트수를 감소시키려면 intra_dc_precision=8이 이용될 것이다.
만약, 크로마 Q-매트릭스(chroma_intra_quantiser_matrix 및/또는 chroma_non_intra_quantiser_matrix)가 4:2:2P 비트스트림에 적용되면, 루마 Q-매트릭스(luma_intra_quantiser_matrix 및/또는 luma_non_intra_quantiser_matrix)는 본 발명에 따른 크로미넌스 블록의 재양자화에 적용된다.
양자화 매트릭스(Q-매트릭스)가 포맷 컨버터에 제공되면, 상술한 바와 같은 역양자화에 이용된 2-디멘전 가중 매트릭스 W[w][u][v]로 컨버트 되는 스캔 오더의 비트스트림으로 인코드 된다.
도 3은 본 발명에 따른 4:2:2P 비트스트림에서 MP 비트스트림으로의 크로미넌스 블록 비트스트림 컨버전을 나타낸다. 도 3은 4:2:2P 비트스트림(예컨대, 프리-컨버전 비트스트림)의 2개(가능한)의 크로미넌스 블록을 MP 비트스트림(예컨대, 포스트-컨버전 비트스트림)의 하나의 크로미넌스 블록으로 컨버팅 하기 위한 컨버터에 대한 완전한 블록도를 제공한다. 컨버터(300)는, 각각의 제1 및 제2크로마 동작보상 기능과, 크로마 MC(1) 320 및, 크로마 MC(2)에 MV 데이터를 제공하는 VLD기능(305)에서 4:2:2P 비트스트림을 수신한다.
수신된 데이터의 인트라 또는 인터모드 상태와 관련한 정보는 스위치 325, 327 및 370에 제공된다.
인트라모드 데이터의 경우, 스위치 325는 가산기(330)에 널 "0"신호를 패스하기 위해 활성화 되고, 스위치 327은 가산기(345)에 널 "0"신호를 패스하기 위해 활성화 되며, 스위치 370은 가산기(367)에 널 "0"신호를 패스하기 위해 활성화 된다. 인터모드 데이터의 경우, 스위치 325는 크로마 MC(1) 기능(320)에서 가산기(330)로 기준 이미지 데이터를 패스하기 위해 활성화 되고, 스위치 327은 크로마 MC(2) 기능(325)에서 가산기(345)로 기준 이미지 데이터를 패스하기 위해 활성화 된다.
크로마 MC(1) 기능(320)은 4:2:2 크로마 데이터에 이용된 동작보상 유닛이고, 반면 크로마 MC(2) 기능(325)는 4:2:0 크로마 데이터에 이용된 동작보상 유닛이다. 본 발명에 따른 루마 MV 데이터는, 크로마 MC(2) 기능(325)에서 4:2:0 크로마 MP 데이터의 동작보상(크로마 MC(1) 기능(320)에서 4:2:2 크로마 4:2:2P 데이터의 동작보상 뿐만 아니라)에 이용된다. 이것은, 4:2:0 크로마 MP 데이터에 대해, 기준 프레임의 검색을 포함한 각각의 동작추정 프로세싱을 필요로 하지 않는다.
VLD 기능(305)으로부터 출력된 데이터는 현재 이미지(예컨대, 프레임)로부터 양자화된 변환계수 데이터를 포함한다. 이 데이터는 역양자화 Q1 -1(310) 및 IDCT 기능(315)에 제공된다. 그 결과의 픽셀 도메인 데이터는 가산기(330)에 제공되고, 그 가산기(330)로부터의 출력은, 필요하다면 최소와 최대값 사이, 예컨대 범위 [0,255]의 데이터를 클립(clip)하기 위해 클립 기능(335)에 제공된다.
클립된 데이터는 필드-기초 수직필터 및 2:1 수직 다운샘플링 필터를 포함하는 필더(340)에 제공된다. 예컨대, 수직필터 탭(tap)은 탑-필드의 {-16, 0, 79, 130,79, 0, -16}이고, 반면 필터 탭은 기초-필드의 {1, 7, 7, 1}이다.
크로마 MC(1) 기능(320)은 MV의 수평(x)성분의 2:1 다운샘플링을 이용하여 VLD(305)로부터 수신된 MV를 변경한다. 유사하게, 크로마 MC(2) 기능(325)는 MV의 수평(x) 및 수직(y)성분의 2:1 다운샘플링을 이용하여 VLD(305)로부터 수신된 MV를 변경한다.
또한, 클립된 데이터가 크로마 MC(1) 기능(320)에 제공된다.
몇몇 기능유닛이 다른 유닛 내에 삽입된다. 예컨대, 양자화 DCT DC계수의 각각의 인코딩 및 디코딩은 각각의 VLC 블록(395) 및 VLD 블록(305)의 일부인 것으로 고려된다. 블록(310)에서의 역양자화 Q1 -1은 역양자화 계산으로부터 각 계수에 대한 범위 [-2048, +2047]의 세터레이션 프로세스(saturation process)를 포함한다. IDCT 블록(315)은 각 역변환값에 대한 범위 [-256, 255]의 세터레이션을 포 함한다. MC 블록, 크로마 MC(1) 320 및 크로마 MC(2) 325는 기준 픽처를 위한 메모리를 포함한다.
CBP 기능(315)은 아웃고잉 MP 비트스트림의 CBP를 변경하기 위해 이용된다. 루마 Q-매트릭스 기능(390)은 CBP를 변경하는 하나의 요소이다. 또 다른 요소는 재양자화 레벨의 증가이고, 픽셀값을 갖는 MB의 오리지널(수신된 비트스트림) 2개의 Cb 또는 Cr 블록의 오직 하나의 필드블록 뿐이다.
4:2:0 색 포맷을 갖는 필터된 현재 이미지 데이터는 가산기(345)에 제공되고, 크로마 MC(2) 기능으로부터 널 신호 또는 기준 이미지 데이터가 공제된다. DCT 기능(350)에서, 가산기(345)로부터의 데이터(인트라 코드된 이미지의 현재 이미지 4:2:0 픽셀 데이터로 이루어지거나, 또는 현재 이미지와 인터 코드된 이미지의 기준 이미지간 차에 대응하는 차 4:2:0 픽셀 데이터로 이루어진)가 DCT계수로 변환되고, 재양자화기(Q1) 355에서 양자화 된다.
재양자화 Q1은 역양자화 레벨 Q-1에 대응하는 것과 같이 나타난다. 그러나, 재양자화 레벨은, 수신된 비트스트림의 트랜스코딩을 제공하기 위해, 비율제어 기능으로부터 적절한 제어신호에 기초하여 다른 레벨(Q2)로 조절되고, 여기서 MP 비트스트림은 4:2:2P 비트스트림과 다른 비율로 제공된다.
풀(full) 트랜스코더 실행을 위한 도 8을 참조.
양자화된 데이터는 전송 또는 또 다른 프로세싱을 위한 MP 비트스트림을 얻기 위해 VLC 기능(395)에 제공된다. 예컨대, 트랜스코더는 포맷 컨버터(300)와 연결된다.
양자화 데이터는 역양자화기(360) 및 IDCT 기능(365)에서 프로세스 된다. 다음에, 복원된 현재 이미지 픽셀 데이터가 가산기(367)에 제공되고, 여기서 그것은 크로마 MC(2) 기능(325)로부터의 기준 이미지 데이터(인터모드 데이터에 대한) 또는 널 신호(인트라모드 데이터에 대한)와 합계된다. 스위치(370)는 그것(예컨대, VLD(305)로부터)에 제공된 인트라/인터모드 정보에 따른다.
가산기(367)로부터의 출력은 클립 기능(375)에서 클립되고 크로마 MC(2) 기능(325)에 제공된다.
컨버터(300)에서, 점선기능 유닛과 경로는 조건적이다(즉, 몇몇 경우에 이용된다). 예컨대, QDC 유닛(380)은, 사용자 설정에 의해 요청되거나, intra_dc_precision=1110이면, DC 크로마 계수의 재양자화를 수행하기 위해 이용된다. 특히,
intra_dc_precision=8에 대해 QDC(8bits)=DC//8,
intra_dc_precision=9에 대해 QDC(9bits)=DC//4,
intra_dc_precision=10에 대해 QDC(10bits)=DC//2. "DC"는 비양자화 DC DCT의 값을 나타낸다. "//"은 가장 가까운 정수 근방의 정수 분할을 나타낸다. 1/2 정수값은 0에서 먼 근방이 된다.
기능(382)는, 앞서 기술한 바와 같이, 원한다면 새로운 intra_dc_precision 레벨(예컨대, 8~10비트)을 설정하기 위해 제공된다.
크로마 Q-매트릭스 기능(385)은 역양자화기(310)에 의해 사용하기 위한 크로마 양자화 매트릭스를 복원한다. 루마 Q-매트릭스 기능(390)은 4:2:0 MP 크로마 계수를 재양자화 함에 있어 재양자화기(355)에 의해 사용하기 위한 루마 양자화 매트릭스를 복원한다. 선택적으로, 루마 Q-매트릭스는, 코딩 원인, 예컨대 종래 기술의 명백한 방식으로 매트릭스의 값을 조절함으로써 코딩 효율성을 향상시키기 위해 변경될 수 있다. 또한, 재양자화기(355)는, intra_dc_precision=1110일 때 DC 루마 계수를 재양자화 한다.
만약, 양자화 매트릭스가 수신 비트스트림에 존재하지 않으면, 디폴트 MPEG 양자화 매트릭스와 같은 디폴트가 사용된다. 디폴트 매트릭스는, 예컨대 컨버터(300)에 로컬적으로 저장된다.
코스트(cost) 대 실행 트래드-오프를 균형 맞추기 위해, 2개의 단순화된 크로미넌스-블록 비트스트림 컨버터가 다음의 도 4 및 5에 제공된다.
도 4는 본 발명에 따른 4:2:2P 비트스트림에서 MP 비트스트림으로의 단순화된 크로미넌스 블록 비트스트림 컨버전을 나타낸다. 컨버터(400)에서, 하나의 동작보상 유닛만이, 즉 크로마 MC(2) 기능(325)이 사용된다. 이것은, 도 3의 컨버터(300)와 비교하여 프레임-버퍼 메모리의 2/3이다. 도 4의 필터(340)는 IDCT 기능(315)으로부터 재구성된 크로미넌스 블록에만 적용되고, 필터링 프로세스에 클립핑은 적용되지 않는다.
그러나, 컨버터(400)는 복잡성을 상당히 감소시키지만, 이러한 단순화에 의 해 에러가 도입된다. 3가지의 에러 소스가 있다:
1. 크로미넌스 MC(1)의 제거 및 (a) 4:2:0 포맷의 그리고 (b) 새로운 루마 양자화기 매트릭스에 의해 양자화된 4:2:2 크로마 기준 픽처를 표시;
2. 필터 및 클립 기능 블록의 위치를 변경;
3. 필터링 프로세스의 인티저 동작(integer operation).
완전한 프로세스가 크로미넌스만을 포함하기 때문에, 크로마 에러가 이미지에서 적은 것처럼 인지되므로 도입된 에러는 매우 작은 것처럼 보인다.
상기의 접근 외에, 양자화 및 클립핑에 의해 생성된 에러가 무시되면, 도 4의 컨버터(400)에 의해 주어진 크로미넌스-블록 비트스트림 컨버전 프로세스는 도 5의 컨버터(500)에 의해 접근될 수 있다.
도 5는 본 발명에 따른 4:2:2P 비트스트림에서 MP 비트스트림으로의 접근된 크로미넌스 블록 비트스트림 컨버전을 나타낸다. 컨버터(500)에서, 동작보상 유닛, 즉 크로마 MC(3) 기능(510)은 다른(또는, 상주) 이미지에 적용된다. IDCT 기능(315), 필터(340) 및, DCT 기능(350)을 하나의 싱글유닛(520)에 결합함으로써, 컨버터(500)의 복잡성이 감소한다. 그러나, 그와 같은 구조는 색 드리프트(drift)를 도입한다.
4:2:0 색 포맷 비트스트림의 4:2:2P의 경우, 도 6에 나타낸 바와 같이 컨버터가 더 단순화 될 수 있다.
도 6은 본 발명에 따른 4:2:0 색 포맷의 4:2:2P 비트스트림에서 MP 비트스트림으로의 크로미넌스-블록 비트스트림 컨버전을 나타낸다. 컨버터(600)의 경우, 3개의 데쉬선의 기능유닛, 즉 IDCT(315), 클립 기능(335) 및, DCT 기능(350)을 제거함으로써 저비용 실행의 접근이 이루어질 수 있다.
루미넌스 블록의 경우, 오직 필요한 컨버전은 도 7에 나타낸 가능한 DC 정밀도 변경(382)이다.
도 7은 본 발명에 따른 intra_dc_precision=1110일 때, 4:2:2P 4:2:2 또는 4:2:0 비트스트림에서 MP 4:2:0 비트스트림으로의 루미넌스-블록 비트스트림 컨버전을 나타낸다. 컨버터(700)는 값이 범위를 넘으면, 사용자 입력에 기초하여 새로운 intra_dc_precision을 설정하기 위한 기능(382)을 포함한다.
텍스츠 컨버팅 프로세스의 여러가지 경우가 표 5에 요약되어 있다.
도 8은 본 발명에 따른 4:2:2: 대 4:2:0 컨버터와 트랜스코더의 결합을 나타낸다. 도 4에 주어진 4:2:2 대 4:2:0 컨버터(400)는 4:2:2P 대 MP 트랜스코더(800)를 제공하기 위해 통상 트랜스코더와 결합될 수 있다. 트랜스코더/컨버터(800)에서, 재양자화 기능 (Q2) 855는 비율제어신호에 따라 Q1과 다른 양자화 레벨을 제공한다. 대응하는 역양자화 기능 Q2 -1 860이 제공된다. 비율제어신호는 MP 비트스트림의 원하는 비트율을 달성하기 위해 기존의 방식으로 비율제어기능에 의해 생성된다.
기능 810, 830, 850 및 867은 각각 기능 310, 330, 350 및 367에 대응한다. 기능 855', 860' 및 365'는 각각 기능 855, 860 및 365에 대응한다.
또한, 루마 MC 기능(820)이 수신된 비트스트림의 루마 데이터의 동작보상을 제공하기 위해 제공된다. MV는 동작추정의 필요성을 피하기 위해 재사용된다.
따라서, 본 발명은 디지털 비디오 비트스트림의 색 포맷을 컨버팅 하기 위한 시스템을 제공하는 것을 알 수 있다. 시스템은, 양자화기 정밀도 레벨을 포함하여, 프리-컨버전 및 포스트-컨버전 비트스트림의 허용가능 포맷을 설명하고, 루마 및 크로마 데이터가 각각의 양자화 매트릭스를 갖는지의 여부, 또는 공통 양자화 매트릭스를 공유하는지의 여부를 설명한다. 특히 실행에 있어서, 4:2:2 또는 4:2:0의 색 포맷을 갖는 MPEG-2 4:2:P 비트스트림(즉, 프리-컨버전 비트스트림)은 4:2:0의 색 포맷을 갖는 MP 비트스트림(즉, 포스트-컨버전 비트스트림)으로 컨버트 된다.
크로마 데이터를 재양자화 하기 위해 루마 양자화 매트릭스를 사용하고, 크로마 데이터의 동작보상을 수행하기 위한 루마 움직임벡터를 재사용함으로써 코딩 효율이 달성된다.
인터 코드된 프레임을 컨버팅 하기 위한 4:2:0 포맷의 4:2:2 기준 픽처를 표시함으로써 효율이 더 달성될 수 있다.
픽셀 다운사이징(downsizing) 필터 및 클립 기능의 위치를 변경함으로써 효율이 더 달성될 수 있다.
또한, 4:2:2P 4:2:0 포맷 프리-컨버전 비트스트림에 대한 단순화가 이루어질 수 있다.
프리-컨버전 비트스트림의 양자화 정밀도가 포스트-컨버전 비트스트림의 양자화 정밀도와 호환되지 않으면 루마 블록에 대한 효율적인 컨버전이 제공된다.
또한, 트랜스코딩 포맷 컨버터가 포스트-컨버전 비트스트림의 다른 비트율을 달성하기 위해 제공된다.
비록 본 발명이 여러가지 특정한 실시예와 관련하여 기술했지만, 본 발명의 목적 및 배경을 이탈하지 않는 범위 내에서 다양하게 변경하여 실시할 수 있다.

Claims (26)

  1. 제1포맷을 갖는 프리-컨버전 비트스트림을 제2포맷을 갖는 포스트-컨버전 비트스트림으로 컨버팅 하기 위한 방법에 있어서,
    픽셀 도메인에서 크로마 데이터를 복원된 크로마 데이터로 복원하기 위해 프리-컨버전 비트스트림을 적어도 부분적으로 신장하는 단계와,
    프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 양자화 매트릭스 데이터를 복원하는 단계 및,
    상기 제2포맷을 갖는 상기 포스트-컨버전 비트스트림을 제공하기 위해 복원된 루마 양자화 매트릭스에 따라 복원된 크로마 데이터에 대응하는 데이터를 재양자화함으로써 복원된 크로마 데이터에 대응하는 데이터를 재압축하는 단계를 갖추어 이루어진 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 프리-컨버전 비트스트림이 인터 코드된 이미지로 이루어지고, 상기 복원된 크로마 데이터가 상기 프리-컨버트된 비트스트림의 상기 제1포맷에 대응하는 제1크로마 포맷을 가지며,
    상기 프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 움직임벡터를 복원하는 단계와,
    인터-코드된 이미지에 대한 복원된 크로마 데이터의 제1동작보상 프로세싱을 수행하기 위해 복원된 루마 움직임벡터를 이용하는 단계,
    상기 포스트-컨버전 비트스트림의 상기 제2포맷에 대응하는 제2크로마 포맷을 갖는 크로마 데이터를 제공하기 위해 상기 제1동작보상 프로세싱 후에 크로마 데이터를 필터링하는 단계 및,
    상기 재압축 단계를 위한 데이터를 제공하기 위해 제2크로마 포맷을 갖는 크로마 데이터의 제2동작보상 프로세싱을 수행하도록 복원된 루마 움직임벡터를 이용하는 단계를 더 구비하여 이루어지고,
    상기 제1동작보상 프로세싱은 상기 제1크로마 포맷을 이용하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서, 상기 제2크로마 포맷의 경우, 하나의 크로마 블록은 상기 제1크로마 포맷의 적어도 모든 2개의 크로마 블록에 제공되는 것을 특징으로 하는 방법.
  4. 제2항에 있어서, 상기 필터링 단계에 의해 제공된 제2크로마 포맷을 갖는 크로마 데이터에 대응하는 데이터는, 상기 제2동작보상 프로세싱을 위한 데이터를 제공하기 위해 픽셀 도메인에서 변환 도메인으로 변환된 후, 양자화 된 다음, 역양자화 된 후 역변환되는 것을 특징으로 하는 방법.
  5. 제1항에 있어서, 상기 프리-컨버전 비트스트림으로부터 제1양자화 정밀도 레 벨을 복원하는 단계와,
    상기 제1양자화 정밀도 레벨이 포스트-컨버전 비트스트림의 제2포맷의 최대 허용 정밀도 레벨보다 크면,
    (i) 제1양자화 정밀도 레벨을 저하시키고,
    (ii) 프리-컨버전 비트스트림으로부터 DC 루마 변환 데이터를 복원하며,
    (iii) 저하된 양자화 정밀도 레벨에 따라 상기 복원된 DC 루마 변환 데이터에 대응하는 데이터를 재양자화 하는 단계를 더 구비하여 이루어진 것을 특징으로 하는 방법.
  6. 제1항에 있어서, 상기 프리-컨버전 비트스트림이 인터 코드된 이미지로 이루어지고, 상기 복원된 크로마 데이터가 상기 프리-컨버트된 비트스트림의 상기 제1포맷에 대응하는 제1크로마 포맷을 가지며,
    상기 포스트-컨버전 비트스트림의 상기 제2포맷에 대응하는 제2크로마 포맷을 갖는 상주 크로마 데이터를 제공하기 위해 복원된 크로마 데이터를 필터링하는 단계와,
    상기 프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 움직임벡터를 복원하는 단계 및,
    상기 재압축 단계를 위한 상기 데이터를 제공하기 위해 인터-코드된 이미지의 상주 크로마 데이터에 대응하는 데이터의 동작보상 프로세싱을 수행하도록 복원된 루마 움직임벡터를 이용하는 단계를 더 구비하여 이루어지고,
    상기 동작보상 프로세싱은 상기 제2크로마 포맷을 이용하는 것을 특징으로 하는 방법.
  7. 제6항에 있어서, 상기 제2크로마 포맷의 경우, 하나의 크로마 블록은 상기 제1크로마 포맷의 적어도 모든 2개의 크로마 블록에 제공되는 것을 특징으로 하는 방법.
  8. 제1항에 있어서, 상기 제1포맷은 4:2:2 포맷으로 이루어지고, 상기 제2포맷은 4:2:0 포맷으로 이루어진 것을 특징으로 하는 방법.
  9. 제1항에 있어서, 상기 제1포맷은 MPEG 4:2:2 프로파일 포맷으로 이루어지고, 상기 제2포맷은 MPEG 메인 프로파일 포맷으로 이루어진 것을 특징으로 하는 방법.
  10. 제1항에 있어서, 상기 프리-컨버전 비트스트림의 코드된 블록 패턴은 포스트-컨버전 비트스트림에 이용하기 위해 변경되는 것을 특징으로 하는 방법.
  11. 제1항에 있어서, 상기 프리-컨버전 비트스트림과 포스트-컨버전 비트스트림은 동일한 매크로블록 코딩타입을 이용하는 것을 특징으로 하는 방법.
  12. 제1항에 있어서, 상기 재양자화 단계는 포스트-컨버전 비트스트림의 비트율 을 설정하기 위한 비율제어신호에 따르는 것을 특징으로 하는 방법.
  13. 제1항에 있어서, 상기 복원된 루마 양자화 매트릭스는 상기 포스트-컨버전 비트스트림의 코딩 효율을 향상시키기 위해 변경되는 것을 특징으로 하는 방법.
  14. 제1포맷을 갖는 프리-컨버전 비트스트림을 제2포맷을 갖는 포스트-컨버전 비트스트림으로 컨버팅 하기 위한 장치에 있어서,
    픽셀 도메인에서 크로마 데이터를 복원된 크로마 데이터로 복원하기 위해 프리-컨버전 비트스트림을 적어도 부분적으로 신장하기 위한 수단과,
    프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 양자화 매트릭스 데이터를 복원하기 위한 수단 및,
    상기 포스트-컨버전 비트스트림을 제공하기 위해 복원된 루마 양자화 매트릭스에 따라 복원된 크로마 데이터에 대응하는 데이터를 재양자화 하기 위한 수단을 포함하는, 복원된 크로마 데이터에 대응하는 데이터를 재압축하기 위한 수단을 구비하여 구성된 것을 특징으로 하는 장치.
  15. 제14항에 있어서, 상기 프리-컨버전 비트스트림이 인터 코드된 이미지로 이루어지고, 상기 복원된 크로마 데이터가 상기 프리-컨버트된 비트스트림의 상기 제1포맷에 대응하는 제1크로마 포맷을 가지며,
    상기 프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 움직임벡터를 복원하기 위한 수단과,
    인터-코드된 이미지에 대한 복원된 크로마 데이터의 제1동작보상 프로세싱을 수행하기 위해 복원된 루마 움직임벡터를 이용하기 위한 수단,
    상기 포스트-컨버전 비트스트림의 상기 제2포맷에 대응하는 제2크로마 포맷을 갖는 크로마 데이터를 제공하기 위해 상기 제1동작보상 프로세싱 후에 크로마 데이터를 필터링하기 위한 필터 및,
    상기 재압축 수단을 위한 상기 데이터를 제공하기 위해 제2크로마 포맷을 갖는 크로마 데이터의 제2동작보상 프로세싱을 수행하도록 복원된 루마 움직임벡터를 이용하기 위한 수단을 더 구비하여 구성되고,
    상기 제1동작보상 프로세싱은 상기 제1크로마 포맷을 이용하는 것을 특징으로 하는 장치.
  16. 제15항에 있어서, 상기 제2크로마 포맷의 경우, 하나의 크로마 블록은 상기 제1크로마 포맷의 적어도 모든 2개의 크로마 블록에 제공되는 것을 특징으로 하는 장치.
  17. 제15항에 있어서, 상기 필터에 의해 제공된 제2크로마 포맷을 갖는 크로마 데이터에 대응하는 데이터는, 상기 제2동작보상 프로세싱을 위한 데이터를 제공하기 위해 픽셀 도메인에서 변환 도메인으로 변환된 후, 양자화 된 다음, 역양자화 된 후 역변환되는 것을 특징으로 하는 장치.
  18. 제14항에 있어서, 상기 프리-컨버전 비트스트림으로부터 제1양자화 정밀도 레벨을 복원하기 위한 수단과,
    상기 제1양자화 정밀도 레벨이 포스트-컨버전 비트스트림의 제2포맷의 최대 허용 정밀도 레벨보다 크면, (i) 제1양자화 정밀도 레벨을 저하시키고, (ii) 프리-컨버전 비트스트림으로부터 DC 루마 변환 데이터를 복원하며, (iii) 저하된 양자화 정밀도 레벨에 따라 상기 복원된 DC 루마 변환 데이터에 대응하는 데이터를 재양자화 하기 위한 수단을 더 구비하여 구성된 것을 특징으로 하는 장치.
  19. 제14항에 있어서, 상기 프리-컨버전 비트스트림이 인터 코드된 이미지로 이루어지고, 상기 복원된 크로마 데이터가 상기 프리-컨버트된 비트스트림의 상기 제1포맷에 대응하는 제1크로마 포맷을 가지며,
    상기 포스트-컨버전 비트스트림의 상기 제2포맷에 대응하는 제2크로마 포맷을 갖는 상주 크로마 데이터를 제공하기 위해 복원된 크로마 데이터를 필터링하기 위한 필터와,
    상기 프리-컨버전 비트스트림으로부터 루마 데이터와 관련된 움직임벡터를 복원하기 위한 수단 및,
    상기 재압축 수단을 위한 상기 데이터를 제공하기 위해 인터-코드된 이미지의 상주 크로마 데이터에 대응하는 데이터의 동작보상 프로세싱을 수행하도록 복원된 루마 움직임벡터를 이용하기 위한 수단을 더 구비하여 구성되고,
    상기 동작보상 프로세싱은 상기 제2크로마 포맷을 이용하는 것을 특징으로 하는 장치.
  20. 제19항에 있어서, 상기 제2크로마 포맷의 경우, 하나의 크로마 블록은 상기 제1크로마 포맷의 적어도 모든 2개의 크로마 블록에 제공되는 것을 특징으로 하는 장치.
  21. 제14항에 있어서, 상기 제1포맷은 4:2:2 포맷으로 이루어지고, 상기 제2포맷은 4:2:0 포맷으로 이루어진 것을 특징으로 하는 장치.
  22. 제14항에 있어서, 상기 제1포맷은 MPEG 4:2:2 프로파일 포맷으로 이루어지고, 상기 제2포맷은 MPEG 메인 프로파일 포맷으로 이루어진 것을 특징으로 하는 장치.
  23. 제14항에 있어서, 상기 프리-컨버전 비트스트림의 코드된 블록 패턴은 포스트-컨버전 비트스트림에 이용하기 위해 변경되는 것을 특징으로 하는 장치.
  24. 제14항에 있어서, 상기 프리-컨버전 비트스트림과 포스트-컨버전 비트스트림은 동일한 매크로블록 코딩타입을 이용하는 것을 특징으로 하는 장치.
  25. 제14항에 있어서, 상기 재양자화 수단은 포스트-컨버전 비트스트림의 비트율을 설정하기 위한 비율제어신호에 따르는 것을 특징으로 하는 장치.
  26. 제14항에 있어서, 상기 복원된 루마 양자화 매트릭스는 상기 포스트-컨버전 비트스트림의 코딩 효율을 향상시키기 위해 변경되는 것을 특징으로 하는 장치.
KR1020017010469A 1999-02-18 2000-02-16 엠피이지-2 4:2:2-프로파일 비트스트림을 메인-프로파일비트스트림으로 컨버팅 하기 위한 방법 및 아키텍처 KR100934290B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/252,135 US6259741B1 (en) 1999-02-18 1999-02-18 Method of architecture for converting MPEG-2 4:2:2-profile bitstreams into main-profile bitstreams
US09/252,135 1999-02-18
PCT/US2000/003870 WO2000070877A2 (en) 1999-02-18 2000-02-16 Method and architecture for converting mpeg-2 4:2:2-profile bitstreams into main-profile bitstreams

Publications (2)

Publication Number Publication Date
KR20010102228A KR20010102228A (ko) 2001-11-15
KR100934290B1 true KR100934290B1 (ko) 2009-12-29

Family

ID=22954748

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020017010469A KR100934290B1 (ko) 1999-02-18 2000-02-16 엠피이지-2 4:2:2-프로파일 비트스트림을 메인-프로파일비트스트림으로 컨버팅 하기 위한 방법 및 아키텍처

Country Status (8)

Country Link
US (1) US6259741B1 (ko)
EP (1) EP1153512A2 (ko)
KR (1) KR100934290B1 (ko)
CN (1) CN1347620A (ko)
AU (1) AU7469100A (ko)
CA (1) CA2364478C (ko)
TW (1) TW545057B (ko)
WO (1) WO2000070877A2 (ko)

Families Citing this family (113)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1048173A1 (en) * 1998-11-17 2000-11-02 Koninklijke Philips Electronics N.V. Method of transcoding coded video signals and corresponding transcoder with motion vector selection
EP1067798A3 (en) * 1999-06-30 2005-11-30 Media Glue Corporation Apparatus, method and computer program product for transcoding a coded moving picture sequence
DE19946267C2 (de) * 1999-09-27 2002-09-26 Harman Becker Automotive Sys Digitales Transcodiersystem
US6961063B1 (en) * 2000-06-30 2005-11-01 Intel Corporation Method and apparatus for improved memory management of video images
US7194128B1 (en) * 2000-07-26 2007-03-20 Lockheed Martin Corporation Data compression using principal components transformation
FR2813001B1 (fr) * 2000-08-11 2002-12-20 Thomson Multimedia Sa Procede de conversion de format couleur d'une sequence d'images
US6628709B2 (en) * 2000-12-21 2003-09-30 Matsushita Electric Corporation Of America Bit number prediction for VLC coded DCT coefficients and its application in DV encoding/transcoding
JP2004518342A (ja) * 2001-01-12 2004-06-17 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ スケーラブルビデオトランスコーディング方法及び装置
EP1231794A1 (en) * 2001-02-09 2002-08-14 STMicroelectronics S.r.l. A process for changing the resolution of MPEG bitstreams, a system and a computer program product therefor
EP1231793A1 (en) * 2001-02-09 2002-08-14 STMicroelectronics S.r.l. A process for changing the syntax, resolution and bitrate of MPEG bitstreams, a system and a computer program product therefor
US7602847B1 (en) 2001-03-27 2009-10-13 Vixs Systems, Inc. Device and method for compression of a video stream
FR2823050A1 (fr) * 2001-03-27 2002-10-04 Koninkl Philips Electronics Nv Dispositif implementant conjointement un post-traitement et un decodage de donnees
US8107524B2 (en) * 2001-03-30 2012-01-31 Vixs Systems, Inc. Adaptive bandwidth footprint matching for multiple compressed video streams in a fixed bandwidth network
US20070053428A1 (en) * 2001-03-30 2007-03-08 Vixs Systems, Inc. Managed degradation of a video stream
GB0116119D0 (en) * 2001-06-30 2001-08-22 Koninkl Philips Electronics Nv Transcoding of video data streams
US6959348B1 (en) * 2001-07-30 2005-10-25 Vixs Systems, Inc. Method and system for accessing data
US7675972B1 (en) * 2001-07-30 2010-03-09 Vixs Systems, Inc. System and method for multiple channel video transcoding
US20030039226A1 (en) * 2001-08-24 2003-02-27 Kwak Joseph A. Physical layer automatic repeat request (ARQ)
US7596127B1 (en) 2001-10-31 2009-09-29 Vixs Systems, Inc. System for allocating data in a communications system and method thereof
US7139330B1 (en) 2001-10-31 2006-11-21 Vixs Systems, Inc. System for signal mixing and method thereof
US7106715B1 (en) 2001-11-16 2006-09-12 Vixs Systems, Inc. System for providing data to multiple devices and method thereof
US7356079B2 (en) * 2001-11-21 2008-04-08 Vixs Systems Inc. Method and system for rate control during video transcoding
US7403564B2 (en) * 2001-11-21 2008-07-22 Vixs Systems, Inc. System and method for multiple channel video transcoding
US7165180B1 (en) 2001-11-27 2007-01-16 Vixs Systems, Inc. Monolithic semiconductor device for preventing external access to an encryption key
CN101448162B (zh) * 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
US7295610B2 (en) * 2002-03-27 2007-11-13 Scientific-Atlanta, Inc. Hybrid rate control in a digital stream transcoder
US7190723B2 (en) * 2002-03-27 2007-03-13 Scientific-Atlanta, Inc. Digital stream transcoder with a hybrid-rate controller
US7236521B2 (en) * 2002-03-27 2007-06-26 Scientific-Atlanta, Inc. Digital stream transcoder
US7620109B2 (en) * 2002-04-10 2009-11-17 Microsoft Corporation Sub-pixel interpolation in motion estimation and compensation
US7310679B1 (en) 2002-04-29 2007-12-18 Vixs Systems Inc. Method and system for transmitting video content while preventing other transmissions in a contention-based network
US7120253B2 (en) * 2002-05-02 2006-10-10 Vixs Systems, Inc. Method and system for protecting video data
US7002627B1 (en) 2002-06-19 2006-02-21 Neomagic Corp. Single-step conversion from RGB Bayer pattern to YUV 4:2:0 format
US20040005003A1 (en) * 2002-07-02 2004-01-08 Koninklijke Philips Electronics N.V. Quality improvement for FGS BL coding with U/V coarse quantization
US7136417B2 (en) 2002-07-15 2006-11-14 Scientific-Atlanta, Inc. Chroma conversion optimization
JP3791922B2 (ja) * 2002-09-06 2006-06-28 富士通株式会社 動画像復号化装置及び方法
CN100502513C (zh) * 2002-09-06 2009-06-17 富士通株式会社 运动图像解码设备和运动图像解码方法
JP3928859B2 (ja) * 2002-11-11 2007-06-13 株式会社リコー 画像処理装置、画像処理方法、プログラム及び記録媒体
US20040141555A1 (en) * 2003-01-16 2004-07-22 Rault Patrick M. Method of motion vector prediction and system thereof
US7408989B2 (en) * 2003-01-16 2008-08-05 Vix5 Systems Inc Method of video encoding using windows and system thereof
US20040161039A1 (en) * 2003-02-14 2004-08-19 Patrik Grundstrom Methods, systems and computer program products for encoding video data including conversion from a first to a second format
US7606305B1 (en) 2003-02-24 2009-10-20 Vixs Systems, Inc. Method and system for transcoding video data
US7133452B1 (en) 2003-02-24 2006-11-07 Vixs Systems, Inc. Method and system for transcoding video data
US7327784B2 (en) * 2003-02-24 2008-02-05 Vixs Systems, Inc. Method and system for transcoding video data
US7130350B1 (en) 2003-02-28 2006-10-31 Vixs Systems, Inc. Method and system for encoding and decoding data in a video stream
US7739105B2 (en) * 2003-06-13 2010-06-15 Vixs Systems, Inc. System and method for processing audio frames
JP4617644B2 (ja) * 2003-07-18 2011-01-26 ソニー株式会社 符号化装置及び方法
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7317839B2 (en) * 2003-09-07 2008-01-08 Microsoft Corporation Chroma motion vector derivation for interlaced forward-predicted fields
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7567617B2 (en) 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7599438B2 (en) * 2003-09-07 2009-10-06 Microsoft Corporation Motion vector block pattern coding and decoding
US7668396B2 (en) * 2003-09-29 2010-02-23 Vixs Systems, Inc. Method and system for noise reduction in an image
US7277101B2 (en) 2003-09-29 2007-10-02 Vixs Systems Inc Method and system for scaling images
JP4470431B2 (ja) * 2003-10-01 2010-06-02 ソニー株式会社 データ処理装置およびその方法
PL1709801T3 (pl) * 2004-01-30 2013-02-28 Panasonic Ip Corp America Sposób dekodowania video z wykorzystaniem adaptacyjnych macierzy kwantyzacji
US7406598B2 (en) * 2004-02-17 2008-07-29 Vixs Systems Inc. Method and system for secure content distribution
US20050232497A1 (en) * 2004-04-15 2005-10-20 Microsoft Corporation High-fidelity transcoding
US7499592B2 (en) 2004-06-15 2009-03-03 Canon Kabushiki Kaisha Image decoding apparatus and its control method
US20050276500A1 (en) * 2004-06-15 2005-12-15 Canon Kabushiki Kaisha Image encoding apparatus, and image processing apparatus and its control method
US8340177B2 (en) * 2004-07-12 2012-12-25 Microsoft Corporation Embedded base layer codec for 3D sub-band coding
US8442108B2 (en) * 2004-07-12 2013-05-14 Microsoft Corporation Adaptive updates in motion-compensated temporal filtering
US8374238B2 (en) 2004-07-13 2013-02-12 Microsoft Corporation Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video
US8243820B2 (en) * 2004-10-06 2012-08-14 Microsoft Corporation Decoding variable coded resolution video with native range/resolution post-processing operation
US9071847B2 (en) * 2004-10-06 2015-06-30 Microsoft Technology Licensing, Llc Variable coding resolution in video codec
US7421048B2 (en) * 2005-01-20 2008-09-02 Vixs Systems, Inc. System and method for multimedia delivery in a wireless environment
US7609766B2 (en) * 2005-02-08 2009-10-27 Vixs Systems, Inc. System of intra-picture complexity preprocessing
US8949920B2 (en) * 2005-03-17 2015-02-03 Vixs Systems Inc. System and method for storage device emulation in a multimedia processing system
US7400869B2 (en) * 2005-03-22 2008-07-15 Vixs Systems Inc. System and method for adaptive DC offset compensation in wireless transmissions
RU2368095C1 (ru) * 2005-07-22 2009-09-20 Мицубиси Электрик Корпорейшн Кодер изображения и декодер изображения, способ кодирования изображения и способ декодирования изображения, программа кодирования изображения и программа декодирования изображения и компьютерно-считываемый носитель записи, на котором записана программа кодирования изображения, и компьютерно-считываемый носитель записи, на котором записана программа декодирования изображения
CN101867820B (zh) * 2005-09-20 2013-05-29 三菱电机株式会社 图像解码装置以及图像解码方法
US7707485B2 (en) 2005-09-28 2010-04-27 Vixs Systems, Inc. System and method for dynamic transrating based on content
US20070112826A1 (en) * 2005-11-10 2007-05-17 Vixs Systems, Inc. Multimedia transcoding based on remaining storage capacity
US7956930B2 (en) 2006-01-06 2011-06-07 Microsoft Corporation Resampling and picture resizing operations for multi-resolution video coding and decoding
US8131995B2 (en) * 2006-01-24 2012-03-06 Vixs Systems, Inc. Processing feature revocation and reinvocation
US8599841B1 (en) 2006-03-28 2013-12-03 Nvidia Corporation Multi-format bitstream decoding engine
US8593469B2 (en) * 2006-03-29 2013-11-26 Nvidia Corporation Method and circuit for efficient caching of reference video data
US8880571B2 (en) * 2006-05-05 2014-11-04 Microsoft Corporation High dynamic range data format conversions for digital media
US7884742B2 (en) * 2006-06-08 2011-02-08 Nvidia Corporation System and method for efficient compression of digital data
US8700387B2 (en) * 2006-09-14 2014-04-15 Nvidia Corporation Method and system for efficient transcoding of audio data
JP2008193627A (ja) * 2007-01-12 2008-08-21 Mitsubishi Electric Corp 画像符号化装置、画像復号装置、および画像符号化方法、画像復号方法
US8054886B2 (en) * 2007-02-21 2011-11-08 Microsoft Corporation Signaling and use of chroma sample positioning information
US8107571B2 (en) * 2007-03-20 2012-01-31 Microsoft Corporation Parameterized filters and signaling techniques
US8457958B2 (en) 2007-11-09 2013-06-04 Microsoft Corporation Audio transcoder using encoder-generated side information to transcode to target bit-rate
US8953673B2 (en) * 2008-02-29 2015-02-10 Microsoft Corporation Scalable video coding and decoding with sample bit depth and chroma high-pass residual layers
US8711948B2 (en) * 2008-03-21 2014-04-29 Microsoft Corporation Motion-compensated prediction of inter-layer residuals
US8164862B2 (en) * 2008-04-02 2012-04-24 Headway Technologies, Inc. Seed layer for TMR or CPP-GMR sensor
US9571856B2 (en) * 2008-08-25 2017-02-14 Microsoft Technology Licensing, Llc Conversion operations in scalable video encoding and decoding
US8213503B2 (en) * 2008-09-05 2012-07-03 Microsoft Corporation Skip modes for inter-layer residual video coding and decoding
JP2012503416A (ja) * 2008-09-18 2012-02-02 トムソン ライセンシング ビデオ画像の刈り取り方法及び装置
TWI396431B (zh) * 2008-12-22 2013-05-11 Himax Tech Ltd 顏色分量的壓縮方法
US8311115B2 (en) * 2009-01-29 2012-11-13 Microsoft Corporation Video encoding using previously calculated motion information
US8396114B2 (en) * 2009-01-29 2013-03-12 Microsoft Corporation Multiple bit rate video encoding using variable bit rate and dynamic resolution for adaptive video streaming
US8270473B2 (en) * 2009-06-12 2012-09-18 Microsoft Corporation Motion based dynamic resolution multiple bit rate video encoding
US20110158310A1 (en) * 2009-12-30 2011-06-30 Nvidia Corporation Decoding data using lookup tables
US8705616B2 (en) 2010-06-11 2014-04-22 Microsoft Corporation Parallel multiple bitrate video encoding to reduce latency and dependences between groups of pictures
US9591318B2 (en) 2011-09-16 2017-03-07 Microsoft Technology Licensing, Llc Multi-layer encoding and decoding
US11089343B2 (en) 2012-01-11 2021-08-10 Microsoft Technology Licensing, Llc Capability advertisement, configuration and control for video coding and decoding
US20140037005A1 (en) * 2012-08-02 2014-02-06 Penne Y. LEE Transcoding video data
GB2506345A (en) * 2012-09-06 2014-04-02 British Broadcasting Corp Video encoding and decoding with chrominance sub-sampling
US20140198855A1 (en) * 2013-01-14 2014-07-17 Qualcomm Incorporated Square block prediction
US9998750B2 (en) 2013-03-15 2018-06-12 Cisco Technology, Inc. Systems and methods for guided conversion of video from a first to a second compression format
US20140269920A1 (en) * 2013-03-15 2014-09-18 Cisco Technology, Inc. Motion Estimation Guidance in Transcoding Operation
US10382752B2 (en) * 2013-10-15 2019-08-13 Sony Corporation Image processing device and method
US9942560B2 (en) 2014-01-08 2018-04-10 Microsoft Technology Licensing, Llc Encoding screen capture data
US9749642B2 (en) 2014-01-08 2017-08-29 Microsoft Technology Licensing, Llc Selection of motion vector precision
US9774881B2 (en) 2014-01-08 2017-09-26 Microsoft Technology Licensing, Llc Representing motion vectors in an encoded bitstream
SG10202002209TA (en) * 2014-12-19 2020-04-29 Hfi Innovation Inc Methods of palette based prediction for non-444 color format in video and image coding
US10951912B2 (en) 2016-10-05 2021-03-16 Qualcomm Incorporated Systems and methods for adaptive selection of weights for video coding
US10310821B2 (en) 2017-06-03 2019-06-04 Apple Inc. Integration of learning models into a software development system
CN110324627B (zh) * 2018-03-30 2022-04-05 杭州海康威视数字技术股份有限公司 色度的帧内预测方法及装置
CN111010572A (zh) * 2018-12-04 2020-04-14 北京达佳互联信息技术有限公司 一种视频编码方法和装置及设备
EP4277275A3 (en) * 2018-12-21 2023-12-13 Beijing Dajia Internet Information Technology Co., Ltd. Methods and apparatus of video coding for deriving affine motion vectors for chroma components

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990031928A (ko) * 1997-10-15 1999-05-06 윤종용 디지털 방송 수신기의 아날로그 방송 수신방법 및 장치
KR19990039411A (ko) * 1997-11-12 1999-06-05 구자홍 디티브이 영상 포맷 변환장치 및 그 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5218435A (en) 1991-02-20 1993-06-08 Massachusetts Institute Of Technology Digital advanced television systems
US5260808A (en) 1991-04-23 1993-11-09 Canon Kabushiki Kaisha Image processing apparatus
NL9301358A (nl) * 1993-08-04 1995-03-01 Nederland Ptt Transcodeerinrichting.
JP2933487B2 (ja) 1994-07-15 1999-08-16 松下電器産業株式会社 クロマフォーマット変換の方法
US6389174B1 (en) 1996-05-03 2002-05-14 Intel Corporation Video transcoding with interim encoding format
GB9611511D0 (en) 1996-06-03 1996-08-07 Digi Media Vision Ltd Improvements in or relating to the bit-rate of a signal
US5808570A (en) * 1996-06-28 1998-09-15 Philips Electronics North America Corp. Device and method for pair-match Huffman transcoding and high-performance variable length decoder with two-word bit stream segmentation which utilizes the same
US6144698A (en) * 1996-10-31 2000-11-07 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Digital video decoder and method of decoding a digital video signal
US6141447A (en) * 1996-11-21 2000-10-31 C-Cube Microsystems, Inc. Compressed video transcoder
JP2002515218A (ja) 1998-03-31 2002-05-21 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ コード化データの修正

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990031928A (ko) * 1997-10-15 1999-05-06 윤종용 디지털 방송 수신기의 아날로그 방송 수신방법 및 장치
KR19990039411A (ko) * 1997-11-12 1999-06-05 구자홍 디티브이 영상 포맷 변환장치 및 그 방법

Also Published As

Publication number Publication date
WO2000070877A3 (en) 2001-06-28
AU7469100A (en) 2000-12-05
CA2364478A1 (en) 2000-11-23
CA2364478C (en) 2011-07-05
US6259741B1 (en) 2001-07-10
WO2000070877A2 (en) 2000-11-23
EP1153512A2 (en) 2001-11-14
TW545057B (en) 2003-08-01
KR20010102228A (ko) 2001-11-15
CN1347620A (zh) 2002-05-01

Similar Documents

Publication Publication Date Title
KR100934290B1 (ko) 엠피이지-2 4:2:2-프로파일 비트스트림을 메인-프로파일비트스트림으로 컨버팅 하기 위한 방법 및 아키텍처
Tudor MPEG-2 video compression
US6081295A (en) Method and apparatus for transcoding bit streams with video data
US7194032B1 (en) Circuit and method for modifying a region of an encoded image
US6658157B1 (en) Method and apparatus for converting image information
US8300688B2 (en) Method for video transcoding with adaptive frame rate control
US6441754B1 (en) Apparatus and methods for transcoder-based adaptive quantization
US5278647A (en) Video decoder using adaptive macroblock leak signals
EP1587327A2 (en) Video transcoding
US20100061449A1 (en) Programmable quantization dead zone and threshold for standard-based h.264 and/or vc1 video encoding
US7787541B2 (en) Dynamic pre-filter control with subjective noise detector for video compression
US9071844B2 (en) Motion estimation with motion vector penalty
EP1195993A2 (en) Transcoding of video signal
WO2003007619A1 (en) Method and device for generating a scalable coded video signal from a non-scalable coded video signal
US20080212682A1 (en) Reduced resolution video transcoding with greatly reduced complexity
US6498816B1 (en) Circuit and method for formatting each of a series of encoded video images into respective regions
EP1345176B1 (en) Reconstructing a compressed still image by transcoding to a compressed motion picture image
JP2003520513A (ja) 画像データの圧縮
JP2000236547A (ja) 画像情報変換装置及び画像情報変換方法
JP4292659B2 (ja) 画像情報変換装置及び画像情報変換方法
JPH10271512A (ja) 画像信号符号化装置及び方法、画像信号復号装置及び方法、並びに記録媒体
JP4292658B2 (ja) 画像情報変換装置及び画像情報変換方法
WO2008095825A1 (en) Video transcoding with reduced drift
Haskell et al. MPEG-2 Video Coding and Compression
MXPA00000319A (en) Multi-functional transcoder for compressed bit stream

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: 20121129

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141205

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20151204

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161207

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20171208

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20181206

Year of fee payment: 10