KR100917543B1 - 다수의 트랜스코딩된 출력을 생성하는 방법 - Google Patents

다수의 트랜스코딩된 출력을 생성하는 방법 Download PDF

Info

Publication number
KR100917543B1
KR100917543B1 KR1020077009589A KR20077009589A KR100917543B1 KR 100917543 B1 KR100917543 B1 KR 100917543B1 KR 1020077009589 A KR1020077009589 A KR 1020077009589A KR 20077009589 A KR20077009589 A KR 20077009589A KR 100917543 B1 KR100917543 B1 KR 100917543B1
Authority
KR
South Korea
Prior art keywords
transcoding
bit rate
reduction
intermediate data
video
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020077009589A
Other languages
English (en)
Other versions
KR20070063564A (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 KR20070063564A publication Critical patent/KR20070063564A/ko
Application granted granted Critical
Publication of KR100917543B1 publication Critical patent/KR100917543B1/ko
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements

Landscapes

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

Abstract

단일의 입력에 근거하여 다수의 트랜스코딩된 출력을 생성하는 방법 및 시스템이 개시된다. 제 1 비디오 입력 요건을 갖는 제 1 트랜스코딩 세션이 개시되며(810), 여기서, 제 1 트랜스코딩 세션은 복수의 비디오 처리 동작을 포함한다. 제 2 비디오 입력 요건을 갖는 제 2 트랜스코딩 세션이 개시된다(820). 제 1 트랜스코딩 세션의 적어도 하나의 비디오 처리 동작과 관련된 중간 데이터가 생성된다(840). 제 2 트랜스코딩 세션이 수행되며(860), 여기서, 제 2 트랜스코딩 세션은 적어도 부분적으로 중간 데이터에 근거한다.

Description

다수의 트랜스코딩된 출력을 생성하는 방법{A METHOD AND SYSTEM FOR GENERATING MULTIPLE TRANSCODED OUTPUTS BASED ON A SINGLE UNIT}
본 발명의 실시예는 데이터 트랜스코딩(data transcoding)의 분야에 관한 것이다. 구체적으로, 본 발명의 실시예는 단일의 입력에 근거하여 다수의 트랜스코딩된 출력을 생성하는 방법 및 시스템에 관한 것이다.
셀룰라 전화, PDA(personal digital assistant) 및 랩탑 컴퓨터와 같은 휴대용 전자 장치는 점점 더, 비디오 콘텐츠를 사용자에게 제공할 수 있다. 때때로, 비디오 콘텐츠는 라이브 소스 또는 방송 소스로부터 발생되며, 프리젠테이션을 위해 휴대용 전자 장치로 무선 송신된다. 전형적인 휴대용 전자 장치의 전형적인 스크린 크기 및 비트 레이트 포맷으로 인해, 비디오 콘텐츠는 장치 및 수신하는 휴대용 전자 장치의 네트워크 속성에 적합하도록 적응된다. 넓은 어레이의 네트워크 및 클라이언트 장치에 적합하도록 비디오 콘텐츠를 적응시키는 한 가지 방법은 트랜스코딩이다. 트랜스코딩은 스크린 크기 출력 및 대역폭과 같은 장치 및 네트워크 속성을 조절함으로써, 매체 데이터를 상이한 포맷으로 보도록 적응시킨다. 본 질적으로, 트랜스코딩은 뷰잉 장치의 특성에 따라 비디오를 조절한다.
상이한 유형의 휴대용 전자 장치의 넓은 어레이로 인해, 전형적으로, 비디오가 송신되는 전자 장치의 각각의 유형에 대해 비디오를 트랜스코딩할 필요가 있다. 현재, 전형적인 트랜스코더는 뷰잉 장치의 각각의 유형에 대해 상이한 트랜스코딩 세션을 개시한다. 트랜스코더는 동일한 소스로부터의 비디오를 트랜스코딩하지만, 각각의 트랜스코딩 세션은 독립적으로 수행된다. 상이한 트랜스코딩 세션은 다양한 계산 부하를 갖는다. 예를 들어, 한 가지 유형의 장치가 비트 레이트 감소를 요구하고, 제 2 장치 유형은 더 큰 계산 부하를 요구하는 스크린 해상도 감소를 요구할 수 있다. 더욱이, 트랜스코딩 세션은 동일한 입력 비디오 데이터에 대해 다수의 동일한 비디오 처리 동작을 수행하는 매우 유사한 비디오 출력을 제공할 수 있다.
많은 상이한 장치/접속 능력을 갖는 클라이언트에 의해 하나의 비디오 소스가 요청되는 라이브 비디오 트랜스코딩 또는 방송 트랜스코딩의 기술된 시나리오에서, 소스는 다수의 유형의 비디오 출력으로 트랜스코딩될 필요가 있다. 별도의 트랜스코딩 세션을 이용하여 비디오 데이터를 다수의 출력으로 독립적으로 트랜스코딩하는 현재의 기술은, 개별적인 트랜스코딩 세션에서 중복 동작들을 수행함으로써, 계산 능력을 낭비하고 있다. 더욱이, 현재의 기술은 트랜스코딩 서비스에 대한 스케일러빌리티(scalability) 요구를 만족시키지 못할 수 있다.
발명의 개요
본 발명의 다양한 실시예, 단일의 입력에 근거하여 다수의 트랜스코딩된 출력을 생성하는 방법 및 시스템이 기술된다. 제 1 속성을 갖는 제 1 트랜스코딩 세션이 개시되며, 여기서, 제 1 트랜스코딩 세션은 복수의 비디오 처리 동작을 포함한다. 제 2 속성을 갖는 제 2 트랜스코딩 세션이 개시된다. 제 1 트랜스코딩 세션의 적어도 하나의 비디오 처리 동작과 관련된 중간 데이터가 생성된다. 제 2 트랜스코딩 세션이 수행되며, 여기서, 제 2 트랜스코딩 세션은 적어도 부분적으로 중간 데이터에 근거한다.
본 명세서에 포함되며 그 일부의 형태인 첨부 도면은 본 발명의 실시예들을 도시하며, 설명과 함께, 본 발명의 원리를 기술한다.
도 1은 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 시스템의 블록도를 도시한다.
도 2는 본 발명의 실시예에 따른, 트랜스코딩 처리의 예시적인 디코딩 및 인코딩 동작의 블록도를 도시한다.
도 3a는 본 발명의 실시예에 따른, 2 트랜스코딩 디멘죤의 2차원 그래프 표현을 도시한다.
도 3b는 본 발명의 실시예에 따른, 3 트랜스코딩 디멘죤의 3차원 그래프 표현을 도시한다.
도 4는 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 처리에서의 DCT(discrete cosine transform) 정보의 예시적인 점진적 재이용의 블록도를 도시한다.
도 5는 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 처리에서의 레이트 제어 정보의 예시적인 점진적 재이용의 블록도를 도시한다.
도 6은 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 처리에서의 양자화 정보의 예시적인 점진적 재이용의 블록도를 도시한다.
도 7은 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 처리에서의 드리프트 정정에서의 에러 프레임 정보의 예시적인 점진적 재이용의 블록도를 도시한다.
도 8은 본 발명의 실시예에 따른, 단일의 입력에 근거하여 다수의 트랜스코딩된 출력을 생성하는 처리의 흐름도를 도시한다.
이제, 본 발명의 다양한 실시예를 상세히 참조할 것이며, 그것의 예가 첨부 도면에 도시된다. 본 발명은 이들 실시예와 함께 기술될 것이지만, 그것은 본 발명을 이들 실시예에 한정하는 것이 아님을 이해할 것이다. 그와는 반대로, 본 발명은 첨부된 특허 청구 범위에 의해 정의된 것으로서의 본 발명의 사상 및 영역내에 포함될 수 있는 대안, 변경 및 등가물을 포함하는 것으로 의도된다. 더욱이, 본 발명에 대한 이하의 설명에서, 본 발명에 대한 완전한 이해를 제공하기 위해, 다양한 특정 세부 사항이 개시된다. 다른 경우, 본 발명의 양상을 불필요하게 불명료하게 하지 않도록, 잘 알려진 방법, 절차, 구성요소 및 회로는 상세히 기술되지 않는다.
본 발명의 양상은, 일반적으로 정보 및 인스트럭션을 처리하는 프로세서, 정보 및 인스트럭션을 저장하는 랜덤 액세스 (휘발성) 메모리(RAM), 정적 정보 및 인스트럭션을 저장하는 판독 전용 (비휘발성) 메모리(ROM), 정보 및 인스트럭션을 저장하는 자기 또는 광학 디스크 및 디스크 드라이브와 같은 데이터 저장 장치, 컴퓨터 사용자에게 정보를 디스플레이하는 디스플레이 장치(예를 들면, 모니터)와 같은 선택적 사용자 출력 장치, 프로세서에게 정보 및 코맨트 선택을 통신하는 수문자 및 기능 키(예를 들면, 키보드)를 포함하는 선택적 사용자 입력 장치, 및 프로세서에게 사용자 입력 정보 및 코맨드 선택을 통신하는 커서 제어 장치(예를 들면, 마우스)와 같은 선택적 사용자 입력 장치를 포함하는 컴퓨터 시스템에서 구현될 수 있다.
도 1은 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 시스템(100)의 블록도를 도시한다. 다수 출력 트랜스코딩 시스템(100)은 다수의 트랜스코딩 세션에 걸쳐, 본 명세서에서 중간 데이터라고도 지칭되는 메타데이터(metadata)를 재이용함으로써, 단일의 비디오 입력으로부터 다수의 트랜스코딩된 비디오 출력을 효율적으로 생성한다. 다수 출력 트랜스코딩 시스템(100)은 비디오 소스(105), 트랜스코더(110), 및 제 1 출력(120) 및 제 2 출력(125)을 생성하는 메모리(115)를 포함한다. 다수 출력 트랜스코딩 시스템(100)은 단일의 비디오 소스(105)에 근거하여 임의의 수의 출력, 예를 들면, 제 3 출력(130)을 생성할 수 있음을 이해해야 한다. 또한, 다수 출력 트랜스코딩 시스템(100)은 단일 컴퓨터 시스템내에서 또는 분배형 컴퓨터 네트워크의 컴퓨터 시스템내에서 구현될 수 있음을 이해해야 한다.
비디오 소스(105)는 입력 비디오 콘텐츠를 트랜스코더(110)에게 제공한다. 일실시예에서, 비디오 소스(105)는 라이브 소스, 예를 들면, 라이브 스포츠 이벤트 또는 라이브 뉴스 회의이다. 다른 실시예에서, 비디오 소스(105)는 방송 소스, 예를 들면, 텔레비젼 프로그램 또는 영화이다. 비디오 소스(105)는 세트 시작 포인트를 갖는 비디오를 제공하는 임의의 비디오 소스, 예를 들면, 저장된 소스 또는 방송 소스일 수 있음을 이해해야 한다.
트랜스코더(110)는 장치의 특정 유형과 관련된 속성에 따라 비디오 소스(105)로부터 수신된 입력 비디오 콘텐츠를 트랜스코딩하도록 구성된다. 트랜스코더(110)는 특정 속성을 갖는 장치로부터 비디오 콘텐츠에 대한 요청을 수신한다. 트랜스코더(110)는 요청과 관련된 속성에 근거해서, 복수의 비디오 처리 동작(118)을 수행하여, 출력 비디오를 생성한다. 속성(본 명세서에서는 트랜스코딩 디멘죤(transcoding dimension)이라고도 지칭됨)은, 제한적인 것은 아니지만, 비디오 포맷, 스크린 크기, 프레임 레이트 및 비트 레이트를 포함하는 관련 장치의 특정 비디오 입력 요건을 기술하는 정보를 포함한다. 속성은 부분적으로 네트워크 속성, 예를 들면, 네트워크 대역폭에 근거할 수도 있음을 이해해야 한다.
일실시예에서, 트랜스코더(110)는 제 1 속성을 갖는 제 1 장치와 관련된 비디오 콘텐츠에 대한 제 1 요청을 수신하여, 제 1 속성을 갖는 제 1 장치상에서 보기 위한 포맷으로 입력 비디오를 트랜스코딩는 제 1 트랜스코딩 세션을 개시한다. 제 1 트랜스코딩 세션은 입력 스트림을 제 1 장치상에서 보기에 적절한 출력 스트림으로 트랜스코딩하는 복수의 비디오 처리 동작(118)을 포함한다. 또한, 트랜스코더(110)는 제 2 속성을 갖는 제 2 장치와 관련된 비디오 콘텐츠에 대한 제 2 요청에 응답하여 제 2 트랜스코딩 세션을 개시하도록 동작가능하다. 제 2 트랜스코딩 세션은 제 1 트랜스코딩 세션과 관련된 중간 데이터(예를 들면, 메타데이터)에 적어도 부분적으로 근거한다.
일실시예에서, 다수 출력 트랜스코딩 시스템(100)은 제 1 트랜스코딩 세션의 적어도 하나의 상기 비디오 처리 동작과 관련된 중간 데이터를 저장하는 메모리(115)를 또한 포함한다. 일실시예에서, 메모리(115)는 트랜스코더(110)에 접속된 랜덤 액세스 (휘발성) 메모리(RAM)이다. 메모리(115)는 데이터가 저장되고, 신속하게 판독되도록 하는 임의의 유형의 컴퓨터 메모리(예를 들면, 플래시 메모리)일 수 있음을 이해해야 한다. 다수 출력 트랜스코딩 시스템은 메모리(115)없이 동작할 수 있음을 이해해야 한다. 예를 들어, FPGA(field programmable gate array) 또는 DSP(digital signal processor)와 같은 하드웨어 구현에서, 중간 데이터는, 중간 데이터의 명시적인 저장없이도, 생성되어 재이용될 수 있다.
도 2는 본 발명의 실시예에 따른, 트랜스코딩 처리(200)의 예시적인 디코딩 및 인코딩 동작의 블록도를 도시한다. 트랜스코딩 처리(200)는 디코딩 처리(예를 들면, 블록(202 내지 212)) 및 인코딩 처리(예를 들면, 블록(230 내지 244))를 포함하며, 중간에 트랜스코딩 동작(220)이 있다. 블록들 각각은 예시적인 트랜스코딩 처리에서 이용된 비디오 처리 동작을 나타낸다. 도시된 블록들은 예시적인 것이며, 트랜스코딩 처리(200)는 트랜스코딩 처리(200)에 의해 이용된 비디오 코딩 표준에 따라, 보다 적거나 보다 많은 블록 뿐만 아니라, 상이한 블록을 포함할 수 있음을 이해해야 한다. 일반적으로, 움직임 보상 및 DCT 인코딩된 비디오 스트림의 트랜스코딩을 위해 유용한 메타데이터가 식별된다. 본 발명의 실시예는 MPEG(Motion Pictures Experts Group) 표준(예를 들면, MPEG-1 또는 MPEG-4), H.26x 표준, 또는 움직임 보상 또는 DCT 인코딩을 이용하는 임의의 다른 표준을 이용할 수 있다.
트랜스코딩 처리(200)의 각 블록은 관련된 비디오 처리 동작에 대해 메타데이터(예를 들면, 중간 데이터)를 생성한다. 메타데이터는 메모리(예를 들면, 도 1의 메모리(115))에 저장될 수 있다. 트랜스코딩 처리(200)의 디코딩부는 다른 트랜스코딩 처리에서 저장 및 재이용될 수 있는 상이한 메타데이터를 생성하는 복수의 비디오 처리 동작을 포함한다. 이하의 비디오 처리 동작에 의해 생성되어 저장될 수 있는 메타데이터는 다음과 같은 것을 포함한다.
· 가변 길이 디코딩(variable length decoding; VLD) - 입력 비디오의 스크린 크기 및 입력 비디오 비트 레이트와 같은 시퀀스 레벨 정보; 픽쳐 코딩 유형 및 픽쳐당 비트수와 같은 픽쳐 레벨 정보; 매크로블록 코딩 유형, 움직임 벡터, 코딩된 블록 패턴((coded block pattern; CBP) 및 양자화기 계수와 같은 매크로블록 레벨 정보; 및 양자화된 DCT 계수의 런-렝스(run-length) 쌍과 같은 블록 레벨 정보.
· RLD(run length decoding) - NxN 어레이에서의 양자화된 DCT 계수(여기서, NxN은 변환 블록 크기임(예를 들어, H.264 포맷의 경우 N=4이고, 그렇지 않은 경우 N=8임)).
· 역양자화(Q-1) - NxN 어레이에서의 DCT 계수.
· 역변환(T-1) - NxN 어레이에서의 화소(또는 나머지) 값.
· 움직임 보상(M-1) - 프레임 버퍼내의 YUV 컬러 공간 화소 값(이 블록은 프레임이 인터코딩되는지의 여부에 따라 선택적임).
· 역 컬러 변환(C-1) - 프레임 버퍼내의 RGB(Red Green Blue) 컬러 공간 화소 값.
트랜스코딩 처리(200)의 인코딩부는 다른 트랜스코딩 처리에서 저장 및 재이용될 수 있는 상이한 메타데이터를 생성하는 복수의 비디오 처리 동작을 또한 포함한다. 이하의 비디오 처리 동작에 의해 생성되어 저장될 수 있는 메타데이터는 컬러 변환(C), 움직임 보상(M), 변환(T), RLE(run length encoding) 및 가변 길이 인코딩(VLE)을 포함한다. 이하의 비디오 처리 동작에 의해 생성되어 저장될 수 있는 메타데이터의 다른 예는 다음과 같은 것을 포함한다.
· 양자화(Q) - NxN 어레이에서의 양자화된 DCT 계수(동작 이후) 및 CBP.
· 공간 활동(Spatial Activity; SA) - 매크로블록 어레이에서의 공간 활동 값(예를 들어, NxM 프레임 크기가 주어진 경우, 매크로블록 어레이는 'N/16 by M/16'의 크기임).
· 레이트 제어(RC) - 매크로블록 어레이에서의 양자화 파라미터.
전술한 비디오 처리 동작 및 대응하는 메타데이터는, 디코딩부 및 인코딩부 둘다에 있어서, 예시적인 것이며, 추가적인 메타데이터를 포함할 수 있음을 이해해야 한다. 더욱이, 전술한 비디오 처리 동작은, 관련된 메타데이터의 재이용이 특히 유용한 것으로 고려되기 때문에, 메타데이터를 저장한다. 그러나, 도 7에 기술된 바와 같은 추가적인 비디오 처리 동작들이 존재할 수 있다(예를 들면, 드리프트 정정(drift correction) 및 에러 누적(error accumulation)).
예를 들어, 제 1 트랜스코딩 세션은 트랜스코딩 처리(200)의 모든 비디오 처리 블록을 수행하여, 각 블록에 대한 메타데이터를 저장한다. 상이한 타겟 포맷을 갖는 제 2 트랜스코딩 세션은 제 1 트랜스코딩 세션의 디코딩부에서 생성된 메타데이터를 선택적으로 이용하여, 제 2 트랜스코딩 세션의 인코딩부에 공급함으로써, 상이한 출력을 생성한다.
본 발명의 실시예는 다수의 트랜스코딩 세션에 걸쳐 중간 데이터의 재이용을 제공함으로써, 트랜스코더(예를 들면, 도 1의 다수 출력 트랜스코딩 시스템(100))에 대한 계산 요건을 감소시킨다. 트랜스코딩 세션 동안에 생성된 중간 데이터는 메모리에 보존된다. 다른 트랜스코딩 세션이 중간 데이터를 액세스 및 검색할 수 있다. 중간 데이터를 효율적으로 저장 및 재이용하기 위해, 중간 데이터를 저장할지를 적절하게 선택하는 것이 바람직하다.
도 3a는 본 발명의 실시예에 따른, 2 트랜스코딩 디멘죤의 2차원 그래프 표현을 도시한다. 격자 포인트(예를 들면, 처리 포인트)는 조성된 트랜스코딩 동작을 나타낸다. 제 1 동작 a는 스크린 크기를 2의 계수로 감소시키고, 비트 레이트를 2의 계수로 감소시키기 위한 것이다. 제 2 동작 b는 스크린 크기를 4의 계수로 감소시키고, 비트 레이트를 4의 계수로 감소시키기 위한 것이다. 제 2 동작은 동작 a의 결과에 근거하여 점진적으로 달성될 수 있다.
제 3 동작 c는 스크린 크기를 8의 계수로 감소시키고, 비트 레이트를 3의 계수로 감소시킨다. 동작 c는 동작 a의 비트 레이트 감소 부분을 재이용하면서, 동작 b로부터의 결과의 스크린 크기 감소 부분을 재이용할 수 있다. 동작 c는 동작 b의 비트 레이트 감소 부분을 재이용할 수 없는데, 그 이유는, 동작 b로부터의 결과가 보다 낮은 비트 레이트를 갖기 때문이다. 또한, 동작 c는 동작 a의 스크린 크기 감소 부분을 이용할 수 있지만, 일실시예에서, 동작 c는 동작 b의 스크린 크기 감소 부분을 이용할 수 있는데, 그 이유는, 그것이 동작 a의 스크린 크기 감소 부분을 이용하는 것보다 작은 계산 부하를 발생시키기 때문이다.
다른 디멘죤, 예를 들면, 프레임 레이트 감소를 추가하는 것은, 처리 공간을 3차원 처리 공간으로 변경한다. 도 3b는 본 발명의 실시예에 따른, 3 트랜스코딩 디멘죤의 3차원 그래프 표현을 도시한다. 포인트(예를 들면, 처리 포인트)는 조성된 트랜스코딩 동작을 나타낸다. 도 3a에서 기술된 동일한 원리가 적용된다. 일반적으로, 동작은 보다 큰 감소를 요구하지 않는 다른 동작의 결과에 근거하여 점진적으로 달성될 수 있다. 또한, 동작은 최소의 계산 요건에 근거하여, 그 결과가 트랜스코딩에 이용되는 다른 동작의 동작 부분을 선택한다.
또한, 중간 데이터를 저장할지를 선택적으로 결정하는 것이 바람직할 수 있다. 예를 들어, 비트 레이트 감소를 위해, 최소 타겟 비트 레이트 레벨에서의 양자화 결과(예를 들면, CBP)에 관한 정보가 재이용될 수 없으며, 따라서, 그것을 저장할 필요가 없다. 스크린 크기 감소를 위해, 최소 감소 레벨에서의 DCT 데이터는 임의의 다른 트랜스코딩 세션에 의해 재이용될 수 없으며, 또한, 저장되지도 않는다. 일반적으로, 원점(origin)으로부터 더 멀리 있는 포인트들을 처리하기 위해, 보다 적은 메타데이터가 (예를 들면, 도 3a의 처리 포인트 d에서) 저장된다.
다수 출력 트랜스코딩 시스템(예를 들면, 도 1의 다수 출력 트랜스코딩 시스템(100))의 트랜스코딩 세션은 임의의 다른 트랜스코딩 세션으로부터의 메타데이터를 점진적으로 재이용할 수 있음을 이해해야 한다. 일실시예에서, 요청이 수신되는 순서는 문제로 되지 않는다. 예를 들어, 보다 조기의 요청에 응답하여 개시된 트랜스코딩 세션은 이후의 요청에 응답하여 개시된 트랜스코딩 세션에서 생성된 중간 데이터를 재이용할 수 있다. 이후의 요청이 수신되는 경우, 다수 출력 트랜스코딩 시스템은 트랜스코딩 세션을 조절하여, 이후에 개시된 트랜스코딩 세션이, 보다 조기에 개시된 트랜스코딩 세션에 의한 이용을 위해 메타데이터를 저장하도록 한다. 이러한 조절은 사용자에 대한 방해없이 수행된다.
도 4, 5, 6, 7은 컴퓨팅 병목(bottleneck)에서의 메타데이터의 점진적인 재이용의 예를 포함한다. 그러한 예는 좌측으로부터 우측으로 진행하는 다수 출력 트랜스코딩 처리를 포함한다.
도 4는 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 처리(400)에서의 DCT 정보의 예시적인 점진적 재이용의 블록도를 도시한다. DCT 정보의 재이용은 점진적인 스크린 크기 감소를 제공한다. 다수 출력 트랜스코딩 처리(400)는 입력 비디오를 2의 계수로 축소(downscaling)하기 위한 요청(402)을 수신하며, 제 1 트랜스코딩 세션(410)이 개시된다. 입력 비디오를 4의 계수로 축소하기 위한 제 2 요청(422)이 수신되며, 제 2 트랜스코딩 동작(420)이 개시된다.
제 1 트랜스코딩 동작의 축소 동작(블록 404)과 관련된 메타데이터(406)를, 제 2 트랜스코딩 동작에서 재이용할 수 있다. 블록(404)은 저장되는, 2의 계수에 의해 축소된 비디오 데이터의 중간 데이터(D2)를 생성한다. 제 2 트랜스코딩 동작(420)은 블록(404)으로부터 저장된 메타데이터를 판독하여, 2의 계수에 의한 추가적인 축소를 수행한다. 블록(424) 이전의 동작을 수행할 필요가 없으므로, 트랜스코더에 대한 계산 부하가 감소된다. 더욱이, 2의 계수에 의한 축소를 수행하는 것은, 4의 계수에 의한 축소보다 저비용의 동작이다.
다수 출력 트랜스코딩 처리(400)의 예로 계속하면, 4의 계수에 의한 축소를 위한 제 3 요청(442)이 수신되며, 비트 레이트가 더 변경된다. 제 3 요청(442)에 응답하여 개시된 제 3 트랜스코딩 세션은 블록(424)과 관련된 메타데이터(426)를 판독하여, 메타데이터(426)를 블록(444)에 공급하며, 상이한 양자화 계수를 이용하여 비트 레이트를 변경한다. 블록(444) 이전에 수행된 모든 동작들이 절약(saving)되어, 트랜스코더에 대한 계산 부하가 감소된다.
도 5는 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 처리(500)에서의 레이트 제어 정보의 예시적인 점진적 재이용의 블록도를 도시한다. 레이트 제어(RC) 비디오 처리 동작은 원래의 프레임으로부터 계산된 공간 활동(SA)을 이용하여, 양자화 계수의 할당을 결정한다. 다수 출력 트랜스코딩 처리(500)에서, 블록(504)의 양자화 계수 Q에 따라 비트 레이트를 적응시키기 위한 요청(502)이 수신되며, 그에 따라, 트랜스코딩 세션(510)이 개시된다. 블록(524)의 다른 양자화 계수 Q2에 따라 비트 레이트를 적응시키기 위한 제 2 요청(522)이 수신되며, 그에 따라, 제 2 트랜스코딩 세션(520)이 개시된다.
트랜스코딩 처리(510)의 블록(504)의 양자화 동작 이전의 메타데이터(506)가 제 2 트랜스코딩 처리(520)에 의해 재이용된다. 메타데이터(506)는 Q2에 따라 비트 레이트를 적응시키기 위해 블록(524)으로 직접 공급된다. 더욱이, 블록(512)의 공간 활동 처리에서 생성된 메타데이터(508)가 제 2 트랜스코딩 처리(520)에서 재이용되고, 블록(526)으로 직접 공급된다. 도시된 바와 같이, 다수 출력 트랜스코더의 경우, 공간 활동이 다른 세션을 위해 재이용될 수 있다. 예를 들어, 비트 레이트 감소 트랜스코딩(예를 들면, 트랜스코딩 세션(510))을 위해 계산된 공간 활동이 다른 비트 레이트 감소 계수에 대한 트랜스코딩(예를 들면, 제 2 트랜스코딩 세션(520))에 의해 재이용될 수 있다.
도 6은 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 처리(600)에서의 양자화 정보의 예시적인 점진적 재이용의 블록도를 도시한다. 매크로블록 레벨로부터의 메타데이터는, 매크로블록에서의 블록이 코딩되는지의 여부를 나타낸다. 예를 들어, 블록은 낮은 비트 레이트를 갖는 프레임에서 코딩되지 않을 수 있는데, 그 이유는, 프레임들간의 차이가 매우 작을 수 있기 때문이다. MPEG 문장론(syntax)에서, 이러한 코딩은 CBP으로 지칭된다.
다수 출력 트랜스코딩 처리(600)는 블록(604)의 축소 계수 D2에 따라 스크린 크기를 감소시키고, 블록(606)의 양자화 계수 Q에 따라 비트 레이트를 감소시키기 위한 요청(602)을 수신한다. 요청(602)에 응답하여, 트랜스코딩 세션(610)이 개시된다. 요청(602)의 동일한 축소 계수 D2에 의해 스크린 크기를 감소시키고, 블록(624)의 양자화 계수 Q2에 의해 비트 레이트를 감소시키기 위한 제 2 요청(622)이 수신된다. 요청(622)에 응답하여, 제 2 트랜스코딩 세션(620)이 개시된다.
제 2 트랜스코딩 세션(620)은 블록(606)에서 생성된 메타데이터(608)를 재이용한다. 메타데이터(608)는 CBP 정보 뿐만 아니라, 축소되고 비트 레이트 감소된 프레임을 포함한다. 메타데이터(608)는 다른 양자화를 위해 블록(624)에 공급될 수 있다. 그러나, 하나의 비트 레이트 감소 트랜스코딩에서 블록이 코딩되지 않는다면(예를 들면, 블록의 모든 계수가 0임), 어떠한 동작없이도, (보다 개략적인 양자화를 초래하는) 보다 엄격한 비트 레이트 감소 트랜스코딩이 달성될 수 있다. 또한, 양자화 결과는 어쨌든 0일 것이기 때문에, 엄격한 양자화는 필요하지 않다. 이것은 양자화 계수가 변경될 필요가 없음을 나타내며, 그것은 출력 스트림에 대한 비트 예산 절약 뿐만 아니라, 양자화 계수의 계산 절약을 초래한다. 따라서, CBP가 0과 동일하다면, 메타데이터(608)는 블록(628)으로 직접 공급될 수 있는데, 그 이유는, 블록(624, 626)의 처리가 0의 결과를 생성할 것이기 때문이다. 제 2 트랜스코딩 세션(620)의 계산 부하는, 불필요한 동작을 수행하지 않는 것에 의해, 더 감소된다.
도 7은 본 발명의 실시예에 따른, 다수 출력 트랜스코딩 처리(700)에서의 드리프트 정정에서의 에러 프레임 정보의 예시적인 점진적 재이용의 블록도를 도시한다. 전형적으로, 드리프트 정정은 화소 영역 정보의 재구성을 요구하여, 각 프레임을 트랜스코딩함으로써 생성된 에러를 누적시키는 에러 프레임이 생성될 수 있도록 한다. 비트 레이트를 감소시키기 위한 요청(702)이 수신되며, 비트 레이트를 더 감소시키기 위한 제 2 요청(722)이 수신된다.
제 2 트랜스코딩 세션(720)은 블록(704)에서 생성된 메타데이터(708)를 재이용하며, 메타데이터(708)를 블록(724)으로 공급한다. 더욱이, 도 7은 제 1 트랜스코딩 세션(710)에 대한 블록(706)의 에러 누적(EA) 동작으로부터의 에러 프레임이, 제 2 트랜스코딩 세션(720)이 보다 엄격한 레이트 감소 트랜스코딩을 나타내고, 대응하는 블록에 대한 CBP가 0인 경우, 블록(724)의 드리프트 정정(DC) 동작에서의 제 2 트랜스코딩 세션(720)에 의해 재이용될 수 있음을 도시한다.
이것은 드리프트 정정에서 움직임 보상(M-1)이 요구되는 다른 유형의 트랜스코딩으로 확장될 수 있음을 이해해야 한다. 움직임 보상은 트랜스코딩 세션에서의 가장 계산 집약적인 작업들 중 하나이기 때문에, 에러 프레임을 재이용하는 것에 의한 계산 절약이 더욱 중요하다. 결합(joint) 다수 출력 트랜스코딩 시스템은 재구성된 화소 프레임 버퍼를 YUV 포맷으로 저장하여, 드리프트 정정을 또한 요구하는 다른 트랜스코딩 세션이 버퍼를 재이용할 수 있도록 한다. 전형적으로, 레이트 감소 및 스크린 크기 감소 트랜스코딩은 드리프트 정정을 요구한다.
도 8은 본 발명의 실시예에 따른, 단일의 입력에 근거하여 다수의 트랜스코딩된 출력을 생성하는 처리(800)의 흐름도를 도시한다. 일실시예에서, 처리(800)는 도 1의 다수 출력 트랜스코딩 시스템(100)과 같은 컴퓨터 판독가능 및 컴퓨터 실행가능 인스트럭션의 제어하에 프로세서 및 전기적 구성요소(예를 들면, 컴퓨터 시스템)에 의해 수행된다. 처리(800)에서는 특정한 단계들이 개시되지만, 그러한 단계들은 예시적인 것이다. 즉, 본 발명의 실시예는 다양한 다른 단계들 또는 도 8에서 인용된 단계들의 변형을 수행하기에 적합하다.
처리(800)의 단계(810)에서, 제 1 속성을 갖는 제 1 장치와 관련된 제 1 트랜스코딩 세션이 개시되며, 여기서, 제 1 트랜스코딩 세션은 복수의 비디오 처리 동작을 포함한다. 단계(820)에서, 제 2 속성을 갖는 제 2 장치와 관련된 제 2 트랜스코딩 세션이 개시된다. 일실시예에서, 제 2 속성들 중 적어도 하나는 대응하는 제 1 속성의 점진적인 감소이다. 일실시예에서, 제 1 속성은 제 1 스크린 크기 및 제 1 비트 레이트를 포함하고, 제 2 속성은 제 2 스크린 크기 및 제 2 비트 레이트를 포함한다.
단계(830)에서, 제 1 트랜스코딩 세션의 어떤 중간 데이터를 저장할지를 결정한다. 일실시예에서, 제 2 속성에 대한 제 1 속성의 점진적인 감소와 관련된 중간 데이터가 저장된다. 단계(840)에서, 제 1 트랜스코딩 세션의 적어도 하나의 비디오 처리 동작과 관련된 적어도 하나의 중간 데이터가 생성된다. 단계(850)에서, 적어도 하나의 중간 데이터가 저장된다. 단계(850)는 선택적인 것임을 이해해야 한다. 단계(860)에서, 제 2 트랜스코딩 세션이 수행되며, 여기서, 제 2 트랜스코딩 세션은 적어도 부분적으로 중간 데이터에 근거한다.
일실시예에서, 제 1 속성은 제 1 축소 계수의 스크린 크기 감소와 관련되고, 대응하는 제 2 속성은 제 2 축소 계수의 스크린 크기 감소와 관련되며, 제 2 축소 계수는 제 1 축소 계수보다 큰 스크린 크기 감소를 제공한다. 일실시예에서, 중간 데이터는 제 1 축소 계수에 근거한 스크린 크기 감소 동작의 결과를 포함한다.
다른 실시예에서, 제 1 속성은 제 1 비트 레이트 감소 계수의 비트 레이트 감소와 관련되고, 대응하는 제 2 속성은 제 2 비트 레이트 감소 계수의 비트 레이트 감소와 관련되며, 제 2 비트 레이트 감소 계수는 제 1 비트 레이트 감소 계수보다 큰 비트 레이트 감소를 제공한다. 일실시예에서, 중간 데이터는 제 1 비트 레이트 감소 계수에 근거한 비트 레이트 감소 동작의 결과를 포함한다. 일실시예에서, 중간 데이터는 코딩된 블록 패턴을 더 포함한다. 실시예에서, 제 2 트랜스코딩 세션을 수행하는 것은 또한, 코딩된 블록 패턴이 실질적으로 0과 동일한지의 여부를 결정하고, 코딩된 블록 패턴이 실질적으로 0과 동일한 경우, 중간 데이터에 대해 드리프트 정정 및 에러 누적을 수행하지 않는 것을 포함한다.
다른 실시예에서, 제 1 속성은 제 1 축소 계수의 스크린 크기 감소 및 제 1 비트 레이트 감소 계수의 비트 레이트 감소와 관련되고, 대응하는 제 2 속성은 제 1 축소 계수의 스크린 크기 감소 및 제 2 비트 레이트 감소 계수의 비트 레이트 감소와 관련되며, 제 2 비트 레이트 감소 계수는 제 1 비트 레이트 감소 계수보다 큰 비트 레이트 감소를 제공한다. 일실시예에서, 중간 데이터는 제 1 비트 레이트 감소 계수 및 코딩된 블록 패턴에 근거한 비트 레이트 감소 동작의 결과를 포함한다. 실시예에서, 제 2 트랜스코딩 세션을 수행하는 것은 또한, 코딩된 블록 패턴이 실질적으로 0과 동일한지의 여부를 결정하고, 코딩된 블록 패턴이 실질적으로 0과 동일한 경우, 중간 데이터에 대해 양자화를 수행하지 않는 것을 포함한다.
기술된 본 발명의 다양한 실시예는, 단일의 입력 및 다수의 출력에 대한 요청이 주어진 경우, 다수의 출력이 효율적으로 생성될 수 있는 결합 비디오 트랜스코딩 방법 및 시스템을 제공한다. 다수의 출력은 다수의 포맷, 다수의 프레임 레이트, 다수의 비트 레이트 및 다수의 스크린 크기로 생성될 수 있다. 더욱이, 다수의 출력은 최소의 양의 계산 자원이 필요한 최적화된 형태로 생성될 수 있다.
따라서, 본 발명의 실시예, 단일의 입력에 근거하여 다수의 트랜스코딩된 출력을 생성하는 방법 및 시스템이 기술된다. 본 발명은 특정한 실시예로 기술되었지만, 본 발명이 그러한 실시예에 의해 제한되는 것으로 해석되지 않으며, 그 대신에, 본 발명은 이하의 특허 청구 범위에 따라 해석되는 것임을 이해해야 한다.

Claims (10)

  1. 단일의 입력에 근거하여 다수의 트랜스코딩된 출력을 생성하는 방법에 있어서,
    제 1 비디오 입력 요건들을 갖는 제 1 장치와 관련되며 복수의 비디오 처리 동작을 포함하는 제 1 트랜스코딩 세션을 개시하는 단계와,
    제 2 비디오 입력 요건들을 갖는 제 2 장치와 관련되는 제 2 트랜스코딩 세션을 개시하는 단계와,
    상기 제 1 트랜스코딩 세션 중 적어도 하나의 상기 비디오 처리 동작과 관련된 적어도 하나의 중간 데이터를 저장하는 단계와,
    적어도 부분적으로 상기 중간 데이터에 근거하여 상기 제 2 트랜스코딩 세션을 수행하는 단계를 포함하는
    다수의 트랜스코딩된 출력을 생성하는 방법.
  2. 제 1 항에 있어서,
    상기 제 1 트랜스코딩 세션 중의 어떤 중간 데이터를 저장할지를 결정하는 단계(830)를 더 포함하는
    다수의 트랜스코딩된 출력을 생성하는 방법.
  3. 제 1 항에 있어서,
    상기 제 2 비디오 입력 요건들의 적어도 하나는 대응하는 상기 제 1 비디오 입력 요건들의 점진적인 감소인
    다수의 트랜스코딩된 출력을 생성하는 방법.
  4. 제 3 항에 있어서,
    상기 제 1 비디오 입력 요건은 제 1 축소 계수의 스크린 크기 감소와 관련되고, 대응하는 상기 제 2 비디오 입력 요건은 제 2 축소 계수의 스크린 크기 감소와 관련되며, 상기 제 2 축소 계수는 상기 제 1 축소 계수보다 큰 스크린 크기 감소를 제공하는
    다수의 트랜스코딩된 출력을 생성하는 방법.
  5. 제 4 항에 있어서,
    상기 중간 데이터는 상기 제 1 축소 계수에 근거한 스크린 크기 감소 동작의 결과를 포함하는
    다수의 트랜스코딩된 출력을 생성하는 방법.
  6. 제 3 항에 있어서,
    상기 제 1 비디오 입력 요건은 제 1 비트 레이트 감소 계수의 비트 레이트 감소와 관련되고, 대응하는 상기 제 2 비디오 입력 요건은 제 2 비트 레이트 감소 계수의 비트 레이트 감소와 관련되며, 상기 제 2 비트 레이트 감소 계수는 상기 제 1 비트 레이트 감소 계수보다 큰 비트 레이트 감소를 제공하는
    다수의 트랜스코딩된 출력을 생성하는 방법.
  7. 제 6 항에 있어서,
    상기 중간 데이터는 상기 제 1 비트 레이트 감소 계수에 근거한 비트 레이트 감소 동작의 결과를 포함하는
    다수의 트랜스코딩된 출력을 생성하는 방법.
  8. 제 7 항에 있어서,
    상기 중간 데이터는 코딩된 블록 패턴을 더 포함하는
    다수의 트랜스코딩된 출력을 생성하는 방법.
  9. 제 8 항에 있어서,
    상기 제 2 트랜스코딩 세션을 수행하는 단계는,
    상기 코딩된 블록 패턴이 실질적으로 0과 동일한지의 여부를 결정하는 단계와,
    상기 코딩된 블록 패턴이 실질적으로 0과 동일한 경우, 상기 중간 데이터에 대해 드리프트 정정(drift correction) 및 에러 누적(error accumulation)을 수행하지 않는 단계를 더 포함하는
    다수의 트랜스코딩된 출력을 생성하는 방법.
  10. 삭제
KR1020077009589A 2004-10-27 2005-10-27 다수의 트랜스코딩된 출력을 생성하는 방법 Expired - Fee Related KR100917543B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/975,244 US20060088105A1 (en) 2004-10-27 2004-10-27 Method and system for generating multiple transcoded outputs based on a single input
US10/975,244 2004-10-27

Publications (2)

Publication Number Publication Date
KR20070063564A KR20070063564A (ko) 2007-06-19
KR100917543B1 true KR100917543B1 (ko) 2009-09-16

Family

ID=35788965

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077009589A Expired - Fee Related KR100917543B1 (ko) 2004-10-27 2005-10-27 다수의 트랜스코딩된 출력을 생성하는 방법

Country Status (5)

Country Link
US (1) US20060088105A1 (ko)
EP (1) EP1805995B1 (ko)
KR (1) KR100917543B1 (ko)
CN (1) CN101049025B (ko)
WO (1) WO2006047792A1 (ko)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6817028B1 (en) 1999-06-11 2004-11-09 Scientific-Atlanta, Inc. Reduced screen control system for interactive program guide
US7992163B1 (en) 1999-06-11 2011-08-02 Jerding Dean F Video-on-demand navigational system
US7010801B1 (en) 1999-06-11 2006-03-07 Scientific-Atlanta, Inc. Video on demand system with parameter-controlled bandwidth deallocation
US7975277B1 (en) 2000-04-03 2011-07-05 Jerding Dean F System for providing alternative services
US7200857B1 (en) 2000-06-09 2007-04-03 Scientific-Atlanta, Inc. Synchronized video-on-demand supplemental commentary
US8516525B1 (en) 2000-06-09 2013-08-20 Dean F. Jerding Integrated searching system for interactive media guide
US7934232B1 (en) 2000-05-04 2011-04-26 Jerding Dean F Navigation paradigm for access to television services
US8069259B2 (en) 2000-06-09 2011-11-29 Rodriguez Arturo A Managing removal of media titles from a list
US7962370B2 (en) 2000-06-29 2011-06-14 Rodriguez Arturo A Methods in a media service system for transaction processing
US7340759B1 (en) 2000-11-10 2008-03-04 Scientific-Atlanta, Inc. Systems and methods for adaptive pricing in a digital broadband delivery system
US8006262B2 (en) 2001-06-29 2011-08-23 Rodriguez Arturo A Graphic user interfaces for purchasable and recordable media (PRM) downloads
US7526788B2 (en) 2001-06-29 2009-04-28 Scientific-Atlanta, Inc. Graphic user interface alternate download options for unavailable PRM content
US7496945B2 (en) 2001-06-29 2009-02-24 Cisco Technology, Inc. Interactive program guide for bidirectional services
US7512964B2 (en) 2001-06-29 2009-03-31 Cisco Technology System and method for archiving multiple downloaded recordable media content
US7334251B2 (en) * 2002-02-11 2008-02-19 Scientific-Atlanta, Inc. Management of television advertising
US8161388B2 (en) 2004-01-21 2012-04-17 Rodriguez Arturo A Interactive discovery of display device characteristics
KR101161045B1 (ko) * 2004-09-29 2012-06-28 테크니컬러, 인크. 색 결정 메타데이터 생성을 위한 방법 및 장치
ITMI20042234A1 (it) * 2004-11-19 2005-02-19 Abb Service Srl Interuttore automatico con cinematismo di sgancio azionato da contatto mobile
PA8660701A1 (es) * 2005-02-04 2006-09-22 Pfizer Prod Inc Agonistas de pyy y sus usos
US8074248B2 (en) 2005-07-26 2011-12-06 Activevideo Networks, Inc. System and method for providing video content associated with a source image to a television in a communication network
US8189472B2 (en) 2005-09-07 2012-05-29 Mcdonald James F Optimizing bandwidth utilization to a subscriber premises
EP1911443A1 (en) * 2006-10-13 2008-04-16 Novosom AG Amphoteric liposomes, method of formulating an amphoteric liposome and a method of loading an amphoteric liposome
WO2007053118A1 (en) * 2005-11-04 2007-05-10 National University Of Singapore A method and a system for determining predicted numbers of processor cycles required for respective segments of a media file for playback of the media file
JP5112787B2 (ja) * 2006-09-01 2013-01-09 株式会社リコー 情報処理装置、プログラム更新方法及びプログラム
JP5936805B2 (ja) * 2006-09-29 2016-06-22 アビニティ・システムズ・ベスローテン・フェンノートシャップAvinity Systems B.V. パラレルユーザセッションをストリーミングするための方法、システム、およびコンピュータソフトウェア
CA2665783C (en) 2006-10-13 2015-12-15 Novosom Ag Improvements in or relating to amphoteric liposomes, a method of formulating an amphoteric liposome and a method of loading an amphoteric liposome
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
WO2008088772A2 (en) 2007-01-12 2008-07-24 Ictv, Inc. Mpeg objects and systems and methods for using mpeg objects
IL182491A0 (en) * 2007-04-12 2007-09-20 Vizrt Ltd Graphics for limited resolution display devices
FR2915047B1 (fr) * 2007-04-13 2009-10-30 Streamwide Soc Par Actions Sim Architecture de transcodage de flux multimedia.
US20090110060A1 (en) * 2007-10-30 2009-04-30 Mauricio Cortes Method and apparatus for performing lower complexity multiple bit rate video encoding using metadata
KR101601040B1 (ko) * 2009-05-19 2016-03-09 삼성전자주식회사 휴대 단말기의 화면 표시 방법 및 이를 지원하는 휴대 단말기
US20100309987A1 (en) * 2009-06-05 2010-12-09 Apple Inc. Image acquisition and encoding system
WO2012051528A2 (en) 2010-10-14 2012-04-19 Activevideo Networks, Inc. Streaming digital video between video devices using a cable television system
US8755438B2 (en) * 2010-11-29 2014-06-17 Ecole De Technologie Superieure Method and system for selectively performing multiple video transcoding operations
EP2695388B1 (en) 2011-04-07 2017-06-07 ActiveVideo Networks, Inc. Reduction of latency in video distribution networks using adaptive bit rates
US9154804B2 (en) 2011-06-04 2015-10-06 Apple Inc. Hint based adaptive encoding
US8786634B2 (en) 2011-06-04 2014-07-22 Apple Inc. Adaptive use of wireless display
WO2013106390A1 (en) 2012-01-09 2013-07-18 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
US9800945B2 (en) 2012-04-03 2017-10-24 Activevideo Networks, Inc. Class-based intelligent multiplexing over unmanaged networks
US9123084B2 (en) 2012-04-12 2015-09-01 Activevideo Networks, Inc. Graphical application integration with MPEG objects
WO2013173721A1 (en) 2012-05-18 2013-11-21 Home Box Office, Inc. Audio-visual content delivery
US9357213B2 (en) * 2012-12-12 2016-05-31 Imagine Communications Corp. High-density quality-adaptive multi-rate transcoder systems and methods
WO2014145921A1 (en) 2013-03-15 2014-09-18 Activevideo Networks, Inc. A multiple-mode system and method for providing user selectable video content
US20140317372A1 (en) * 2013-04-23 2014-10-23 Broadcom Corporation Data frame security
US9294785B2 (en) 2013-06-06 2016-03-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
WO2014197879A1 (en) 2013-06-06 2014-12-11 Activevideo Networks, Inc. Overlay rendering of user interface onto source video
US9219922B2 (en) 2013-06-06 2015-12-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9930346B2 (en) * 2014-04-15 2018-03-27 Qualcomm Incorporated System and method for flatness detection for display stream compression (DSC)
US9788029B2 (en) 2014-04-25 2017-10-10 Activevideo Networks, Inc. Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks
US10136147B2 (en) 2014-06-11 2018-11-20 Dolby Laboratories Licensing Corporation Efficient transcoding for backward-compatible wide dynamic range codec
US9609362B2 (en) * 2014-10-06 2017-03-28 Telefonaktiebolaget Lm Ericsson (Publ) Coding and deriving quantization parameters
WO2021005348A1 (en) * 2019-07-05 2021-01-14 V-Nova International Ltd Quantization of residuals in video coding
CN113630576A (zh) * 2020-05-08 2021-11-09 辛纳普蒂克斯公司 自适应视频流式传输系统和方法
US11785068B2 (en) 2020-12-31 2023-10-10 Synaptics Incorporated Artificial intelligence image frame processing systems and methods

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1217841A2 (en) * 2000-11-27 2002-06-26 Media Glue Corporation Bitstream separating and merging system, apparatus, method and computer program product
WO2004049722A1 (en) * 2002-11-22 2004-06-10 Koninklijke Philips Electronics N.V. Transcoder for a variable length coded data stream
US20040202250A1 (en) 2003-04-14 2004-10-14 Hao-Song Kong Transcoding compressed videos to reducing resolution videos
US20040208247A1 (en) 2001-07-10 2004-10-21 Eric Barrau Method and device for generating a scalable coded video signal from a non-scalable coded video signal

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2744095A (en) * 1994-06-17 1996-01-15 British Broadcasting Corporation, The Video compression
US5687095A (en) * 1994-11-01 1997-11-11 Lucent Technologies Inc. Video transmission rate matching for multimedia communication systems
US5623312A (en) * 1994-12-22 1997-04-22 Lucent Technologies Inc. Compressed-domain bit rate reduction system
US6028639A (en) * 1997-12-19 2000-02-22 Thomson Consumer Electronics, Inc. Process and apparatus for converting an MPEG-2 bitstream into SMPTE-259 compatible bitstream
US6356294B1 (en) * 1998-08-11 2002-03-12 8×8, Inc. Multi-point communication arrangement and method
US6493386B1 (en) * 2000-02-02 2002-12-10 Mitsubishi Electric Research Laboratories, Inc. Object based bitstream transcoder
US6490320B1 (en) * 2000-02-02 2002-12-03 Mitsubishi Electric Research Laboratories Inc. Adaptable bitstream video delivery system
US6647061B1 (en) * 2000-06-09 2003-11-11 General Instrument Corporation Video size conversion and transcoding from MPEG-2 to MPEG-4
US20020131496A1 (en) * 2001-01-18 2002-09-19 Vinod Vasudevan System and method for adjusting bit rate and cost of delivery of digital data
US6925501B2 (en) * 2001-04-17 2005-08-02 General Instrument Corporation Multi-rate transcoder for digital streams
KR100446083B1 (ko) * 2002-01-02 2004-08-30 삼성전자주식회사 움직임 추정 및 모드 결정 장치 및 방법
US7327786B2 (en) * 2003-06-02 2008-02-05 Lsi Logic Corporation Method for improving rate-distortion performance of a video compression system through parallel coefficient cancellation in the transform
US9612965B2 (en) * 2003-06-24 2017-04-04 Hewlett-Packard Development Company, L.P. Method and system for servicing streaming media
US7966642B2 (en) * 2003-09-15 2011-06-21 Nair Ajith N Resource-adaptive management of video storage

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1217841A2 (en) * 2000-11-27 2002-06-26 Media Glue Corporation Bitstream separating and merging system, apparatus, method and computer program product
US20040208247A1 (en) 2001-07-10 2004-10-21 Eric Barrau Method and device for generating a scalable coded video signal from a non-scalable coded video signal
WO2004049722A1 (en) * 2002-11-22 2004-06-10 Koninklijke Philips Electronics N.V. Transcoder for a variable length coded data stream
US20040202250A1 (en) 2003-04-14 2004-10-14 Hao-Song Kong Transcoding compressed videos to reducing resolution videos

Also Published As

Publication number Publication date
EP1805995A1 (en) 2007-07-11
EP1805995B1 (en) 2018-07-25
CN101049025B (zh) 2014-12-17
US20060088105A1 (en) 2006-04-27
KR20070063564A (ko) 2007-06-19
WO2006047792A1 (en) 2006-05-04
CN101049025A (zh) 2007-10-03

Similar Documents

Publication Publication Date Title
KR100917543B1 (ko) 다수의 트랜스코딩된 출력을 생성하는 방법
JP7068501B2 (ja) イントラモード符号化のための方法、装置及びコンピュータプログラム
US9967577B2 (en) Acceleration interface for video decoding
US8842925B2 (en) Method and apparatus for encoding and decoding coding unit of picture boundary
US9612965B2 (en) Method and system for servicing streaming media
US8311095B2 (en) Method and apparatus for transcoding between hybrid video codec bitstreams
CN113545091B (zh) 对视频序列执行最大变换大小控制的解码方法和装置
US10205763B2 (en) Method and apparatus for the single input multiple output (SIMO) media adaptation
JP2005323353A (ja) 高忠実度のトランスコーディング
US8270469B2 (en) Encoding video at multiple resolution levels
JP2022514694A (ja) デコーダが実行するビデオデコーディングのための方法及び装置、並びにエンコーダが実行するビデオエンコーディングのための方法
JP7442919B2 (ja) データ操作のためのパッチ可能なリモート要素方法、装置、およびコンピュータプログラム
CN112118456A (zh) 莱斯参数选择方法、装置、计算机设备及存储介质
CN115552901A (zh) 用于频率相关的联合分量二次变换的方法和装置
JP2006523991A (ja) レート歪みをビデオ符号化に最適化したデータ分割をパラメトリック・レート歪みモデルを用いて行うシステム及び方法
US8218626B2 (en) Encoding control apparatus, encoding control method, and storage medium
KR20240116515A (ko) 비디오 코딩의 워핑된 모션 모드에 대한 적응적 모션 벡터
CN118891870A (zh) 角度帧内预测
CN113748678B (zh) 视频编解码方法、装置和存储介质
JP4105676B2 (ja) メディアストリームを非ブロック化しコード変換する方法
TW202106014A (zh) 影像處理裝置及影像處理方法
KR100932727B1 (ko) 비디오 스트림 전환 장치 및 방법
CN117099369A (zh) 用于自适应mvd分辨率的模板匹配的系统和方法
CN117426092A (zh) 用于在视频编码的帧内预测模式下确定色度样本的系统和方法
HK40079746A (en) Method and apparatus for frequency-dependent joint component secondary transformation

Legal Events

Date Code Title Description
A201 Request for examination
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

AMND Amendment
E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

E601 Decision to refuse application
PE0601 Decision on rejection of patent

St.27 status event code: N-2-6-B10-B15-exm-PE0601

AMND Amendment
J201 Request for trial against refusal decision
P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PJ0201 Trial against decision of rejection

St.27 status event code: A-3-3-V10-V11-apl-PJ0201

PB0901 Examination by re-examination before a trial

St.27 status event code: A-6-3-E10-E12-rex-PB0901

B701 Decision to grant
PB0701 Decision of registration after re-examination before a trial

St.27 status event code: A-3-4-F10-F13-rex-PB0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U12-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

FPAY Annual fee payment

Payment date: 20120824

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

FPAY Annual fee payment

Payment date: 20130909

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20140901

Year of fee payment: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

FPAY Annual fee payment

Payment date: 20180903

Year of fee payment: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20200909

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20200909