KR20110061791A - 비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체 - Google Patents

비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR20110061791A
KR20110061791A KR1020090118301A KR20090118301A KR20110061791A KR 20110061791 A KR20110061791 A KR 20110061791A KR 1020090118301 A KR1020090118301 A KR 1020090118301A KR 20090118301 A KR20090118301 A KR 20090118301A KR 20110061791 A KR20110061791 A KR 20110061791A
Authority
KR
South Korea
Prior art keywords
bit stream
entropy
video
coding scheme
video bit
Prior art date
Application number
KR1020090118301A
Other languages
English (en)
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 주식회사 칩스앤미디어
Priority to KR1020090118301A priority Critical patent/KR20110061791A/ko
Publication of KR20110061791A publication Critical patent/KR20110061791A/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/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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다. 본 발명의 일 태양에 따르면, 비디오 트랜스코딩을 수행하기 위한 방법으로서, (a) H.264 표준안의 베이스라인 프로파일(Baseline profile)에 의하여 지원되지 않는 제1 엔트로피 코딩 방식에 따라 엔트로피 인코딩된 비디오 비트 스트림(bit stream)을 입력 받는 단계 - 상기 비디오 비트 스트림은 엔트로피 코딩 방식을 제외하고는 상기 베이스라인 프로파일에 의하여 지원되는 코딩 방식에 따라 인코딩됨 -, (b) 상기 제1 엔트로피 코딩 방식에 따라 상기 입력 받은 비디오 비트 스트림을 엔트로피 디코딩하는 단계, 및 (c) 상기 엔트로피 디코딩을 수행한 결과 얻어지는 데이터를 상기 베이스라인 프로파일에 의하여 지원되는 제2 엔트로피 코딩 방식에 따라 엔트로피 인코딩하는 단계를 포함하는 방법이 제공된다. 본 발명에 의하면, 트랜스코딩에 소요되는 시간과 연산량을 줄이고 트랜스코딩을 수행하는 코덱(codec)의 하드웨어 구성을 단순화할 수 있게 되는 효과를 달성할 수 있다.
H.264, AVC, 메인 프로파일, 베이스라인 프로파일, 트랜스코딩

Description

비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체{METHOD, SYSTEM, AND COMPUTER-READABLE RECORDING MEDIUM FOR PERFORMING VIDEO TRANSCODING OR VIDEO DECODING USING THE SAME}
본 발명은 비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다. 보다 상세하게는, 본 발명은 H.264의 베이스라인 프로파일(Baseline profile)에 의하여 지원되지 않는 엔트로피 코딩 방식에 따라 엔트로피 인코딩된 비디오(예를 들면, 메인 또는 하이 프로파일(Main/High profile) 형식의 비디오 등)를 베이스라인 프로파일 형식의 비디오로 트랜스코딩(transcoding)할 수 있도록 하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다.
H.264(MPEG-4 Advanced Video Coding(AVC)) 표준안은 시각 정보의 부호화된 표현을 위한 표준안으로서, 압축된 형태의 시각 데이터를 나타내는 부호화된 표현, 즉, 신택스(syntax)와 시각 정보를 복원하기 위해 신택스를 디코딩하는 방법을 정의하고 있다. 또한, H.264 표준안은 시각 정보 압축의 효율성 및 신뢰성을 강조하 고 있는 표준안으로서, 다양한 응용 분야에 적용될 수 있도록 여러 가지 프로파일을 정의하고 있다. 대표적으로 살펴보면, H.264 표준안에는 화상 전화 및 무선 통신 분야에 적합한 베이스라인 프로파일(Baseline profile), TV 방송 및 비디오 저장 분야에 적합한 메인 프로파일(Main profile), 스트리밍 미디어 분야에 적합한 익스텐디드 프로파일(Extended profile), HDTV 분야에 적합한 하이 프로파일(High profile) 등이 정의되어 있다.
보다 구체적으로, 인터넷(예를 들면, 유튜브(YouTube) 등)을 통하여 제공되는 비디오는 메인 또는 하이 프로파일에 따라 인코딩된 것이 주류를 이루고 있다. 컨텍스트 기반 적응형 이진 산술 코딩(Context-Adaptive Binary Arithmetic Coding: CABAC)과 B 슬라이스(slices)와 같은 코딩 도구를 지원하는 메인 또는 하이 프로파일의 경우 비디오 압축률을 높일 수 있는 반면 비디오 디코딩에 많은 연산량을 요구하는데, 최근에는 PC가 고성능화됨에 따라 연산 부담이 줄어들었기 때문에 인터넷을 통하여 제공되는 비디오는 대부분 메인 또는 하이 프로파일에 따라 인코딩되고 있는 실정이다.
이에 반해, 모바일 통신망을 통하여 모바일 기기에 제공되는 비디오는 베이스라인 프로파일에 따라 인코딩되는 것이 일반적이다. 모바일 기기의 경우 프로세서 자원이 한정되어 있고 전력 소모를 줄여야 한다는 점을 감안할 때, 비디오 압축률이 낮은 대신에 상대적으로 적은 연산량을 요구하는 베이스라인 프로파일이 모바일 기기에 적합하기 때문이다.
근래에 들어서는, 무선 데이터 통신의 발달로 인터넷과 모바일의 경계가 허 물어져 감에 따라 모바일 기기를 통하여 직접 인터넷에 접속하여 비디오를 제공 받고자 하는 시도가 이루어지고 있는데, 앞에서 살펴본 바와 같이 인터넷을 통하여 제공되는 비디오와 모바일 기기 상에 탑재되어 있는 비디오 디코더가 서로 호환되지 않는 경우가 대부분이기 때문에 인터넷을 통하여 제공되는 비디오를 모바일 기기 상에서 직접 재생하는 것에는 큰 무리가 있었다.
한편, 위와 같은 호환성 문제를 해결하기 위한 방법으로, 메인 또는 하이 프로파일 형식의 비디오를 베이스라인 프로파일 형식의 비디오로 트랜스코딩(transcoding)하는 방법이 고려될 수 있다. 하지만, 종래의 트랜스코딩 방법에 따르면, 블록기반 움직임 보상, 변환, 양자화, 재배치 및 엔트로피 코딩 등의 모든 인코딩 및 디코딩 과정을 포함하는 풀(full) 트랜스코딩 과정을 거쳐야 하는데, 이러한 풀 트랜스코딩 과정에는 많은 시간과 연산량이 요구된다는 한계가 있으며, 특히, 프로세스 자원이 한정된 모바일 장치에서 풀 트랜스코딩을 수행하는 것은 부적합하다는 문제점이 있다.
따라서, H.264 표준안의 메인 또는 하이 프로파일 등의 다른 프로파일 형식의 비디오에서 베이스라인 프로파일 형식의 비디오로의 트랜스코딩을 보다 효율적으로 수행할 수 있도록 하는 기술의 필요성이 대두되고 있다.
본 발명은 상술한 문제점을 모두 해결하는 것을 그 목적으로 한다.
또한, 본 발명은 엔트로피 인코딩 및 디코딩만을 이용하여 H.264 표준안의 베이스라인 프로파일(Baseline profile)에 의하여 지원되지 않는 엔트로피 코딩 방식에 따라 엔트로피 인코딩된 비디오(예를 들면, 메인 또는 하이 프로파일(Main profile or High profile) 형식의 비디오 등)를 베이스라인 프로파일 형식의 비디오로 트랜스코딩(transcoding)할 수 있도록 하는 것을 다른 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.
본 발명의 일 태양에 따르면, 비디오 트랜스코딩을 수행하기 위한 방법으로서, (a) H.264 표준안의 베이스라인 프로파일(Baseline profile)에 의하여 지원되지 않는 제1 엔트로피 코딩 방식에 따라 엔트로피 인코딩된 비디오 비트 스트림(bit stream)을 입력 받는 단계 - 상기 비디오 비트 스트림은 엔트로피 코딩 방식을 제외하고는 상기 베이스라인 프로파일에 의하여 지원되는 코딩 방식에 따라 인코딩됨 -, (b) 상기 제1 엔트로피 코딩 방식에 따라 상기 입력 받은 비디오 비트 스트림을 엔트로피 디코딩하는 단계, 및 (c) 상기 엔트로피 디코딩을 수행한 결과 얻어지는 데이터를 상기 베이스라인 프로파일에 의하여 지원되는 제2 엔트로피 코딩 방식에 따라 엔트로피 인코딩하는 단계를 포함하는 방법이 제공된다.
본 발명의 다른 태양에 따르면, 비디오 디코딩을 수행하기 위한 방법으로서, (a) 입력 비디오 비트 스트림에 포함된 프로파일 종류에 관한 정보를 참조로 하여 상기 입력 비디오 비트 스트림이 베이스라인 프로파일 형식의 비디오 비트 스트림인지 여부를 판별하는 단계, (b) 상기 입력 비디오 비트 스트림이 베이스라인 프로파일 형식의 비디오 비트 스트림이 아닌 것으로 판별되면, 제1항의 비디오 트랜스코딩 방법을 이용하여 상기 입력 비디오 비트 스트림을 베이스라인 프로파일 형식의 비디오 비트 스트림으로 트랜스코딩하는 단계, 및 (c) 상기 트랜스코딩된 입력 비디오 비트 스트림을 디코딩하여 비디오 프레임을 복원하는 단계를 포함하는 방법이 제공된다.
본 발명의 또 다른 태양에 따르면, 비디오 트랜스코딩을 수행하기 위한 시스템으로서, H.264 표준안의 베이스라인 프로파일(Baseline profile)에 의하여 지원되지 않는 제1 엔트로피 코딩 방식에 따라 엔트로피 인코딩된 비디오 비트 스트림(bit stream)을 입력 받고, 상기 제1 엔트로피 코딩 방식에 따라 상기 입력 받은 비디오 비트 스트림을 엔트로피 디코딩하는 엔트로피 디코딩부 - 상기 비디오 비트 스트림은 엔트로피 코딩 방식을 제외하고는 상기 베이스라인 프로파일에 의하여 지원되는 코딩 방식에 따라 인코딩됨 -, 및 상기 엔트로피 디코딩을 수행한 결과 얻어지는 데이터를 상기 베이스라인 프로파일에 의하여 지원되는 제2 엔트로피 코딩 방식에 따라 엔트로피 인코딩하는 엔트로피 인코딩부를 포함하는 시스템이 제공된다.
본 발명의 또 다른 태양에 따르면, 비디오 디코딩을 수행하기 위한 시스템으로서, 입력 비디오 비트 스트림에 포함된 프로파일 종류에 관한 정보를 참조로 하 여 상기 입력 비디오 비트 스트림이 베이스라인 프로파일 형식의 비디오 비트 스트림인지 여부를 판별하는 판별부, 상기 입력 비디오 비트 스트림이 베이스라인 프로파일 형식의 비디오 비트 스트림이 아닌 것으로 판별되면, 제6항의 비디오 트랜스코딩 시스템을 이용하여 상기 입력 비디오 비트 스트림을 베이스라인 프로파일 형식의 비디오 비트 스트림으로 트랜스코딩하는 트랜스코딩부, 및 상기 트랜스코딩된 입력 비디오 비트 스트림을 디코딩하여 비디오 프레임을 복원하는 베이스라인 프로파일 비디오 디코딩부를 포함하는 시스템이 제공된다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명에 의하면, 엔트로피 인코딩 및 디코딩만을 이용하여 H.264의 서로 다른 프로파일 간의 트랜스코딩을 수행할 수 있으므로, 트랜스코딩에 소요되는 시간과 연산량을 줄이고 트랜스코딩을 수행하는 코덱(codec)의 하드웨어 구성을 단순화할 수 있게 되는 효과를 달성할 수 있다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하에서는, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1 및 도 2는 각각 H.264 표준안에 따른 비디오 인코더(100) 및 디코더(200)의 구성을 예시적으로 나타내는 도면이다.
도 1을 참조하면, H.264 표준안에 따른 비디오 인코딩은 비디오 프레임 사이의 시간적 중복 요소를 제거하여 움직임 벡터를 생성하는 블록 기반 움직임 보상(110), 오차 프레임 내의 공간적인 중복 요소를 제거하여 변환 계수를 생성하는 변환, 양자화 및 재배치(120), 데이터에 존재하는 통계적인 중복 요소를 제거하여 압축된 비트 스트림(bit stream)을 생성하는 엔트로피 인코딩(130) 등의 과정으로 구성될 수 있다.
또한, 도 2를 참조하면, H.264 표준안에 따른 비디오 디코딩은 변환 계수와 움직임 벡터를 복원하는 엔트로피 디코딩(210), 변환 계수로부터 오차 프레임을 복원하는 역변환, 역양자화 및 재배치(220), 오차 프레임과 움직임 벡터로부터 현재 프레임을 복원하는 블록 기반 움직임 보상(230) 등의 과정으로 구성될 수 있다.
보다 구체적으로 살펴보면, 블록 기반 움직임 보상(110, 230) 부분에 있어서, 메인 또는 하이 프로파일(Main/High profile)은 B 슬라이스(B slices)를 지원하는 반면에 베이스라인 프로파일(Baseline profile)은 B 슬라이스를 지원하지 않는다. 또한, 엔트로피 코딩(130, 210) 부분에 있어서, 메인 또는 하이 프로파일은 컨텍스트 기반 적응형 가변 길이 코딩(Context-adaptive variable-length coding: CAVLC, 이하 "CAVLC"이라고 함) 방식 및 컨텍스트 기반 적응형 이진 산술 코딩(Context-Adaptive Binary Arithmetic Coding: CABAC, 이하 "CABAC"이라고 함) 방식을 모두 지원하는 반면에 베이스라인 프로파일은 CAVLC 방식만을 지원한다.
따라서, 메인 또는 하이 프로파일 형식의 비디오 코덱과 베이스라인 프로파일 형식의 비디오 코덱은 서로 호환되지 않는 경우가 많다. 그럼에도 불구하고, 메인 또는 하이 프로파일에 따라 인코딩된 비디오 비트 스트림을 베이스라인 프로파일에 따른 비디오 코덱으로 디코딩하기 위해서는, 메인 또는 하이 프로파일에 따라 인코딩된 비디오 비트 스트림을 베이스라인 프로파일에 따라 인코딩된 비디오 비트 스트림으로 트랜스코딩(transcoding)하는 과정이 선행되어야 하며, 이러한 트랜스코딩은 블록 기반 움직임 보상(110, 230), 변환, 양자화 및 재배치(120, 220), 엔트로피 코딩(130, 210) 등의 과정을 모두 포함하는 풀(full) 트랜스코딩인 것이 일반적이다.
하지만, 만약 메인 또는 하이 프로파일에 따라 인코딩된 비디오가 엔트로피 코딩 방식을 제외하고는 상기 베이스라인 프로파일에 의하여 지원되는 코딩 방식에 따라 인코딩된 경우, 즉, 블록 기반 움직임 보상, 변화, 양자화 및 재배치 부분은 모두 베이스라인 프로파일에 정의된 방식에 따라 인코딩되고 엔트로피 코딩 부분만 메인 또는 하이 프로파일에 정의된 CABAC 방식에 의하여 인코딩된 경우에는, 엔트로피 코딩 부분에 대한 트랜스코딩만을 수행함으로써 메인 또는 하이 프로파일에서 베이스라인 프로파일로의 트랜스코딩을 완료할 수 있게 된다.
트랜스코딩 시스템의 구성
이하에서는, 본 발명의 구현을 위하여 중요한 기능을 수행하는 트랜스코딩 시스템의 내부 구성 및 각 구성요소의 기능에 대하여 살펴보기로 한다.
도 3은 본 발명의 일 실시예에 따른 트랜스코딩 시스템의 내부 구성을 예시적으로 나타내는 도면이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 트랜스코딩 시스템(300)은, 엔트로피 디코딩부(310), 신택스(syntax) 요소 맵핑부(320) 및 엔트로피 인코딩부(330)를 포함할 수 있다. 본 발명의 일 실시예에 따르면, 엔트로피 디코딩부(310), 신택스 요소 맵핑부(320) 및 엔트로피 인코딩부(330)는 그 중 적어도 일부가 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 트랜스코딩 시스템(300)에 포함될 수 있으며, 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈들은 트랜스코딩 시스템(300)과 통신 가능한 원격 기억 장치에 저장될 수도 있다. 한편, 이러한 프로그램 모듈들은 본 발명에 따 라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.
먼저, 본 발명의 일 실시예에 따르면, 엔트로피 디코딩부(310)는 입력 비디오 비트 스트림에 적용된 제1 엔트로피 코딩 방식에 따라 입력 비디오 비트 스트림을 엔트로피 디코딩하는 기능을 수행할 수 있다.
보다 구체적으로, 트랜스코딩(transcoding)의 대상이 되는 입력 비디오 비트 스트림은 H.264 표준안의 베이스라인 프로파일에 의하여 지원되지 않는 제1 엔트로피 코딩 방식에 따라 엔트로피 인코딩된 비디오 비트 스트림일 수 있다. 여기서, H.264 표준안의 베이스라인 프로파일에 의하여 지원되지 않는 제1 엔트로피 코딩 방식은, 메인 또는 하이 프로파일에 의하여 지원되지만 베이스라인 프로파일에 의하여는 지원되지 않는 CABAC 방식을 포함할 수 있다. 이러한 경우, 본 발명의 일 실시예에 따른 엔트로피 디코딩부(310)는 CABAC 방식에 따라 엔트로피 인코딩된 상태로 입력되는 비디오 비트 스트림을 CABAC 방식으로 엔트로피 디코딩할 수 있다.
다음으로, 본 발명의 일 실시예에 따르면, 신택스 요소 맵핑부(320)는 입력 비디오 비트 스트림을 엔트로피 디코딩한 결과 얻어지는 신택스 요소의 값을 베이스라인 프로파일에 따른 신택스 요소의 값에 대하여 맵핑하는 기능을 수행할 수 있으며, 이로써 후술할 베이스라인 프로파일에 따른 엔트로피 인코딩이 정상적으로 수행될 수 있도록 할 수 있다.
예를 들어, 엔트로피 디코딩부(310)에 입력되는 비디오 비트 스트림이 CABAC 방식에 의해 엔트로피 인코딩된 비디오 비트스트림인 경우를 가정할 수 있는데, 이러한 경우, 본 발명의 일 실시예에 따른 신택스 요소 맵핑부(320)는, 슬라이스 데이터 신택스(slice data syntax) 및 오차 블록 CABAC 신택스(residual block CABAC syntax) 등에 포함된 신택스 요소의 값을 변경할 수 있다.
먼저, 슬라이스 데이터 신택스에 있어서 신택스 요소를 맵핑하는 과정을 구체적으로 살펴보면, 본 발명의 일 실시예에 따른 신택스 요소 맵핑부(320)는 cabac_alignment_one_bit라는 신택스 요소를 삭제할 수 있고 mb_skip_flag라는 신택스 요소를 mb_skip_run이라는 신택스 요소에 맵핑할 수 있으며, end_of_slice_flag라는 신택스 요소를 삭제할 수 있다.
또한, 오차 블록 CABAC 신택스에 있어서 신택스 요소를 맵핑하는 과정을 구체적으로 살펴보면, 본 발명의 일 실시예에 따른 신택스 요소 맵핑부(320)는, coded_block_flag라는 신택스 요소의 값이 0인 경우 trailingOnes 및 Totalcoeff의 값을 0으로 할당할 수 있고, coded_block_flag라는 신택스 요소의 값이 1인 경우, 나머지 신택스 요소의 값을 CABAC 파싱(parsing)하여 coeffLevel[0~15]에 할당할 수 있다.
물론, 본 발명에 적용 가능한 신택스 요소 맵핑 방법이 상기 언급된 예에만 한정되는 것은 아니며, 다양한 변형예를 적용하여 본 발명을 구현할 수 있을 것이다.
다음으로, 본 발명의 일 실시예에 따르면, 엔트로피 인코딩부(330)는 베이스라인 프로파일에 의하여 지원되는 제2 엔트로피 코딩 방식을 이용하여 엔트로피 인 코딩을 수행함으로써 베이스라인 프로파일 형식의 비트 스트림을 출력하는 기능을 수행할 수 있다. 이로써, 베이스라인 프로파일에 따른 디코더에 의하여 정상적으로 디코딩될 수 있는 베이스라인 프로파일 형식의 비디오 비트 스트림을 얻을 수 있게 된다. 보다 구체적으로, 엔트로피 인코딩부(330)에서 사용되는 제2 엔트로피 코딩 방식은 베이스라인 프로파일에 의하여 지원되는 Exp-Golomb 엔트로피 코딩 방식, CAVLC 방식 등을 포함할 수 있다.
이상에서 살펴본 바와 같이, 본 발명의 트랜스코딩 시스템(300)에 따르면, 엔트로피 인코딩 및 디코딩만을 이용하여 H.264의 서로 다른 프로파일 간의 트랜스코딩을 수행할 수 있으므로, 트랜스코딩에 소요되는 시간과 연산량을 줄이고 트랜스코딩을 수행하는 비디오 코덱(codec)의 하드웨어 구성을 단순화할 수 있게 된다.
한편, 본 발명에 따른 트랜스코딩 시스템은 종래의 베이스라인 프로파일 비디오 디코더와 결합하여 다양한 프로파일 형식의 비디오 비트 스트림을 디코딩할 수 있는 디코딩 시스템을 구성할 수도 있다.
도 4는 본 발명의 일 실시예에 따른 디코딩 시스템의 구성을 예시적으로 나타내는 도면이다. 도 4를 참조하면, 본 발명의 일 실시예에 따른 디코딩 시스템(400)은 판별부(410), 트랜스코딩부(420), 베이스라인 프로파일 비디오 디코딩부(430)를 포함할 수 있다.
먼저, 판별부(410)는 입력 비디오 비트 스트림에 포함된 프로파일 종류에 관한 정보를 참조로 하여 입력 비디오 비트 스트림을 베이스라인 프로파일 형식의 비디오 비트 스트림으로 트랜스코딩할 필요가 있는지 여부를 판별하는 기능을 수행할 수 있다.
다음으로, 트랜스코딩부(420)은 엔트로피 인코딩 및 디코딩만을 이용하여 베이스라인 프로파일 형식의 비디오 비트 스트림이 아닌 것으로 판별된 입력 비디오 비트 스트림을 베이스라인 프로파일 형식의 비디오 비트스트림으로 트랜스코딩하는 기능을 수행할 수 있다.
다음으로, 베이스라인 프로파일 비디오 디코딩부(430)는 베이스라인 프로파일 형식의 비디오 비트 스트림을 디코딩하여 비디오 프레임을 복원하는 기능을 수행할 수 있다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴 퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.
도 1 및 도 2는 각각 H.264 표준안에 따른 비디오 인코더 및 디코더의 구성을 예시적으로 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 트랜스코딩 시스템의 내부 구성을 예시적으로 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 디코딩 시스템의 구성을 예시적으로 나타내는 도면이다.
<주요 도면부호에 관한 간단한 설명>
100: H.264 인코더
110: 블록 기반 움직임 보상
120: 변환, 양자화 및 재배치
130: 엔트로피 인코딩
200: H.264 디코더
210: 엔트로피 디코딩
220: 역변환, 역양자화, 재배치
230: 블록 기반 움직임 보상
300: 트랜스코딩 시스템
310: 엔트로피 디코딩부
320: 신택스 요소 맵핑부
330: 엔트로피 인코딩부
400: 디코딩 시스템
410: 판별부
420: 트랜스코딩부
430: 베이스라인 프로파일 비디오 디코딩부

Claims (11)

  1. 비디오 트랜스코딩을 수행하기 위한 방법으로서,
    (a) H.264 표준안의 베이스라인 프로파일(Baseline profile)에 의하여 지원되지 않는 제1 엔트로피 코딩 방식에 따라 엔트로피 인코딩된 비디오 비트 스트림(bit stream)을 입력 받는 단계 - 상기 비디오 비트 스트림은 엔트로피 코딩 방식을 제외하고는 상기 베이스라인 프로파일에 의하여 지원되는 코딩 방식에 따라 인코딩됨 -,
    (b) 상기 제1 엔트로피 코딩 방식에 따라 상기 입력 받은 비디오 비트 스트림을 엔트로피 디코딩하는 단계, 및
    (c) 상기 엔트로피 디코딩을 수행한 결과 얻어지는 데이터를 상기 베이스라인 프로파일에 의하여 지원되는 제2 엔트로피 코딩 방식에 따라 엔트로피 인코딩하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 제1 엔트로피 코딩 방식은, 컨텍스트 기반 적응형 이진 산술 코딩(Context-Adaptive Binary Arithmetic Coding: CABAC) 방식을 포함하는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    상기 제2 엔트로피 코딩 방식은, Exp-Golomb 엔트로피 코딩 방식 및 컨텍스트 기반 적응형 가변 길이 코딩(Context-adaptive variable-length coding: CAVLC) 방식을 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서,
    상기 (c) 단계는,
    (c-1) 상기 엔트로피 디코딩을 수행한 결과 얻어지는 데이터에 포함되어 있는 신택스 요소(syntax element)를 베이스라인 프로파일의 신택스 요소에 대하여 맵핑하는 단계
    를 포함하는 것을 특징으로 하는 방법.
  5. 비디오 디코딩을 수행하기 위한 방법으로서,
    (a) 입력 비디오 비트 스트림에 포함된 프로파일 종류에 관한 정보를 참조로 하여 상기 입력 비디오 비트 스트림이 베이스라인 프로파일 형식의 비디오 비트 스트림인지 여부를 판별하는 단계,
    (b) 상기 입력 비디오 비트 스트림이 베이스라인 프로파일 형식의 비디오 비트 스트림이 아닌 것으로 판별되면, 제1항의 비디오 트랜스코딩 방법을 이용하여 상기 입력 비디오 비트 스트림을 베이스라인 프로파일 형식의 비디오 비트 스트림으로 트랜스코딩하는 단계, 및
    (c) 상기 트랜스코딩된 입력 비디오 비트 스트림을 디코딩하여 비디오 프레임을 복원하는 단계
    를 포함하는 방법.
  6. 비디오 트랜스코딩을 수행하기 위한 시스템으로서,
    H.264 표준안의 베이스라인 프로파일(Baseline profile)에 의하여 지원되지 않는 제1 엔트로피 코딩 방식에 따라 엔트로피 인코딩된 비디오 비트 스트림(bit stream)을 입력 받고, 상기 제1 엔트로피 코딩 방식에 따라 상기 입력 받은 비디오 비트 스트림을 엔트로피 디코딩하는 엔트로피 디코딩부 - 상기 비디오 비트 스트림은 엔트로피 코딩 방식을 제외하고는 상기 베이스라인 프로파일에 의하여 지원되는 코딩 방식에 따라 인코딩됨 -, 및
    상기 엔트로피 디코딩을 수행한 결과 얻어지는 데이터를 상기 베이스라인 프로파일에 의하여 지원되는 제2 엔트로피 코딩 방식에 따라 엔트로피 인코딩하는 엔트로피 인코딩부
    를 포함하는 시스템.
  7. 제6항에 있어서,
    상기 제1 엔트로피 코딩 방식은, 컨텍스트 기반 적응형 이진 산술 코딩(Context-Adaptive Binary Arithmetic Coding: CABAC) 방식을 포함하는 것을 특징으로 하는 시스템.
  8. 제6항에 있어서,
    상기 제2 엔트로피 코딩 방식은, Exp-Golomb 엔트로피 코딩 방식 및 컨텍스트 기반 적응형 가변 길이 코딩(Context-adaptive variable-length coding: CAVLC) 방식을 포함하는 것을 특징으로 하는 시스템.
  9. 제1항에 있어서,
    상기 엔트로피 디코딩을 수행한 결과 얻어지는 데이터에 포함되어 있는 신택스 요소(syntax element)를 베이스라인 프로파일의 신택스 요소에 대하여 맵핑하는 신택스 요소 맵핑부
    를 더 포함하는 것을 특징으로 하는 시스템.
  10. 비디오 디코딩을 수행하기 위한 시스템으로서,
    입력 비디오 비트 스트림에 포함된 프로파일 종류에 관한 정보를 참조로 하여 상기 입력 비디오 비트 스트림이 베이스라인 프로파일 형식의 비디오 비트 스트림인지 여부를 판별하는 판별부,
    상기 입력 비디오 비트 스트림이 베이스라인 프로파일 형식의 비디오 비트 스트림이 아닌 것으로 판별되면, 제6항의 비디오 트랜스코딩 시스템을 이용하여 상기 입력 비디오 비트 스트림을 베이스라인 프로파일 형식의 비디오 비트 스트림으로 트랜스코딩하는 트랜스코딩부, 및
    상기 트랜스코딩된 입력 비디오 비트 스트림을 디코딩하여 비디오 프레임을 복원하는 베이스라인 프로파일 비디오 디코딩부
    를 포함하는 시스템.
  11. 제1항 내지 제5항 중 어느 한 항에 따른 방법을 실행하기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1020090118301A 2009-12-02 2009-12-02 비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체 KR20110061791A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090118301A KR20110061791A (ko) 2009-12-02 2009-12-02 비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090118301A KR20110061791A (ko) 2009-12-02 2009-12-02 비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체

Publications (1)

Publication Number Publication Date
KR20110061791A true KR20110061791A (ko) 2011-06-10

Family

ID=44396078

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090118301A KR20110061791A (ko) 2009-12-02 2009-12-02 비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체

Country Status (1)

Country Link
KR (1) KR20110061791A (ko)

Similar Documents

Publication Publication Date Title
US11245923B2 (en) Representative motion information for temporal motion prediction in video encoding and decoding
JP6423061B2 (ja) ビデオデコーダを実装するコンピューティングデバイス及びその方法
US8705624B2 (en) Parallel decoding for scalable video coding
US10582203B2 (en) Method and apparatus for transform coefficient coding of non-square blocks
JP5869108B2 (ja) メモリ効率的コンテキストモデリング
TWI544787B (zh) 當跳過轉換時用於有損寫碼之內部預測模式
JP4610195B2 (ja) スキップマクロブロックコード化
KR101365441B1 (ko) 영상 부호화장치 및 방법과 그 영상 복호화장치 및 방법
US9167245B2 (en) Method of determining binary codewords for transform coefficients
CA2543947A1 (en) Method and apparatus for adaptively selecting context model for entropy coding
US20120236940A1 (en) Method for Efficient Parallel Processing for Real-Time Video Coding
JP7426432B2 (ja) 外部ストリーム表現プロパティ
TWI493885B (zh) 用於操作通訊裝置的熵編碼器及設備
US8767838B1 (en) Cascading multiple video transcoders in a video processing system
KR102284107B1 (ko) 영상을 부호화/복호화하기 위한 파라미터 세트 생성 방법 및 장치
KR20100089546A (ko) 단계적인 영상 부호화, 복호화 방법 및 장치
US20160360236A1 (en) Method and Apparatus for Entropy Transcoding
KR20110061791A (ko) 비디오 트랜스코딩 또는 이를 이용한 비디오 디코딩을 수행하기 위한 방법, 시스템, 및 컴퓨터 판독 가능한 기록 매체
US20200382767A1 (en) Motion compensation reference frame compression
CN108432251B (zh) 比特流变换设备、比特流变换方法、分发系统、分发方法以及计算机可读存储介质
US20120147972A1 (en) Image decoding apparatus, image decoding method, image encoding apparatus, image encoding method, and program
Maugey et al. Analysis of error propagation due to frame losses in a distributed video coding system
KR101075776B1 (ko) 트랜스코딩 방법 및 그 장치
JP2010268094A (ja) 画像復号化装置および画像復号化方法
CN114845107A (zh) 图像编码方法及其图像编码器

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application