KR20060132972A - 컨버터를 이용하는 비디오 인코더 - Google Patents
컨버터를 이용하는 비디오 인코더 Download PDFInfo
- Publication number
- KR20060132972A KR20060132972A KR1020067020345A KR20067020345A KR20060132972A KR 20060132972 A KR20060132972 A KR 20060132972A KR 1020067020345 A KR1020067020345 A KR 1020067020345A KR 20067020345 A KR20067020345 A KR 20067020345A KR 20060132972 A KR20060132972 A KR 20060132972A
- Authority
- KR
- South Korea
- Prior art keywords
- information
- video stream
- format
- output
- encoded
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods 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/196—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
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)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
시스템이 디코더, 인코더, 및 기억 디바이스를 포함할 수 있다. 디코더는 제1 포맷을 갖는 인코딩된 비디오 정보를 중간 비디오 정보로 디코딩할 수 있다. 디코더는 또한 상기 인코딩된 비디오 정보로부터 모션 벡터들을 추출할 수 있다. 인코더는 상기 중간 비디오 정보를 제2 포맷을 갖는 출력 비디오 정보로 인코딩할 수 있다. 인코더는 또한 상기 인코딩된 비디오 정보로부터 추출된 모션 벡터들을 이용하여 그것의 인코딩을 수행할 수 있다. 기억 디바이스는 상기 인코더로부터의 상기 출력 비디오 정보를 저장할 수 있다.
디코더, 인코더, 기억 디바이스, 중간 비디오 정보, 모션 벡터, 컨버터
Description
청구 발명의 실시예들은 미디어 인코딩에 관한 것으로, 특히, 수신된 비디오 정보를 인코딩하는 것에 관한 것이다.
비디오 정보를 인코딩하는 몇 가지 이유가 존재할 수 있다. 몇몇 경우에, 저장 및/또는 표시를 위하여 비디오 정보를 하나의 포맷에서 또 다른 포맷으로 트랜스코딩(transcode) 또는 재인코딩(re-encode)하기를 원할 수 있다. 그러한 트랜스코딩 또는 재인코딩은 비디오 정보를 제1 포맷에서 이 제1 포맷과는 여러 가지 점에서 다른 제2 포맷으로 직접 변환하는 것을 수반할 수 있다. 다르게는, 그것은 제1 포맷을 제3의 중간 포맷으로 디코딩한 다음 이 제3의 포맷을 제2 포맷으로 인코딩하는 것을 수반할 수 있다. 다른 경우에, 나중에 이용할 비디오 정보를 소정의 품질 레벨로 저장하기를 원할 수 있다. 비디오 정보를 인코딩하기를 원하는 여기서 구체적으로 언급되지 않은 다른 이유들이 존재할 수 있다.
그러나, 비디오 정보를 고품질 레벨로 인코딩하는 것은, 비교적 대량의 프로세싱 능력을 필요로 할 수 있다. 또한, 기술적 장애가 소정의 비디오 정보의 인코딩을 방해할 수 있다.
이 명세서에 통합되어 그 일부를 구성하는 첨부 도면들은 본 발명의 원리들과 일치(consistent)하는 하나 이상의 실시예들을 예시하고, 발명의 상세한 설명과 더불어, 그러한 실시예들을 설명한다. 이 도면들은 반드시 일정한 비율로 되어 있을 필요는 없고, 그보다는 본 발명의 원리들을 예시하는 데 비중을 둔다.
도 1은 본 발명의 원리들과 일치하는 시스템 예를 예시한다.
도 2는 도 1의 시스템의 일부분의 일 실시예를 예시한다.
도 3은 본 발명의 원리들과 일치하는 비디오 정보를 인코딩하는 프로세스를 예시하는 흐름도이다.
이하의 상세한 설명은 첨부 도면들을 참조한다. 동일 또는 유사한 구성 요소들을 식별하기 위해 서로 다른 도면들에서 동일한 참조 번호들이 이용될 수 있다. 이하의 설명에서는, 한정이 아닌 설명의 목적으로, 본 발명의 여러 가지 양태들에 대한 철저한 이해를 제공하기 위하여, 특정 구조, 아키텍처, 인터페이스, 기법 등과 같은 특정한 상세들이 제시된다. 그러나, 본 개시 내용을 읽어본 숙련된 당업자라면 본 발명의 여러 가지 양태들이 이 특정한 상세들에서 벗어난 다른 예들에서 실시될 수도 있다는 것을 분명히 알 것이다. 어떤 경우에, 잘 알려진 디바이스, 회로 및 방법에 대해서는, 불필요한 상세로 본 발명에 대한 설명을 모호하게 하지 않기 위해, 그 설명이 생략된다.
도 1은 본 발명의 원리들과 일치하는 시스템(100)의 예를 예시한다. 시스템(100)의 실시예들은 퍼스널 비디오 리코더(PVRs : personal video recorders) 또는 디지털 다용도 디스크 리코더(DVD-Rs : digital versatile disc recorders)를 포함할 수 있다. 그러나, 청구 발명이 이와 관련하여 한정되는 것은 아니다. 예를 들면, 시스템(100)은 범용 컴퓨터, 포터블 디바이스, 또는 다른 전기적 시스템 내에서 구현될 수 있다. 시스템(100)은 단일 디바이스 내에 구현될 수 있지만, 일부 실시예에서는 시스템(100)의 어떤 컴포넌트들이 시스템(100)의 다른 컴포넌트들로부터 멀리 떨어져 있거나 및/또는 물리적으로 분리될 수도 있다. 또한, 시스템(100)은 이산(discrete) 컴포넌트들을 포함하는 것으로 예시되어 있지만, 이들 컴포넌트들은 하드웨어나, 소프트웨어/펌웨어나, 또는 그들의 어떤 조합으로 구현될 수도 있다. 하드웨어로 구현되는 경우, 시스템(100)의 몇몇 컴포넌트들은 소정의 칩 또는 디바이스에서 결합될 수 있다.
시스템(100)은 미디어 소스(110), 컨버터(120), 인코더(140), 선택적인 기억/출력 장치(150), 및 기억 장치(160)를 포함할 수 있다. 컨버터(120)는 중간 미디어 정보(132)를 인코더(140)에 및 선택적인 기억/출력 장치(150)(만일 있다면)에 송신할 수 있다. 컨버터(120)는 또한 다른 정보(134)를 인코더(140)에 송신할 수 있고, 일부 실시예에서 다른 정보(134)는 중간 미디어 정보(132)에 관한 메타(meta)-정보를 포함할 수 있다.
미디어 소스(110)는 시스템(100)의 나머지 것들에 미디어 정보를 제공하는 디바이스를 포함할 수 있다. 미디어 소스(110)에 제공되는 미디어 정보는 MPEG-1, MPEG-2, MPEG-4, H.264, 윈도 미디어 비디오 버전 9(WMV9) 및 AVS(Advanced Video System) 포맷들과 같은 포맷으로 인코딩된 비디오 정보를 포함할 수 있다. 청구 발명은 여기에서 구체적으로 언급된 포맷들에 한정되지 않고, 여기에서 교시된 방식들에 따라서 임의의 현재 알려진 또는 나중에 개발되는 미디어 포맷들이 이용될 수 있다. 일부 실시예에서, 미디어 소스(110)에 의해 제공되는 미디어 정보는 모션 벡터(motion vectors)를 포함할 수 있다.
일부 실시예에서, 미디어 소스(110)는 비디오 정보(예컨대, 고해상(HD) MPEG-2 정보)의 스트림 또는 채널을 미디어 정보의 다른 스트림 또는 채널로부터 분리시키는 튜너를 포함할 수 있다. 일부 실시예에서, 미디어 소스(110)는 기억 매체로부터 미디어 정보를 판독하는 판독기(reader)를 포함할 수 있다. 예를 들면, 그러한 판독기는 DVD, 하드 디스크, 반도체 기억 장치, 또는 다른 기억 매체로부터 비디오 정보를 추출하는 광학적, 자기적, 및/또는 전기적 판독기를 포함할 수 있다.
컨버터(120)는 미디오 소스(110)로부터의 비디오 정보를 중간 미디어 정보(132) 및 다른 정보(134)로 변환할 수 있다. 일부 실시예에서, 컨버터(120)는 미디어 소스(110)로부터의 비디오 정보로부터, 그 비디오 정보가 중간 미디어 정보(132)로 변환되기 전에, 다른 정보(134)를 추출할 수 있다. 일부 실시예에서, 컨버터(120)는 비디오 정보를 중간 미디어 정보(132)로 디코딩(예컨대, 그것의 인코딩을 실질적으로 리버스(reverse))할 수 있다. 일부 실시예에서, 컨버터(120)는 비디오 정보를 중간 미디어 정보(132)로 변환(예컨대, 그것의 인코딩을 리버스하지 않고 변경(modify))할 수 있다. 컨버터(120)의 하나의 가능한 실시예가 도 2에 예시되어 있다.
도 2는 시스템(100)의 일부분의 일 실시예를 예시한다. 도 2의 컨버터(120)는 디코더(210), 프레임 스토어(220), 및 디지털 대 아날로그(D/A) 컨버터(230)를 포함할 수 있다. 디코더(210)는 입력된 데이터 스트림으로부터의 비디오 정보를 디코딩하여 압축복원된 픽셀들의 비디오 스트림(decompressed video stream of pixels)을 D/A 컨버터(230)에 출력할 수 있다. 순전히 설명을 목적으로, 디코더(210)는, 예를 들면, MPEG-2 포맷으로 인코딩된 HD 정보를, NTSC(National Television System Committee) 표준, PAL(Phase Alternating Line) 표준, 또는 보다 고해상도의 비디오 포맷과 같은, 다른 포맷의 디지털 버전으로 디코딩할 수 있지만, 청구 발명은 이와 관련하여 제한되지 않는다.
디코더(210)는 또한 그것의 입력 비디오 정보로부터 다른 정보(134)를 추출할 수도 있다. 그러한 다른 정보(134)는 비디오 정보 내의 매크로블록들의 변위(displacements)를 기술하는 모션 벡터를 포함할 수 있다. 그러한 모션 벡터들은 비디오 정보의 최초의 인코더에 의해 발생될 수도 있고, 디코더(210)에 의해 그 정보로부터 추출될 수도 있다. 디코더(210)는 또한 양자화 데이터(예컨대, 이산 코사인 변환(DCT) 계수들을 표현하는 데 필요한 비트 수를 줄이기 위해 그 계수들의 가변 균일 양자화(variable uniform quantizatin)에서 사용되는 것) 및 픽처 데이터(picture data)(예컨대, 소정의 프레임이 I(intracoded) 픽처를 포함하는지, P(predicted) 픽처를 포함하는지, 또는 B(bi-directionally predicted) 픽처를 포함하는지)를 추출할 수도 있다. 일부 실시예에서, 디코더(210)는, 나중에 비디오 정보를 인코딩하기 위해 재사용될 수 있는 정보에 초점을 맞추는 대신, 다른 정보(134) 내에 소정의 정보(예컨대, 브로드캐스트 플래그 또는 다른 권리 관리(rights management) 정보)를 포함하지 않을 수 있다.
디코더(210)는 그것의 디코딩 또는 다른 프로세싱 중에 필요에 따라 정보를 버퍼링하기 위해 프레임 스토어(220)를 이용할 수 있다. D/A 컨버터(230)는 디코더(210)로부터 압축복원된 픽셀들의 비디오 스트림을 수신할 수 있고, 그 스트림을 아날로그 신호(예컨대, 중간 미디어 정보(132))로 변환할 수 있다. D/A 변환의 성질 때문에, D/A 컨버터(230)는 디코더(210)로부터 수신된 압축복원된 픽셀들의 비디오 스트림에 대하여 아날로그 중간 미디어 정보(132) 내에 일부 에러를 도입할 수 있다.
도 2의 다른 정보(134)는 모션 벡터, 양자화 데이터, 및 픽처 데이터를 포함할 수 있지만, 그러한 데이터는 기술된 예시적인 포맷(예컨대, MPEG-2)의 특징을 나타낼 수 있고, 청구 발명을 제한하는 것으로 해석되어서는 안 된다. 비디오 정보의 다른 포맷들은, 모션 벡터, 양자화 데이터, 및 픽처 데이터 대신에, 또는 그에 더하여, 디코더(210)가 추출할 수 있고 다른 정보(134) 내에 포함시킬 수 있는 정보를 포함할 수 있다. 유사하게, 도 2에서는 중간 미디어 정보(132)가 아날로그 비디오를 포함할 수 있지만, 다른 실시예들에서, 도 2의 컨버터(120)는 디코더(210)와 D/A 컨버터(230) 중 하나 이상을 포함하지 않을 수 있다. 따라서, 일부 실시예에서, 중간 미디어 정보(132)는 아날로그 비디오를 포함하지 않을 수 있다.
도 1로 되돌아가서, 인코더(140)는 다른 정보(134)를 이용하여 출력 비디오 정보를 발생시킴으로써 중간 미디어 정보(132)를 인코딩할 수 있다. 일부 실시예에서, 인코더(140)는, 출력 비디오 정보의 품질을 의도적으로 변경하거나 변경하지 않고, 중간 미디어 정보(132)를 미디오 소스(110)로부터의 최초의 비디오 정보와 동일한 포맷으로 인코딩(예컨대, 재인코딩(re-encoding))할 수 있다. 일부 실시예에서, 인코더(140)는, 출력 비디오 정보의 품질을 의도적으로 변경하거나 변경하지 않고, 중간 미디어 정보(132)를 미디오 소스(110)로부터의 최초의 비디오 정보와 상이한 포맷으로 인코딩(예컨대, 트랜스코딩(transcoding))할 수 있다. 인코더(140)의 하나의 가능한 실시예가 도 2에 예시되어 있다.
도 2에서, 인코더(140)는 아날로그 대 디지털(A/D) 컨버터(240), 프레임 제어 블록(250), 압축 블록(260), 레이트 제어 블록(270), 및 프레임 스토어(280)를 포함할 수 있다. 순전히 설명을 목적으로, 도 2의 인코더(140)는, 예를 들면, MPEG-2 포맷으로 HD 정보를 인코딩할 수 있지만, 청구 발명은 이와 관련하여 제한되지 않는다.
A/D 컨버터(240)는 아날로그 중간 미디어 정보(132)를 대응하는 디지털 픽셀들의 스트림으로 변환할 수 있다. 그러나, A/D 컨버터(240)는, 변환 시에 일부 양자화 에러를 도입할 수 있다. 따라서, A/D 컨버터(240)를 떠나는 디지털 픽셀들의 스트림은 이중 변환으로 인해 D/A 컨버터(230)에 들어가는 디지털 픽셀들과 다를 수 있다. 그러나, A/D 컨버터(240)로부터의 디지털 픽셀들은 디코더(210)로부터의 모션 벡터, 양자화 데이터 및 픽처 데이터(예컨대, 다른 정보(234))의 재사용을 허용할 만큼 충분히 유사할 수 있다.
프레임 제어 블록(250)은 A/D 컨버터(240)로부터의 디지털 픽셀 스트림의 캡처를 제어할 수 있고 그 데이터를 압축 블록(260)에 송신할 수 있다. 프레임 제어 블록(250)은 그것의 프로세싱 중에 필요에 따라 정보를 버퍼링하기 위해 프레임 스토어(280)를 이용할 수 있다. 압축 블록(260)에 입력되는 데이터는 디코딩된 후에 모션 벡터들에 의해 지시된 픽셀 블록들(blocks of pixels)은 물론, 그 픽셀 블록과 관련된 에러 데이터일 수 있다. 그러나, 일부 실시예에서, 그 관련 에러 데이터는 디코더(210)에 의해 추출된 다른 정보(134)에 포함될 수 있다.
레이트 제어 블록(270)은 디코더(210)로부터 다른 정보(134) 내의 양자화 데이터 및 픽처 데이터를 수신할 수 있다. 만일, 예를 들어, 픽처 데이터가 특정 프레임이 I 프레임이거나 또는 특정 프레임이 프레임 내(intra-frame) 블록으로서 코딩되어 있음을 나타낸다면, 픽셀들의 블록은 프레임 제어 블록(250)으로부터 압축 블록(260)으로 직접 입력될 수 있다. 압축 블록(260)은 수신된 픽처 정보를, MPEG-2 인코딩된 데이터의 경우 DCT, 양자화, 및 가변 길이 코딩(VLC : variable length coding) 연산들과 같은, 소정의 방식을 거쳐, 압축/인코딩하도록 구성될 수 있다.
인코더(140)의 프레임 스토어(280) 내의 디지털 픽셀들은 컨버터(120)의 프레임 스토어(220) 내의 대응하는 픽셀들과 상이할 수 있기 때문에, 에러 데이터도 상이할 수 있다. 에러 데이터의 이러한 차이는 결국 압축 블록(260)에 의해 출력되는 압축된 스트림에 대해 상이한 데이터 레이트로 나타날 수 있다. 레이트 제어 블록(270)은 비트 레이트를 목표 비트 레이트로 끌어내릴 필요가 있을 때 양자화 파라미터들을 증가시키도록 설계될 수 있다. 유사하게, 레이트 제어 블록(270)은, 필요하다면, 양자화 파라미터들을 변경하여, 압축 블록(260)의 출력 비트 레이트를 증가시킬 수도 있다. 그렇지 않으면, 레이트 제어 블록(270)은 다른 정보(134) 내의 양자화 데이터에서 디코더(210)에 의해 그것에게 주어진 클루들(clues)을 따를 것이다.
프레임 제어 블록(250)이 최초의 비디오 스트림으로부터 추출된 모션 벡터들을 재사용하는 것은 압축 블록(260)이 모션 추정 프로세싱을 제거할 수 있게 하여, 다수의 계산을 덜어준다. 일부 실시예에서, 압축 블록(260)은 A/D 컨버터(240)가 픽셀들을 재차 디지털화함으로써 도입되는 에러들을 보상하기 위해 비교적 단순한 국부적인 모션 검색(localized motion search)을 수행할 수 있다. 예를 들면, 전형적인 비디오 압축에서 블록 매칭은 꽤 큰 영역에 걸친 검색을 수반한다. 전형적으로, 100×70 픽셀 검색창이 사용될 수 있고, 서브픽셀 레벨에서 매칭이 행해져서, 초당 수십억의 연산을 필요로 한다. 디코더(210)로부터의 다른 정보(134) 내의 모션 벡터들을 재사용하는 것은 프레임 제어 블록(250)이 D/A 및 A/D 변환에서 도입된 에러들을 보상하기 위해 훨씬 작은, 아마도 ±2 픽셀만큼 작은 검색창을 사용하는 것을 가능하게 할 수 있다.
레이트 제어 블록(270)의 연산은 또한 최초의 스트림으로부터 추출되는 다른 정보(134) 내의 양자화 데이터 및 픽처 데이터의 재사용에 의해 현저히 감소될 수 있다. 압축 블록(260)에 의해 발생된 출력 비디오 정보의 스트림이 디코더(210)에 입력된 최초의 스트림과 일치하지 않을 수 있을지라도, 사용자는 출력 비디오 정보가 재생될 때 실질적으로 동일한 비디오 품질을 경험할 수 있다. 본 명세서에서 기술된 방식들은 다른 방법으로 가능한 것보다 덜 복잡하고 보다 적은 계산 능력을 필요로 하는 인코더(140)의 설계를 가능케 한다.
도 2의 인코더(140)는 소정의 컴포넌트들을 포함할 수 있지만, 그런 것들은 설명된 예시적인 인코딩 포맷(예컨대, MPEG-2)의 특징을 나타낼 수 있고, 청구 발명을 제한하는 것으로 해석되어서는 안 된다. 수신된 중간 미디어 정보(132)를 위한 다른 인코딩 포맷들은 도 2에 예시된 엘리먼트들(240-280)에 대해 부가적인 또는 대안적인 컴포넌트들을 포함할 수 있다.
도 1로 되돌아가서, 선택적인 기억/출력 장치(150)는 중간 미디어 정보(132)를 저장 또는 출력하도록 구성될 수 있다. 일부 실시예에서, 기억/출력 장치(150)는 다른 시스템 또는 시스템(100)의 다른 컴포넌트(도시되지 않음)에게 중간 미디어 정보(132)에의 액세스를 제공하는 출력 인터페이스를 포함할 수 있다. 그러한 물리적 출력 인터페이스는 광학적, 전기적 등일 수 있고, 비디오 정보용의 하나 이상의 기존의 인터페이스 사양을 준수할 수 있다.
일부 실시예에서, 기억/출력 장치(150)는 중간 미디어 정보(132)를 저장하기 위한 기억 장치를 포함할 수 있다. 예를 들면, 기억/출력 장치(150)는 정보(132)를 저장하기 위한 하드 디스크 또는 플래시 메모리를 포함할 수 있다. 일부 실시예에서, 기억/출력 장치(150)는 중간 미디어 정보(132)를 휴대 가능한 기억 매체에 전송하기 위한 기입 가능한 광 드라이브(예컨대, DVD-RW 등)를 포함할 수 있다. 일부 실시예에서, 선택적인 기억/출력 장치(150)는 존재하지 않을 수 있고, 중간 미디어 정보(132)는 인코더(140)에 의해서만 사용될 수 있다.
기억 장치(160)는 인코더(140)에 의해 출력된 인코딩된 비디오 정보를 저장하기 위한 기억 장치를 포함할 수 있다. 프로세서(도시되지 않음)는 나중에 재생을 위하여 또는 어떤 다른 목적으로 기억 장치(160) 내의 인코딩된 비디오 정보에 액세스할 수 있다. 일부 실시예에서, 기억 장치(160)는 인코딩된 비디오 정보를 저장하기 위한 하드 디스크 또는 플래시 메모리를 포함할 수 있다.
일부 실시예에서, 기억 장치(160)는 인코딩된 비디오 정보를 광 기억 매체에 전송하기 위한 기입 가능한 광 드라이브(예컨대, DVD-RW 등)를 포함할 수 있다. 기억 장치(160)에 대하여 몇몇 예시적인 실시예가 논의되었지만, 청구 발명은 명시적으로 언급된 것들에 제한되지 않고, 대신에 인코더(140)로부터의 인코딩된 비디오 정보를 저장할 수 있는 임의의 디바이스를 포함한다.
도 3은 본 발명의 원리들과 일치하는 비디오 정보를 인코딩하는 프로세스(300)를 예시하는 흐름도이다. 설명의 편의를 위하여 프로세스(300)는 시스템(100)과 관련하여 설명될 수 있지만, 청구 발명은 이에 관련하여 제한되지 않는다. 프로세싱은 컨버터(120)가 미디어 소스(110)로부터 수신하는 인코딩된 비디오 정보로부터 다른 정보를 추출하는 것으로 시작할 수 있다[액트 310]. 다른 정보(134)는, 예를 들면, 모션 벡터를 포함할 수 있고 및/또는 다른 정보는 생성하기에 계산상 집약적(computationally intensive to generate)일 수 있다. 일부 실시예에서, 다른 정보(134)는 또한 양자화 데이터, 에러 데이터, 및/또는 픽처 데이터와 같은, 더 추출된 정보를 포함할 수 있다.
프로세싱은 컨버터(120)가 인코딩된 비디오 정보를 중간 미디어 정보(132)용의 중간 포맷으로 변환하는 것으로 계속될 수 있다[액트 320]. 일부 실시예에서, 중간 포맷은 도 2에서와 같이 아날로그 픽셀 데이터를 포함할 수 있다. 그러한 실시예에서, 컨버터(120)는 디코더(예컨대, 디코더(210))로서 기능할 수 있다. 일부 실시예에서, 중간 포맷은 픽셀 데이터와 동일하게 대응하지 않는 인코딩된 포맷 또는 디지털 픽셀 데이터를 포함할 수 있다. 그러한 실시예에서, 컨버터(120)는 인코딩된 비디오 정보를 단지 디코딩하는 것 이외에 어떤 다른 변환을 수행하는 부분 디코더, 트랜스코더 등으로 기능할 수 있다. 그러한 포맷들을 핸들링하는 인코더(140)의 설계 및 능력에 따라서, 각종 중간 포맷들이 가능하고 구상된다.
인코더(140)는 컨버터(120)에 의해 추출된 다른 정보(134)를 이용하여 중간 미디어 정보(132)를 인코딩할 수 있다[액트 330]. 일부 실시예에서(예컨대, 도 2에서), 인코더(140)는 중간 미디어 정보(132)를 컨버터(120)에 의해 수신된 인코딩된 비디오 정보의 최초 포맷으로 재인코딩할 수 있다. 일부 실시예에서, 인코더(140)는 중간 미디어 정보(132)를 컨버터(120)에 의해 수신된 인코딩된 비디오 정보의 것과는 상이한 포맷으로 인코딩할 수 있다. 한 예로서, 인코더(140)는 최초에는 MPEG-2 포맷으로 되어 있던 중간 미디어 정보(132)를 H.264 포맷으로 인코딩할 수 있다. 다른 트랜스코딩들이 가능하고 본 발명의 원리들과 일치한다.
일부 실시예에서, 인코더(140)는 중간 미디어 정보(132)를 인코딩하는 것을 돕기 위해 다른 정보(134)로부터의 모션 벡터들을 이용할 수 있다. 인코더(140)는 또한, 중간 미디어 정보(132)를 인코딩하는 것을 돕기 위해, 이용 가능하다면, 다른 정보(134) 내의 양자화 데이터, 픽처 데이터, 및/또는 에러 데이터 중 하나 이상을 이용할 수 있다. 일부 실시예에서, 인코더(140)는 중간 미디어 정보(132)를 인코딩하는 것을 돕기 위해 모션 벡터들에 더하여 또는 그 대신에 재생성하기에 계산상 비용이 들고(computationally expensive to generate) 컨버터(120)에 의해 추출될 수 있는 임의의 다른 정보를 이용할 수 있다.
프로세싱은 기억 장치(160)가 인코더(140)에 의해 출력된 인코딩된 비디오 정보를 저장하는 것으로 계속된다[액트 340]. 그러한 저장은 그러한 인코딩된 비디오 정보를 저장할 수 있는 자기적, 반도체, 광학적, 또는 임의의 다른 적당한 매체 또는 디바이스 상에서 일어날 수 있다. 일부 실시예에서, 액트 340은, 부가적으로 또는 대안적으로, 시스템(100)의 다른 부분(도시되지 않음) 또는 다른 시스템에 의해 이용(예컨대, 재생, 전송)하기 위해 인코더(140)로부터 인코딩된 비디오 정보를 출력하는 것을 포함할 수 있다. 도 3에 명시적으로 도시되어 있지는 않지만, 액트 340은 또한, 또는 대안적으로, 기억/출력 장치(150)에 의한 중간 미디어 정보의 저장 또는 출력을 포함할 수 있다. 본 명세서에서 기술된 방식들은, 일부 실시예에서, 입력된 비디오 정보를 재압축하거나 재인코딩하기 위해 컨버터(120)로부터의 디지털 클루들 및 아날로그 픽셀들의 조합을 이용할 수 있다.
본 발명의 원리들과 일치하는 하나 이상의 실시예들에 대한 전술한 설명은 예시 및 설명을 제공하지만, 총망라(exhaustive)하거나 또는 발명의 범위를 개시된 바로 그 형태로 제한하려고 의도하는 것은 아니다. 상기 교시 내용에 비추어 변형들 및 변경들이 가능하고 발명의 다양한 실시예들의 실시로부터 획득될 수 있다.
예를 들면, 컨버터(120)에 입력된 미디어 데이터 내의 임의의 오디오 정보가 아날로그로 변환되고 인코더(140)에 의한 재압축을 위해 다시 디지털로 변환될 수 있다. 그 이유는 요구되는 계산 에너지가 비교적 극미하기 때문이다. 또한, 도 1에서는 직접 접속된 것으로 도시되어 있지만, 중간 미디어(132) 및 다른 정보(134) 중 하나 이상이 유선 또는 무선 통신 링크를 통하여 컨버터(120)로부터 인코더(140)로 전송될 수 있다.
더욱이, 도 3의 액트들은 도시된 순서로 실시될 필요는 없고; 그 액트들 전부가 반드시 수행될 필요도 없다. 또한, 다른 액트들에 의존하지 않는 액트들은 다른 액트들과 병행하여 수행될 수 있다. 또한, 이 도면 내의 액트들 중 적어도 일부가 명령들, 또는 명령 그룹들로 실시될 수 있고, 머신 판독 가능한 매체로 실시될 수도 있다.
본원의 설명에서 사용된 어떠한 엘리먼트, 액트, 또는 명령도 명시적으로 그렇게 기술되지 않는 한 본 발명에 중대하거나 필수 불가결한 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 사용된 관사 "a"는 하나 이상의 아이템을 포함하는 것으로 의도한다. 하나의 아이템만 의도되는 경우에는, "one" 또는 유사한 언어가 사용된다. 본 발명의 사상 및 원리를 실질적으로 벗어나지 않고 위에 설명된 실시예(들)에 대해 변형 및 변경이 행해질 수 있다. 그러한 모든 변형 및 변경은 이 명세서의 범위 내에 포함되고 이하의 청구항들에 의해 보호되는 것으로 의도한다.
Claims (27)
- 제1 포맷을 갖는 인코딩된 비디오 정보를 중간 비디오 정보로 디코딩하고 상기 인코딩된 비디오 정보로부터 모션 벡터들을 추출하는 디코더와;상기 인코딩된 비디오 정보로부터 추출된 모션 벡터들을 이용하여 상기 중간 비디오 정보를 제2 포맷을 갖는 출력 비디오 정보로 인코딩하는 인코더와;상기 인코더로부터의 상기 출력 비디오 정보를 저장하는 디바이스를 포함하는 시스템.
- 제1항에 있어서, 상기 제1 포맷 및 상기 제2 포맷은 공통 포맷을 갖는 시스템.
- 제2항에 있어서, 상기 공통 포맷은 MPEG-1, MPEG-2, MPEG-4, H.264, 윈도 미디어 비디오 버전 9(WMV9) 또는 AVS(Advanced Video System)를 포함하는 시스템.
- 제1항에 있어서, 상기 제1 포맷은 MPEG-2를 포함하고,상기 제2 포맷은 H.264를 포함하는 시스템.
- 제1항에 있어서, 상기 디코더는 상기 인코딩된 비디오 정보로부터 양자화 데이터, 픽처(picture) 데이터, 또는 에러 데이터를 추출하도록 구성된 시스템.
- 제1항에 있어서, 상기 인코더는 디지털 대 아날로그 컨버터를 포함하고,상기 중간 비디오 정보는 아날로그 픽셀 정보를 포함하는 시스템.
- 제1항에 있어서, 상기 중간 비디오 정보는 디지털 픽셀 정보를 포함하는 시스템.
- 제1항에 있어서,상기 중간 비디오 정보를 출력하는 출력 포트를 더 포함하는 시스템.
- 인코딩된 비디오 스트림으로부터 모션 정보를 추출하는 단계와;상기 인코딩된 비디오 스트림을 중간 비디오 스트림으로 변환하는 단계와;상기 인코딩된 비디오 스트림으로부터 추출된 모션 정보를 이용하여 상기 중간 비디오 스트림을 출력 비디오 스트림으로 인코딩하는 단계를 포함하는 방법.
- 제9항에 있어서, 상기 추출하는 단계는, 상기 인코딩된 비디오 스트림으로부터 양자화 데이터 또는 픽처 데이터를 획득하는 단계를 포함하고,상기 인코딩하는 단계는, 상기 인코딩된 비디오 스트림으로부터 획득된 상기 모션 정보 및 상기 양자화 데이터 또는 상기 픽처 데이터를 이용하여 상기 중간 비 디오 스트림을 인코딩하는 단계를 포함하는 방법.
- 제9항에 있어서, 상기 변환하는 단계는, 상기 인코딩된 비디오 스트림을 디코딩하여 비압축된 픽셀 데이터의 스트림을 생성하는 단계를 포함하는 방법.
- 제11항에 있어서, 상기 변환하는 단계는, 상기 비압축된 픽셀 데이터의 스트림을 아날로그 형태로부터 변환하여 상기 중간 비디오 스트림을 생성하는 단계를 더 포함하는 방법.
- 제9항에 있어서, 상기 인코딩된 비디오 스트림 및 상기 출력 비디오 스트림은 공통 인코딩 포맷을 공유하는 방법.
- 제9항에 있어서, 상기 인코딩된 비디오 스트림 및 상기 출력 비디오 스트림은 상이한 인코딩 포맷들을 갖는 방법.
- 제9항에 있어서,상기 출력 비디오 스트림을 저장하는 단계를 더 포함하는 방법.
- 제9항에 있어서,상기 중간 비디오 스트림을 저장하는 단계를 더 포함하는 방법.
- 입력 미디어 정보를 중간 포맷을 갖는 중간 미디어 정보로 변환하고 상기 입력 미디어 정보로부터 다른 정보를 추출하는 컨버터와;상기 입력 미디어 정보로부터 추출된 상기 다른 정보를 이용하여 상기 중간 미디어 정보를 출력 포맷을 갖는 출력 미디어 정보로 인코딩하는 인코더를 포함하는 장치.
- 제17항에 있어서, 상기 입력 미디어 정보는 상기 출력 포맷으로 인코딩되어 있는 장치.
- 제17항에 있어서, 상기 입력 미디어 정보는 상기 출력 포맷과 상이한 입력 포맷으로 인코딩되어 있는 장치.
- 제17항에 있어서, 상기 중간 미디어 정보는 아날로그 데이터를 포함하는 장치.
- 제17항에 있어서, 상기 입력 미디어 정보는 인코딩되어 있고,상기 컨버터는 상기 인코딩된 입력 미디어 정보를 디코딩하여 상기 중간 미디어 정보를 생성하는 디코더를 포함하는 장치.
- 제17항에 있어서, 상기 다른 정보는 모션 벡터들을 포함하는 장치.
- 제17항에 있어서,상기 인코더로부터의 상기 출력 미디어 정보를 저장하는 기억 디바이스를 더 포함하는 장치.
- 인코딩된 비디오 스트림으로부터 적어도 모션 백터들을 획득하는 단계와;상기 인코딩된 비디오 스트림을 디코딩하여 아날로그 비디오 스트림을 생성하는 단계와;상기 인코딩된 비디오 스트림으로부터 획득된 상기 모션 벡터들을 이용하여 상기 아날로그 비디오 스트림을 인코딩하여 출력 비디오 스트림을 생성하는 단계를 포함하는 방법.
- 제24항에 있어서, 상기 획득하는 단계는 상기 인코딩된 비디오 스트림으로부터 양자화 데이터 및 픽처 데이터를 획득하는 단계를 더 포함하는 방법.
- 제25항에 있어서,상기 양자화 데이터 및 상기 픽처 데이터를 이용하여 상기 인코딩의 레이트를 제어하는 단계를 더 포함하는 방법.
- 제24항에 있어서,상기 출력 비디오 스트림을 저장하는 단계를 더 포함하는 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/816,031 US20050229231A1 (en) | 2004-03-31 | 2004-03-31 | Converter-assisted video encoder |
US10/816,031 | 2004-03-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060132972A true KR20060132972A (ko) | 2006-12-22 |
KR100797215B1 KR100797215B1 (ko) | 2008-01-23 |
Family
ID=34964780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020067020345A KR100797215B1 (ko) | 2004-03-31 | 2005-03-31 | 컨버터를 이용하는 비디오 인코더 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20050229231A1 (ko) |
EP (1) | EP1730966A1 (ko) |
JP (1) | JP2007531477A (ko) |
KR (1) | KR100797215B1 (ko) |
CN (1) | CN1934869A (ko) |
TW (1) | TWI259724B (ko) |
WO (1) | WO2005099272A1 (ko) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101147744B1 (ko) * | 2005-02-22 | 2012-05-25 | 엘지전자 주식회사 | 비디오 트랜스 코딩 방법 및 장치와 이를 이용한 pvr |
US9648281B2 (en) | 2005-05-23 | 2017-05-09 | Open Text Sa Ulc | System and method for movie segment bookmarking and sharing |
US8141111B2 (en) | 2005-05-23 | 2012-03-20 | Open Text S.A. | Movie advertising playback techniques |
US8145528B2 (en) | 2005-05-23 | 2012-03-27 | Open Text S.A. | Movie advertising placement optimization based on behavior and content analysis |
EP2309738A1 (en) | 2005-05-23 | 2011-04-13 | Thomas S. Gilley | Distributed scalable media environment |
KR20080096768A (ko) * | 2006-02-06 | 2008-11-03 | 톰슨 라이센싱 | 사용 가능한 움직임 정보를 비디오 인코딩을 위한 움직임추정 예측자로서 재사용하는 방법 및 장치 |
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 |
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 |
US20130101023A9 (en) * | 2007-03-12 | 2013-04-25 | Vixs Systems, Inc. | Video encoder with video decoder reuse and method for use therewith |
FR2915047B1 (fr) * | 2007-04-13 | 2009-10-30 | Streamwide Soc Par Actions Sim | Architecture de transcodage de flux multimedia. |
US8576918B2 (en) | 2007-07-09 | 2013-11-05 | Broadcom Corporation | Method and apparatus for signaling and decoding AVS1-P2 bitstreams of different versions |
EP2467786B1 (en) | 2009-08-17 | 2019-07-31 | Akamai Technologies, Inc. | Method and system for http-based stream delivery |
US20110296048A1 (en) * | 2009-12-28 | 2011-12-01 | Akamai Technologies, Inc. | Method and system for stream handling using an intermediate format |
US20110158310A1 (en) * | 2009-12-30 | 2011-06-30 | Nvidia Corporation | Decoding data using lookup tables |
US8880633B2 (en) | 2010-12-17 | 2014-11-04 | Akamai Technologies, Inc. | Proxy server with byte-based include interpreter |
JP5698644B2 (ja) * | 2011-10-18 | 2015-04-08 | 株式会社Nttドコモ | 動画像予測符号化方法、動画像予測符号化装置、動画像予測符号化プログラム、動画像予測復号方法、動画像予測復号装置及び動画像予測復号プログラム |
US20140037005A1 (en) * | 2012-08-02 | 2014-02-06 | Penne Y. LEE | Transcoding video data |
US10432961B2 (en) * | 2015-03-10 | 2019-10-01 | Apple Inc. | Video encoding optimization of extended spaces including last stage processes |
US10547846B2 (en) * | 2017-04-17 | 2020-01-28 | Intel Corporation | Encoding 3D rendered images by tagging objects |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370198B1 (en) * | 1997-04-07 | 2002-04-09 | Kinya Washino | Wide-band multi-format audio/video production system with frame-rate conversion |
US6181711B1 (en) * | 1997-06-26 | 2001-01-30 | Cisco Systems, Inc. | System and method for transporting a compressed video and data bit stream over a communication channel |
US5920354A (en) * | 1998-01-13 | 1999-07-06 | Thomson Consumer Electronics | HDTV to NTSC transcoder system |
JP4426689B2 (ja) * | 1999-02-25 | 2010-03-03 | パナソニック株式会社 | 動画像符号化方式の変換方法及びその装置 |
US6532593B1 (en) * | 1999-08-17 | 2003-03-11 | General Instrument Corporation | Transcoding for consumer set-top storage application |
US6441754B1 (en) * | 1999-08-17 | 2002-08-27 | General Instrument Corporation | Apparatus and methods for transcoder-based adaptive quantization |
US6658057B1 (en) * | 2000-08-31 | 2003-12-02 | General Instrument Corporation | Digital transcoder with logo insertion |
US6407680B1 (en) * | 2000-12-22 | 2002-06-18 | Generic Media, Inc. | Distributed on-demand media transcoding system and method |
-
2004
- 2004-03-31 US US10/816,031 patent/US20050229231A1/en not_active Abandoned
-
2005
- 2005-03-30 TW TW094109968A patent/TWI259724B/zh not_active IP Right Cessation
- 2005-03-31 JP JP2007506564A patent/JP2007531477A/ja active Pending
- 2005-03-31 KR KR1020067020345A patent/KR100797215B1/ko not_active IP Right Cessation
- 2005-03-31 EP EP05732336A patent/EP1730966A1/en not_active Ceased
- 2005-03-31 CN CNA2005800095250A patent/CN1934869A/zh active Pending
- 2005-03-31 WO PCT/US2005/010922 patent/WO2005099272A1/en not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
KR100797215B1 (ko) | 2008-01-23 |
TW200539710A (en) | 2005-12-01 |
JP2007531477A (ja) | 2007-11-01 |
EP1730966A1 (en) | 2006-12-13 |
US20050229231A1 (en) | 2005-10-13 |
WO2005099272A1 (en) | 2005-10-20 |
TWI259724B (en) | 2006-08-01 |
CN1934869A (zh) | 2007-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100797215B1 (ko) | 컨버터를 이용하는 비디오 인코더 | |
CN109644269B (zh) | 图像处理设备、图像处理方法和存储介质 | |
JPH11275592A (ja) | 動画像符号列変換装置及びその方法 | |
US8165411B2 (en) | Method of and apparatus for encoding/decoding data | |
KR101147744B1 (ko) | 비디오 트랜스 코딩 방법 및 장치와 이를 이용한 pvr | |
KR19980063690A (ko) | Dct 베이스 기술을 사용하여 압축된 정보를 기억함에 의해 압축해제에 필요한 메모리를 감축하는 방법 및 이 방법을 구현하기 위한 디코더 | |
US20100020883A1 (en) | Transcoder, transcoding method, decoder, and decoding method | |
JP2007104231A (ja) | トランスコーダ、記録装置及びトランスコード方法 | |
US20040013399A1 (en) | Information processing method and apparatus | |
WO2006114954A1 (ja) | 映像情報記録装置、映像情報記録方法、映像情報記録プログラム、及び映像情報記録プログラムを記録した記録媒体 | |
JP2005064569A (ja) | トランスコーダ及びこれを用いた撮像装置及び信号処理装置 | |
US7346108B2 (en) | Encoded-data converting apparatus and method for the same | |
JP4742018B2 (ja) | 画像符号化装置及び画像符号化方法 | |
CN1973548B (zh) | 用于选择性地转换输入信号的代码的设备和方法 | |
JP2007306370A (ja) | 画像符号化記録装置 | |
KR20050112587A (ko) | 동영상 인코딩, 디코딩 장치 및 그 방법 | |
CN102204253B (zh) | 基于运动估计的视频编码/解码装置和方法 | |
JP5240230B2 (ja) | トランスコーダ、記録装置及びトランスコード方法 | |
US20120002720A1 (en) | Video encoder with video decoder reuse and method for use therewith | |
JP2006033014A (ja) | 映像信号変換装置、変換方法及びこれを用いた映像信号記録装置 | |
US20120002719A1 (en) | Video encoder with non-syntax reuse and method for use therewith | |
WO2020054190A1 (ja) | 変換装置、復号装置、変換方法および復号方法 | |
JP2005079621A (ja) | マルチフォーマット符号化器及びこれを含む記録システム、並びに符号化処理用1チップlsi | |
JP2004297184A (ja) | 情報処理装置および情報処理方法ならびに記憶媒体、プログラム | |
JP2008141530A (ja) | 画像符号化装置及び画像符号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120110 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |