KR100928127B1 - 인트라-슬라이스 재동기화 포인트들을 사용하는 에러복원을 위한 방법 및 장치 - Google Patents

인트라-슬라이스 재동기화 포인트들을 사용하는 에러복원을 위한 방법 및 장치 Download PDF

Info

Publication number
KR100928127B1
KR100928127B1 KR1020077023230A KR20077023230A KR100928127B1 KR 100928127 B1 KR100928127 B1 KR 100928127B1 KR 1020077023230 A KR1020077023230 A KR 1020077023230A KR 20077023230 A KR20077023230 A KR 20077023230A KR 100928127 B1 KR100928127 B1 KR 100928127B1
Authority
KR
South Korea
Prior art keywords
resynchronization point
information
bitstream
decoding
resynchronization
Prior art date
Application number
KR1020077023230A
Other languages
English (en)
Other versions
KR20070110550A (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 KR20070110550A publication Critical patent/KR20070110550A/ko
Application granted granted Critical
Publication of KR100928127B1 publication Critical patent/KR100928127B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • H04N19/68Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience involving the insertion of resynchronisation markers into the bitstream
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • 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/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/19Methods 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 using optimisation based on Lagrange multipliers
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

비디오 코딩을 위한 방법은 비디오 비트스트림의 섹션 내의 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 인코딩하는 단계를 포함한다. 비디오 데이터를 디코딩하기 위한 방법은 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 가지는 인코딩된 비트스트림을 수신하는 단계; 및 상기 수신된 비트스트림을 디코딩하는 단계; 및 상기 재동기화 포인트 정보에 기초하여 상기 비트스트림 내에 상기 재동기화 포인트를 위치시키는 단계를 포함한다.

Description

인트라-슬라이스 재동기화 포인트들을 사용하는 에러 복원을 위한 방법 및 장치{METHOD AND APPARATUS FOR ERROR RECOVERY USING INTRA-SLICE RESYNCHRONIZATION POINTS}
본 출원은 2005년 3월 10일에 제출된 "비디오 처리를 위한 컨텐츠 분류"라는 명칭의 임시 출원 60/660,879 및 2005년 9월 1일에 제출된 "인트라-슬라이스 재동기화 포인트들을 사용하는 에러 복원을 위한 방법 및 장치"라는 명칭의 임시 출원 60/713,207의 우선권을 청구하며, 상기 출원들은 본 출원의 양수인에게 양수되고, 본 명세서에서 참조로서 통합된다.
본 발명은 에러 관리 방식들로 디지털 데이터를 인코딩 및 디코딩하기 위한 방법 및 장치들에 관한 것이다.
이동 통신 시스템에서 높은 데이터 레이트들 및 높은 서비스 품질에 대한 요구는 급속하게 증가하고 있다. 그러나, 제한된 송신 전력, 제한된 대역폭 및 다중-경로 페이딩과 같은 인자들은 실제 시스템들에 의해 처리되는 데이터 레이트들을 계속해서 제한하고 있다. 멀티미디어 통신들에서, 특히 에러에 영향받기 쉬운 환경들에서, 전송된 매체의 에러에 대한 복원성은, 심지어 단일 디코딩된 값에서의 에러들도 공간 및 시간적으로 전파하는 제조물(artifact)들의 디코딩을 유도할 수 있기 때문에, 요구되는 서비스 품질을 제공하는데 있어서 중요하다. 다양한 인코딩 측정치들은 필요한 데이터 레이트를 유지하면서 에러들을 최소화하기 위해 사용되지만, 상기 기술들 모두는 디코더 측에 도달하는 에러들로 인한 문제들을 경험하게 된다.
MPEG-1, MPEG-2, MPEG-4(통칭하여 MPEG-x라 지칭됨), H.261, H.262, H.263, 및 H.264(통칭하여 H.26x라 지칭됨)와 같은 하이브리드 코딩 표준들은 고정되거나 가변하는 길이의 소스 코딩 기술들을 사용하여 비디오, 오디오 및 다른 정보의 압축 및 전달에 매우 적합한 데이터 처리 및 조종 기술들(본 명세서에서 하이브리드 코딩이라 지칭됨)을 설명한다. 특히, 전술된 표준들 및 다른 하이브리드 코딩 표준들 및 기술들은 (예를 들면, 런-렝스 코딩, 호프만(Huffman) 코딩, 등등과 같은) 인트라-프레임 엔트로피 코딩 기술들 및 (예를 들면, 전방 및 후방 예측 코딩, 움직임 보상 등등과 같은) 인터-프레임 코딩 기술들을 사용하여 비디오 정보를 압축한다. 특히, 비디오 처리 시스템들의 경우에, 하이브리드 비디오 코딩 시스템들은 인트라- 및/또는 인터-프레임 움직임 보상 인코딩을 사용하는 비디오 프레임들의 예측-기반의 압축 코딩을 특징으로 한다.
엔트로피 코딩은 랜덤한 정보 소스들에 의해 발생된 심볼들의 가장 효율적인 손실없는 표현들을 가능하게 한다. 상기와 같이 손실 없는 및 손실 있는 데이터 압축 방식들 모두의 구성요소들은 중요하다. 압축 효율에 대한 대단한 장점들에도 불구하고, 엔트로피 코딩은 디코딩 프로세스를 복잡하게 한다. 엔트로피 코딩에 대한 모든 서로 다른 방식들의 공통적인 특징은 단일 소스 심볼 또는 소스 심볼들의 시퀀스가 이진 패턴, 즉 코드워드로 공지된 1과 0들의 시퀀스와 관련 및 표현된다는 것인데, 코드워드의 길이는 심볼 가능성이 감소하면서 증가한다. 따라서, 더욱 가능한 심볼들에는 더욱 간결한 표현이 할당되어 고정-길이의 표현에 기초하는 간단한 심볼 알파벳 크기에 평균적으로 실질적인 절약들이 가능하게 한다.
비트 스트림에서, 즉 정보 소스의 출력의 엔트로피 코딩된 표현에서, 다음 심볼을 위해 얼마나 많은 비트들이 소비되는지에 관한 모호성은 디코더에 대한 복잡함이다. 그러나, 훨씬 중요하게는 비트스트림에서 에러들의 경우에, 플립된 비트들(에러들로 인해)과 관련하여 다양한 크기의 코드워드들의 사용은 부정확한 코드워드 길이의 치환을 빈번하게 발생할 수 있고, 결과적으로 분석/디코딩 프로세스는 비트 스트림과의 동기화를 상실, 즉 코드워드 경계들의 정확한 식별을 손실하고, 따라서 비트스트림의 정확한 해석이 실패하기 시작할 수도 있다.
기본 레벨의 에러 검출 측정들을 실행하는 디코더가 비트 스트림의 디코딩에서 문제에 부딪히고 동기화를 상실한다고 가정하자. 결과적으로, 구문 위반, 즉 무효 코드워드 또는 예를 들면 무효 파라미터 값들 또는 예기치 않은 비트 스트림 오브젝트와 같은 의미상 실패로 중 하나로 인해, 디코더는 문제를 인식하고, 비트 스트림과 자체적으로 재동기화하기 위한 필수 단계들을 실행할 수 있다. 이는 제 1 위치에서 데이터 손실을 트리거링한 훼손(corruption) 훨씬 이상으로 데이터 손실을 유도할 수도 있다. 데이터 손실은 디지털 압축을 위해 사용되는 공간 예측으로 인해 프레임에서 공간적으로 확산할 수 있다. 데이터 손실은 손실된 데이터가 움직임 보상 예측 영역에 대한 기준 프레임의 일부인 경우에 통합되어 일시적인 에러 전파를 발생한다.
MPEG-x 및 H.26x 하이브리드 코딩 표준들은 일반적으로 NALU(네트워크 요약 계층 유니트) 경계들에서 재동기 포인트들(RSP)을 제공하는데, 가장 일반적인 NALU는 하나의 슬라이스이다. 슬라이스는 매크로블럭이 16x16 픽셀들로 이루어진 경우에 점방식 스캔 순서로 연속하는 매크로블럭들의 그룹이 될 수 있다. 픽셀들은 하나의 휘도 값(Y) 및 2개의 색도 값(Cr, Cb)에 의해 정의된다. H.264에서, Y, Cr, Cb 성분들은 4:2:0의 포맷으로 저장되고, 상기 경우에 Cr 및 Cb 성분들은 X 및 Y 방향들로 2만큼 다운-샘플링되다. 따라서, 각각의 매크로블럭은 256개 Y 성분들, 64개 Cr 성분들 및 64개 Cb 성분들로 구성될 것이다. H.264는 슬라이스 그룹들 및 유연한 매크로블럭 정렬(FMO)을 도입함으로써 슬라이스의 개념을 일반화하였다. 슬라이스 그룹들 및 FMO는 슬라이스 및 매크로블럭 결합이 임의적이게 하며, 연속하는 매크로블럭들의 종래 구조를 훨씬 넘어서 유연성을 제공한다. 슬라이스들은 프리픽스 코드라 공지된 RSP에서 시작한다. RSP 프리픽스 코드는 약 3 바이트 길이와 비슷한, 바이트 정렬되고 예약된 의 비트 스트링 코드이다. 실제 재동기 포인트로 사용하기 위해, 모든 인터-코딩 예측 체인들은 RSP 이전의 데이터를 참조하는 것을 피한다. 프리픽스 코드 바이트들에 의해 유도되는 오버헤드뿐만 아니라 예측 코딩 체인들의 중단 또는 성능 저하로 인해 손실된 코딩 효율은, 지원중인 에러 복원에서 그들의 장점들에 비교될, 슬라이스들을 자주 사용하는, 즉 짧은 슬라이스들을 사용하는데 있어서의 단점들이다. 이러한 관계에 기초하여, 단일 슬라이스로서 인코딩되는 전체 프레임은 디폴트 인코더 동작으로 일반적이다. 또 다른 보편적인 더 짧은 슬라이스 구조는 모든 매크로블럭 행이 슬라이스를 구성하게 한다. 매크로블럭 행 보다 더 짧은 슬라이스들은 휠씬 덜 자주 사용되며, 그들이 채택될 때 대부분 그 이유는 슬라이스 사이즈들(비트들의 개수)이 요구되는 전송 패킷 사이즈와 매칭하기 때문이다.
종래의 재동기화 방식을 기반으로 하는 슬라이스에서, 만약 데이터 내의 의미(semantic) 에러 또는 구문(syntactic) 에러와 같은 에러가 디코더에서 검출되면, 에러 이후에 발생하는 전체 슬라이스는 쓸모없게 된다. 이는 특히 전체 프레임과 같은 더 긴 슬라이스에 대하여 바람직한 조건이 아니다. 훼손된(corrupted) 슬라이스 내에 포함된 비디오 데이터 중 일부가 복구될 수 있게 하는 인트라-슬라이스 재동기 포인트(IS-RSP)가 요구된다. 또한, IS-RSP들은 오버헤드를 감소시키면서 에러 복원을 최대화하도록 지능적으로 배치될 필요가 있다.
비디오 코딩을 위한 방법 및 장치들은, 비디오 비트스트림의 섹션 내의 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 다음에 상기 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 인코딩하는 단계 및 수단; 및 상기 인코딩된 재동기화 포인트 정보를 전송하는 단계 및 수단을 포함한다.
또다른 양상에서, 비디오 코딩 장치는 비디오 비트스트림의 섹션 내의 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 다음에 상기 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 인코딩하기 위한 수단; 및 상기 인코딩된 재동기화 포인트 정보를 전송하기 위한 수단을 포함한다.
또다른 양상에서, 비디오 코딩을 위한 방법 및 장치는 다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하는 단계 및 수단; 및 상기 계산된 레이트 왜곡 비용에 기초하여 상기 재동기화 포인트의 위치가 되도록 상기 후보 위치들 중 적어도 하나를 선택하는 단계 및 수단을 더 포함한다. 상기 방법 및 장치는 상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하는 단계 및 수단을 더 포함하며, 상기 섹션은 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버이다. 상기 비디오 코딩을 위한 방법 및 장치는 상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하는 단계 및 수단을 더 포함하며, 상기 재동기화 포인트는 매크로블럭의 시작부이다.
상기 비트스트림을 디코딩하기 위한 정보는 인접하는 비디오 섹션과 연관된 정보를 포함할 수 있다. 상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함한다. 상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 다음에 상기 비트스트림이 존재하는 상황과 관련된 정보를 포함한다.
비디오 코딩을 위한 방법 및 장치는 데이터 메세지 내에서 상기 재동기화 포인트 정보를 인코딩하는 단계 및 수단을 더 포함하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 전용 개인 데이터 메세지, 보충 개선 정보 메세지, 및 MPEG 사용자_데이터 메세지 중 하나이다. 상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 다음에 상기 비트스트림이 존재하는 상황과 관련된 정보를 포함한다.
또다른 양상에서, 디코딩하기 위한 방법 및 장치는 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 다음에 상기 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 가지는 인코딩된 비트스트림을 수신하는 단계 및 수단; 및 상기 수신된 비트스트림을 디코딩하는 단계 및 수단을 포함한다.
또다른 양상에서, 비디오 디코딩 장치는 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 다음에 상기 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 가지는 인코딩된 비트스트림을 수신하기 위한 수단; 및 상기 수신된 비트스트림을 디코딩하기 위한 수단을 포함한다.
상기 디코딩 방법 및 장치는 또한 상기 재동기화 포인트 정보에 기초하여 상기 비트스트림 내에 상기 재동기화 포인트를 위치시키는 단계 및 수단을 더 포함한다. 상기 비트스트림을 디코딩하기 위한 정보는 상기 비트 스트림 다음에 상기 재동기화 포인트가 인코딩되는 상황과 관련된 정보를 포함한다. 디코딩 방법 및 장치는 상기 재동기화 포인트 정보 내에 포함된 상기 수신된 상황 정보와 상기 디코딩된 비트스트림의 현재 상황을 비교하는 단계 및 수단; 및 상기 비교가 상기 현재 상황과 상기 수신된 상황 정보가 동일하지 않음을 보여주는 경우에 상기 비트스트림을 디코딩하는 것을 중단하고 상기 비트스트림을 디코딩하는 것을 다시 시작하는 단계 및 수단을 더 포함한다. 상기 재동기화 포인트의 위치는 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버로부터 선택된 비디오의 섹션 내에 있다. 상기 재동기화 포인트의 위치는 매크로블럭의 시작부이다.
상기 비트스트림을 디코딩하기 위한 정보는 인접하는 비디오 섹션과 관련된 정보를 포함한다. 상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함한다.
디코딩을 위한 방법 및 장치는 데이터 메세지 내에서 상기 재동기화 포인트 정보를 수신하는 단계 및 수단을 더 포함하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 전용 개인 데이터 메세지, 보충 개선 정보 메세지, 및 MPEG 사용자_데이터 메세지 중 하나이다. 디코딩을 위한 방법 및 장치는 가변 길이 코드를 사용하여 인코딩된 상기 재동기화 포인트 정보를 수신하는 단계 및 수단을 더 포함한다. 상기 디코딩을 위한 방법 및 장치는 비트스트림 내에서 에러를 검출하는 단계 및 수단; 상기 비트스트림의 디코딩을 중단하는 단계 및 수단; 및 상기 위치된 재동기화 포인트를 계속해서 디코딩하는 단계 및 수단을 포함한다.
또다른 양상에서, 멀티미디어 데이터를 코딩하기 위한 방법 및 장치는 재동기화 포인트 데이터를 인코딩하는 단계 및 수단; 및 상기 재동기화 포인트 데이터를 멀티미디어 스트림의 슬라이스에 삽입하는 단계 및 수단을 포함한다. 멀티미디어 데이터를 코딩하기 위한 방법 및 장치는 상기 슬라이스 내에서 재동기화 포인트의 위치를 선택하는 단계 및 수단을 더 포함하며, 상기 삽입 단계 및 수단은 상기 선택된 위치에 상기 재동기화 포인트를 삽입하는 단계 및 수단을 포함한다. 상기 선택 단계 및 수단은 다수의 후보 위치들에 대하여 레이트 왜곡 비용을 계산하는 단계 및 수단; 및 상기 레이트 왜곡 비용에 기초하여 적어도 하나의 후보 위치를 선택하는 단계 및 수단을 포함한다. 상기 재동기화 포인트는 상기 멀티미디어 데이터의 상황 정보를 포함한다.
또다른 양상에서, 멀티미디어 스트림을 처리하기 위한 방법 및 장치는 멀티미디어 스트림의 슬라이스 내의 재동기화 포인트 데이터를 수신하는 단계 및 수단; 및 상기 재동기화 포인트 데이터에 기초하여 멀티미디어 데이터를 재구성하는 단계 및 수단을 포함한다. 상기 재동기화 포인트는 상기 멀티미디어 데이터의 상황 정보를 포함한다.
도 1은 스트리밍 비디오의 전달을 위한 통신 시스템의 일 예의 설명이다.
도 2는 16x16 픽셀 매크로블럭 및 인접하는 16x16 매크로블럭들의 일 예를 도시한다.
도 3은 IS-RSP들을 인코딩하기 위한 프로세스의 일 예를 도시한다.
도 4는 IS-RSP들을 사용함으로써 에러 전파가 포함되는 비디오 프레임을 도 시한다.
도 5는 최적의 후보 IS-RSP 위치들을 식별하기 위한 IS-RSP 인코딩 시나리오의 일 예이다.
도 6은 최적의 후보 IS-RSP 위치들을 식별하기 위한 레이트 왜곡 분석에서 사용하기 위한 에러 가능성들 및 연관된 왜곡들의 일 예이다.
도 7은 IS-RSP를 사용하는 디코더 프로세스의 일 예의 설명이다.
도 8은 IS-RSP를 사용하는 디코더 프로세스의 또다른 예의 설명이다.
도 9-10은 IS-RSP을 인코딩하기 위한 예시적인 방법 및 장치를 도시한다.
도 11-12은 디코딩을 위한 예시적인 방법 및 장치를 도시한다.
도 13-14은 IS-RSP를 인코딩하기 위한 예시적인 방법 및 장치를 도시한다.
도 15-16은 멀티미디어 스트림을 처리하기 위한 예시적인 방법 및 장치를 도시한다.
예를 들어, 슬라이스와 같은 비디오 비트 스트림의 섹션에 개선된 재동기화 포인트를 제공하는 방법들 및 장치가 설명된다. 인코더는 재동기화 포인트를 위치시키기 위해 사용되는 정보와 함께 재동기화 포인트를 뒤따르는 비트스트림을 디코딩하기 위해 사용되는 정보를 포함하는 재동기화 포인트 정보를 제공한다. 재동기화 포인트는 비디오 스트림의 섹션에 위치되기 때문에, 디코더는 상기 섹션에서 남아있는 데이터를 희생하지 않고 재동기화 포인트에서 재동기화할 수 있다. 그 예들은 비디오, 오디오, 또는 비디오와 오디오 데이터를 포함하는 멀티미디어 데이터에 적용한다. 하기의 설명에서, 실시예들의 현저한 이해를 제공하기 위해 특정 세부 설명들이 제공된다. 그러나, 실시예들은 상기 특정 세부 설명들 없이 실행될 수 있음이 당업자에 의해 이해될 것이다. 예를 들어, 전기적인 구성요소들은 불필요한 설명으로 실시예들을 모호하게 하지 않기 위해 블럭 다이어그램들로 도시될 수 있다. 다른 경우들에서, 상기 구성요소들, 다른 구성요소들 및 기술들은 실시예들을 추가로 설명하기 위해 상세히 도시될 수 있다.
실시예들은 흐름도, 흐름 다이어그램, 구조적 다이어그램, 또는 블럭 다이어그램과 같이 도시된 프로세스로 설명될 수 있음에 주목하자. 흐름도는 순차적인 프로세스로서 동작들을 설명할 수 있지만, 대부분의 동작을은 병렬로 또는 동시에 수행될 수 있고, 프로세스는 반복될 수 있다. 부가적으로, 동작들의 순서는 재배열될 수 있다. 프로세스는 상기 동작들이 종료되면 중단된다. 프로세스는 방법, 기능, 절차, 서브루틴, 서브프로그램 등등과 일치할 수 있다. 프로세스가 하나의 기능과 일치할 때, 중단은 상기 기능의 호출 기능 또는 주요 기능으로의 복귀에 해당한다.
도 1은 스트리밍 비디오의 전달을 위한 통신 시스템의 일 예의 설명이다. 시스템(100)은 인코더 디바이스(105) 및 디코더 디바이스(110)를 포함한다. 인코더 디바이스(105)는 추가로 변환기/양자화기 구성요소(115), 엔트로피 인코더 구성요소(120), IS-RSP 위치측정기 구성요소(125), 메모리 구성요소(130), 프로세서 구성요소(135), 및 통신장치 구성요소(140)를 포함한다. 프로세서(135)는 다른 구성요소들의 프로세스들을 수행하기 위해 컴퓨팅 플랫폼을 제공한다. 변환기/양자화기 구성요소(115)는 비디오 데이터를, 공간 영역으로부터 DCT(이산 코사인 변환)의 경우에 주파수 영역과 같은 다른 영역으로 변환한다. 변환되는 데이터는 실제 비디오 데이터가 변환되는 인트라-코딩된 데이터가 될 수 있거나, 움직임 벡터 및 잔여 에러가 변환되는 인터-코딩된 데이터가 될 수 있다. 다른 디지털 변환들은 하다마르(Hadamard) 변환, DWT(이산 파장 변환) 및 H.264에서 사용된 것과 같은 정수 변환들을 포함한다.
변환기/양자화기 구성요소(115)는 변환된 계수들의 각각을 표시하기 위해 비트들을 할당한다. 변환된 계수들의 양자화는 모든 매크로블럭에 대하여 변경될 수 있다. 엔트로피 인코더 구성요소(120)는 상황-적응형 가변 길이 코딩(CAVLC) 방식을 사용하여 잔여 블럭 데이터를 인코딩하고, 다른 가변 길이 코딩된 유니트들은 Exp-Golomb 코드들을 사용하여 코딩된다. 잔여 블럭 데이터는 예측 및 인코딩된 원래의 블럭 픽셀 정보 사이에서 서로 다르다. 슬라이스 계층 위에서, 구문 엘리먼트들은 고정된 또는 가변하는 길이의 이진 코드들로 인코딩된다. 슬라이스 계층 상에서 및 슬라이스 계층 밑에서, 엘리먼트들은 가변-길이의 코드들(VLCs)을 사용하여 코딩된다. H.264 표준은 엔트로피 코딩 방식으로 상황-기반의 적응형 이진 산술 코딩(CABAC)을 지원한다. 본 명세서에서 논의되는 예시적인 방법들은 CAVLC 엔트로피 코딩 방식을 취급하지만, 유사한 방법들이 CABAC 엔트로피 코딩과 함께 사용될 수 있다. IS-RSP 위치측정기 구성요소(125)는 IS-RSP들로 사용될 수 있는 슬라이스 내의 매크로블럭 경계들의 세트를 식별하기 위해 사용되는 계산들을 수행한다. 한가지 방식에서, 레이트 왜곡 비용 최적화 분석은 IS-RSP들을 위한 최적 위치들을 탐색하는데 사용된다. 메모리 구성요소(130)는 인코딩될 원래의 비디오 데이터, 전송될 인코딩된 비디오 데이터, 또는 다양한 인코더 구성요소들에 의해 동작되는 중간 데이터와 같은 정보를 저장하기 위해 사용된다.
예를 들어, 수신기와 같은 통신장치 구성요소(140)는 외부 소스(145)로부터 인코딩될 데이터를 수신하기 위해 사용된 회로 및/또는 로직을 포함한다. 외부 소스(145)는 예를 들어, 외부 메모리, 인터넷, 라이브 비디오 및/또는 오디오 공급장치가 될 수 있으며, 데이터를 수신하는 것은 유선 및/또는 무선 통신들을 포함할 수 있다. 통신장치 구성요소(140)는 또한 네트워크(150)를 통해 인코딩된 데이터를 전송(Tx)하기 위한 송신기와 같은 회로 및/또는 로직을 포함한다. 네트워크(150)는 전화기, 케이블 및 광섬유와 같은 유선 시스템 또는 무선 시스템의 일부가 될 수 있다. 무선 통신 시스템들의 경우에, 네트워크(150)는 예를 들어, 코드 분할 다중 접속(CDMA 또는 CDMA2000) 통신 시스템의 일부를 포함할 수 있거나, 선택적으로 시스템은 주파수 분할 다중 접속(FDMA) 시스템, GSM/GPRS(범용 패킷 무선 서비스)/EDGE(개선된 데이터 GSM 환경) 또는 서비스 산업을 위한 TETRA(지상 간선 무선 시스템)와 같은 이동 전화기 기술시간 분할 다중 접속(TDMA), 광대역 코드 분할 다중 접속(WCDMA), 높은 데이터 레이트(1xEV-DO 또는 1xEV-DO 골드 멀티캐스트) 시스템 또는 일반적으로 상기 기술들의 조합을 사용하는 임의의 무선 통신 시스템이 될 수 있다. 인코더 디바이스(105)의 하나 또는 그이상의 엘리먼트들은 생략되고, 재배열되고, 및/또는 결합될 수 있다. 예를 들어, 프로세서 구성요소(135)는 인코더 디바이스(105)의 외부 장치가 될 수 있다.
역변환기/역양자화기(155), 엔트로피 디코더 구성요소(160), 에러 복원 구성요소(165), 메모리 구성요소(170), 통신장치 구성요소(175) 및 프로세서 구성요소(180)를 포함하는 디코더 디바이스(110)는 인코더 디바이스(105)와 유사한 구성요소들을 포함한다. 디코더 디바이스(110)는 네트워크(150)를 통해 또는 외부 저장장치(185)로부터 전송된 인코딩된 데이터를 수신한다. 통신장치 구성요소(175)는 네트워크(150)와 관련하여 인코딩된 데이터를 수신(Rx)하기 위해 사용되는 수신기와 같은 회로 및/또는 로직뿐만 아니라 외부 저장장치(185)로부터 인코딩된 데이터를 수신하기 위한 로직을 포함한다. 외부 저장장치(185)는 예를 들어, 외부 RAM 또는 ROM, 또는 원격 서버가 될 수 있다. 인트라-코딩된 데이터는 먼저 엔트로피 디코딩 구성요소(160)에 의해 디코딩된다. 엔트로피 디코딩 이후에, 데이터는 역변환기/역양자화기 구성요소(155)에 의해 역양자화되고 역변환되며, 그 결과 디스플레이 구성요소(190)에 디스플레이될 수 있는 디코딩된 픽처를 발생한다.
인터-코딩된 데이터는 예측된 기준 프레임(들)이 디코딩된 이후에 디코딩될 수 있다. 데이터는 엔트로피 디코더 구성요소(160)에 의해 디코딩되며, 그 결과 양자화/변환된 잔여 에러 계수들을 발생시킨다. 잔여 에러 계수들은 역변환기/역양자화기 구성요소(155)에 의해 역양자화되고 역변환되며, 그 결과 디코딩된 잔여 에러를 발생시킨다. 잔여 에러는 그후에 수신된 움직임 벡터 정보를 사용하여 식별되는 기준 프레임(들)로부터의 최적 매칭 매크로블럭(들)과 결합된다. 디코딩된 프레임들은 디스플레이 구성요소(190)를 사용하여 디스플레이되거나, 외부 저장장치(185)에 저장되거나 프로세서 구성요소(180)의 내부 메모리에 저장될 수 있다. 디스플레이 구성요소(190)는 디스플레이 스크린을 포함하여 비디오 디스플레이 하드웨어 및 로직으로서 상기 부분들을 포함하는 디코딩 디바이스의 집적된 부분이 될 수 있거나 외부 주변 디바이스가 될 수 있다. 통신장치 구성요소(175)는 디코딩된 프레임들을 외부 저장장치 구성요소(185) 또는 디스플레이 구성요소(190)에 통신하는데 사용되는 로직을 포함한다.
엔트로피 디코더 구성요소(160)는 다양한 구문 및 의미 검사들을 수행하기 위한 로직을 포함한다. 구분 및 의미 검사들은 몇가지 규칙들 중 몇몇을 위반하는 훼손된 코드워드들을 식별하기 위해 사용된다. 만약 비트스트림이 훼손된 것으로 결정되면, 에러 복원 구성요소(165)는 디코딩이 계속되도록 하기 위해 비트 스트림 내에 다음의 가장 인접한 훼손되지 않은 IS-RSP를 위치시킨다. IS-RSP 위치측정기 구성요소(125) 및 에러 복원 구성요소(165)에 의해 수행된 프로세스들의 세부사항들이 하기에 논의된다. 인코더 디바이스(110)의 하나 또는 그 이상의 엘리먼트들은 생략되고, 재배열되고, 및/또는 결합될 수 있다. 예를 들어, 프로세서 구성요소(180)는 인코더 디바이스(105)의 외부에 존재할 수 있다.
H.264에서 상황 적응형 가변 길이 코딩(CAVLC)의 도입은 재동기화 문제를 복잡하게 한다. H.264에서, 다수의 심볼들은 상황에서 인코딩되며, 각각의 심볼의 가능성은 코딩되는 상황과 관련하여, 즉 심볼 이전에 처리되는 것에 관련하여 변환한다. 상기 상황 의존성으로 인해, 동기화의 심볼 위험 손실에 대한 손실 뿐만 아니라, 심볼이 인코딩된 상황을 결정하는 다른 데이터의 손실은 동기화의 위험 손실이 된다. 따라서, CAVLC 비트스트림에 재동기화 포인트(IS-RSP)를 제공하기 위해, 디코더는 비트스트림 내에서 보기 위한 위치뿐만 아니라 후속 심볼들이 의존하는 상황 정보를 요구할 수 있다.
H.264 상황 적응형 비트스트림에서 재동기화를 가능하게 하기 위해 IS-RSP에서 정보가 요구되는 것을 도시하는 일 예가 논의될 것이다. 도 2는 16x16 픽셀 매크로블럭 및 인접하는 16x16 매크로블럭들의 일 예를 도시한다. 매크로블럭(200)은 16개의 4x4 픽셀 블럭들(201 내지 216)을 포함한다. 상기 예에서, 매크로블럭(200)은 인트라-코딩된 매크로블럭인 것으로 가정된다. 인트라-코딩된 및 인터-코딩된 매크로블럭들의 상황 의존성들은 서로 다르다. 인트라-코딩된 매크로블럭(200)을 위한 상황 적응형 인코딩은 인접하는 매크로블럭들(220, 230)의 파라미터들에 따라 결정된다. 매크로블럭(200)의 인코딩 및 디코딩은 인접하는 4개의 4x4 픽셀 블럭들(221 내지 224) 및 인접하는 4개의 4x4 픽셀 블럭들(231 내지 234)에서 비-제로 계수들(Y, Cr, Cb 계수들)의 개수에 따라 결정된다. 매크로블럭(200)의 인코딩 및 디코딩은 매크로블럭(220)을 인코딩하는데 사용된 양자화 파라미터 값 및 몇몇 경우들에서 블럭들(221 내지 224) 및 블럭들(231 내지 234)의 인트라 예측 모드들에 따라 결정된다. 만약 블럭(200)의 CAVLC 인코딩된 심볼들을 디코딩하는 동안 매크로블럭들(220 또는 230)을 위한 상황 파라미터들이 손실되면, 디코더는 추가의 디코딩을 사용하여 진행될 수 없고, 재동기화가 요구된다. H.264에서, 재동기화를 위해 NALU 프리픽스 코드들을 사용할 때, 매크로블럭(200)을 포함하는 슬라이스의 휴지는 손실될 수 있다. 그러나, 만약 매크로블럭(200)이 재동기화 포인트이면, 디코딩은 매크로블럭들(220, 230)의 상태에 관계없이 진행할 수 있고, 이는 IS-RSP가 하기에 논의되는 것과 같은 인접하는 블럭들에 대하여 필수의 상황 파라미터를 포함하기 때문이다.
재동기 포인트는 비트 스트림의 섹션 내의 재동기화 포인트의 위치를 식별하는 정보 및 재동기화 포인트 이후에 비트스트림을 디코딩하기 위해 사용된 인코딩 정보를 포함하는 재동기화 포인트 정보를 인코딩함으로써 형성된다.
예를 들어, 매크로블럭(200)에 재동기화 포인트를 형성하기 위해, IS-RSP 메세지는 IS-RSP 마커(240)를 위치생성하고 결국 매크로블럭(200)을 위치설정하기 위해 디코더에 의해 사용되는 정보로 인코딩될 수 있다. 견고한(robust) 재동기화 포인트를 제공하기 위해, IS-RSP 메세지는 디코더가 매크로블럭(200)을 디코딩하는데 필요한 인접하는 매크로블록 정보(매크로블럭(200)을 디코딩하는데 필요한 종속 정보)는 물론 비트스트림 내의 매크로블럭의 위치와 관련하여 정보 및 프레임 내의 매크로블럭의 위치와 관련된 정보를 포함할 수 있다.
일 예로서, 인트라-코딩된 매크로블럭이 H.264에서 재동기화 포인트로서 사용되도록 하기 위해, 예를 들어, IS-RSP 패킷은 하기의 H.264 특정 파라미터들을 포함할 수 있다:
● 비트스트림 내에 IS-RSP 매크로블럭의 시작 위치를 제공하는 매크로블록 비트 오프셋.
● IS-RSP 매크로블럭의 공간 위치를 식별하는 매크로블록 어드레스 오프셋 또는 인덱스.
● IS-RSP 매크로블럭의 상부 또는 좌측에 8개의 4x4 블럭들을 위한 비-제로 계수들의 개수.
● IS-RSP 매크로블럭의 상부 및 좌측에 8개의 4x4 블럭들을 위한 인트라 예측 모드들(만약 IS-RSP가 인트라 16x16 모드에서 인코딩된 매크로블럭을 가리키면, 상기 정보는 생략될 수 있다.)
● IS-RSP 매크로블럭의 좌측에 매크로블록을 위한 양자화 파라미터(QP) 값.
상기 최종 3개 아이템들은 전술된 것과 같은 상황 적응형 파라미터들을 식별한다.
재동기화 포인트들로 사용될 인터-코딩된 매크로블럭들은 동일한 매크로블록 비트 오프셋 및 매크로블록 어드레스 오프셋 정보를 가질 수 있지만, 인접하는 매크로블럭들 또는 다른 상황 적응형 의존성들과 관련하여 서로 다른 정보를 가질 수 있다. 인터-코딩된 매크로블록들을 위한 상황 적응형 파라미터들은 하기의 정보를 포함한다:
● 인접하는 매크로블록 모드들(상부 또는 하부 매크로블럭들).
● 인접하는 4x4 블럭들에서 비-제로 계수들의 개수.
● 인접하는 4x4 블럭들을 위한 움직임 벡터들 및 기준 화상 인덱스.
일 예에서, IS-RSP 데이터는 "사용자_데이터_미등록된" 보충 개선 정보(SEI) 메세지들 내에서 전송될 수 있고, 따라서 H.264 비트스트림의 컴플라이언스(compliance)를 유지한다. 상기 예가 H.264 표준에 특정되지만, IS-RSP의 기본 원칙들은 MPEG-x 및 H.26x와 같은 다른 하이브리드 비디오 코딩 표준들에 용이하게 적용될 수 있다. 이는 모든 상기 표준들의 구문들이 몇몇 방식 또는 다른 방식으로 H.264의 SEI 메세지 또는 MPEG-2의 사용자_데이터와 같은 대역 내 애플리케이션/사용자 특정 개인 데이터를 전달하기 위한 공급들을 제공하기 때문에 사실이다. IS-RSP 데이터는 코딩 효율을 개선하기 위해 압축 코딩 기술들을 사용하여 코딩될 수 있다. 예를 들어, 만약 IS-RSP들이 프레임 내에서 서로 공간적으로 인접하여 배치되면, IS-RSP 데이터는 코딩 효율을 개선하기 위해 공간 예측 기술들을 사용하여 코딩될 수 있다.
인트라-슬라이스 재동기화 포인트, 또는 IS-RSP는 슬라이스들과 다른 비디오 섹션들로 확장될 수 있다. 슬라이스 또는 MPEG-x 표준들에 공지된 것과 같은 블럭들의 그룹은 H.264 또는 MPEG-x 비디오 시퀀스 계층에서 다수의 분할될 섹션들 중 하나이다. H.264 계층은 하나 또는 그 이상의 화상들(또는 프레임들)로 구성된 시퀀스들이며, 상기 화상들은 하나 또는 그 이상의 슬라이스들로 구성되고, 상기 슬라이스들은 하나 또는 그 이상의 매크로블럭들로 구성된다. 매크로블럭들은 다양한 크기의 서브-매크로블럭들로 추가 분할될 수 있다. 재동기화 포인트들은 인트라-시퀀스, 인트라-프레임 및 인트라-슬라이스와 같은 임의의 레벨의 분할된 비디오에서 재동기화를 가능하게 하는 정보를 포함할 수 있다. 예를 들어, 만약 슬라이스 헤더 정보가 훼손되면, 훼손된 슬라이스에서 재동기화를 가능하게 하는 RSP는 상기 슬라이스 정보를 필요로 할 것이며, RSP는 실질적으로 인트라-프레임 RSP가 될 것이다.
IS-RSP들은 엄청난 양의 오버헤드 데이터를 포함하기 때문에 모든 매크로블럭에 대하여 전송될 필요는 없다. 인코더 디바이스는 IS-RSP들을 위치시킬 장소를 지능적으로 선택하기 위해 하기에 설명된 것과 같은 알고리즘을 사용할 수 있다. 하기에 설명된 알고리즘은 에러 복원을 개선하면서 오버헤드를 최소로 유지하기 위한 방법의 일 예이다.
재동기화 포인트는 인코딩 프로세스에 의해 발생될 수 있고, (설명될 트레이드-오프에 기초하여 가능하면 빈번하게) 채널 장애들에 대처하기 위해 디코딩 프로세스에서 사용가능하게 될 수도 있다. 또한 재동기화 포인트들은 비트스트림에서 고유하게 식별할 수 있다. 또한, 그들의 구조는 잡음으로 인한 대리 실행(emulation) 뿐만 아니라 그들의 신뢰성있는 검출(통계학상 관점에서)을 불가능하게 하는 정도로 잡음에 의한 변경에 대하여 적절한 면역성 레벨을 제공한다. 재동기화 포인트들은 IS-RSP 이전의 기준 매크로블럭들로부터 향후 공간 및/또는 시간 예측들을 제한하는 적절한 디폴트 값들로 모든 예측자들을 초기화함으로써 예측 코딩 의존성들의 전파를 차단하도록 제공될 수 있다.
인트라-슬라이스 재동기화 포인트들의 식별을 위한 인코더 프로세스의 포괄적이며 적절한 설계는 (1) 채널 모델, (2) 애플리케이션용 대역폭 및 품질(왜곡) 제약들 및 (3) 프레임 컨텐트를 고려할 수 있다.
컨텐트 의존성은 애플리케이션에 따라 바람직할 수 있다. 하나의 가능한 애플리케이션에서, 특정 슬라이스를 위한 인트라-슬라이스 재동기화 포인트들의 부재는 디코더와 인코더 모두에게 공지된 적절한 (공간적 또는 시간적) 은닉(concealment) 알고리즘이 상기 슬라이스에서 에러 및 후속하는 데이터 손실의 경우에 매우 만족스럽게 수행할 수 있는 디코더에 암시하기 위해 사용될 수 있다.
하기의 설명은 상황 적응성(content adaptability)의 형태를 포함하는 예시적인 IS-RSP 인코딩 방식이다. 상기 방식은 일반적인 프레임 네트워크 및 재동기화 포인트의 위치를 식별하기 위해 인코더에 의해 적응될 원칙들을 설명하기 위해 제공될 수 있다.
도 3은 IS-RSP들을 인코딩하기 위한 예시적인 프로세스의 일 예를 도시한다. 프로세스(300)는 다수의 후보 위치들 이외의 최적의, 또는 거의 최적의 IS-RSP 위치를 식별하기 위한 반복 루프를 포함한다. 상기 프로세스는 IS-RSP의 위치가 가변으로 또는 적응적으로 선택되게 한다. 상기 가변성 또는 적응성은 연속하는 재동기화 포인트들이 예를 들면 재동기화 포인트가 매 100개 매크로블럭들마다 존재하는 고정된 거리 간격으로 위치되는 방법에서 장점을 제공한다. 도 1의 프로세서(135)와 함께 IS-RSP 위치측정 구성요소(125)와 같은 인코딩 수단들은 프로세스(300)를 수행할 수 있다. 인코더(또는 선택기)는 단계(305)에서 IS-RSP에 대한 후보 위치들을 선택한다. IS-RSP들을 위한 후보 위치를 선택하는 방법들의 세부 설명들이 하기에서 논의된다. 레이트 왜곡 비용과 같은 측정치는 예를 들어, 단계(310)에서 계산된다. 하기에서 논의되는 레이트 왜곡 비용처럼 단계(310)에서 사용된 측정치는 IS-RSP로 인해 부가된 비트들의 개수와 예측된 에러에 의해 발생된 잠재적인 왜곡 사이의 트레이드 오프를 측정한다. 후보 위치들에 대한 레이트 왜곡 비용들의 비교는 IS-RSP 위치를 선택하는데(315) 사용된다. 선택된 위치는(비용 계산(310)에 기초하여) 메모리 내에 저장된다. 결정 블럭(320)은 테스트될 더 많은 후보 위치들이 존재하는지를 검사하고, 더 많은 후보 위치들이 존재하는 경우에 단계들(305, 310, 315)을 반복하고, 더 이상 후보 위치들이 존재하지 않는 경우에 단계(325)에서 IS-RSP 정보를 인코딩함으로써 프로세스(300)를 종료한다. 프로세스(300)의 하나 또는 그 이상의 엘리먼트들은 생략되고, 재배열되고, 및/또는 결합될 수 있다.
도 4는 에러 전파가 IS-RSP들을 사용함으로써 제어되는 비디오 프레임을 도시한다. 프레임(400)은 단일 슬라이스 및 6개 로우들(420a-420f)로 구성된 인트라-코딩 프레임을 나타내며, 상기 로우들(420a-420f)은 매크로블럭들(비도시)로 구성된다. 도 3에 도시된 것과 같은 인코딩 프로세스는 프레임(400) 내에 다수의 IS-RSP들을 위치시킨다. 전술되고 도 2에 도시된 것과 같이, 각각의 인트라-코딩된 매크로블럭의 디코딩은 디코딩된 매크로블럭의 좌측 또는 상부에서 인접하는 매크로블럭들에 포함된 정보에 따라 결정된다. 만약 어떤 IS-RSP들(405)도 프레임(400)에 포함되지 않으면, 에러(410)는 에러를 경험한 이후에 디코딩된 전체 프레임을 통해 전파할 것이다. 디코더가 다음 슬라이스(다음 NALU 프리픽스 코드)에서 재동기화되도록 하기 때문에, 상기 디코더는 제 2 로우(420b)의 대부분 및 로우들(420c-420f) 모두에서 손실을 발생한다. IS-RSP들(405)을 도시되는 것과 같이 위치시킴으로써, 에러 전파는 IS-RSP(405b)의 좌측 및 하부에 위치된 영역들(415)로 제한된다. 로우(420b)에서 재동기화 포인트 IS-RSP(405b) 이후에, 로우의 나머지가 디코딩될 수 있다. 로우(420c)에서, 훼손된 매크로블럭들 밑의 매크로블럭들은 상부의 인접하는 매크로블럭들에 대한 그들의 의존성으로 인해 다음 재동기화 포인트 IS-RSP(405c) 까지 재구성될 수 없다. 로우(420c) 내의 IS-RSP(405c)가 로우(420b) 내의 IS-RSP(405b)의 좌측에 위치되기 때문에, 로우(420c) 내의 에러(415)는 이전에 포함된다. 이는 슬라이스 재동기화 NALU에 의해 제공되는 것보다 훨씬 더 바람직한 왜곡 조건이다.
도 5는 최적의 후보 IS-RSP 위치들을 식별하기 위한 IS-RSP 인코딩 방법의 일 예이다. 프레임(500)은 로우들(505)로 구성되고, 상기 각각의 로우(505)는 슬라이스를 포함한다. 상기 예에서, 인코더는 슬라이스마다 2개의 IS-RSP들을 제공하는데, 각각은 매크로블럭들의 좁은 영역 내에 있다. 제 1 영역은 3개의 매크로블럭 위치들(510, 515, 520)을 포함하며, 제 2 위치는 3개의 매크로블럭 위치들(525, 530, 535)을 포함한다. 도시된 것과 같이, 슬라이스들의 중심 부분들에 IS-RSP들을 위치시킴으로써, 에러 전파가 감소할 수 있다.
하기에 제공되는 레이트 왜곡(R-D) 최적화 문제는 하기의 명칭, 수량 및 표기를 사용할 수 있다. R-D 비용 함수의 공통의(합성된) 형태는 IS-RSP들의 양호한 위치들의 탐색시 수량이 최소화되는 것으로 다음과 같이 제공된다:
R+λD [1]
R 및 D는 각각 특정 코딩 모드를 선택하는 것과 연관된 레이트(IS-RSP를 인코딩하는데 요구되는 비트들의 개수) 및 왜곡(재구성 에러)을 표시하며, λ는 특정 R-D 최적화 세팅에서 취해질 레이트와 왜곡 사이의 트레이드-오프를 설명하는 라그란지(Lagrange) 곱셈기이다. 따라서, 비용 함수는 재동기화 포인트를 인코딩하는데 발생하는 추가 비용 대 감소된 왜곡의 절약의 트레이드 오프를 평가한다.
하이브리드 비디오 인코더에서 수행되는 표준 R-D 최적화는 매크로블록 코딩 모드를 결정하는데 사용되는 하나의 방식이다. 즉, 일반적으로, 다수의 파라미터들을 갖는 벡터 양은 재동기화 포인트에 의해 부가되는 어떠한 제한도 없는 것으로 가정한다. 위치(i)(여기서,
Figure 112009059906934-pct00001
Figure 112009059906934-pct00002
, 또는
Figure 112009059906934-pct00003
의 바로 우측 매크로블록에 대한 인코더의 표준 R-D 최적화 공식에 대한 해법은 각각 레이트 및 왜곡으로서
Figure 112009059906934-pct00004
Figure 112009059906934-pct00005
를 산출한다. 따라서, 어떠한 재동기화 포인트 삽입 및 데이터 손실이 없음을 가정할 때, 총 비용은 다음과 같이 주어진다:
Figure 112007072773816-pct00006
신뢰성이 떨어지는 채널에 있어서, 공식 2(데이터 손실이 없음을 가정함)는 불충분하고, 수정되어야 한다. 임의의 충분한 공식은 랜덤 채널 행동을 고려하여야 하고, 총 비용은 상술한 공식[2]에서 계산된 결정론적인 양이 아니라, 기대 양(확률 평균)이 된다.
보다 현실적인 손실-고려 분석은 에러로 인한 기대 비용을 관련시키고, 표준 R-D 최적화 문제에 대한 해법을 선택한다(즉, 어떠한 재동기 포인트도 위치(i)에 삽입되지 않지만, 손실들이 가능하다). 슬라이스가 에러가 되는 확률이 결정되고,
Figure 112009059906934-pct00007
로 표시된다. 또한, 슬라이스가 에러인 경우, 훼손(corruption)이 단일 포인트에서 발생하였고, 수개 비트에 대해 발생하였다고 가정된다. 이러한 2개의 가정들은 적절한 (데이터/심벌) 인터리빙 기술들을 사용함으로써 매우 정확하게 될 수 있고, 특히 디지털 무선 통신의 경우 특히 그러하다. 간략화의 최종 단계(piece)로서, 슬라이스가 에러이고, 그 슬라이스 내의 정확한 에러 위치가 매크로 유닛들에 대해 비균일하게 분포된다고 가정된다. 보다 정확한 모델은 그 슬라이스의 각 매크로블록의 코딩된 표현들 사이즈(비트들 수)를 고려할 수 있었다. 이러한 가정들 하에서, 어떠한 재동기 포인트 삽입 없는 채널-인지(aware) 기대 총 비용은 다음과 같이 수정될 수 있다:
Figure 112007072773816-pct00008
여기서, 공식 [3]에서 새로이 도입된 파라미터들은 도 6에 제시된다. 도 6은 최적 후보 IS-RSP 위치들을 식별하기 위해 레이트 왜곡 분석에서 사용하기 위한 관련 왜곡들 및 에러 확률들의 예를 보여준다. 조건부 확률
Figure 112009059906934-pct00009
는 슬라이스에서 에러가 존재하는 경우(여기서
Figure 112009059906934-pct00010
는 에러를 갖는 확률임) 위치
Figure 112009059906934-pct00011
에 앞서 에러를 갖는 확률이다.
Figure 112009059906934-pct00012
(620)는 에러(615)로 인해 삽입될 후보 IS-RSP에 앞서 손실된 슬라이스 데이터와 관련된 왜곡이다.
Figure 112009059906934-pct00013
는 삽입될 후보 IS-RSP 후에 손실된 슬라이스 데이터와 관련된 왜곡이다.
위치
Figure 112009059906934-pct00014
에 대해 고려되는 후보 재동기화 포인트에 뒤이어 슬라이스가 훼손되는 확률은 이러한 후보 재동기화 포인트의 삽입을 선호하지 않는데, 왜냐하면, 이는 도움이 되지 않기 때문이다. 따라서, 불공정한 바이어스를 방지하기 위해서, 위치
Figure 112009059906934-pct00015
의 우측에서 발생하는 가능한 에러들로 기인하는 슬라이스 데이터 손실에 기인한 공식[3]에서의 왜곡 기여분은 존재하는 않는다.
위치
Figure 112007072773816-pct00016
에서 인트라-슬라이스 재동기화 포인트의 존재는 에러 위 치(610) 및 위치
Figure 112007072773816-pct00017
사이에서 발생하는 슬라이스 데이터 손실을 피하지 못한다. 따라서, 후보 재동기화 포인트에 앞선 에러의 경우, 슬라이스 데이터의 이러한 세그먼트의 손실로부터 기인할 수 있는 왜곡
Figure 112007072773816-pct00018
은 확실하다. 따라서,
Figure 112007072773816-pct00019
Figure 112007072773816-pct00020
에서 재동기화 포인트 삽입 또는 비-삽입의 선택들(alternatives)을 평가하는데 사용되는 기대 총 비용 함수에 포함된다.
양 (quantity)
Figure 112007072773816-pct00021
는 디코더에 가용한 적절한 공간 또는 시간 소거 알고리즘의 영향을 감소시키는 왜곡을 고려한다. 아래에서 설명될, '비은닉' 및 '완전한 은닉'의 2가지 극단적인 경우들을 고려하는 것이 흥미롭고 유익하다.
바람직하게는, 양
Figure 112007072773816-pct00022
는 또한 그 미래 사용에 대한 선험적인 정보가 존재하는 경우, 동일한 슬라이스에서 뒤이은 IS-RSP의 영향을 감소시키는 왜곡을 반영한다.
다음 단계는 (일 예에서 레이트 왜곡 계산기 컴포넌트를 사용하여) 위치
Figure 112009059906934-pct00023
에서 IS-RSP 실제 삽입과 관련된 예상 '채널-인지' R-D 비용을 계산하는 것이다. 재동기화 포인트 직후(즉, 재동기화 포인트 우측) 매크로블록을 처리하는 동안, 인코더는 상술한 재동기화 실현을 지원하는 코딩 제한들을 준수하여야 한다(예를 들면, 모든 예측기들을 적절한 디폴트 값들로 초기화함). 이러한 제한들 하에서, 인코더는 위에서 논의된 R-D 최적화 문제와 매우 유사하게, 다음 형태의 R-D 최적화 문제를 공식화 및 해결하였다고 가정된다:
Figure 112007072773816-pct00024
공식[4]에서,
Figure 112009059906934-pct00025
Figure 112009059906934-pct00026
는 각각 재동기화 포인트 매크로블록에 대해 선택된 제한된 코딩 모드와 관련된 레이트 및 왜곡(재구성 에러)이고,
Figure 112009059906934-pct00027
는 비트 스트림에 포함될 요구되는 오버헤드 정보와 관련되는 레이트이다(예를 들면, SEI 메시지에 포함되는 IS-RSP 정보). 상술한 바와 같이, 공식[4]에서 R-D 비용 표현은 비-채널-인지이고, 채널 인지를 도입하기 위해서 다음과 같이 수정될 수 있다:
Figure 112007072773816-pct00028
디코딩이 위치
Figure 112007072773816-pct00029
에서 재시작될 수 있기 때문에, 왜곡
Figure 112007072773816-pct00030
는 제로로 설정될 수 있다. 위치 "i"에서 삽입된 재동기화 포인트를 갖는 것과 관련된, 결과적인 '채널-인지' 예상 R-D 비용은 다음과 같이 주어진다:
Figure 112007072773816-pct00031
따라서, IS-RSP를 위치시키기 위한 양호한 매크로블록 위치를 식별하는 전체 알고리즘은 IS-RSP가 없는 경우에 대한 공식[3]에 의해 주어진 R-D 비용들과(하기 공식[7] 참조), IS-RSP를 포함하는 경우에 대한 공식[6]에 의해 주어지는 R-D 비용들(하기 공식[8] 참조)을 비교한다. 인코더는 다음 2개의 양들을 계산할 수 있다:
Figure 112007072773816-pct00032
공식[7] 및 [8]은 도5의
Figure 112007072773816-pct00033
또는
Figure 112007072773816-pct00034
를 포함하여, IS-RSP 위치설정을 위해 모든 후보 위치들에 대해 계산된다. 적어도 이들 후보 위치들 중 적어도 하나에서, 부등식
Figure 112007072773816-pct00035
이 만족되면, 인코더는 IS-RSP 삽입을 결정한다. 부등식
Figure 112007072773816-pct00036
가 2개 이상의 후보 위치들에서 만족되면, 인코더는 선택을 하여야 하며(도3의 단계(315)에서 제시됨), 이는
Figure 112007072773816-pct00037
의 가장 작은 값을 초래하는 위치를 선호할 수 있다. 이는 컨텐츠 적응성 레벨을 인에이블하는데, 왜냐하면, 재동기화 포인트가 적절한 이미지 특징들로 정렬되는 경우, 재동기화 포인트들과 관련된 인코딩 제한들은 훨씬 덜 중요할 수 있기 때문이며, 예를 들면 좌측 이웃들로부터 수직 에지를 걸쳐 수평 예측이 이미 만족스러운 성능을 제공하지 못하면, 이는 바람직하지 않게 된다. 이러한 경우들에서,
Figure 112007072773816-pct00038
는 각각 그 값에서
Figure 112007072773816-pct00040
Figure 112007072773816-pct00041
와 근접하여, 완전한 유연성(flexibility)으로 인코딩 R-D 성능 장점을 감소시키고, 왜곡 성분
Figure 112007072773816-pct00042
으로 인한
Figure 112007072773816-pct00043
Figure 112007072773816-pct00044
사이의 차이를 넓히며, 따라서 IS-RSP 삽입 가능성을 증가시킨다.
왜곡에 대한 상당한 관련성을 반영하는 매칭 인코더 설계 및 애플리케이션을 고려하면(즉,
Figure 112009059906934-pct00045
값이 0으로부터 멀어짐을 가정), 흥미로운 상황이 발생한다. 또한, 채널에 대한
Figure 112009059906934-pct00046
가 미미하지 않은 것으로 가정된다. 디코더에서 '비 은닉'의 극단적인 경우에, 총 신호 손실을 나타내는 왜곡 성분
Figure 112009059906934-pct00047
는 매우 크고,
Figure 112009059906934-pct00048
를 중요한 항으로 만들고,
Figure 112009059906934-pct00049
(공식 [8]에서 제시됨)보다 큰
Figure 112009059906934-pct00050
(공식 [7]에서 제시됨)를 초래하여, 재동기화 포인트 삽입을 제안하게 된다. 다른 극단적인 상황에서, '완벽한 은닉'(이는 성공적인 은닉 알고리즘 및 적절한 이미지 컨텐츠에 의해 잘 근사화될 수 있음)을 가정하면, 슬라이스 데이터 손실들로부터 비롯되는 모든 왜곡 성분들
Figure 112009059906934-pct00051
은 다음 비용들을 남기고 사라진다(각각 공식 [7] 및 [8]로부터):
Figure 112007072773816-pct00052
재동기화 포인트에 의해 부가되는 제한들 하에서 실행되는 인코딩의 부-최적 성능뿐만 아니라, IS_RSP를 식별하기 위해서 오버헤드 정보에 대해 허용될 필요가 있는 추가적인 레이트
Figure 112007072773816-pct00053
Figure 112007072773816-pct00054
를 야기할 수 있고, 이는 재동기화 포인트의 사용 회피를 의미한다. 이러한 2개의 극단적인 상황들 사이의 다른 경우들에서, 공식 [7] 및 [8]은 인트라-슬라이스 재동기화 포인트들을 위치 설정하기 위해 사용할, 간단하지만, 유용한 프레임워크를 제공한다.
도 7은 IS-RSP를 이용하는 디코더 처리의 일 예를 보여주는 도이다. 프로세서(700)는 도 1의 디코더 장치(110)와 같은 디코더 수단에 의해 수행될 수 있다. 디코더 장치는 먼저 상술한 예에서 논의된 방식으로 IS-RSP들로 인코딩되었던, 인코딩된 비디오 비트 스트림을 단계(705)에서 수신한다. 도 1의 통신장치 구성요소들과 같은 수신 수단은 단계(705)를 수행할 수 있다. 디코더 장치는 비트스트림을 인코딩하기 위해서 사용된 H.26x 및 MPEG-x와 같은 표준들에서 규정된 방법들을 사용하여 단계(710)에서 수신된 비디오 비트스트림을 디코딩한다. 도 1의 역변환/역 양자화 성분(155)과 같은 디코딩 수단은 단계(710)를 수행할 수 있다. H.26x 및 MPEG-x 표준들을 표준 순응 인코더 및 디코더들에 의해 준수되어야만 하는 의미 및 구문 가이드라인들을 설명한다. 비트스트림이 손상되었는지 여부를 인지하기 위해서 디코더는 디코딩된 변수들의 값을 단계(715)에서 의미 및 구문 룰들에서 선택된 값들 범위와 비교한다. 도 1의 엔트로피 디코딩 구성 요소(160) 및 에러 복원 성분(165)과 같은 비교 수단은 단계(715)의 의미 및 구문 비교 검사들을 수행할 수 있다. 의미 비교 검사는 다음을 포함하지만, 이에 제한되지는 않는다:
●NAL 유닛 헤더 바이트 구문 구성 요소.
●SPS(시퀀스 파라미터 세트) 구문 구성 요소.
●PPS(픽쳐 파라미터 세트) 구문 구성 요소.
●슬라이스 헤더 구문 구성 요소.
●슬라이스 레벨 액세스 유닛 기술자.
●디코딩된 매크로블록의 총 수.
●매크로블록 레벨 구문 구성 요소.
●(상황 의존 방식의) 이용성 플래그.
●연속적인 디코딩을 가능하게 하는 비트스트림 버퍼의 불충분한 데이터.
●외부에서 제공된 기준 프레임 버퍼(크기 카운트) 대 현재 즉, 활성 SPS 함축성.
구문 비교 체크는 CAVLC 엔트로피 코드워드의 디코딩과 관련한 디코딩 실패를 포함한다. 만일 소정의 구문 또는 구문 룰이 위반되거나 에러 비트가 소정의 다른 방식으로 검출되면, 단계(720)는 이러한 실패를 검출하고 재동기화를 개시한다. 만일 어떤 룰도 단계(702)에서 위반되지 않으면, 단계(725)는 디코딩할 추가 데이터가 있는지를 체크한다. 도 1의 에러 복원 구성요소(165)와 같은 디코딩 수단은 단계(720) 및 단계(725)의 동작을 수행한다. 만일 더 많은 데이터가 존재하면, 단계(705 내지 725)(및 가능하게는 730)는 어떠한 데이터도 존재하지 않을 때까지 계속되며, 프로세스는 종료한다.
만일 에러 비트가 검출되면, 재동기화가 수행된다. 재동기화를 위해, 디코더는 단계(730)에서 비트스트림 다음에 훼손되지 않은 IS-RSP를 배치시키며, 단계(705 내지 730)를 반복하여 배치된 다음의 틀리지 않은 IS-RSP로부터 디코딩을 재시작한다. 도 1의 에러 복원 구성요소(165)와 같은 배치 수단은 단계(730)에서 배치 동작을 실행한다. 디코더는 단계(705)에서 비트스트림의 수신된 IS-RSP 정보를 수신했을 수도 있다. IS-RSP 정보는 일예에서, H.264의 SEI 메시지 또는 MPEG-2의 사용자_데이터 메시지와 같은 대역내 애플리케이션 메시지 또는 사용자 특정 개별 데이터 메시지에 포함될 수도 있다. 이러한 메시지는 전술한 바와 같이 비디오 프레임 내에서 IS-RSP 매크로블록의 위치와 관련된 정보는 물론, 비트스트림 내의 IS-RSP의 위치와 관련된 정보를 포함한다. 메시지는 또한 전술한 바와 같이, IS-RSP 한정된 매크로블록 위치에서 디코딩을 재시작(단계 710)하기 위해 디코더에 대해 필요한 정보를 포함한다. 프로세스(700)의 하나 이상의 요소는 생략, 재배치 및/또는 결합될 수도 있다.
도8은 IS-RSP를 이용하는 디코더 프로세스의 다른 예를 도시한다. 프로세스(800)는 도7의 프로세스(700)와 같은 유사한 단계를 포함하지만, IS-RSP는 도7에 도시된 바와 같이 비트스트림의 손상을 검출하고 이어 IS-RSP를 배치시키는 것과는 대조적으로, 앞서 검출되지 않은 손상된 비트스트림을 식별하는 방식으로 사용된다. 단계(805, 810 및 820)는 각각 단계(705, 710 및 725)와 유사하다. 비트스트림을 디코딩하는 동안, 디코더는 IS-RSP와 같이, IS-RSP 정보 메시지에서 식별된 포인트에 도달할 수도 있다. 디코더가 단계(815)에서 이러한 방식으로 IS-RSP를 위치시킬 때, 디코더는 현재 비트스트림의 상황을 IS-RSP 메시지에 포함된 상황 정보와 비교한다. 만일 상황이 일치하지 않으면, 의미 및 구문 룰에 의해 설정된 값의 범위의 비교 체크(미도시)가 비트스트림의 현재 데이터 및 IS-RSP에 포함된 데이터 모두에 대해 실행된다. 의미 및 구문 룰에 의해 허용된 값들의 범위로, 현재 비트스트림의 데이터 및 IS-RSP에 포함된 데이터의 값들을 비교함으로써, 디코더는 현재 비트스트림 및/또는 IS-RSP 데이터가 틀렸는지를 결정할 수 있다. 만일 비트스트림이 단계(830)에서 손상된 것으로 판별되면, 디코더는 자신의 현재 디코딩을 중지하고 방금 배치된 IS-RSP에서 디코딩을 재시작하고 단계(805)로 계속하여 진행한다. 비트스트림이 아닌 IS-RSP가 손상된 것으로 결정되면, 프로세스는 단계(805)에서 계속된다. 만일 비트스트림 및 IS-RSP가 훼손된 것으로 결정되면(미도시), 다음 IS-RSP가 배치될 수 있으며, 프로세스는 단계(805)에서 계속될 수도 있다. 더욱이, 만일 현재 상황과 IS-RSP에 포함된 상황 사이의 상황 비교가 일치하면, 어떠한 손상도 식별되지 않고 프로세스는 단계(805)에서 계속된다. 도1의 엔트로피 디코딩 구성요소(160) 및 에러 복원 구성요소(165)와 같은 비교 수단은 단계(825)에서 상황 및/또는 의미 및 구문 비교 체크를 실행할 수 있다. 프로세스(800)의 하나 이상의 요소는 생략, 재배치 및/또는 결합될 수 있다.
전술한 예는 IS-RSP를 위해 16×16 픽셀 매크로블록을 사용하였다. 기술 분야의 당업자가 이해하듯이, 하나의 매크로블록 크기는 또한 전술한 IS-RSP 방법에 대해 사용될 수 있다.
도 9는 비디오 코딩에 대한 방법(900)의 일례를 나타낸다. 방법(900)은 재동기화 포인트 정보의 인코딩 단계(910); - 여기서 재동기화 포인트 정보는 비디오 비트스트림의 섹션 내의 재동기화 포인트의 위치를 식별하는 정보, 및 재동기화 포인트를 따르는 비트스트림을 디코딩하기 위한 정보를 포함함 - ; 및 인코딩된 재동기화 포인트 정보를 전송하는 단계(920)를 포함한다. 도 10은 비디오 디코딩을 위한 장치(1000)의 예를 도시한다. 장치(1000)는 재동기화 포인트 정보를 인코딩하도록 구성된 인코딩 모듈(1010) - 여기서 재동기화 포인트 정보는 비디오 비트스트림의 섹션 내의 재동기화 포인트의 위치를 식별하는 정보, 및 재동기화 포인트를 따르는 비트스트림을 디코딩하기 위한 정보를 포함함 - ; 및 인코딩된 재동기화 포인트 정보를 전송하도록 구성된 전송 모듈(1020)을 포함한다.
도 11은 비디오 데이터를 디코딩하는 방법의 일례(1100)를 포함한다. 방법(1100)은 재동기화 포인트 정보를 포함하는 인코딩된 비트스트림을 수신하는 단계(1110) - 여기서 재동기화 포인트 정보는 재동기화 포인트의 위치를 식별하는 정보, 및 재동기화 포인트를 따르는 비트스트림을 디코딩하기 위한 정보를 포함함 - ; 및 수신된 비트스트림을 디코딩하는 단계(1120)를 포함한다. 도 12는 비디오를 디코딩하는 장치(1200)의 예를 도시한다. 장치(1200)는 재동기화 포인트 정보를 포함하는 인코딩된 비트스트림을 수신하도록 구성된 수신기 모듈(1210) - 여기서 재동기화 포인트 정보는 재동기화 포인트의 위치를 식별하는 정보, 및 재동기화 포인트를 따르는 비트스트림을 디코딩하기 위한 정보를 포함함 - ; 및 수신된 비트스트림을 디코딩하도록 구성된 디코딩 모듈을 포함한다.
도 13은 멀티미디어 데이터를 코딩하는 방법(1300)의 예를 도시한다. 방법(1300)은 재동기화 포인트 데이터를 인코딩하는 단계(1310); 및 재동기화 포인트 데이터를 멀티미디어 스트림의 슬라이스로 삽입하는 단계(1320)를 포함한다. 상기 방법은 슬라이스 내의 재동기화 포인트의 위치를 선택하는 하는 단계를 더 포함하며, 삽입 단계는 재동기화 포인트를 선택된 위치로 삽입하는 단계를 포함한다. 선택 단계는 다수의 후보 위치에 대한 레이트 왜곡치를 계산하는 단계; 및 비트율 왜곡치에 기초하여 적어도 하나의 후보 위치를 선택하는 단계를 포함한다. 도14는 멀티미디어 데이터의 코딩을 구현하기 위한 장치(1400)의 예를 도시한다. 장치(1400)는 재동기화 포인트 데이터를 인코딩하도록 구성된 인코딩 모듈(1410); 및 멀티미디어 스트림의 슬라이스로 재동기화 포인트를 삽입하도록 구성된 삽입 모듈(1420)을 포함한다.
도 15는 멀티미디어 스트림을 프로세싱하는 방법(1500)의 예를 도시한다. 방법(1500)은 멀티미디어 스트림의 슬라이스에서 재동기화 포인트 데이터를 수신하는 단계(1510); 및 상기 재동기화 포인트 데이터에 기초하여 멀티미디어 데이터를 재구성하는 단계(1520)를 포함한다. 도 16은 멀티미디어 스트림을 프로세싱하는 장치(1600)의 예를 도시한다. 장치(1600)는 멀티미디어 스트림에서 재동기화 포인트 데이터를 수신하도록 구성된 수신 모듈; 및 상기 재동기화 포인트 데이터에 기초하여 멀티미디어 데이터를 재구성하도록 구성된 재구성 모듈을 포함한다.
전술한 예는 예로써 비디오만을 사용하였다. 전술한 상기 방법 및 장치는 오디오, 그래픽, 이미지, 텍스트 및 이들의 조합을 포함하는 스트리밍 데이터의 다른 형태에 대해 사용될 수도 있다.
당업자는 정보 및 신호들이 임의의 다수의 상이한 기술들 및 테크닉들을 사용하여 표현될 수 있음을 인식할 것이다. 예를 들어, 상기 설명을 통해 참조될 수 있는 데이터, 지시들, 명령들, 정보, 신호들, 비트들, 심볼들 및 칩들은 전압들, 전류들, 전자기파들, 전자기장들, 또는 전자기 입자들, 광학계들 또는 광학 입자들, 또는 그들의 임의의 조합에 의해 표시될 수 있다.
당업자는 또한 본 명세서에 개시된 실시예들과 관련하여 설명된 논리적인 블럭들, 모듈들, 회로들, 및 알고리즘 단계들이 전자하드웨어, 컴퓨터 소프트웨어, 또는 그들의 조합으로서 실행될 수 있음을 인식할 것이다. 상기 하드웨어 및 소프 트웨어의 상호교환가능성을 명백히 설명하기 위해, 다양한 요소들, 블럭들, 모듈들, 회로들, 및 단계들이 그들의 기능성에 관련하여 전술되었다. 상기 기능성이 하드웨어로 실행되는지 또는 소프트웨어로 실행되는지의 여부는 전체 시스템에 부과된 특정 애플리케이션 및 설계 제약에 따라 결정한다. 당업자는 각각의 특정 애플리케이션을 위해 다양한 방식들로 설명된 기능성을 실행할 수 있지만, 상기 실행 결정들은 본 발명의 영역으로부터 벗어나는 것으로 해석될 수 없다.
본 명세서에서 개시된 실시예와 관련하여 다양하게 설명되는 논리 블럭들, 모듈들, 및 회로들은 범용 프로세서, 디지털 신호 처리기(DSP), 응용 집적 회로(ASIC), 현장 프로그램가능한 게이트 어레이(FPGA), 또는 다른 프로그램가능한 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 요소들, 또는 본 명세서에 개시된 기능을 수행하도록 설계된 그들의 임의의 조합을 사용하여 실행되거나 수행될 수 있다. 범용 프로세서는 마이크로프로세서가 될 수 있지만, 선택적으로 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 기계가 될 수 있다. 프로세서는 또한 예를 들어, DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서, DSP 코어와 결합된 하나 또는 그이상의 마이크로프로세서, 또는 임의의 다른 구성과 같은 컴퓨팅 장치들의 조합으로서 실행될 수 있다.
본 명세서에 개시된 실시예와 관련하여 설명되는 방법 또는 알고리즘의 단계는 하드웨어에서, 프로세서에 의해 실행되는 소프트웨어 모듈에서, 또는 그들의 조합에서 즉시 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드디스크, 제거가능한 디스크, CD-ROM 또는 임의의 다른 저장 매체 형태로 당업자에게 공지된다. 예시적인 저장 매체는 저장매체로부터 정보를 판독하고 정보를 기록할 수 있는 프로세서에 접속된다. 선택적으로, 저장 매체는 프로세서의 필수 구성요소이다. 프로세서 및 저장 매체는 ASIC 내에 상주할 수 있다. ASIC은 사용자 터미널 내에 상주할 수 있다. 선택적으로, 프로세서 및 저장 매체는 사용자 디바이스내에서 이산요소들로서 상주할 수 있다.
개시된 실시예의 전술된 설명은 당업자가 본 발명을 구현하고 이용하기에 용이하도록 하기 위하여 제공되었다. 이들 실시예에 대한 여러 가지 변형은 당업자에게 자명하며, 여기서 한정된 포괄적인 원리는 본 발명의 사용 없이도 다른 실시예에 적용될 수 있다. 따라서, 본 발명은 설명된 실시예에 한정되는 것이 아니며, 여기에 개시된 원리 및 신규한 특징에 나타낸 가장 넓은 범위에 따른다.

Claims (106)

  1. 비디오 코딩 방법으로서,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하는 단계;
    상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 재동기화 포인트의 위치로 선택하는 단계;
    비디오 비트스트림의 섹션 내의 상기 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 인코딩하는 단계; 및
    상기 인코딩된 재동기화 포인트 정보를 전송하는 단계를 포함하는,
    비디오 인코딩 방법.
  2. 삭제
  3. 제 1항에 있어서,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하는 단계를 더 포함하며, 상기 섹션은 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버인, 비디오 인코딩 방법.
  4. 제 1항에 있어서,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하는 단계를 더 포함하며, 상기 재동기화 포인트는 매크로블럭의 시작부인, 비디오 인코딩 방법.
  5. 제 1항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 인접하는 비디오 섹션과 연관된 정보를 포함하는, 비디오 인코딩 방법.
  6. 제 1항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 비디오 인코딩 방법.
  7. 제 1항에 있어서,
    데이터 메세지 내에서 상기 재동기화 포인트 정보를 인코딩하는 단계를 더 포함하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인(user specific private) 데이터 메세지, 보충 부가 정보(supplemental enhancement information) 메세지, 및 MPEG 사용자_데이터 메세지 중 하나인, 비디오 인코딩 방법.
  8. 제 1항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 비트 스트림이 상기 재동기화 포인트의 뒤이은 상황과 관련된 정보를 포함하는, 비디오 인코딩 방법.
  9. 비디오 코딩 장치로서,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하기 위한 수단;
    상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 재동기화 포인트의 위치로 선택하기 위한 수단;
    비디오 비트스트림의 섹션 내의 상기 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 인코딩하기 위한 수단; 및
    상기 인코딩된 재동기화 포인트 정보를 전송하기 위한 수단을 포함하는,
    비디오 코딩 장치.
  10. 삭제
  11. 제 9항에 있어서,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하기 위한 수단을 더 포함하며, 상기 섹션은 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버인, 비디오 코딩 장치.
  12. 제 9항에 있어서,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하기 위한 수단을 더 포함하며, 상기 재동기화 포인트는 매크로블럭의 시작부인, 비디오 코딩 장치.
  13. 삭제
  14. 제 9항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 비디오 코딩 장치.
  15. 제 9항에 있어서,
    데이터 메세지 내에서 상기 재동기화 포인트 정보를 인코딩하기 위한 수단을 더 포함하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지 중 하나인, 비디오 코딩 장치.
  16. 제 9항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 이후의 비트스트림이 존재하는 상황과 관련된 정보를 포함하는, 비디오 코딩 장치.
  17. 비디오 코딩을 위한 프로세서로서,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하는 기능;
    상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 재동기화 포인트의 위치로 선택하는 기능;
    비디오 비트스트림의 섹션 내의 상기 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 인코딩하는 기능; 및
    상기 인코딩된 재동기화 포인트 정보를 전송하는 기능을 제어하도록 구성되는,
    프로세서.
  18. 삭제
  19. 제 17항에 있어서,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하는 기능을 제어하도록 추가로 구성되며, 상기 섹션은 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버인, 프로세서.
  20. 제 17항에 있어서,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하는 기능을 제어하도록 추가로 구성되며, 상기 재동기화 포인트는 매크로블럭의 시작부인, 프로세서.
  21. 삭제
  22. 제 17항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 프로세서.
  23. 제 17항에 있어서,
    데이터 메세지 내에서 상기 재동기화 포인트 정보를 인코딩하는 기능을 제어하도록 추가로 구성되며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지 중 하나인, 프로세서.
  24. 제 17항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 이후의 비트스트림이 존재하는 상황과 관련된 정보를 포함하는, 프로세서.
  25. 비디오 코딩 장치로서,
    선택기;
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하기 위한 계산기;
    비디오 비트스트림의 섹션 내의 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 인코딩하기 위한 인코더; 및
    상기 인코딩된 재동기화 포인트 정보를 전송하도록 구성된 통신 장치를 포함하며,
    상기 선택기는 상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 상기 재동기화 포인트의 위치로 선택하는,
    비디오 코딩 장치.
  26. 제 25항에 있어서,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하기 위한 선택기를 더 포함하며, 상기 섹션은 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버인, 비디오 코딩 장치.
  27. 제 25항에 있어서,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하기 위한 선택기를 더 포함하며, 상기 재동기화 포인트는 매크로블럭의 시작부인, 비디오 코딩 장치.
  28. 삭제
  29. 제 25항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 비디오 코딩 장치.
  30. 제 25항에 있어서,
    상기 인코더는 데이터 메세지 내에서 상기 재동기화 포인트 정보를 인코딩하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지로 구성된 그룹의 멤버인, 비디오 코딩 장치.
  31. 제 25항에 있어서,
    상기 인코더는 가변 길이 코딩을 사용하여 재동기화 포인트 정보를 인코딩하는, 비디오 코딩 장치.
  32. 삭제
  33. 비디오 코딩 방법을 실행하는 컴퓨터로 읽을 수 있는 매체로서, 상기 방법은,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하는 단계;
    상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 재동기화 포인트의 위치로 선택하는 단계;
    비디오 비트스트림의 섹션 내의 재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 인코딩하는 단계; 및
    상기 인코딩된 재동기화 포인트 정보를 전송하는 단계를 포함하는,
    컴퓨터로 읽을 수 있는 매체.
  34. 삭제
  35. 제 33항에 있어서, 상기 방법은,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하는 단계를 더 포함하며, 상기 섹션은 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버인, 컴퓨터로 읽을 수 있는 매체.
  36. 제 33항에 있어서, 상기 방법은,
    상기 비디오 비트스트림의 섹션 내에서 상기 재동기화 포인트의 위치를 선택하는 단계를 더 포함하며, 상기 재동기화 포인트는 매크로블럭의 시작부인, 컴퓨터로 읽을 수 있는 매체.
  37. 삭제
  38. 제 33항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 컴퓨터로 읽을 수 있는 매체.
  39. 제 33항에 있어서, 상기 방법은,
    데이터 메세지 내에서 상기 재동기화 포인트 정보를 인코딩하는 단계를 더 포함하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지 중 하나인, 컴퓨터로 읽을 수 있는 매체.
  40. 제 33항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 이후의 비트스트림이 존재하는 상황과 관련된 정보를 포함하는, 컴퓨터로 읽을 수 있는 매체.
  41. 비디오 데이터를 디코딩하기 위한 방법으로서,
    재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 갖는 인코딩된 비트스트림을 수신하는 단계; 및
    상기 수신된 비트스트림을 디코딩하는 단계를 포함하며,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하고, 상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 상기 재동기화 포인트의 위치로 선택함으로써 재동기화 포인트들이 결정되는,
    디코딩 방법.
  42. 제 41항에 있어서,
    상기 재동기화 포인트 정보에 기초하여 상기 비트스트림 내에 상기 재동기화 포인트를 위치시키는 단계를 더 포함하는, 디코딩 방법.
  43. 제 41항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 이후의 비트 스트림이 인코딩되는 상황과 관련된 정보를 포함하는, 디코딩 방법.
  44. 제 43항에 있어서,
    상기 재동기화 포인트 정보 내에 포함된 상기 수신된 상황 정보와 상기 디코딩된 비트스트림의 현재 상황을 비교하는 단계; 및
    상기 비교가 상기 현재 상황과 상기 수신된 상황 정보가 동일하지 않음을 보여주는 경우에 상기 비트스트림의 디코딩을 중단하고 상기 재동기화 포인트에서 상기 비트스트림의 디코딩을 다시 시작하는 단계를 더 포함하는, 디코딩 방법.
  45. 제 41항에 있어서,
    상기 재동기화 포인트의 위치는 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버로부터 선택된 비디오의 섹션 내에 있는, 디코딩 방법.
  46. 제 41항에 있어서,
    상기 재동기화 포인트의 위치는 매크로블럭의 시작부인, 디코딩 방법.
  47. 삭제
  48. 제 41항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 디코딩 방법.
  49. 제 41항에 있어서, 상기 방법은,
    데이터 메세지 내에서 상기 재동기화 포인트 정보를 수신하는 단계를 더 포함하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지로 구성된 그룹의 멤버인, 디코딩 방법.
  50. 제 41항에 있어서, 상기 방법은,
    가변 길이 코드를 사용하여 인코딩된 상기 재동기화 포인트 정보를 수신하는 단계를 더 포함하는, 디코딩 방법.
  51. 제 41항에 있어서, 상기 방법은,
    비트스트림 내에서 에러를 검출하는 단계;
    상기 비트스트림의 디코딩을 중단하는 단계; 및
    상기 위치된 재동기화 포인트를 계속해서 디코딩하는 단계를 포함하는, 디코딩 방법.
  52. 비디오 디코딩 장치로서,
    재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 가지는 인코딩된 비트스트림을 수신하기 위한 수단; 및
    상기 수신된 비트스트림을 디코딩하기 위한 수단을 포함하며,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하고, 상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 상기 재동기화 포인트의 위치로 선택함으로써 재동기화 포인트들이 결정되는,
    비디오 디코딩 장치.
  53. 제 52항에 있어서,
    상기 재동기화 포인트 정보에 기초하여 상기 비트스트림 내에 상기 재동기화 포인트를 위치시키기 위한 수단을 더 포함하는, 비디오 디코딩 장치.
  54. 제 52항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 이후의 비트 스트림이 인코딩되는 상황과 관련된 정보를 포함하는, 비디오 디코딩 장치.
  55. 제 54항에 있어서,
    상기 재동기화 포인트 정보 내에 포함된 상기 수신된 상황 정보와 상기 디코딩된 비트스트림의 현재 상황을 비교하기 위한 수단; 및
    상기 비교가 상기 현재 상황과 상기 수신된 상황 정보가 동일하지 않음을 보여주는 경우에 상기 비트스트림의 디코딩을 중단하고, 상기 재동기화 포인트에서 상기 비트스트림의 디코딩을 다시 시작하기 위한 수단을 더 포함하는, 비디오 디코딩 장치.
  56. 제 52항에 있어서,
    상기 재동기화 포인트의 위치는 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버로부터 선택된 비디오의 섹션 내에 있는, 비디오 디코딩 장치.
  57. 제 52항에 있어서,
    상기 재동기화 포인트의 위치는 매크로블럭의 시작부인, 비디오 디코딩 장치.
  58. 삭제
  59. 제 52항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 비디오 디코딩 장치.
  60. 제 52항에 있어서,
    데이터 메세지 내에서 상기 재동기화 포인트 정보를 수신하기 위한 수단을 더 포함하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지로 구성된 그룹의 멤버인, 비디오 디코딩 장치.
  61. 제 52항에 있어서,
    가변 길이 코드를 사용하여 인코딩된 상기 재동기화 포인트 정보를 수신하기 위한 수단을 더 포함하는, 비디오 디코딩 장치.
  62. 제 52항에 있어서,
    비트스트림 내에서 에러를 검출하기 위한 수단;
    상기 비트스트림의 디코딩을 중단하기 위한 수단; 및
    상기 위치된 재동기화 포인트에서 계속해서 디코딩하기 위한 수단을 포함하는, 비디오 디코딩 장치.
  63. 비디오를 디코딩하기 위한 프로세서로서,
    재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 가지는 인코딩된 비트스트림을 수신하는 기능; 및
    상기 수신된 비트스트림을 디코딩하는 기능을 제어하도록 구성되며,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하고, 상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 상기 재동기화 포인트의 위치로 선택함으로써 재동기화 포인트들이 결정되는, 프로세서.
  64. 제 63항에 있어서,
    상기 프로세서는 상기 재동기화 포인트 정보에 기초하여 상기 비트스트림 내에 상기 재동기화 포인트를 위치시키는 기능을 제어하도록 추가로 구성되는, 프로세서.
  65. 제 63항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 이후의 비트 스트림이 인코딩되는 상황과 관련된 정보를 포함하는, 프로세서.
  66. 제 64항에 있어서, 상기 프로세서는,
    상기 재동기화 포인트 정보 내에 포함된 상기 수신된 상황 정보와 상기 디코딩된 비트스트림의 현재 상황을 비교하는 기능; 및
    상기 비교가 상기 현재 상황과 상기 수신된 상황 정보가 동일하지 않음을 보여주는 경우에 상기 비트스트림의 디코딩을 중단하고, 상기 재동기화 포인트에서 상기 비트스트림의 디코딩을 다시 시작하는 기능을 제어하도록 추가로 구성되는, 프로세서.
  67. 제 63항에 있어서,
    상기 재동기화 포인트의 위치는 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버로부터 선택된 비디오의 섹션 내에 있는, 프로세서.
  68. 제 63항에 있어서,
    상기 재동기화 포인트의 위치는 매크로블럭의 시작부인, 프로세서.
  69. 삭제
  70. 제 63항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 프로세서.
  71. 제 63항에 있어서, 상기 프로세서는,
    데이터 메세지 내에서 상기 재동기화 포인트 정보를 수신하는 기능을 제어하도록 추가로 구성되며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지로 구성된 그룹의 멤버인, 프로세서.
  72. 제 63항에 있어서, 상기 프로세서는,
    가변 길이 코드를 사용하여 인코딩된 상기 재동기화 포인트 정보를 수신하는 기능을 제어하도록 추가로 구성되는, 프로세서.
  73. 제 63항에 있어서, 상기 프로세서는,
    비트스트림 내에서 에러를 검출하는 기능;
    상기 비트스트림의 디코딩을 중단하는 기능; 및
    상기 위치된 재동기화 포인트에서 계속해서 디코딩하는 기능을 제어하도록 추가로 구성되는, 프로세서.
  74. 비디오를 디코딩하기 위한 장치로서,
    재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 가지는 인코딩된 비트스트림을 수신하기 위한 수신기; 및
    상기 수신된 비트스트림을 디코딩하기 위한 디코더를 포함하며,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하고, 상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 상기 재동기화 포인트의 위치로 선택함으로써 재동기화 포인트들이 결정되는,
    비디오 디코딩 장치.
  75. 제 74항에 있어서,
    상기 디코더는 상기 재동기화 포인트 정보에 기초하여 상기 비트스트림 내에 상기 재동기화 포인트를 위치시키도록 추가로 구성되는, 비디오 디코딩 장치.
  76. 제 74항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 이후의 비트 스트림이 인코딩되는 상황과 관련된 정보를 포함하는, 비디오 디코딩 장치.
  77. 제 76항에 있어서, 상기 디코더는,
    상기 재동기화 포인트 정보 내에 포함된 수신된 상황 정보와 상기 디코딩된 비트스트림의 현재 상황을 비교하고; 그리고
    상기 비교가 상기 현재 상황과 상기 수신된 상황 정보가 동일하지 않음을 보여주는 경우에 상기 비트스트림의 디코딩을 중단하고 상기 재동기화 포인트에서 상기 비트스트림의 디코딩을 다시 시작하도록 추가로 구성되는, 비디오 디코딩 장치.
  78. 제 74항에 있어서,
    상기 재동기화 포인트의 위치는 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버로부터 선택된 비디오의 섹션 내에 있는, 비디오 디코딩 장치.
  79. 제 74항에 있어서,
    상기 재동기화 포인트의 위치는 매크로블럭의 시작부인, 비디오 디코딩 장치.
  80. 삭제
  81. 제 74항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 비디오 디코딩 장치.
  82. 제 74항에 있어서,
    상기 수신기는 데이터 메세지 내에서 상기 재동기화 포인트 정보를 수신하도록 추가로 구성되며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지로 구성된 그룹의 멤버인, 비디오 디코딩 장치.
  83. 제 74항에 있어서, 상기 디코더는,
    비트스트림 내에서 에러를 검출하고,
    상기 비트스트림의 디코딩을 중단하고, 그리고
    상기 위치된 재동기화 포인트를 계속해서 디코딩하도록 추가로 구성되는, 비디오 디코딩 장치.
  84. 비디오를 디코딩하기 위한 방법을 실행하는 컴퓨터로 읽을 수 있는 매체로서, 상기 방법은,
    재동기화 포인트의 위치를 식별하는 정보 및 상기 재동기화 포인트 이후의 비트스트림을 디코딩하기 위한 정보를 포함하는 재동기화 포인트 정보를 가지는 인코딩된 비트스트림을 수신하는 단계; 및
    상기 수신된 비트스트림을 디코딩하는 단계를 포함하며,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하고, 상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 상기 재동기화 포인트의 위치로 선택함으로써 재동기화 포인트들이 결정되는,
    컴퓨터로 읽을 수 있는 매체.
  85. 제 84항에 있어서, 상기 방법은,
    상기 재동기화 포인트 정보에 기초하여 상기 비트스트림 내에 상기 재동기화 포인트를 위치시키는 단계를 더 포함하는, 컴퓨터로 읽을 수 있는 매체.
  86. 제 84항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 상기 재동기화 포인트 이후의 비트 스트림이 인코딩되는 상황과 관련된 정보를 포함하는, 컴퓨터로 읽을 수 있는 매체.
  87. 제 86항에 있어서, 상기 방법은,
    상기 재동기화 포인트 정보 내에 포함된 상기 수신된 상황 정보와 상기 디코딩된 비트스트림의 현재 상황을 비교하는 단계; 및
    상기 비교가 상기 현재 상황과 상기 수신된 상황 정보가 동일하지 않음을 보여주는 경우에 상기 비트스트림의 디코딩을 중단하고, 상기 재동기화 포인트에서 상기 비트스트림의 디코딩을 다시 시작하는 단계를 더 포함하는, 컴퓨터로 읽을 수 있는 매체.
  88. 제 84항에 있어서,
    상기 재동기화 포인트의 위치는 서브-매크로블럭, 매크로블럭, 슬라이스, 프레임 및 프레임들의 시퀀스로 구성된 그룹의 멤버로부터 선택된 비디오의 섹션 내에 있는, 컴퓨터로 읽을 수 있는 매체.
  89. 제 84항에 있어서,
    상기 재동기화 포인트의 위치는 매크로블럭의 시작부인, 컴퓨터로 읽을 수 있는 매체.
  90. 삭제
  91. 제 84항에 있어서,
    상기 비트스트림을 디코딩하기 위한 정보는 양자화 파라미터, 공간 예측 모드 식별자 및 비-제로 계수들의 개수로 구성된 그룹의 멤버를 포함하는, 컴퓨터로 읽을 수 있는 매체.
  92. 제 84항에 있어서, 상기 방법은,
    데이터 메세지 내에서 상기 재동기화 포인트 정보를 수신하는 단계를 더 포함하며, 상기 데이터 메세지는 대역 내 애플리케이션 메세지, 사용자 특정 개인 데이터 메세지, 보충 부가 정보 메세지, 및 MPEG 사용자_데이터 메세지로 구성된 그룹의 멤버인, 컴퓨터로 읽을 수 있는 매체.
  93. 제 84항에 있어서, 상기 방법은,
    가변 길이 코드를 사용하여 인코딩된 상기 재동기화 포인트 정보를 수신하는 단계를 더 포함하는, 컴퓨터로 읽을 수 있는 매체.
  94. 제 84항에 있어서, 상기 방법은,
    비트스트림 내에서 에러를 검출하는 단계;
    상기 비트스트림의 디코딩을 중단하는 단계; 및
    상기 위치된 재동기화 포인트를 계속해서 디코딩하는 단계를 포함하는, 컴퓨터로 읽을 수 있는 매체.
  95. 상기 슬라이스 내서의 재동기화 포인트의 위치를 선택하는 단계;
    재동기화 포인트 데이터를 인코딩하는 단계; 및
    상기 재동기화 포인트 데이터를 멀티미디어 스트림의 슬라이스 내로 삽입하는 단계를 포함하며,
    상기 삽입 단계는 상기 재동기화 포인트를 상기 선택된 위치에 삽입하는 단계를 포함하며,
    상기 선택 단계는 다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하는 단계, 및 상기 레이트 왜곡 비용에 기초하여 적어도 하나의 후보 위치를 선택하는 단계를 포함하는,
    멀티미디어 데이터를 코딩하기 위한 방법.
  96. 삭제
  97. 삭제
  98. 제 95항에 있어서,
    상기 재동기화 포인트는 상기 멀티미디어 데이터의 상황 정보를 포함하는, 멀티미디어 데이터를 코딩하기 위한 방법
  99. 멀티미디어 데이터를 코딩하기 위한 장치로서,
    슬라이스 내에서 재동기화 포인트의 위치를 선택하기 위한 수단;
    재동기화 포인트 데이터를 인코딩하기 위한 수단; 및
    상기 재동기화 포인트 데이터를 멀티미디어 스트림의 상기 슬라이스 내로 삽입하기 위한 수단을 포함하며,
    상기 삽입하기 위한 수단은 상기 재동기화 포인트를 상기 선택된 위치에 삽입하기 위한 수단을 포함하며,
    상기 선택하기 위한 수단은 다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하기 위한 수단, 및 상기 레이트 왜곡 비용에 기초하여 적어도 하나의 후보 위치를 선택하기 위한 수단을 포함하는,
    멀티미디어 데이터를 코딩하기 위한 장치.
  100. 삭제
  101. 삭제
  102. 제 99항에 있어서,
    상기 재동기화 포인트는 상기 멀티미디어 데이터의 상황 정보를 포함하는, 멀티미디어 데이터를 코딩하기 위한 장치.
  103. 멀티미디어 스트림의 슬라이스 내의 재동기화 포인트 데이터를 수신하는 단계; 및
    상기 재동기화 포인트 데이터에 기초하여 멀티미디어 데이터를 재구성하는 단계를 포함하며,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하고, 상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 상기 재동기화 포인트의 위치로 선택함으로써 재동기화 포인트들이 결정되는,
    멀티미디어 스트림을 처리하기 위한 방법.
  104. 제 103항에 있어서,
    상기 재동기화 포인트는 상기 멀티미디어 데이터의 상황 정보를 포함하는, 멀티미디어 스트림을 처리하기 위한 방법.
  105. 멀티미디어 스트림의 슬라이스 내의 재동기화 포인트 데이터를 수신하기 위한 수단; 및
    상기 재동기화 포인트 데이터에 기초하여 멀티미디어 데이터를 재구성하기 위한 수단을 포함하며,
    다수의 후보 위치들에 대한 레이트 왜곡 비용을 계산하고, 상기 계산된 레이트 왜곡 비용에 기초하여 상기 후보 위치들 중 적어도 하나를 상기 재동기화 포인트의 위치로 선택함으로써 재동기화 포인트들이 결정되는,
    멀티미디어 스트림을 처리하기 위한 장치.
  106. 제 105항에 있어서,
    상기 재동기화 포인트는 상기 멀티미디어 데이터의 상황 정보를 포함하는, 멀티미디어 스트림을 처리하기 위한 장치.
KR1020077023230A 2005-03-10 2006-03-10 인트라-슬라이스 재동기화 포인트들을 사용하는 에러복원을 위한 방법 및 장치 KR100928127B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US66087905P 2005-03-10 2005-03-10
US60/660,879 2005-03-10
US71320705P 2005-09-01 2005-09-01
US60/713,207 2005-09-01
PCT/US2006/008764 WO2006099224A1 (en) 2005-03-10 2006-03-10 Method and apparatus for error recovery using intra-slice resynchronization points

Publications (2)

Publication Number Publication Date
KR20070110550A KR20070110550A (ko) 2007-11-19
KR100928127B1 true KR100928127B1 (ko) 2009-11-25

Family

ID=36658621

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077023230A KR100928127B1 (ko) 2005-03-10 2006-03-10 인트라-슬라이스 재동기화 포인트들을 사용하는 에러복원을 위한 방법 및 장치

Country Status (8)

Country Link
US (1) US7929776B2 (ko)
EP (1) EP1856915B1 (ko)
JP (1) JP2008537373A (ko)
KR (1) KR100928127B1 (ko)
CN (1) CN101185336A (ko)
AT (1) ATE468705T1 (ko)
DE (1) DE602006014369D1 (ko)
WO (1) WO2006099224A1 (ko)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8780957B2 (en) 2005-01-14 2014-07-15 Qualcomm Incorporated Optimal weights for MMSE space-time equalizer of multicode CDMA system
WO2006099082A2 (en) 2005-03-10 2006-09-21 Qualcomm Incorporated Content adaptive multimedia processing
US7925955B2 (en) * 2005-03-10 2011-04-12 Qualcomm Incorporated Transmit driver in communication system
KR100941336B1 (ko) * 2005-03-10 2010-02-11 퀄컴 인코포레이티드 멀티미디어 스트리밍에서 최적화된 오류 관리를 위한디코더 아키텍쳐
US8693540B2 (en) * 2005-03-10 2014-04-08 Qualcomm Incorporated Method and apparatus of temporal error concealment for P-frame
BRPI0613124B1 (pt) * 2005-07-06 2019-12-17 Interdigital Vc Holdings Inc método e dispositivo para codificar um conteúdo de vídeo compreendendo uma sequência de imagens e um logotipo
US7714748B1 (en) * 2005-07-22 2010-05-11 Marvell International Ltd. Systems and methods for constructing high-rate constrained codes
US8879857B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Redundant data encoding methods and device
US11221917B1 (en) 2005-09-30 2022-01-11 Pure Storage, Inc. Integrity processing in a dispersed storage network
US8555109B2 (en) 2009-07-30 2013-10-08 Cleversafe, Inc. Method and apparatus for distributed storage integrity processing
US10860424B1 (en) 2005-09-30 2020-12-08 Pure Storage, Inc. Background verification processing in a storage network
US11620185B2 (en) 2005-09-30 2023-04-04 Pure Storage, Inc. Integrity processing in a dispersed storage network
US8948260B2 (en) 2005-10-17 2015-02-03 Qualcomm Incorporated Adaptive GOP structure in video streaming
US8654848B2 (en) 2005-10-17 2014-02-18 Qualcomm Incorporated Method and apparatus for shot detection in video streaming
US8005140B2 (en) * 2006-03-17 2011-08-23 Research In Motion Limited Soft decision and iterative video coding for MPEG and H.264
US9131164B2 (en) 2006-04-04 2015-09-08 Qualcomm Incorporated Preprocessor method and apparatus
US20080225947A1 (en) 2007-03-13 2008-09-18 Matthias Narroschke Quantization for hybrid video coding
US8634462B2 (en) * 2007-03-13 2014-01-21 Matthias Narroschke Quantization for hybrid video coding
KR101366244B1 (ko) * 2007-04-24 2014-02-21 삼성전자주식회사 레지듀얼 데이터를 이용한 영상의 에러 은닉 방법 및 장치
US8121189B2 (en) * 2007-09-20 2012-02-21 Microsoft Corporation Video decoding using created reference pictures
US8542730B2 (en) * 2008-02-22 2013-09-24 Qualcomm, Incorporated Fast macroblock delta QP decision
US9848209B2 (en) * 2008-04-02 2017-12-19 Microsoft Technology Licensing, Llc Adaptive error detection for MPEG-2 error concealment
US8358700B2 (en) * 2008-06-03 2013-01-22 Omnivision Technologies, Inc. Video coding apparatus and method for supporting arbitrary-sized regions-of-interest
US9924184B2 (en) * 2008-06-30 2018-03-20 Microsoft Technology Licensing, Llc Error detection, protection and recovery for video decoding
US9788018B2 (en) * 2008-06-30 2017-10-10 Microsoft Technology Licensing, Llc Error concealment techniques in video decoding
US9131241B2 (en) * 2008-11-25 2015-09-08 Microsoft Technology Licensing, Llc Adjusting hardware acceleration for video playback based on error detection
WO2010126612A2 (en) * 2009-05-01 2010-11-04 Thomson Licensing Reference picture lists for 3dv
US8340510B2 (en) 2009-07-17 2012-12-25 Microsoft Corporation Implementing channel start and file seek for decoder
WO2012008037A1 (ja) * 2010-07-15 2012-01-19 富士通株式会社 動画像復号装置、動画像復号方法及び動画像符号化装置ならびに動画像符号化方法
WO2012036901A1 (en) 2010-09-14 2012-03-22 Thomson Licensing Compression methods and apparatus for occlusion data
CN103430541B (zh) 2011-01-06 2016-11-23 三星电子株式会社 使用分层结构的数据单元的视频解码方法
FR2972588A1 (fr) 2011-03-07 2012-09-14 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
FR2977111A1 (fr) * 2011-06-24 2012-12-28 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
US8767824B2 (en) * 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
US9654772B2 (en) 2012-01-19 2017-05-16 Qualcomm Incorporated Context adaptive entropy coding with a reduced initialization value set
LT2811745T (lt) * 2012-01-30 2018-12-10 Samsung Electronics Co., Ltd. Būdas ir aparatas vaizdo kodavimui ir dekodavimui hierarchinių duomenų vieneto pagrindu, apimantys kvantinio parametro prognozę
US20130223524A1 (en) * 2012-02-29 2013-08-29 Microsoft Corporation Dynamic insertion of synchronization predicted video frames
GB2499831B (en) * 2012-03-02 2015-08-05 Canon Kk Method and device for decoding a bitstream
US9344720B2 (en) * 2012-08-07 2016-05-17 Apple Inc. Entropy coding techniques and protocol to support parallel processing with low latency
US9386326B2 (en) * 2012-10-05 2016-07-05 Nvidia Corporation Video decoding error concealment techniques
JP6023596B2 (ja) * 2013-01-24 2016-11-09 株式会社日立情報通信エンジニアリング 画像符号化装置
US10904551B2 (en) * 2013-04-05 2021-01-26 Texas Instruments Incorporated Video coding using intra block copy
WO2017011636A1 (en) * 2015-07-16 2017-01-19 Dolby Laboratories Licensing Corporation Signal reshaping and coding for hdr and wide color gamut signals
US10986354B2 (en) * 2018-04-16 2021-04-20 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000031031A (ko) * 1998-11-02 2000-06-05 윤종용 영상신호의 전송/복원 방법 및 장치

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09182067A (ja) * 1995-10-27 1997-07-11 Toshiba Corp 画像符号化/復号化装置
EP0861001B1 (en) 1997-02-07 2012-05-23 Texas Instruments Incorporated Error resilient video encoding
JP3907860B2 (ja) * 1999-02-16 2007-04-18 三菱電機株式会社 動画像復号装置及び動画像復号方法
US6339658B1 (en) * 1999-03-09 2002-01-15 Rockwell Science Center, Llc Error resilient still image packetization method and packet structure
US8275047B2 (en) * 2001-09-20 2012-09-25 Xilinx, Inc. Method and device for block-based conditional motion compensation
GB2381980A (en) 2001-11-07 2003-05-14 Motorola Inc Error concealment in scalable video transmissions
GB2386275B (en) 2002-03-05 2004-03-17 Motorola Inc Scalable video transmissions
JP2006060813A (ja) * 2004-08-20 2006-03-02 Polycom Inc ビデオデコーダにおける誤り隠蔽
EP2036274B1 (en) 2006-06-07 2016-09-28 Qualcomm Incorporated Propagating session state changes to network functions in an active set

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000031031A (ko) * 1998-11-02 2000-06-05 윤종용 영상신호의 전송/복원 방법 및 장치

Also Published As

Publication number Publication date
WO2006099224A1 (en) 2006-09-21
ATE468705T1 (de) 2010-06-15
EP1856915A1 (en) 2007-11-21
DE602006014369D1 (de) 2010-07-01
CN101185336A (zh) 2008-05-21
EP1856915B1 (en) 2010-05-19
JP2008537373A (ja) 2008-09-11
KR20070110550A (ko) 2007-11-19
US7929776B2 (en) 2011-04-19
US20060233239A1 (en) 2006-10-19

Similar Documents

Publication Publication Date Title
KR100928127B1 (ko) 인트라-슬라이스 재동기화 포인트들을 사용하는 에러복원을 위한 방법 및 장치
US10264280B2 (en) Enhanced intra-prediction mode signaling for video coding using neighboring mode
US9402080B2 (en) Combined reference picture list construction and mapping
KR101135293B1 (ko) 비디오 블록 헤더 정보의 적응적 코딩
US9538172B2 (en) Grouping bypass coded syntax elements in video coding
US9066102B2 (en) Reference picture list construction for generalized P/B frames in video coding
US20170289543A1 (en) Most probable transform for intra prediction coding
US20130022104A1 (en) Adaptation parameter sets for video coding
US8611687B2 (en) Method and apparatus for encoding and decoding image using flexible orthogonal transform
KR20140049098A (ko) 비디오 코딩에서 비정방형 변환 유닛들 및 예측 유닛들
EP2764693A2 (en) Performing transform dependent de-blocking filtering
KR20170028905A (ko) 팔레트 모드 코딩을 위한 방법
WO2014005092A1 (en) Sign hiding techniques for quantized transform coefficients in video coding
WO2008000292A1 (en) Method, apparatus and system for robust video transmission
US20050089102A1 (en) Video processing
EP1345451A1 (en) Video processing
RU2574280C2 (ru) Выбор единых кандидатов режима слияния и адаптивного режима предсказания вектора движения

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
LAPS Lapse due to unpaid annual fee