KR101245576B1 - 효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법 - Google Patents

효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법 Download PDF

Info

Publication number
KR101245576B1
KR101245576B1 KR1020117018104A KR20117018104A KR101245576B1 KR 101245576 B1 KR101245576 B1 KR 101245576B1 KR 1020117018104 A KR1020117018104 A KR 1020117018104A KR 20117018104 A KR20117018104 A KR 20117018104A KR 101245576 B1 KR101245576 B1 KR 101245576B1
Authority
KR
South Korea
Prior art keywords
picture
coded
sequence
layer
level value
Prior art date
Application number
KR1020117018104A
Other languages
English (en)
Other versions
KR20110106431A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=37942356&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101245576(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 노키아 코포레이션 filed Critical 노키아 코포레이션
Publication of KR20110106431A publication Critical patent/KR20110106431A/ko
Application granted granted Critical
Publication of KR101245576B1 publication Critical patent/KR101245576B1/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/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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/12Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
    • 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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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
    • H04N21/234327Processing 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 by decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

스트리밍 서버들에서의 효율적 규모가변적 스트림 스위칭 및 로컬 파일 재생을 수행하기 위해 파일 포맷 레벨에서의 저에서 고 계층 스위칭 포인트들을 시그날링하기 위한 시스템 및 방법. 본 발명은 비디오 비트 스트림을 통해 저에서 고 계층 스위칭 포인트들을 시그날링하여, 예컨대 미디어 인식 네트워크 요소들에서의 규모가변성 계층들의 인텔리전트한 포워딩 또는 스트림 수신기들에서의 계산상의 규모가변적 디코딩을 행할 수 있도록 한다.

Description

효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법{System and method for efficient scalable stream adaptation}
본 발명은 일반적으로 미디어 인코딩, 디코딩, 저장 및 전송에 관한 것이다. 더 구체적으로 말해, 본 발명은 규모가변적 미디어 인코딩, 디코딩, 저장 및 전송에 관한 것이다.
멀티미디어 어플리케이션들에는 로컬 재생, 스트리밍 또는 주문형 (on-demand), 대화형 및 브로드캐스트/멀티캐스트 서비스들이 포함된다. 멀티미디어 어플리케이션들에 관여하는 기술들에는, 가령, 미디어 코딩, 저장 및 전송이 포함된다. 미디어 타입들에는 음성, 오디오, 이미지, 비디오, 그래픽 및 타임 텍스트가 포함된다. 서로 다른 기술들에 대해 서로 다른 규격들이 특정되고 있다.
비디오 코딩 규격들에는 ITU-T H.261, ISO/IEC MPEG-1 비주얼, ITU-T H.262 또는 ISO/IEC MPEG-2 비주얼, ITU-T H.263, ISO/IEC MPEG-4 비주얼 및 ITU-T H.264 (ISO/IEC MPEG-4 AVC로도 알려짐)가 포함된다. 그 외에도, 새로운 비디오 코딩 규격들 역시 개발중이 있다. 예를 들어, 규모가변적 비디오 코딩 (scalable video coding, SVC) 표준의 개발이 현재 진행중에 있다. 그러한 표준은 H.264/AVC에 대한 규모가변적 확장 버전이 될 것이다. 차이나 (China) 비디오 코딩 표준들의 개발 역시 현재 진행 중에 있다.
규모가변적 비디오 코딩은 규모가변적 비디오 비트 스트림들을 제공할 수 있다. 규모가변적 비디오 비트스트림의 일부는 저하된 비주얼 재생 품질을 가진 채 추출 및 디코딩될 수 있다. 규모가변적 비디오 비트스트림은 비규모가변적 (non-scalable) 기저 계층 (base layer) 및 하나 이상의 인핸스먼트 계층 (enhancement layer)들을 포함한다. 인핸스먼트 계층은 시간적 해상도 (즉, 프레임 레이트), 공간적 해상도, 또는 단순히 그것의 하위 계층이나 그 일부에 의해 표현되는 비디오 콘텐츠의 품질을 개선시킬 수 있다. 몇몇 경우들에서, 인핸스먼트 계층의 데이터는 일정 위치 뒤에, 심지어 임의의 위치들에서 잘라질 수 있다. 각각의 자른 위치는 크게 개선된 비주얼 품질을 나타내는 어떤 부가 데이터를 포함할 수 있다. 그러한 규모가변성 (scalability)을 미소 단위 (granularity) 규모가변성 (FGS, fine-grained scalability)이라고 한다. FGS와는 반대로, 미소 단위 규모가변성을 제공하지 않는 품질 인핸스먼트 계층에 의해 제공되는 규모가변성을 조악한 단위의 규모가변성 (CGS, coarse-grained scalabilty)이라 부른다.
현재 계획단계인 SVC 표준에서의 규모가변적 계층 구조는 비트 스트림을 통해 시그날링 되거나 그 사양에 따라 도출될 수 있는 시간_레벨 (temporal_level), 종속성_아이디 (dependency_id) 및 품질_레벨 (quality_level)이라 불리는 세 가지 변수들을 특징으로 한다. temporal_level은 시간적 규모가변성이나 프레임 레이트를 가리키는데 사용된다. 보다 작은 temporal_level의 화상들을 포함하는 계층은 보다 큰 temporal_level의 화상들을 포함하는 계층보다 작은 프레임 레이트를 갖는다. dependency_id는 계층 간 (inter-layer) 코딩 종속성 위계 (hierarchy)를 가리키는 데 사용된다. 어떤 시간적 위치에서, 보다 작은 dependency_id 값의 화상은 보다 큰 dependency_id 값의 화상 코딩을 위한 계층간 예측에 사용될 수 있다. quality_level은 FGS 계층 위계를 가리키는데 사용된다. 어떤 시간 위치상에서 동일한 dependency_id 값을 가진, QL과 동일한 quality_level을 갖는 FGS 화상은, 계층간 예측을 위해 QL-1과 동일한 quality_level 값을 갖는 FGS 화상 또는 기저 품질 화상 (즉, QL-1=0일 때 비 FGS 화상)를 이용한다.
도 1은 상술한 세 변수들의 표시 값들과 함께 예로 든 규모가변적 비디오 스트림의 시간적 세그먼트를 도시한 것이다. 시간 값들은 상대적인 것임을 인지해야 한다, 즉, time=0이라는 것이 반드시, 그 비트 스트림 상에서의 디스플레이 순서상 최초 화상의 시간임을 의미하는 것은 아니라는 것을 알아야 한다. 이 예의, 통상적 예측 참조 관계가 도 2에 도시되는데, 도 2에서 실선 화살표는 수평 방향의 상호 예측 참조 관계 (interprediction reference relationship)를 가리키고, 점선 블록 화살표는 계층간 예측 참조 관계를 가리킨다. 지시되는 쪽 인스턴스 (instance)는 예측 참조를 위해 반대 방향의 인스턴스를 이용한다.
여기 논의되는 바와 같이, 한 계층은 각각 동일한 temporal_level, dependency_id 및 quality_level 값들을 가진 화상들의 집합으로 정의된다. 인핸스먼트 계층을 디코딩 및 재생하기 위해, 통상적으로 기저 계층을 포함하는 그 하위 계층들 역시 사용가능해야 하는데, 이는 그 하위 계층들이 인핸스먼트 계층의 디코딩시 계층간 예측을 위해 직간접적으로 사용될 것이기 때문이다. 예를 들어, 도 1 및 2에서, (0,0,0,0) 및 (8,0,0,0)과 동일한 (t, T, D, Q)를 갖는 화상들이 기저 계층에 속하고, 이것은 어떤 인핸스먼트 계층들과도 무관하게 디코딩될 수 있다. (4,1,0,0)과 같은 (t, T, D, Q)를 갖는 화상은 기저 계층의 프레임 레이트의 두 배가 되는 인핸스먼트 계층에 속한다; 이 계층의 디코딩은 기저 계층 화상들의 존재를 필요로 한다. (0,0,0,1) 및 (8,0,0,1)과 같은 (t, T, D, Q)를 갖는 화상들은 FGS 방식으로 기저 계층의 품질 및 비트 레이트를 향상시키는 인핸스먼트 계층에 속한다; 이 계층의 디코딩 역시 기저 계층 화상들의 존재를 필요로 한다.
H.264/AVC 표준에서, 순시 디코딩 리프레시 (IDR, instantaneous decoding refresh) 화상이 다음과 같이 정의된다. 모든 슬라이스들이 I 또는 SI 슬라이스들인 코딩 화상이 디코딩 프로세스로 하여금 IDR 화상 디코딩 후 바로 모든 참조 화상들을 "참조에 미사용"으로 마킹하게 한다. IDR 화상 디코딩 후에, 디코딩 순서상 이어지는 모든 코딩 화상들은, IDR 화상 전에 디코딩된 어떤 화상으로부터의 상호 예측 없이 디코딩될 수 있다. 각각의 코딩된 비디오 시퀀스의 첫째 화상이 IDR 화상이다.
IDR 화상의 개념은 현 SVC 표준 초안에도 역시 사용되는데, 여기서는 각각 같은 값의 dependency_id 및 quality_level을 가진 화상들에 그러한 정의가 적용될 수 있다. 달리 말해, IDR 화상은, IDR 화상 및 같은 계층 내 디코딩 순서상 다음 코딩 화상들 (즉, IDR 화상과 각각 같은 값의 dependency_id 및 quality_level을 가짐) 모두의 디코딩이 같은 계층 내 디코딩 순서상 IDR 화상 이전의 어떤 화상으로부터의 상호 참조 없이 수행될 수 있는 코딩 화상이다. IDR 화상은 디코딩 프로세스로 하여금 IDR 화상을 디코딩 한 직후에 같은 계층에 있는 모든 참조 화상들을 "참조에 미사용"이라고 마킹하게 만든다. 여기 사용된 것과 같이 현 SVC 표준 초안의 맥락에 있어서, "같은 계층 내 (in the same layer)"라는 용어는 디코딩 화상들이 IDR 화상과 각각 같은 값의 dependency_id 및 quality_level을 가진다는 것을 의미한다는 것을 주지해야 한다. 같은 화상 순서 카운트 값이지만 다른 값의 dependency_id 및 quality_level을 갖는 모든 화상들이 IDR 화상들로서 코딩되거나, 특정 값의 화상 순서 카운트에 대해 어떠한 화상도 IDR 화상으로 코딩되지 않게 된다. 즉, (같은 값의 화상 순서 카운트를 가진 모든 화상들을 포함하는) 액세스 유닛 내 모든 화상들이 IDR 화상들이거나, 아니면 액세스 유닛 내 어떠한 화상도 IDR 화상이 아니다.
이용가능한 미디어 파일 포맷 표준들에는 ISO 파일 포맷 (ISO/IEC 14496-12), MPEG-4 파일 포맷 (ISO/IEC 14496-14), AVC 파일 포맷 (ISO/IEC 14496-15) 및 3GPP 파일 포맷 (3GPP TS 26.244)가 포함된다. SVC 파일 포맷은 혀재 ISO/IEC MPEG에 의해 개발 중에 있고, 2005년 7월 폴란드 포쯔난에서 열린 73차 ISO/IEC MPEG 회의의 MPEG N7477, "VM study Text for Scalable Video Coding (SVC) File Format)에서 찾아볼 수 있고, 그 전체 내용은 이 명세서에서 참조의 형태로 병합된다.
단일 계층 코딩과 비교해 규모가변적 코딩의 한가지 이점이, 규모가변적 코딩을 통해서는 단일 스트림이 상이한 요건의 품질, 비트 레이트, 디스플레이 사이즈 등을 만족시킬 수 있다는 것인 반면, 단일 계층 코딩을 통해서는 여러 스트림들이 사용되어야 한다. 여러 스트림의 사용은 보다 많은 저장 공간 및, 동시 방영시 더 많은 전송 대역폭을 소비하게 된다. 스트리밍 어플리케이션들에 있어서, 전송 네트워크나 수신자(들)의 사양들이 이들의 이전 상태들과 비교해 변화할 때, 가령, 전송 대역폭 변경시, 스트림 조정이 필요로 된다. 게이트웨이들 및 기타 미디어 인식 네트워크 요소들 (MANEs, media-aware network elements) 역시 스트림 조정을 수행할 수 있을 것이다. 규모가변적으로 코딩된 파일이 "국지적으로 (locally)" 재생될 때 (즉, 파일이 디코더와 같은 장치에 있거나, 디코딩 장치로의 고속 링크와 연결된 메모리에 있을 때), 디코더가 어떤 다른 프로세스와 계산 자원들을 공유하는 경우 스트림 조정이 필요로 될 것이다. 예를 들어, 디코딩이 멀티-프로세스 운영 시스템을 구동하는 범용 프로세서상에서 수행될 때, 그 디코더는 한 시점에 총 계산 파워를 이용하여 모든 규모가변적 계층들을 디코딩할 수 있을 것이다. 그러나 다른 때에는, 이용가능한 규모가변적 계층들의 일부를 디코딩하기 위해 사용하는 프로세서 계산 파워의 일부만을 가질 것이다. 조정된 스트림은 변경된 비트 레이트, 프레임 레이트, 및/또는 비디오 해상도를 가질 것이다. 단일 계층 코딩에서는, 스트림 스위칭이나 트랜스코딩을 통해 스트림 조정이 수행될 수 있다. 단일 규모가변 스트림에 있어, 스트림 조정은 계층 스위칭을 통해 수행될 수 있다.
규모가변적 코딩 시, 고에서 저로의 계층 스위칭이 임의 위치에서 수행될 수 있다. 그러나, 저에서 고로의 계층 스위칭에 대해서는 경우가 다른데, 이는 스위칭 된 높은 계층의 화상에 대한 디코딩이 보통, 동일한 계층에서 디코딩 순서에 있어 일부 앞선 화상들의 존재를 요구하기 때문이다.
현 SVC 표준 초안에 있어서, 저에서 고 계층 스위칭은 IDR 액세스 유닛 (IDR 화상들을 포함함)에서 수행될 수 있다. 그러나, IDR 액세스 유닛에의 의존은, IDR 액세스 유닛들의 잦은 코딩 또는 즉각적이지 못한 스트림 조정 탓에 코딩 효율성 감소를 야기한다. 이러한 문제들은 모두 최종 사용자 경험과 밀접하게 연관된다. 또한 이론적으로, SP/SI 화상 코딩이나 점진적 디코딩 리프레쉬 (refresh) 기술을 활용해 저에서 고 계층 스위칭을 수행하게 하는 것 역시 가능하다. 그러나, 이러한 기술들은 단일 계층 코딩을 위해 고안되었다. 따라서, 이 기술들은 규모가변적 코딩에 대해서는 현재 효력이 없다. 또, 이 기술들이 규모가변적 코딩에 사용되도록 확장된 후라 하더라도, 이들의 어플리케이션은 추가적 코딩 제약 (보다 낮은 코딩 효율성에 상응하는 형식)이나 구현의 복잡도로 이어질 것이다.
따라서, 규모가변적 비디오 코딩 시, 단순하고도 효율적인 저에서 고 계층 스위칭을 지원할 필요가 있다. 또한, 파일 포맷 레벨에 있어 단순하고도 효율적인 저에서 고 계층 스위칭의 시그날링을 수행하여, 저에서 고 계층 스위칭을 위한 위치들을 찾는데 비디오 스트림에 대한 어떠한 파싱 (parsing) 및 분석도 필요로 되지 않도록 할 필요가 있는데, 이는 스트림의 파싱 및 분석은 복잡한 계산을 요할 수 있기 때문이다.
본 발명은 스트리밍 서버들에서의 효율적인 규모가변적 스트림 스위칭 및 로컬 파일 재생을 가능하게 하도록, 파일 포맷 레벨 상의 저에서 고 계층 스위칭 (low-to-high layer switching) 포인트들을 시그날링 하기 위한 시스템 및 방법을 제안한다. 본 발명은 또한, 가령 미디어 인식 네트워크 요소들에서의 규모가변성 계층들의 인텔리전트한 포워딩 및 스트림 수신기들 안에서 계산적으로 규모가변적인 디코딩을 수행하도록, 비디오 비트 스트림 내 저에서 고 계층 스위칭 포인트들을 시그날링하기 위한 시스템 및 방법 역시 개시한다.
본 발명은 규모가변적 스트림 조정을 위한 단순하고도 효율적인 저에서 고 계층 스위칭을 가능하게 한다. 본 발명은 스트리밍 서버가, 다른 경우라면 상당한 계산상의 구현 부담을 필요로 하였을, 비디오 비트 스트림들을 광범위하게 파싱 및 분석해야만 하는 필요성을 없앤다. 본 발명은 실질적으로 어떠한 규모가변적 미디어 어플리케이션에서도 사용될 수 있다.
본 발명의 이러한, 그리고 기타의 이점들과 특징들과, 그 동작 체계 및 방식 모두, 첨부된 도면과 연계하여 취해진 이하의 상세한 설명으로부터 명확히 파악될 것이고, 이하에서 논의될 여러 도면들 전체에서 동일한 참조부호는 동일한 구성요소를 가리킨다.
도 1은 세 변수들인 temporal_level, dependency_id 및 quality_level의 값들이 표시되는, 예로 든 규모가변적 비디오 스트림의 시간상의 세그먼트를 보인다.
도 2는 도 1에 도시된 시간상의 세그먼트에 있어서의 통상의 예측 참조 관계이다.
도 3은 본 발명이 구현될 수 있는 시스템의 개략도이다.
도 4는 본 발명의 원리들을 포함할 수 있는 전자 기기의 정면도이다.
도 5는 도 4의 전자 기기의 개략적 회로도 표현이다.
도 6은 본 발명의 규모가변적 코딩 위계가 적용될 수 있는 일반 멀티미디어 데이터 스트리밍 시스템을 예시한 것이다.
도 6을 참조하여, 본 발명의 처리절차를 적용하기 위한 한 시스템인, 통상의 멀티미디어 스트리밍 시스템이 논의될 것이다.
멀티미디어 데이터 스트리밍 시스템은 보통, 비디오 카메라 및 마이크, 또는 메모리 캐리어에 저장되는 비디오 이미지나 컴퓨터 그래픽 파일들 같은 하나 이상의 멀티미디어 소스들(100)을 포함한다. 서로 다른 멀티미디어 소스들(100)로부터 얻은 미가공 데이터는 편집기라고도 불릴 수 있는 인코더(102) 안의 멀티미디어 파일 속에 결합될 것이다. 하나 이상의 멀티미디어 소스들(100)로부터 나온 미가공 데이터는 우선 인코더(102)에 포함된 캡처 수단(104)을 이용해 캡처되는데, 그 캡처 수단은 통상적으로 서로 다른 인터페이스 카드들, 드라이버 소프트웨어, 또는 카드 기능을 제어하는 어플리케이션 소프트웨어로서 구현될 수 있다. 예를 들어, 비디오 데이터가 비디오 캡처 카드 및 관련 소프트웨어를 이용해 캡처될 수 있다. 캡처 수단(104)의 출력은 보통 압축되지 않았거나 약간 압축된 데이터 플로 (flow)가 되는데, 이를테면, 비디오 캡처 카드가 관여될 때 YUV 4:2:0 포맷이나 모션 JPEG 이미지 포맷의 미압축 비디오 프레임들이 된다.
편집기(106)는 비디오 및 오디오 플로들이 원하는 바와 같이 동시에 재생될 수 있게 이들을 동기시키도록 서로 다른 미디어 플로우들을 서로 링크시킨다. 편집기(106)는 또한 프레임 레이트를 절반으로 내리거나, 공간적 해상도 등을 감축함으로써 비디오 플로 같은 각각의 미디어 플로를 편집할 수도 있을 것이다. 동기되어 있더라도, 압축기(108)에서는 개별 미디오 플로들이 압축되며, 이때 각 미디어 플로는 그 미디어 플로에 적합한 압축기를 써서 개별적으로 압축된다. 예를 들어, YUV 4:2:0 포맷의 비디오 프레임들은 ITU-T 권고안 H.263이나 H.264를 이용해 압축될 수 있다. 따로 따로인, 동기 및 압축된 미디어 플로들은 통상적으로 멀티플렉서(110) 안에서 인터리빙되며, 인코더(102)로부터 얻어진 출력은 복수의 미디어 플로들의 데이터를 포함하는 하나의 단일한 비트 플로로서 멀티미디어 파일이라고 부를 수 있다. 멀티미디어 파일을 생성하는 것이 반드시 복수의 미디어 플로들을 하나의 파일로 다중화하는 것을 필요로 하는 것은 아니며, 스트리밍 서버가 미디어 플로들을 전송하기 바로 전에 그들을 인터리빙할 수 있다는 것을 알아야 할 것이다.
멀티미디어 파일들은 스트리밍 서버(112)로 전송되고, 그러면 스트리밍 서버는 실시간 스트리밍이나 점진적 (progressive) 다운로딩의 형태로 스트리밍을 실행할 수 있다. 점진적 다운로딩시, 멀티미디어 파일들은, 수요가 일어날 때 이들이 전송을 위해 검색될 수 있는 서버(112)의 메모리 안에 먼저 저장된다. 실시간 스트리밍 시, 편집기(102)는 멀티미디어 파일들의 연속적 미디어 플로를 스트리밍 서버(112)로 전송하며, 서버(112)는 그 플로를 바로 클라이언트(114)로 전달한다. 추가 옵션으로서, 멀티미디어 파일들이, 서버(112)로부터 액세스 가능하고 그로부터 실시간 스트리밍이 도출될 수 있고 수요가 있을 때 멀티미디어 파일들의 연속적 미디어 플로가 시작되는 스토리지 안에 저장되도록, 실시간 스트리밍이 또한 수행될 수 있다. 그 경우, 편집기(102)는 어떤 수단에 의해서든 스트리밍을 반드시 통제하지는 못한다. 스트리밍 서버(112)는 클라이언트(114)의 사용 가능 대역폭 또는 최대 디코딩 및 재생 레이트에 관해서, 멀티미디어 데이터의 트래픽 정형화 (traffic shaping)을 수행하며, 스트리밍 서버는 전송정보로부터 B-프레임들을 제거하거나 규모가변성 계층들의 개수를 최적화하는 등에 의해 미디어 플로의 비트 레이트를 조정할 수가 있다. 더 나아가, 스트리밍 서버(112)는 다중화된 미디어 플로의 헤더 필드들을 변경하여 그들의 사이즈를 줄이고 사용하는 통신 네트워크 상에서의 전송에 적합한 데이터 패킷들 안에 그 멀티미디어 데이터를 캡슐화할 수 있다. 클라이언트(114)는 보통 적절한 제어 프로토콜을 사용해 서버(112)의 동작을 적어도 어느 정도까지는 조정할 수 있다. 클라이언트(114)는 적어도 원하는 멀티미디어 파일이 클라이언트에게 전송되도록 선택될 수 있게 서버(112)를 통제할 수 있고, 여기에 더해, 클라이언트는 보통 멀티미디어 파일 전송을 정지 및 중단시킬 수 있다.
클라이언트(114)가 멀티미디어 파일을 수신하고 있을 때, 그 파일은 우선 디멀티플렉서 (demultiplexer)(116)로 주어지며, 디멀티플렉서는 멀티미디어 파일로 이뤄진 미디어 플로들을 분리시킨다. 분리된 압축 미디어 플로들이 이제 압축해제기 (decompressor)(118)로 보내지고, 거기서 각각의 개별 미디어 플로가 각각의 특정 미디어 플로에 알맞는 압축해제기에 의해 압축 해제된다. 압축 해제 및 재건된 미디어 플로들은 재생 유닛(120)으로 보내지며, 거기서 미디어 플로들은 이들의 동기 데이터에 맞춰 정확한 페이스 (pace)로 렌더링 되거나 프레젠테이션 수단(124)으로 주어진다. 실질적 프레젠테이션 수단(124)은 이를테면 컴퓨터나 이동국 디스플레이, 및 확성기 수단을 포함할 수 있다. 클라이언트(114) 역시 일반적으로, 최종 사용자가 통상적으로 사용자 인터페이스를 통해 제어할 수 있고, 상술한 제어 프로토콜을 통한 서버의 동작, 및 최종 사용자에 의해 주어진 명령에 기초한 재생 유닛(120) 동작 모두를 제어하는 제어 유닛(122)을 포함한다.
스트리밍 서버(112)에서 클라이언트(114)로의 멀티미디어 파일들의 전송은 원격통신 네트워크를 통해 일어난다는 것을 주지해야 하며, 그 전송 경로는 보통 복수의 원격 통신 네트워크 요소들을 포함한다. 따라서, 스트리밍 서버와 관련해 위에서 기술한 것과 적어도 일부 같은 방식을 통해, 가능한 대역폭이나 클라이언트(114)의 최대 디코딩 및 재생 레이트와 관련한 멀티미디어 데이터의 트래픽 정형화 (traffic shaping)을 수행할 수 있는 적어도 어떤 네트워크 요소가 존재한다는 것이 가능하다.
본 발명은 스트리밍 서버들에서의 효율적인 규모가변적 스트림 스위칭 및 로컬 파일 재생을 가능하게 하도록 파일 포맷 레벨 상에서 저에서 고 계층 스위칭 포인트들을 시그날링하는 시스템 및 방법을 제안한다. 본 발명은 또한, 가령 미디어 인식 네트워크 요소들에서의 규모가변성 계층들의 인텔리전트한 포워딩이나 스트림 수신기들 안에서 계산적으로 규모가변적인 디코딩을 수행하도록, 비디오 비트 스트림 내 저에서 고 계층 스위칭 포인트들을 시그날링하기 위한 시스템 및 방법을 개시한다.
본 발명의 여러 전형적 구현예들이 여기서 논의될 것이다. 그러나, 예컨대 여기 논의된 대안 실시예들의 일부들을 결합함으로써, 그러한 구현예들의 다른 변형예들 역시 있을 수 있다는 것을 알아야 한다.
파일 포맷 상의 저에서 고 계층 스위칭 포인트들을 시그날링하기 위한 제1구현예는, 일종의 규모가변성 정보로서, 저에서 고 계층 스위칭 포인트들의 시그날링 이용을 수반한다. 이 실시예에서, 각 계층마다 저에서 고 계층 스위칭 포인트들 시그날링하기 위한 새로운 박스가 정의된다. 이 박스는 각각의 규모가변적 계층에 대한 규모가변성 정보를 포함하는 데이터 구조, 예컨대 SVC 파일 포맷의 표준안 텍스트에 규정된 ScalableLayerEntry() 구조 안에 포함된다. 그 박스는 다음과 같이 규정된다:
Box Types (박스 타입): 'lswp'
Container (컨테이너): ScalableLayerEntry
Mandatory (강제성): No
Quantity (수량): Zero or One
이 박스는 스트림 안에서 개별 계층에 대한 저에서 고 계층 스위칭 포인트들의 컴팩트한 마킹 (marking)을 제공한다. 샘플 넘버의 오름 차순에 따라 엄격하게 테이블이 정렬된다. 계층 스위칭 포인트 박스가 한 계층에 대해 존재하지 않으면, 싱크 (sync) 샘플박스를 통해 시그날링 된 싱크 샘플들이나 섀도우 싱크 (shadow sync) 샘플박스를 통해 시그날링 된 섀도우 싱크 샘플들이 아닌, 어떠한 추가적 저에서 고 계층 스위칭 포인트들도 존재하지 않는다.
Figure 112011059756963-pat00001
이 예에서 "entry_count"는 이어지는 테이블 내 엔트리들의 개수를 제공한다. "sample_number"는 이어지는 테이블에서 현 계층에 대해 저에서 고 계층 스위칭 포인트들의 정보가 시그날링 된 샘플의 샘플 넘버를 제공한다. "entry_count2"는 이어지는 테이블 내 엔트리들의 개수를 제공한다.
"delta_layer_id"는, sample_number와 같은 샘플 넘버를 갖는 현재의 샘플에서, 스트림이 현재의 계층으로부터 스위칭 될 수 있는 상위의 계층, 또는 스트림이 현재의 계층으로 스위칭 될 수 있는 하위의 계층을 특정한다. 0과 같거나 큰 값은, 현 샘플에서 스트림이 현재의 계층으로부터, (layerId + delta_layer_id +1)과 같은 계층 식별자를 가진 상위 계층으로 스위칭할 수 있다는 것을 가리킨다. 0보다 작은 값은, 현 샘플에서 스트림이 (layerId + delta_layer_id)에 해당하는 식별자를 가진 하위 계층으로부터 현재의 계층으로 스위칭될 수 있다는 것을 가리킨다. 각 계층의 layerId는 각 규모가변적 계층의 규모가변성 정보를 포함하는 데이터 구조로부터 찾는다.
파일 포맷 상의 저에서 고 계층 스위칭 포인트들을 시그날링하기 위한 제2구현예는, 모든 계층들의 저에서 고 계층 스위칭 포인트들을 전용 박스 안에 넣어 시그날링하는 일을 수반한다. 그 박스는 다음과 같이 규정된다:
Box Types (박스 타입): 'lswp'
Container (컨테이너): Sample Table Box ('stbl')
Mandatory (강제성): No
Quantity (수량): Zero or One
이 박스는 스트림 안에서 모든 계층들에 대한 저에서 고 계층 스위칭 포인트들의 컴팩트한 마킹 (marking)을 제공한다. 샘플 넘버의 오름 차순에 따라 엄격하게 테이블이 정렬된다. 계층 스위칭 포인트 박스가 존재하지 않으면, 싱크 (sync) 샘플박스를 통해 시그날링 된 싱크 샘플들이나 섀도우 싱크 (shadow sync) 샘플박스를 통해 시그날링 된 섀도우 싱크 샘플들이 아닌, 어떠한 추가적 저에서 고 계층 스위칭 포인트들도 존재하지 않는다.
Figure 112011059756963-pat00002
이 실시예에서 "entry_count"는 이어지는 테이블 내 엔트리들의 개수를 제공한다. "sample_number"는 이어지는 테이블을 통해 저에서 고 계층 스위칭 포인트들의 정보가 시그날링 된 샘플의 샘플 넘버를 제공한다. "entry_count2"는 이어지는 테이블 내 엔트리들의 개수를 제공한다. "layer_id"는 이어지는 테이블을 통해 저에서 고 계층 스위칭 포인트들의 정보가 시그날링 된 계층의 계층 식별자를 제공한다. "entry_count3"는 이어지는 테이블 내 엔트리들의 개수를 제공한다.
"delta_layer_id"는, sample_number와 같은 샘플 넘버를 갖는 현재의 샘플에서, 스트림이 현재의 계층으로부터 스위칭 될 수 있는 상위의 계층, 또는 스트림이 현재의 계층으로 스위칭 될 수 있는 하위의 계층을 특정한다. 0과 같거나 큰 값은, 현 샘플에서 스트림이 현재의 계층으로부터, (layer_id + delta_layer_id +1)과 같은 계층 식별자를 가진 상위 계층으로 스위칭할 수 있다는 것을 가리킨다. 0보다 작은 값은, 현 샘플에서 스트림이 (layer_id + delta_layer_id)에 해당하는 식별자를 가진 하위 계층으로부터 현재의 계층으로 스위칭될 수 있다는 것을 가리킨다. 이러한 본 발명의 특정 실시예에서는, layer_id 루프 안에 sample_number 루프를 놓는 현재의 방법 대신에, layer_id의 루프 안에 sample_number의 루프를 놓는 것이 가능하다.
파일 포맷 상의 저에서 고 계층 스위칭 포인트들을 시그날링하기 위한 제3구현예는, 트랙 스위칭 포인트들의 시그날링 사용을 수반한다. 이 실시예는 위에서 언급한 다른 실시예들 가운데 어느 하나와 동시에 사용될 수도 있다. 이 실시예는, 독자적으로 디코딩 가능한 규모가변적 계층들의 조합들이, 일반적으로 참조하기의 이용을 통해 독자적인 트랙들을 형성하도록 조합되는 경우에 적용된다. ISO 베이스 미디어 파일 포맷에서, 미디어 데이터는 네트워크와 무관한 트랙들의 집합으로서 표현되는 반면, 힌트 트랙들은 네트워크 종속적인 전송 캡슐화 정보 및 관련 미디어 샘플들 또는 그 일부를 포함하여 패킷들을 전송한다 (힌트 트랙으로부터 미디어 트랙들로의 참조에 의해). 한 추출기 트랙이 미디어 트랙에 대한 참조정보들을 포함하여, SVC 액세스 유닛에 대해 코딩된 화상들의 일부가 추출기 트랙 안의 한 샘플을 형성하도록 한다. 따라서, 각 추출기 트랙은 서로 다른 규모가변적 계층들의 부분들을 나타내야 하며, 각 추출기 트랙은 같은 미디어 트랙에 대해 다른 추출기 트랙들을 디코딩하지 않고도 결정될 수 있어야 한다.
이러한 특정 구현예에 있어서, 힌트 트랙들이나 추출기트랙들 사이의 스위칭 포인트들이 식별될 수 있다. 이 트랙 내에서 지시된 스위칭 포인트 샘플들 중 적어도 하나로 스위칭을 행할 수 있는 충분한 규모가변적 계층들의 부분들을 포함하거나 참조하는 트랙들은 트랙 참조 컨테이너 박스 내 종류 'tswf'의 트랙 참조를 통해 이 트랙과 링크된다. 이 트랙이, 그 트랙들 내에서 지시된 스위칭 포인트 샘플들 중 적어도 하나로 스위칭을 행할 수 있는 충분한 규모가변적 계층들의 부분들을 포함하도록 하는 트랙들은, 트랙 참조 컨테이너 박스 내 종류 'tswf'의 트랙 참조를 통해 이 트랙과 링크된다.
Box Types (박스 타입): 'tswd'
Container (컨테이너): Sample Table Box ('stbl')
Mandatory (강제성): No
Quantity (수량): Zero 또는 정확히 One
이 박스는 힌트 트랙들이나 추출기 트랙들 사이의 저에서 고 계층 스위칭 포인트들의 컴팩트한 마킹을 제공한다. 테이블은 오름 차순의 샘플 넘버에 따라 엄격하게 정렬된다. 트랙 스위칭 포인트 박스가 존재하지 않으면, 싱크 (sync) 샘플박스를 통해 시그날링 된 싱크 샘플들이나 섀도우 싱크 (shadow sync) 샘플박스를 통해 시그날링 된 섀도우 싱크 샘플들이 아닌, 어떠한 추가적 저에서 고 계층 스위칭 포인트들도 존재하지 않는다.
Figure 112011059756963-pat00003
이 시나리오 상에서, "entry_count"는 이어지는 테이블 내 엔트리들의 개수를 제공한다. "sample_number"는 스위칭 포인트 샘플의 샘플 넘버를 제공한다. "entry_count2"는 이어지는 테이블 내 엔트리들의 개수를 제공한다. "src_track_id"는 스트림이 현 트랙에 포함된 계층으로 스위칭 될 수 있는 ㅎ하항하위 계층을 포함하는 트랙의 트랙 식별자를 가리킨다. "dest_track_id"는 스트림이 현 트랙에 포함된 게층으로부터 스위칭될 수 있는 상위 계층을 포함하는 트랙의 트랙 식별자를 가리킨다.
다른 신택스 정의들 역시 가능하다는 것을 알아야 한다. 예를 들어, entry_count3과 dest_track_id 값들에 대한 관련 루프는 생략될 수 있다. 또한, 'tswf" 트랙 참조시 오직 한 트랙만이 지시되는 경우 src_track_id 값들에 대한 루프는 필요로 되지 않는다. 또한, 트랙 참조정보들인 'tswf' 및/또는 'tswt' 없이 TrackSwitchingPointBox 신택스를 독자적으로 사용하는 것 역시 가능하다. 또, 힌트 혹은 추출기 트랙들에서 저에서 고 계층 스위칭 포인트들을 얻기 위해 제1 또는 제2대안들을 이용을 이용해 미디어 트랙을 통해 시그날링 된 정보를 재사용하는 것 역시 가능하며, 여기서 각각의 힌트 또는 추출기 트랙마다, 예컨대 트랙 헤더나 샘플 엔트리를 통해 계층 식별자가 시그날링 된다.
다음은 비트 스트림 상의 저에서 고 계층 스위칭 포인트들의 시그날링을 위한 대안적 방법들에 대한 논의이다. 그러한 제1대안은, 새 NAL (Network Abstration Layer) 유닛 타입의 사용을 포함하여, 그 NAL 유닛 타입의 코딩 슬라이스들을 포함하는 한 화상이 인핸스먼트-계층 순시 디코딩 리프레쉬 (EIDR, enhancement-layer instantaneous decoding refresh) 화상임을 가리킨다. EIDR 화상은, EIDR 화상 및, 같은 계층 내 디코딩 순서상 다음에 오는 코딩 화상들 (즉, EIDR 화상과 각각 동일한 값의 temporal_level, dependency_id 및 quality_level을 가짐) 전부에 대한 디코딩이, 같은 계층 내 디코딩 순서상 EIDR 화상 이전에 있는 어떤 화상으로부터의 상호 예측 없이 수행될 수 있게 되는, 어떤 코딩 화상이다. EIDR 화상은 디코딩 프로세스로 하여금 EIDR 화상을 디코딩 한 직후에 같은 계층 내 모든 참조 화상들을 "참조에 미사용"이라고 마크하게 만든다. EIDR 화상은 전부가 0이 되는 temporal_level, dependency_id 및 quality_level을 갖지는 않을 것이다. 이러한 선택안의 맥락에서 여기 사용된 바와 같이, "같은 계층에서"라는 말은 디코딩 화상들이 EIDR 화상과 각각 같은 값의 temporal_level, dependency_id 및 quality_level을 가진다는 것을 의미한다는 것을 주지해야 한다. 최근의 SVC 표준안과 비교할 때 같은 계층에 있다는 개념에 있어서의 차이는, 여기서는 temporal_level이 고려된다는 데 있다는 것을 알아야 한다. temporal_level을 고려함으로써, 보다 낮은 프레임 레이트를 가진 한 계층으로부터 보다 높은 프레임 레이트를 가진 한 계층으로의, 저에서 고 계층 스위칭이 수행된다. 또, EIDR 화상의 코딩 효율성이 증가되는데, 이는 높은 값들의 temporal_level을 갖는 참조 화상들이 자동으로 참조 화상 리스트들로부터 제거되어, 일부 참조 화상 리스트 재정렬 명령들을 아끼게 되거나 참조 화상 색인 값들이 작아져서 엔트로피 코딩의 코딩 효율성을 향상시키게 되기 때문이다.
규모가변적 코딩의 특성에 따라, 하위 계층이 상위 계층에 의존할 수 없기 때문에, 같은 계층 및 그보다 높은 계층들의 화상으로부터 EIDR 화상이 예측될 수 없지만, 시간상으로 하위 계층들을 포함하는 더 낮은 계층들로부터의 화상들로부터는 계속 예측될 수가 있다. 이러한 것이 다음 하위 계층으로부터, EIDR 화상의 위치에서 EIDR 화상을 포함하는 계층으로의 계층 스위칭을 가능하게 한다. 예를 들어, 새 NAL 유닛 타입이 아래의 표 1에서와 같이 정의될 수 있다. 값 22가 새 NAL 유닛 타입으로서 사용되며, NAL 유닛 타입 20의 의미는 "규모가변적 확장 시 비-IDR 화상의 코딩 슬라이스"에서 "규모가변적 확장 시 비-IDR 및 비-EIDR 화상의 코딩 슬라이스"로 변경된다.
테이블 1
Figure 112011059756963-pat00004
이 디자인은 temporal_level, dependency_id 및 quality_level이 시그날링되는 규모가변적 화장을 이용해 코딩된 규모가변적 계층들에 적용될 수 있다. H.264/AVC 표준 자체가 시간적 규모가변성을 지원하는데 사용될 수 있고, 그것은 부 시퀀스 정보 SEI 메시지들을 이용해 시그날링 될 수 있다. 그러나, 이 경우, temporal_level은 시그날링 되지 않으며, 따라서 현 SVC 표준안에 따라 모든 시간상의 규모가변적 계층들에 대해 그것은 0이라고 추정된다. 시간상의 계층들 간 효율적인 저에서 고 계층 스위칭을 수행하고, H.264/ABC 스트림 호환성을 깨지 않기 위해, 새로운 SEI 메시지가 사용되어 화상이 EIDR 화상이라는 것을 가리키도록 한다. 그러나, SEI 메시지를 이용함으로써, EIDR 화상의 참조 관리 기능은 불가능하게 된다, 즉, SEI 메시지에 의해 지시된 EIDR 화상이 저에서 고 계층 스위칭에 사용될 수는 있지만, 디코딩 프로세스가 같은 계층 내 모든 참조 화상들을 "참조에 미사용"이라고 마크하게 하지는 못한다. 이는, SEI 메시지들이 표준에 부합하는 디코더들에 대한 옵션이라는 사실에서 비롯된다. SEI 메시지는 다음과 같이 특정된다.
EIDR 화상 SEI 메시지 신택스
Figure 112011059756963-pat00005
EIDR 화상 SEI 메시지 어의구조. 상기 어의구조는 다음과 같다, EIDR 화상 SEI 메시지는, 만일 존재하는 경우, temporal_level, dependency_id 및 quality_level이 비트 스트림 상에서 존재하지 않고 그에 따라 모두 0이라고 추정되는 한 코딩 화상과 결부된다. 타깃 화상 역시 서브 시퀀스 정보 SEI 메시지와 결부되는데, 이때 sub_seq_layer_num이 시그날링되어 시간상의 규모가변성 위계를 가리키도록 한다. EIDR 화상 SEI 메시지의 존재는, 타깃 화상이 EIDR 화상이라는 것을 가리키며, 이때, 그 화상 및 같은 계층에서 디코딩 순서상 다음에 오는 코딩 화상들 모두 (즉, EIDR 화상과 같은 값의 sub_seq_layer_num을 가지고 0에 해당하는 temporal_level, dependency_id 및 quality_level을 가진 것)의 디코딩은, 디코딩 순서상 EIDR 화상 이전에 있는 같은 계층 내 어떤 화상으로부터의 상호 예측 없이 디코딩될 수 있다.
"temporal_layer_num"은 서브 시퀀스 정보 SEI 메시지의 신택스 엘리먼트인 sub_seq_layer_num과 같은 어의구조를 가진다. 그 값은 같은 타깃 화상과 결부된 서브 시퀀스 정보 SEI 메시지의 sub_seq_layer_num과 동일하다. SEI 메시지의 신택스로부터 신택스 엘리먼트 temporal_laeyr_num을 빼는 것 역시 가능하다. 그러나, 이렇게 하면, EIDR 화상이 어느 시간상의 규모가변적 계층에 속하는지를 알기 위해 서브 시퀀스 정보 SEI 메시지의 파싱이 필요로 된다.
비트 스트림을 통해 저에서 고계층 스위칭 포인트들을 시그날링하는 제2대안 구현예는 IDR 화상의 규정을 변경하고 IDR 화상들을 코딩하기 위한 제약요건을 완화하는 것을 포함한다. 이 구현예에서, IDR은 다음과 같이 변경된다, temporal_level, dependency_id 및 quality_level 중어느 하나가 0이 아니면, IDR 화상은, IDR 화상 및 같은 계층 내에서 디코딩 순서상 다음에 오는 모든 코딩 화상들 (즉, IDR 화상과 각각 같은 값의 temporal_level, dependency_id 및 quality_level을 가진 것)의 디코딩은, 같은 계층에서의 디코딩 순서상 IDR 화상 이전에 있는 어떤 화상으로부터의 상호 예측 없이 수행될 수 있다. 또, 그러한 IDR 화상은 디코딩 프로세스로 하여금 IDR 화상을 디코딩 한 직후에 같은 계층 내 모든 참조 화상들을 "참조에 미사용"이라고 마크하게 만든다. 그렇지 않고, temporal_level, dependency_id 및 quality_level이 모두 0인 경우, IDR 화상 및 디코딩 순서에 있어 다음에 오는 모든 화상들의 디코딩이, 디코딩 순서상 IDR 화상 이전의 어떤 화상으로부터의 상호 예측 없이 수행될 수 있다. 그러한 IDR 화상은 IDR 화상을 디코딩한 직후 디코딩 프로세스가 모든 화상들을 "참조에 미사용"이라고 마크하게 만든다.
IDR 화상들의 코딩에 대한 제약사항 (즉, 액세스 유닛 내 모든 화상들이 IDR 화상들이거나, 액세스 유닛 내 어떤 화상도 IDR 화상이 아님)은 다음과 같이 완화된다. 모두가 0인 temporal_level, dependency_id 및 quality_level을 가진 한 화상이 IDR 화상이면, 같은 액세스 유닛 내 모든 다른 화상들은 IDR 화상들이다. 이러한 IDR 화상 코딩에 대한 완화된 제약요건으로 인해, 기저 계층 화상이 비 IDR 화상인 액세스 유닛 내 인핸스먼트 계층들에서 IDR 화상들을 포함하는 것이 가능하게 된다. 이러한 제2안에서 관찰할 수 있는 것과 같이, temporal_level, dependency_id 및 quality_level 중 어느 하나가 0이 아닐 때, IDR 화상 규정은, 상술한 비트 스트림 상의 저에서 고 계층 스위칭 포인트들의 시그날링 방법에 대한 제2안의 EIDR 화상 규정과 동일하다. 따라서, EIDR 화상의 모든 이점들이 적용된다. 여기 규정된 IDR 화상의 코딩은, 다음 하위 계층에서 IDR 화상의 위치에 IDR 화상을 포함하는 계층으로의 계층 스위칭을 가능하게 한다.
이러한 특정한 디자인이, temporal_level, dependency_id 및 quality_level이 시그날링되는 규모가변적 확장을 이용해 코딩되는 규모가변적 계층들에 적용될 수 있다. 제1안과 같은 방법이 사용되어, H.264/AVC 표준 자체를 이용해 코딩하는 시간적 계층들 사이에서의 효율적 저에서 고 계층 코딩을 가능하게 할 수 있다.
비트 스트림 상에서 저에서 고 계층 스위칭 포인트들을 시그날링하기 위한 제3의 대안적 구현예는, IDR 화상들을 코딩하기 위한 제약요건 완화 및 시간상의 규모가변적 계층들에 대한 SEI 메시지들의 이용을 수반한다. 이 안에서, IDR 화상의 규정은 그대로 변경되지 않은 채 남아 있지만, IDR 화상들을 코딩하기 위한 제약요건은 다음과 같이 완화된다.
모두가 0인 temporal_level, dependency_id 및 quality_level을 가진 한 화상이 IDR 화상이면, 같은 액세스 유닛 내 다른 모든 화상들이 IDR 화상들이다. 이러한 완화로 인해, 다른 값들을 가진 dependency_id나 quality_level 사이에서의 저에서 고 계층 스위칭을 행하는 IDR 화상들의 코딩이 가능하게 된다. 그러나, IDR 화상 규정은 변화되지 않기 때문에, 즉 temporal_level이 한 규모가변적 계층을 특정함에 있어 포함되지 않기 때문에, 시간상의 계층들 간 저에서 고 계층 스위칭의 문제는 여전히 해소되지 않은 채 남게 된다.
시간상의 계층들 간 저에서 고 계층 스위칭 문제를 해결하기 위해, 이들이 규모가변적 확장안을 이용해 코딩되든, H.264/AVC 표준 자체를 이용해 코딩되는지 여부에 따라, 위에서 논의된 제1안에 대해 기술된 것과 유사한 EIDR 화상 SEI 메시지가 사용되어, 그 SEI 메시지와 결부된 타깃 화상이 저에서 고 계층 스위칭에 사용될 수 있는 EIDR 화상이라는 것을 가리킨다. 그럼에도 불구하고, SEI 메시지들이 표준에 부합되는 디코더들에 있어서 옵션 사항이기 때문에, SEI 메시지에 의해 지시된 EIDR 화상은 참조 관리 기능을 가지지 못한다.
SEI의 신택스는, 비트 스트림 상의 저에서 고 계층 스위칭 포인트들의 시그날링을 위한 제1안에서의 것과 동일하다. 타깃 화상이 H.264/AVC 표준 자체를 이용하여 코딩될 때 그 어의구조 역시 동일하다. 타깃 화상이 규모가변적 확장을 이용해 코딩될 때, 그 어의구조는 다음과 같이 바뀐다.
EIDR 화상 SEI 메시지의 존재는, 타깃 화상이 EIDR 화상임을 가리키느데, 여기서, 그 화상 및 같은 계층에서 디코딩 순서상 다음에 오는 모든 코딩 화상들 (즉, EIDR 화상과 동일한 값들의 temporal_level, dependency_id 및 quality_level을 가짐)의 디코딩이, 디코딩 순서상 같은 계층에서 EIDR 화상 이전의 어떤 화상으로부터의 상호 예측 없이 디코딩될 수 있다. "temporal_layer_num"은 EDIR 화상의 temporal_level 값을 가리킨다. EIDR 화상이 규모가변적 확장을 이용해 코딩될 때 SEI 메시지들의 신택스로부터 신택스 엘리먼트 temporal_layer_num을 빼는 것 역시 가능하다.
비트 스트림 상에서 저에서 고 계층 스위칭 포인트들을 시그날링하기 위한 제4의 대안은, 모든 규모가변적 계층들에 대한 SEI 메시지들의 이용을 수반하다. 이 대안에서, EIDR 화상 SEI 메시지는 상기 제3안에서 정의된 메시지와 유사하며, SEI 메시지와 결부된 타깃 화상이 저에서 고 계층 스위칭에 사용될 수 있는 EIDR 화상임을 가리키는데 사용된다. 그러나, 이 특정 실시예에서, SEI 메시지는 서로 다른 값들의 dependency_id 또는 quality-level들 사이에서의 저에서 고 계층 스위칭 문제를 해결하기 위해서도 역시 사용된다.
도 3은 본 발명이 활용될 수 있는 시스템(10)을 보인 것으로서, 그 시스템은 네트워크를 통해 통신할 수 있는 여러 통신 장치들을 포함한다. 시스템(10)은 모바일 전화 네트워크, 무선 LAN (Local Area Network), 블루투스 개인 영역 네트워크, 이더넷 LAN, 토큰 링 LAN, 광역 네트워크, 인터넷 등등을 포함하나 이들에 국한되는 것은 아닌 유무선 네트워크들의 임의의 조합을 포함할 수 있다. 시스템(10)은 유선 및 무선 통신 장치들을 모두 포함할 수 있다.
예로서, 도 3에 도시된 시스템(10)은 모바일 전화 네트워크(11) 및 인터넷(28)을 포함한다. 인터넷(28)에 대한 접속은, 장거리 무선 접속, 단거리 무선 접속 및 전화선, 케이블 선, 전력선 등등을 포함하나 여기에 한정되는 것은 아닌 다양한 유선 접속들을 포함하나, 여기에 국한되는 것은 아니다.
예로 든 시스템(10)의 통신 장치들은 모바일 전화(12), 복합 PDA 및 모바일 전화(14), PDA(16), 통합 메시징 장치 (IMD, integrated messaging device)(18), 데스크 탑 컴퓨터(20), 및 노트북 컴퓨터(22)를 포함할 수 있으며, 상기 나열된 것에 국한하지 않는다. 통신 장치들은 정지형이거나, 이동하는 개인에 의해 소지되는 것 같은 이동형일 수 있다. 통신 장치들은 또한, 자동차, 트럭, 택시, 버스, 보트, 비행기, 자전거, 오토바이 등등을 포함하나 여기에 국한되지는 않은 교통 모드 상에 자리할 수도 있다. 통신 장치들 중 일부나 전부는 통화 및 메시지를 발신 및 수신하고 서비스 제공자들과 무선 접속(25)을 통해 기지국(24)까지 통신할 수 있다. 기지국(24)은 모바일 전화 네트워크(11) 및 인터넷(28) 사이에서 통신을 가능하게 하는 네트워크 서버(26)에 연결될 수 있다. 시스템(10)은 추가 통신 장치들 및 다른 종류의 통신 장치들을 포함할 수 있다.
통신 장치들은 CDMA (Code Division Multiple Access), GSM (Global System for Mobile Communications), UMTS (Universal Mobile Telecommunications System), TDMA (Time Division Multiple Access), FDMA (Frequency Division Multiple Access), TCP/IP (Transmission Control Protocol/Internet Protocol), SMS (Short Messaging Service), MMS (Multimedia Messaging Service), 이메일, IMS (Instant Messaging Service), 블루투스, IEEE 802.11 등등을 포함하나 여기 국한되는 것은 아닌 다양한 전송 기술들을 이용해 통신을 행할 수 있다. 통신 장치는 라디오, 적외선, 레이저, 케이블 접속 등등을 포함하나 거기에 국한되는 것은 아닌 다양한 매체를 이용해 통신을 행할 수 있다.
도 4 및 5는 본 발명이 구현될 수 있는 한 대표적 모바일 전화(12)를 보인 것이다. 그러나, 본 발명이 한 특정한 타입의 모바일 전화(12)나 기타 전자 기기에 한정되도록 의도되지는 않는다는 것을 알아야 한다. 도 4 및 5의 모바일 전화(12)는 하우징(30), 액정 디스플레이 형태의 디스플레이(32), 키패드(34), 마이크(36), 이어폰(38), 배터리(40), 적외선 포트(42), 안테나(44), 본 발명의 일 실시예에 따른 UICC 형태의 스마트 카드(46), 카드 리더(48), 라디오 인터페이스 회로(52), 코덱 회로(54), 컨트롤러(56) 및 메모리(58)를 포함한다. 개별 회로들 및 구성요소들은 모두 이 분야에 잘 알려져 있는 타입의 것들로서, 예를 들자면, 노키아의 모바일 전화기들에 속한 것들이 해당된다.
본 발명은 네트워크 환경하에서 컴퓨터들에 의해 실행되는 프로그램 코드 같은 컴퓨터 실행가능 명령들을 포함하는 프로그램 제품을 통해 일 실시예로서 구현될 수 있는 일반적인 방법의 단계들로서 기술되었다.
일반적으로, 프로그램 모듈들은 특정 작업들을 수행하거나 특정의 추상적 데이터 타입들을 구현하는 루틴들, 프로그램들, 오브젝트들, 컴포넌트들, 데이터 구조들 등등을 포함한다. 컴퓨터 실행가능 명령들, 관련 데이터 구조들, 및 프로그램 모듈들은 여기 개시된 방법의 단계들을 실행하기 위한 프로그램 코드의 예들을 나타낸다. 그러한 실행가능한 명령들 또는 관련 데이터 구조들의 특정 시퀀스는 그러한 단계들에서 설명된 기능들을 구현하기 위한 해당 동작들의 예들을 나타낸다.
본 발명의 소프트웨어 및 웹 구현물은, 다양한 데이터베이스 서치 단계들, 상관 단계들, 비교단계들 및 결정 단계들을 수행하기 위한 규칙 기반 로직 및 기타 로직을 갖춘 표준 프로그래밍 기술을 통해 구현될 수 있다. 명세서와 청구범위에서 사용된 "컴포넌트" 및 "모듈"이라는 말들은 소프트웨어 코드의 하나 이상의 라인들, 및/또는 하드웨어 구성, 및/또는 수동 입력 수취용 기기를 사용하는 구현물들을 포괄하도록 의도된 것임을 주지해야 한다.
본 발명의 실시예들에 대한 상기 내용은 예시 및 설명의 목적으로 제시된 것들이다. 그것이 본 발명의 전부가 되거나 개시된 특정 형태로 제한하고자 한 것이 아니고, 상기 개념들에 비춰 다양한 변경 및 치환이 가능하거나 본 발명의 실시로부터 획득될 수 있다. 실시예들은, 이 분야의 당업자가 본 발명을 다양한 실시예들과 숙고된 특정한 용도로 맞춰진 여러가지 변형을 통해 활용할 수 있도록 하는 본 발명의 원리들 및 그 실제적 어플리케이션을 설명하기 위해 선택 및 기술되었다.

Claims (8)

  1. 화상 시퀀스를 코딩된 화상 (coded picture)의 시퀀스로 인코딩하는 방법에 있어서, 상기 방법은
    상기 화상 시퀀스의 제 1 화상을 상기 코딩된 화상 시퀀스의 제 1 코딩된 참조 화상으로 인코딩하는 동작으로서, 상기 제 1 코딩된 참조 화상은 상기 제 1 코딩된 참조 화상의 시간 스케일러빌리티 (temporal scalability)를 나타내는 제 1 시간 레벨 값을 포함하는 동작;
    상기 제 1 화상의 인코딩 후에, 상기 화상 시퀀스의 제 2 화상을 상기 코딩된 화상 시퀀스의 제 2 코딩된 화상으로 인코딩하는 동작으로서, 상기 제 2 코딩된 화상은 상기 제 2 코딩된 화상의 시간 스케일러빌리티 (temporal scalability)를 나타내는 제 2 시간 레벨 값을 포함하는 동작; 및
    제 2 시간 레벨 값과 같거나 이보다 더 높은 상기 제 1 시간 레벨 값에 반응하여, 상기 제 1 코딩된 참조 화상을 참조를 위해 사용하지 않은 것으로 마킹하는 동작을 포함하며,
    상기 제 1 코딩된 참조 화상과 상기 제 2 코딩된 화상은 동일한 공간 스케일러빌리티 (spatial scalability) 계층 및 동일 품질 스케일러빌리티 계층에 존재하는, 방법.
  2. 제 1항에 있어서, 상기 제 1 코딩된 참조 화상을 참조를 위해 사용하지 않은 것으로 마킹하는 디코딩 프로세스를 유발하는 상기 제 2 코딩된 화상에 상응하는 표시 (indication)을 인코딩하는 동작을 더 포함하는 방법.
  3. 코딩된 화상의 시퀀스를 디코딩된 화상의 시퀀스로 디코딩하는 방법에 있어서, 상기 방법은
    상기 코딩된 화상 시퀀스의 제 1 코딩된 화상을 상기 디코딩된 화상 시퀀스의 제 1 디코딩된 참조 화상으로 디코딩하는 동작으로서, 상기 제 1 코딩된 화상은 상기 제 1 코딩된 화상의 시간 스케일러빌리티를 나타내는 제 1 시간 레벨 값을 포함하는 동작;
    상기 제 1 코딩된 화상의 디코딩 후에, 상기 코딩된 화상 시퀀스의 제 2 코딩된 화상을 상기 디코딩된 화상 시퀀스의 제 2 디코딩된 화상으로 디코딩하는 동작으로서, 상기 제 2 코딩된 화상은 상기 제 2 코딩된 화상의 시간 스케일러빌리티를 나타내는 제 2 시간 레벨 값을 포함하는 동작;
    상기 제 1 시간 레벨 값을 상기 제 2 시간 레벨 값과 비교하는 동작; 및
    상기 제 2 시간 레벨 값과 동일하거나 이보다 높은 상기 제 1 시간 레벨 값에 반응하여, 상기 제 1 디코딩된 참조 화상을 참조를 위해 사용하지 않는 것으로 마킹하는 동작을 포함하며,
    상기 제 1 코딩된 화상과 상기 제 2 코딩된 화상은 동일한 공간 스케일러빌리티 계층 및 동일한 품질 스케일러빌리티 계층에 존재하는 방법.
  4. 제 3항에 있어서, 상기 비교 동작 이전에, 상기 제 1 디코딩된 화상을 참조를 위해 사용하지 않은 것으로 표시하는 디코딩 프로세스를 야기하는 상기 제 2 코딩된 화상에 상응하는 표시를 디코딩하는 동작을 더 포함하는 방법.
  5. 화상 시퀀스를 코딩된 화상 시퀀스로 인코딩하는 전자 장치에 있어서, 상기 전자 장치는
    프로세서; 및
    상기 프로세서와 연결되어 동작하며 컴퓨터 프로그램을 포함하는 메모리 유닛을 포함하며, 상기 컴퓨터 프로그램은
    상기 화상 시퀀스의 제 1 화상을 상기 코딩된 화상의 제 1 코딩된 참조 화상 으로 인코딩하는 컴퓨터 코드로서, 상기 제 1 코딩된 참조 화상은 상기 제 1 코딩된 참조 화상의 시간 스케일러빌리티 (temporal scalability)를 나타내는 제 1 시간 레벨 값을 포함하는 컴퓨터 코드;
    상기 제 1 화상의 인코딩 후에, 상기 화상 시퀀스의 제 2 화상을 상기 코딩된 화상 시퀀스의 제 2 코딩된 화상으로 인코딩하는 컴퓨터 코드로서, 상기 제 2 코딩된 화상은 상기 제 2 코딩된 화상의 시간 스케일러빌리티 (temporal scalability)를 나타내는 제 2 시간 레벨 값을 포함하며, 상기 제 1 코딩된 참조 화상 및 상기 제 2 코딩된 화상은 동일 공간 스케일러빌리티 (spatial scalability) 계층 및 동일 품질 스케일러빌리티 계층에 존재하는 컴퓨터 코드; 및
    상기 제 2 시간 레벨 값과 같거나 이보다 더 높은 상기 제 1 시간 레벨 값에 반응하여, 상기 제 1 코딩된 참조 화상을 참조를 위해 사용하지 않은 것으로 마킹하는 컴퓨터 코드를 포함하는 전자 장치.
  6. 제 5항에 있어서, 상기 제 1 코딩된 참조 화상을 참조를 위해 사용하지 않은 것으로 마킹하는 디코딩 프로세스를 유발하는 상기 제 2 코딩된 화상에 상응하는 표시 (indication)을 인코딩하는 컴퓨터 코드를 더 포함하는 전자 장치.
  7. 코딩된 화상 시퀀스를 디코딩된 화상의 시퀀스로 디코딩하는 전자 장치에 있어서, 상기 전자 장치는
    프로세서; 및
    상기 프로세서와 연결되어 동작하며 컴퓨터 프로그램을 포함하는 메모리 유닛을 포함하며, 상기 컴퓨터 프로그램은
    상기 코딩된 화상 시퀀스의 제 1 코딩된 화상을 상기 디코딩된 화상 시퀀스의 제 1 디코딩된 참조 화상으로 디코딩하는 컴퓨터 코드로서, 상기 제 1 코딩된 화상은 상기 제 1 코딩된 화상의 시간 스케일러빌리티를 나타내는 제 1 시간 레벨 값을 포함하는 컴퓨터 코드;
    상기 제 1 코딩된 화상의 디코딩 후에, 상기 코딩된 화상 시퀀스의 제 2 코딩된 화상을 상기 디코딩된 화상 시퀀스의 제 2 디코딩된 화상으로 디코딩하는 컴퓨터 코드로서, 상기 제 2 코딩된 화상은 상기 코딩된 화상의 시간 스케일러빌리티를 나타내는 제 2 시간 레벨 값을 포함하며, 상기 제 1 코딩된 화상과 상기 제 2 코딩된 화상은 동일한 공간 스케일러빌리티 계층 및 동일한 품질 스케일러빌리티 계층에 존재하는 컴퓨터 코드;
    상기 제 1 시간 레벨 값을 상기 제 2 시간 레벨 값과 비교하는 컴퓨터 코드; 및
    상기 제 2 공간 레벨 값과 동일하거나 이보다 높은 상기 제 1 공간 레벨 값에 반응하여, 상기 제 1 디코딩된 참조 화상을 참조를 위해 사용하지 않는 것으로 마킹하는 컴퓨터 코드를 포함하는 전자 장치.
  8. 제 7항에 있어서, 상기 비교 동작 이전에, 상기 제 1 디코딩된 참조 화상을 참조를 위해 사용하지 않은 것으로 표시하는 디코딩 프로세스를 야기하는 상기 제 2 코딩된 화상에 상응하는 표시를 디코딩하는 컴퓨터 코드를 더 포함하는 전자 장치.
KR1020117018104A 2005-10-11 2006-10-11 효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법 KR101245576B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US72586805P 2005-10-11 2005-10-11
US60/725,868 2005-10-11
PCT/IB2006/002841 WO2007042916A1 (en) 2005-10-11 2006-10-11 System and method for efficient scalable stream adaptation

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020087011094A Division KR101125819B1 (ko) 2005-10-11 2006-10-11 효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20110106431A KR20110106431A (ko) 2011-09-28
KR101245576B1 true KR101245576B1 (ko) 2013-03-20

Family

ID=37942356

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020117018104A KR101245576B1 (ko) 2005-10-11 2006-10-11 효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법
KR1020087011094A KR101125819B1 (ko) 2005-10-11 2006-10-11 효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020087011094A KR101125819B1 (ko) 2005-10-11 2006-10-11 효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법

Country Status (15)

Country Link
US (2) US9635396B2 (ko)
EP (2) EP1935182B1 (ko)
JP (2) JP4950206B2 (ko)
KR (2) KR101245576B1 (ko)
CN (2) CN101317460A (ko)
AU (1) AU2006300881B2 (ko)
BR (1) BRPI0617728A8 (ko)
DE (1) DE602006051050C5 (ko)
HK (1) HK1149989A1 (ko)
MY (1) MY147530A (ko)
PL (1) PL2375749T3 (ko)
RU (1) RU2407217C2 (ko)
TW (1) TWI341136B (ko)
WO (1) WO2007042916A1 (ko)
ZA (1) ZA200803201B (ko)

Families Citing this family (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
EP2348640B1 (en) 2002-10-05 2020-07-15 QUALCOMM Incorporated Systematic encoding of chain reaction codes
US7418651B2 (en) 2004-05-07 2008-08-26 Digital Fountain, Inc. File download and streaming system
US8289370B2 (en) 2005-07-20 2012-10-16 Vidyo, Inc. System and method for scalable and low-delay videoconferencing using scalable video coding
US8670437B2 (en) 2005-09-27 2014-03-11 Qualcomm Incorporated Methods and apparatus for service acquisition
US8229983B2 (en) 2005-09-27 2012-07-24 Qualcomm Incorporated Channel switch frame
CN100456834C (zh) * 2005-10-17 2009-01-28 华为技术有限公司 H.264多媒体通信的服务质量监测方法
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
DE102006012449A1 (de) * 2006-03-17 2007-09-20 Benq Mobile Gmbh & Co. Ohg Verfahren zum Dekodieren eines Datenstroms und Empfänger
EP2005607B1 (en) * 2006-03-27 2016-09-07 Vidyo, Inc. System and method for management of scalability information in scalable video coding systems using control messages
ZA200807142B (en) * 2006-03-29 2010-02-24 Thomson Licensing Multi view video coding method and device
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US8699583B2 (en) 2006-07-11 2014-04-15 Nokia Corporation Scalable video coding and decoding
US8365060B2 (en) 2006-08-24 2013-01-29 Nokia Corporation System and method for indicating track relationships in media files
RU2435235C2 (ru) 2006-08-24 2011-11-27 Нокиа Корпорейшн Система и способ указания взаимосвязей треков в мультимедийном файле
CA2849697A1 (en) 2006-10-16 2008-04-24 Alexandros Eleftheriadis Systems and methods for signaling and performing temporal level switching in scalable video coding
KR101089072B1 (ko) 2006-11-14 2011-12-09 퀄컴 인코포레이티드 채널 전환용 시스템 및 방법
CA2669153A1 (en) 2006-11-15 2008-05-22 Qualcomm Incorporated Systems and methods for applications using channel switch frames
AU2007342468B2 (en) * 2007-01-05 2011-11-24 Interdigital Vc Holdings, Inc. Hypothetical reference decoder for scalable video coding
CN101622879B (zh) 2007-01-18 2012-05-23 诺基亚公司 以rtp净荷格式传输sei消息
EP3518547B1 (en) 2007-04-12 2021-10-06 InterDigital VC Holdings, Inc. Methods and apparatus for video usability information (vui) for scalable video coding (svc)
CN101056405B (zh) * 2007-04-24 2010-10-20 武汉大学 可伸缩视频流的一种快速切换方法
AP2923A (en) * 2007-05-04 2014-05-31 Nokia Corp Media stream recording into a reception hint trackof a multimedia container file
AU2008298602A1 (en) 2007-09-12 2009-03-19 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
KR101401967B1 (ko) * 2007-12-04 2014-06-27 삼성전자주식회사 암호화된 데이터 스트림의 트릭 플레이 방법 및 장치
EP2086237B1 (en) * 2008-02-04 2012-06-27 Alcatel Lucent Method and device for reordering and multiplexing multimedia packets from multimedia streams pertaining to interrelated sessions
IT1394245B1 (it) * 2008-09-15 2012-06-01 St Microelectronics Pvt Ltd Convertitore per video da tipo non-scalabile a tipo scalabile
TW201032597A (en) * 2009-01-28 2010-09-01 Nokia Corp Method and apparatus for video coding and decoding
WO2010117315A1 (en) * 2009-04-09 2010-10-14 Telefonaktiebolaget Lm Ericsson (Publ) Media container file management
US8719309B2 (en) * 2009-04-14 2014-05-06 Apple Inc. Method and apparatus for media data transmission
EP2453652B1 (en) * 2009-07-06 2019-09-04 Huawei Technologies Co., Ltd. Transmission method, receiving method and device for scalable video coding files
US8976871B2 (en) 2009-09-16 2015-03-10 Qualcomm Incorporated Media extractor tracks for file format track selection
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
CN102714715B (zh) * 2009-09-22 2016-01-20 高通股份有限公司 用于文件格式轨迹选择的媒体提取器轨迹
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
CN103119934B (zh) * 2010-07-20 2017-02-22 诺基亚技术有限公司 一种流媒体传输装置
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US8806050B2 (en) 2010-08-10 2014-08-12 Qualcomm Incorporated Manifest file updates for network streaming of coded multimedia data
US8928809B2 (en) * 2010-09-15 2015-01-06 Verizon Patent And Licensing Inc. Synchronizing videos
US8467324B2 (en) * 2010-11-03 2013-06-18 Broadcom Corporation Managing devices within a vehicular communication network
AU2012205650B2 (en) * 2011-01-14 2016-08-11 Vidyo, Inc. Improved NAL unit header
CA2824027C (en) 2011-01-14 2017-11-07 Vidyo, Inc. High layer syntax for temporal scalability
US9113172B2 (en) 2011-01-14 2015-08-18 Vidyo, Inc. Techniques for describing temporal coding structure
CN103053160B (zh) 2011-01-14 2016-11-16 太阳专利托管公司 图像编码方法及图像编码装置
PL2677751T3 (pl) * 2011-02-16 2021-10-25 Sun Patent Trust Sposób kodowania wideo i sposób dekodowania wideo
US20120287999A1 (en) * 2011-05-11 2012-11-15 Microsoft Corporation Syntax element prediction in error correction
DE102011078021A1 (de) * 2011-06-22 2012-12-27 Institut für Rundfunktechnik GmbH Vorrichtung und Verfahren zum Schalten von Echtzeitmedienströmen
US20130170561A1 (en) * 2011-07-05 2013-07-04 Nokia Corporation Method and apparatus for video coding and decoding
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
KR102047492B1 (ko) * 2012-03-12 2019-11-22 삼성전자주식회사 스케일러블 비디오 부호화 방법 및 장치, 스케일러블 비디오 복호화 방법 및 장치
CA2869132C (en) * 2012-04-06 2017-08-22 Vidyo, Inc. Level signaling for layered video coding
US9838684B2 (en) * 2012-04-11 2017-12-05 Qualcomm Incorporated Wavefront parallel processing for video coding
KR102096566B1 (ko) 2012-04-13 2020-04-02 지이 비디오 컴프레션, 엘엘씨 저지연 화상 코딩
US9609341B1 (en) * 2012-04-23 2017-03-28 Google Inc. Video data encoding and decoding using reference picture lists
KR101995270B1 (ko) 2012-04-25 2019-07-03 삼성전자주식회사 비디오 데이터를 재생하는 방법 및 장치
CN103843342B (zh) * 2012-06-12 2017-04-12 Lg电子株式会社 图像解码方法
US9313486B2 (en) 2012-06-20 2016-04-12 Vidyo, Inc. Hybrid video coding techniques
CA3095638C (en) 2012-06-29 2023-11-14 Ge Video Compression, Llc Video data stream concept
US9602827B2 (en) * 2012-07-02 2017-03-21 Qualcomm Incorporated Video parameter set including an offset syntax element
MX367928B (es) 2012-07-03 2019-09-12 Samsung Electronics Co Ltd Metodo y aparato para codificar video que tiene escalabilidad temporal y metodo y aparato para decodificar video que tiene escalabilidad temporal.
CA2878807C (en) * 2012-07-09 2018-06-12 Vid Scale, Inc. Codec architecture for multiple layer video coding
US9967583B2 (en) 2012-07-10 2018-05-08 Qualcomm Incorporated Coding timing information for video coding
WO2014051396A1 (ko) * 2012-09-27 2014-04-03 한국전자통신연구원 영상 부호화/복호화 방법 및 장치
US9706199B2 (en) * 2012-09-28 2017-07-11 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US20140092953A1 (en) * 2012-10-02 2014-04-03 Sharp Laboratories Of America, Inc. Method for signaling a step-wise temporal sub-layer access sample
US20150237372A1 (en) * 2012-10-08 2015-08-20 Samsung Electronics Co., Ltd. Method and apparatus for coding multi-layer video and method and apparatus for decoding multi-layer video
US9154785B2 (en) * 2012-10-08 2015-10-06 Qualcomm Incorporated Sub-bitstream applicability to nested SEI messages in video coding
KR20140087971A (ko) 2012-12-26 2014-07-09 한국전자통신연구원 계층적 비디오 부호화에서 다중참조계층을 적용한 화면간 부/복호화 방법 및 그 장치
KR101825575B1 (ko) * 2013-01-07 2018-02-05 노키아 테크놀로지스 오와이 비디오 코딩 및 디코딩 방법 및 장치
US20140218473A1 (en) * 2013-01-07 2014-08-07 Nokia Corporation Method and apparatus for video coding and decoding
US9596486B2 (en) * 2013-04-05 2017-03-14 Qualcomm Incorporated IRAP access units and bitstream switching and splicing
US9749627B2 (en) 2013-04-08 2017-08-29 Microsoft Technology Licensing, Llc Control data for motion-constrained tile set
US9674522B2 (en) * 2013-04-08 2017-06-06 Qualcomm Incorporated Device and method for scalable coding of video information
WO2014170547A1 (en) 2013-04-17 2014-10-23 Nokia Corporation An apparatus, a method and a computer program for video coding and decoding
JP6120667B2 (ja) * 2013-05-02 2017-04-26 キヤノン株式会社 画像処理装置、撮像装置、画像処理方法、プログラム、及び記録媒体
JP6361866B2 (ja) * 2013-05-09 2018-07-25 サン パテント トラスト 画像処理方法および画像処理装置
US10003815B2 (en) 2013-06-03 2018-06-19 Qualcomm Incorporated Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures
US20150016500A1 (en) * 2013-07-11 2015-01-15 Qualcomm Incorporated Device and method for scalable coding of video information
US9525883B2 (en) * 2013-07-15 2016-12-20 Qualcomm Incorporated Cross-layer alignment of intra random access point pictures
JP6514197B2 (ja) 2013-07-15 2019-05-15 ジーイー ビデオ コンプレッション エルエルシー ネットワーク装置およびエラー処理の方法
US10284858B2 (en) * 2013-10-15 2019-05-07 Qualcomm Incorporated Support of multi-mode extraction for multi-layer video codecs
EP2876890A1 (en) * 2013-11-21 2015-05-27 Thomson Licensing Method and apparatus for frame accurate synchronization of video streams
US9826232B2 (en) * 2014-01-08 2017-11-21 Qualcomm Incorporated Support of non-HEVC base layer in HEVC multi-layer extensions
CA2942838C (en) 2014-03-17 2019-10-01 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
JP2016015009A (ja) * 2014-07-02 2016-01-28 ソニー株式会社 情報処理システム、情報処理端末、および情報処理方法
GB2538997A (en) * 2015-06-03 2016-12-07 Nokia Technologies Oy A method, an apparatus, a computer program for video coding
US20170347084A1 (en) * 2016-05-27 2017-11-30 Intel Corporation Virtual reality panoramic video system using scalable video coding layers
US10326815B2 (en) * 2016-12-20 2019-06-18 LogMeln, Inc. Techniques for scalably sharing video through a streaming server
CN109327711A (zh) * 2018-10-22 2019-02-12 高斯贝尔数码科技股份有限公司 音视频的内容格式分层结构、加密方法、解密方法及终端
EP3891977A4 (en) * 2018-12-29 2022-06-22 Huawei Technologies Co., Ltd. METHOD AND DEVICE FOR INTRAPREDICTION
MX2021007999A (es) * 2018-12-31 2021-10-22 Huawei Tech Co Ltd Método y aparato de modelado lineal de componentes cruzados para intra predicción.
US20210352341A1 (en) * 2020-05-06 2021-11-11 At&T Intellectual Property I, L.P. Scene cut-based time alignment of video streams

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5988863A (en) * 1996-01-30 1999-11-23 Demografx Temporal and resolution layering in advanced television
US20060251169A1 (en) 2005-04-13 2006-11-09 Nokia Corporation Method, device and system for effectively coding and decoding of video data

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2126467A1 (en) * 1993-07-13 1995-01-14 Barin Geoffry Haskell Scalable encoding and decoding of high-resolution progressive video
US6480541B1 (en) * 1996-11-27 2002-11-12 Realnetworks, Inc. Method and apparatus for providing scalable pre-compressed digital video with reduced quantization based artifacts
US6269192B1 (en) * 1997-07-11 2001-07-31 Sarnoff Corporation Apparatus and method for multiscale zerotree entropy encoding
RU2201654C2 (ru) 1997-12-23 2003-03-27 Томсон Лайсенсинг С.А. Способ низкошумового кодирования и декодирования
US20030123546A1 (en) 2001-12-28 2003-07-03 Emblaze Systems Scalable multi-level video coding
EP1479245A1 (en) 2002-01-23 2004-11-24 Nokia Corporation Grouping of image frames in video coding
US6996173B2 (en) * 2002-01-25 2006-02-07 Microsoft Corporation Seamless switching of scalable video bitstreams
GB2386275B (en) * 2002-03-05 2004-03-17 Motorola Inc Scalable video transmissions
US20040006575A1 (en) 2002-04-29 2004-01-08 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
US20050226322A1 (en) * 2002-05-31 2005-10-13 Van Der Vleuten Renatus J Non-scalable to scalable video conversion method, scalable to non-scalable video conversion method
US7492387B2 (en) * 2002-08-05 2009-02-17 Chih-Lung Yang Implementation of MPCP MCU technology for the H.264 video standard
MY134659A (en) * 2002-11-06 2007-12-31 Nokia Corp Picture buffering for prediction references and display
US8194751B2 (en) * 2003-02-19 2012-06-05 Panasonic Corporation Moving picture coding method and moving picture decoding method
US20040260827A1 (en) * 2003-06-19 2004-12-23 Nokia Corporation Stream switching based on gradual decoder refresh
MXPA06006107A (es) * 2003-12-01 2006-08-11 Samsung Electronics Co Ltd Metodo y aparato de codificacion y decodificacion escalables de video.
US8503541B2 (en) * 2004-01-16 2013-08-06 Motorola Mobility Llc Method and apparatus for determining timing information from a bit stream
EP1638333A1 (en) 2004-09-17 2006-03-22 Mitsubishi Electric Information Technology Centre Europe B.V. Rate adaptive video coding
JP2008516556A (ja) 2004-10-13 2008-05-15 トムソン ライセンシング コンプレクシティスケーラブル映像符号化復号化方法及び装置
US7671894B2 (en) * 2004-12-17 2010-03-02 Mitsubishi Electric Research Laboratories, Inc. Method and system for processing multiview videos for view synthesis using skip and direct modes
EP1773063A1 (en) 2005-06-14 2007-04-11 Thomson Licensing Method and apparatus for encoding video data, and method and apparatus for decoding video data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5988863A (en) * 1996-01-30 1999-11-23 Demografx Temporal and resolution layering in advanced television
US20060251169A1 (en) 2005-04-13 2006-11-09 Nokia Corporation Method, device and system for effectively coding and decoding of video data

Also Published As

Publication number Publication date
EP2375749A3 (en) 2012-03-28
US20070110150A1 (en) 2007-05-17
JP2009512307A (ja) 2009-03-19
DE602006051050C5 (de) 2022-10-27
WO2007042916A1 (en) 2007-04-19
CN101317460A (zh) 2008-12-03
JP5337203B2 (ja) 2013-11-06
KR20080059639A (ko) 2008-06-30
PL2375749T3 (pl) 2017-03-31
CN101998123A (zh) 2011-03-30
EP1935182A4 (en) 2011-11-30
WO2007042916B1 (en) 2007-06-07
RU2008113747A (ru) 2009-11-20
TWI341136B (en) 2011-04-21
EP1935182B1 (en) 2016-11-23
AU2006300881A1 (en) 2007-04-19
ZA200803201B (en) 2009-03-25
JP4950206B2 (ja) 2012-06-13
BRPI0617728A8 (pt) 2016-05-10
EP1935182A1 (en) 2008-06-25
KR101125819B1 (ko) 2012-03-27
RU2407217C2 (ru) 2010-12-20
US20120027316A1 (en) 2012-02-02
MY147530A (en) 2012-12-31
US9635396B2 (en) 2017-04-25
CN101998123B (zh) 2015-03-18
KR20110106431A (ko) 2011-09-28
EP2375749A2 (en) 2011-10-12
HK1149989A1 (en) 2011-10-21
TW200727706A (en) 2007-07-16
JP2011223626A (ja) 2011-11-04
AU2006300881B2 (en) 2011-03-17
BRPI0617728A2 (pt) 2011-08-02
EP2375749B1 (en) 2016-11-23

Similar Documents

Publication Publication Date Title
KR101245576B1 (ko) 효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법
RU2697741C2 (ru) Система и способ предоставления указаний о выводе кадров при видеокодировании
RU2746934C9 (ru) Межуровневое предсказание для масштабируемого кодирования и декодирования видеоинформации
KR100984693B1 (ko) 규모가변적 비디오 코딩의 픽처 경계 기호
US20070086521A1 (en) Efficient decoded picture buffer management for scalable video coding
EP2589221B1 (en) Signaling random access points for streaming video data
CN101518087B (zh) 用于指示媒体文件中轨道关系的系统和方法
RU2437245C2 (ru) Сигнализация о множестве значений времени декодирования в медиафайлах
CN101507281A (zh) 媒体文件中的兴趣区域可缩放性信息的信号发送
EP2589222A1 (en) Signaling video samples for trick mode video representations
AU2011202791B2 (en) System and method for efficient scalable stream adaptation
Moiron et al. Video transcoding techniques

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160218

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170220

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180219

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200218

Year of fee payment: 8