KR102027410B1 - 계층화된 신호 품질 계층에서의 재구성 데이터의 송신 - Google Patents

계층화된 신호 품질 계층에서의 재구성 데이터의 송신 Download PDF

Info

Publication number
KR102027410B1
KR102027410B1 KR1020147004589A KR20147004589A KR102027410B1 KR 102027410 B1 KR102027410 B1 KR 102027410B1 KR 1020147004589 A KR1020147004589 A KR 1020147004589A KR 20147004589 A KR20147004589 A KR 20147004589A KR 102027410 B1 KR102027410 B1 KR 102027410B1
Authority
KR
South Korea
Prior art keywords
reconstruction data
quality level
signal
stream
reconstruction
Prior art date
Application number
KR1020147004589A
Other languages
English (en)
Other versions
KR20140071339A (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 KR20140071339A publication Critical patent/KR20140071339A/ko
Application granted granted Critical
Publication of KR102027410B1 publication Critical patent/KR102027410B1/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/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/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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Dc Digital Transmission (AREA)

Abstract

여기에 설명된 바와 같은 일 구성은 신호 프로세서를 포함한다. 신호 프로세서는, 저장소로부터 재구성 데이터를 리트리브한다. 재구성 데이터는, 다수의 품질 레벨들을 포함하는 계층화된 계층에 따라 인코딩된다. 신호 프로세서는 재구성 데이터의 선택된 부분들을 디코더 리소스에 송신한다. 디코더 리소스는, 재구성 데이터의 송신된 부분들에 기초하여 이미지들/프레임들과 같은 신호의 부분들의 렌디션들을 재구성한다. 송신 단계 동안, 신호 프로세서는 리트리브되고 디코더 리소스에 송신된 재구성 데이터의 품질 레벨을 변경시킨다. 또한, 종종, 신호 프로세서는, 신호의 특정한 부분들에 관련된 재구성 데이터의 특정한 품질 레벨들의 송신을 예상하거나 지연시켜, 그들이 재구성하게 하는 신호의 부분들의 본래의 시퀀스로부터 그 품질 레벨들의 재구성 데이터를 송신한다. 디코더 리소스는, 상이한 품질 레벨들에서 신호를 재생하기 위해, 수신된 재구성 데이터를 디코딩한다.

Description

계층화된 신호 품질 계층에서의 재구성 데이터의 송신{TRANSMISSION OF RECONSTRUCTION DATA IN A TIERED SIGNAL QUALITY HIERARCHY}
오늘날 인터넷 트래픽의 대부분은 비디오 콘텐츠로 구성되며, 비디오 콘텐츠 중 대부분은 비디오 스트리밍을 통해 송신된다. 동시에, 대부분의 TV 콘텐츠들은 현재 디지털 비디오 송신을 사용하여 브로드캐스팅된다.
그러나, 종래의 비디오 코덱들(예를 들어, MPEG 패밀리(family) 코덱들 또는 다른 주파수-변환 기반/블록-기반 코덱들)은 비디오 스트리밍을 유념하여 개발되지 않았는데, 이는 그들이 개발되었던 때에는 인터넷이 아직 초기단계였고 이용가능한 대역폭이 효율적인 비디오 스트리밍을 허용하지 않았기 때문이다.
결과적으로, 비디오 스트리밍 기능들이 부가되었던 경우, 메인(main) 알고리즘들 및 포맷들이 이미 정의되었으며, 가변적인/예측가능하지 않은 비트레이트들 및 가변/예측가능하지 않은 잡음을 제공할 수도 있는 디지털 채널들을 통한 비디오 송신의 콘텍스트에서 중요한 특성들을 허용하지 않았다.
예를 들어, 현재의 알고리즘들 및 비트레이트 포맷들은, (단일 인코딩된 파일로부터 시작하는) 스트리밍 서버들이 수신단의 특정한 디코더/디스플레이 디바이스의 특징들에 비디오 스트림의 품질 레벨을 동적으로 적응시키게 하지 않으며: 신호가 고품질로 인코딩되면, 수신단이 저해상도 디스플레이 디바이스(예를 들어, 모바일 전화기, 태블릿 등)를 보유할 경우라도, 그 신호는 (디코딩단에서 대역폭 및 계산 리소스들의 현저한 사용을 갖는) 풀(full) 해상도로 송신되어야 한다.
동일한 방식으로, 이용가능한 대역폭(예를 들어, 네트워크 혼잡(congestion) 또는 제한된 이용가능한 대역폭의 경우), 또는 디코더 디바이스에 의해 요청된 서비스(예를 들어, 스트림의 품질 레벨에 의존하는 페이-퍼-뷰(pay-per-view) 서비스)의 레벨에 비디오 스트림의 품질 레벨을 동적으로 적응시키는 것이 가능하지 않다.
다른 제한은, 매우 시각적인 "블로키(blocky)" 아티팩트(artifact)들이 (신호의 전체 블록들에 관련된 정보가 손상될 수도 있다는 사실의 결과로서) 나타나는 것이며, 잡음있는 채널들로 인한 송신에서의 에러들의 경우들에서, 아날로그 송신들에서 통상적이었던 더 우아한 신호 열화(graceful signal degradation)에 대한 가능성이 없다는 것이다.
또한, 전체 스트림을 다운로딩/버퍼링하는 것을 완료하기 전에, 디코더가 비디오 스트림의 낮은 품질 버전을 통해 브라우징(예를 들어, 고속 포워딩)하게 하는 것이 가능하지 않으며, 그 결과, 디코더 디바이스가 결코 재생되지 않을 신호의 세그먼트들을 또한 다운로딩해야 한다 (그 결과, 시간 및 대역폭이 낭비된다).
부가적으로, 현재의 알고리즘들 및 송신 포맷들은 일정한 비트 레이트들(CBR)의 경우에서 이용가능한 대역폭의 최상의 사용을 위해 엔지니어링되지 않으며, 그 결과, 그들은, 대부분의 정보를 포함하는 이미지들이 일정한 비트 레이트를 초과하지 않도록 신호를 인코딩해야 한다 (그 결과, 다른 이미지들 모두에 대해 CBR의 사용도를 낮춘다).
마지막으로, 종래의 MPEG 패밀리 코덱들은 구조적으로 비-병렬적이다. 이것은, 그들이 블록-기반이며, 효율적인 압축을 달성하기 위해, 모든 블록들이 몇몇 방식으로 서로에 의존하게 되어야 하므로, 각각의 이미지 블록이 순차적으로 인코딩 및 디코딩되어야 한다는 사실로부터 유래한다. 그 결과, 많은 독립적인 컴퓨팅 코어들/디바이스들에 의한 병렬 디코딩을 허용하도록 비트스트림이 또한 조직화되지 않는다.
그러한 제한들은, 비디오 스트리밍(2D 또는 멀티뷰)에 대해 사실이지만, 의료적 이미징, 과학적 이미징 등과 같은 분야들에서 점점 더 중요해지고 있는 3D 또는 볼륨(volumetric) 이미징의 효율적인 송신과 같은 점차 중요해지고 있는 애플리케이션의 다른 영역들로 이어진다(carry over).
여기에서의 실시예들은 종래의 시스템들 및 방법들을 벗어난다. 예를 들어, 여기에서의 실시예들은, 하나 또는 그 초과의 상이한 품질 레벨들로 신호의 렌디션(rendition)들을 재구성하기 위해 재구성 데이터를 사용하는 고유한 방식들에 관한 것이다.
더 상세하게, 여기에서의 일 실시예는, 저장소로부터 재구성 데이터를 리트리브(retrieve)하도록 구성된 신호 프로세서를 포함한다. 재구성 데이터는, 다수의 품질 레벨들을 포함하는 계층화된(tiered) 계층에 따라 인코딩된다. 신호 프로세서는 재구성 데이터의 선택된 부분들을 디코더 리소스에 송신한다. 디코더 리소스는 재구성 데이터의 송신된 부분들에 기초하여 신호의 렌디션들을 재구성한다. 송신 단계 동안, 저장소로부터 재구성 데이터를 리트리브하는 신호 프로세서는, 디코더 리소스에 송신되는 재구성 데이터의 품질 레벨을 변경시킨다. 디코더 리소스는 상이한 품질 레벨들에서 신호를 재생하기 위해, 수신된 재구성 데이터를 디코딩한다. 따라서, 신호는, 가장 높은 품질 레벨로 신호의 각각의 프레임을 재구성하기 위해 적절한 재구성 데이터를 포함하도록 인코딩될 수 있다. 그러나, 신호 프로세서는 디코더와 같은 원격 리소스에 재구성 데이터의 일부들을 선택적으로 송신하도록 구성될 수 있다.
일 실시예에서, 디코더 리소스에 송신되는 재구성 데이터의 품질 레벨을 변경시키는 것은: 신호의 제 1 부분의 재생을 위해 디코더 리소스에 재구성 데이터의 제 1 세트를 송신하는 것, 및 신호의 제 2 부분의 재생을 위해 디코더 리소스에 재구성 데이터의 제 2 세트를 송신하는 것을 포함할 수 있다. 재구성 데이터의 제 1 세트(예를 들어, 재구성 데이터의 X 층들)는, 계층화된 계층에서 제 1 품질 레벨에 따라 신호의 제 1 부분의 렌디션을 어떻게 재구성할지를 표시한다. 재구성 데이터의 제 2 세트(예를 들어, 재구성 데이터의 Y 층들)는, 계층화된 계층에서 제 2 품질 레벨에 따라 신호의 제 2 부분의 렌디션을 어떻게 재구성할지를 표시한다. X>Y인 경우, 제 1 품질 레벨은 제 2 품질 레벨보다 크고; Y>X인 경우, 그 반대가 참이다.
재구성 데이터의 층들은 다수의 상이한 이유들 때문에 상이한 품질 레벨들로 송신될 수 있다. 예를 들어, 재구성 데이터의 제 2 세트는, 네트워크 혼잡으로 인해, 제 1 신호 품질에 따라 재구성 데이터의 제 2 세트를 송신하는 것에 대한 무능력을 검출하는 것에 응답하여, 제 1 품질 레벨 대신에 제 2 품질 레벨로 신호 프로세서로부터 디코더 리소스로 송신될 수도 있다. 그러한 실시예에 따르면, 신호의 제 1 부분을 재구성하기 위한 재구성 데이터는 재구성 데이터의 X개의 품질 레벨들을 포함할 수 있고; 신호의 제 2 부분을 재구성하기 위한 재구성 데이터는 재구성 데이터의 Y개의 품질 레벨들을 포함할 수 있다. 송신된 데이터(예를 들어, 재구성 데이터)의 양을 감소시키는 것은, 디코더가 적어도 신호의 더 낮은 품질 레벨 버전을 재구성할 수 있게 한다. 일 실시예에서, 신호 프로세서는, 디코더 리소스에 의해 실질적으로 실시간으로 신호의 재생을 용이하게 하기 위해 재구성 데이터의 품질 레벨을 변경시킨다. 다른 실시예에 따르면, 신호 프로세서는, 제 1 신호 품질 레벨 대신에 제 2 품질 레벨로 재구성 데이터의 제 2 세트를 송신하기 위한 요청을 수신하는 것에 응답하여 제 2 품질 레벨로 재구성 데이터의 제 2 세트를 송신하도록 구성될 수 있다. 예를 들어, 디코더 리소스와 같은 소스는, 이전에 송신된 프레임 또는 프레임들의 세트들보다 더 높거나 더 낮은 품질에 따라 신호의 송신을 요청할 수 있다. 요청에 응답하여, 디코더 리소스는 요청된 품질 레벨로 재구성 데이터를 송신한다.
일 실시예에서, 신호 프로세서는, 신호의 다수의 연속적인 프레임들 각각 동안 실질적으로 일정한 비트 레이트의 계층화된 재구성 데이터를 디코더 리소스에 송신하기 위해, 신호의 다수의 프레임들 각각 동안 디코더 리소스에 송신된 재구성 데이터의 가장 높은 품질 레벨을 변경시킨다. 따라서, 디코더에 송신된 재구성 데이터의 품질 레벨은, 실질적으로 일정한 비트 레이트 데이터 스트림을 생성하기 위해 변경될 수 있다.
신호의 프레임들 동안의 재구성 데이터는, 저장소로부터 리트리브되고 신호 프로세서로부터 디코더 리소스로 포워딩되는 재구성 데이터의 레벨에 의존하여 상이한 품질 레벨에 따라 송신될 수 있다. 예를 들어, 일 실시예에서, 재구성 데이터의 품질 레벨을 변경시키는 것은: i) 신호의 제 1 부분에 대해, 저장소로부터 재구성 데이터를 리트리브하며, 계층에서 가장 낮은 품질 레벨로부터 제 1 품질 레벨까지 재구성 데이터의 시퀀스를 포함하도록 재구성 데이터의 제 1 세트를 생성하는 것; 및 ii) 신호의 제 2 부분에 대해, 저장소로부터 재구성 데이터를 리트리브하며, 계층에서 가장 낮은 품질 레벨로부터 제 2 품질 레벨까지 재구성 데이터의 시퀀스를 포함하도록 재구성 데이터의 제 2 세트를 생성하는 것을 포함할 수 있다. 언급된 바와 같이, 제 2 품질 레벨은 제 1 품질 레벨보다 더 높거나 더 낮을 수 있다. 신호 프로세서는, 제 1 신호 품질에 따라 신호의 제 1 부분의 재생을 위해 디코더 리소스에 재구성 데이터의 제 1 세트를 송신하고; 신호 프로세서는 제 2 품질 레벨에 따라 신호의 제 2 부분의 재생을 위해 디코더 리소스에 재구성 데이터의 제 2 세트를 송신한다.
추가적인 실시예들에 따르면, 신호 프로세서는, 신호의 다수의 부분들 각각 동안 재구성 데이터의 더 낮은 품질 레벨들을 송신하고, 후속하여 재구성 데이터의 더 높은 품질 레벨들을 송신하도록 구성될 수 있다. 예를 들어, 신호 프로세서는, 계층에서 제 1 품질 레벨에 따라 신호의 다수의 부분들을 재구성하도록 재구성 데이터를 포함하기 위해 재구성 데이터의 제 1 세트를 생성하도록 구성될 수 있다. 신호 프로세서는, 제 1 품질 레벨에 따라 신호 중에서의 네비게이션(navigation)을 가능하게 하기 위해 디코더 리소스에 재구성 데이터의 제 1 세트를 송신한다. 일 실시예에서, 재구성 데이터의 제 1 세트가 낮은 품질 레벨에 따라 재구성을 가능하게 하기 때문에, 재구성 데이터의 제 1 세트의 송신은 비교적 적은 시간에 달성될 수 있다. 디코더 리소스는, 각각의 사용자가 신호의 저해상도(예를 들어, 더 낮은 품질 레벨) 버전의 재생 중에서 (예를 들어, 고속 포워딩, 리버싱(reverse) 등과 같은 커맨드들을 통해) 신속하게 네비게이팅할 수 있게 하는 재구성 데이터의 제 1 세트의 재생을 개시할 수 있다. 저해상도 신호를 뷰잉하는 것에 기초하여, 사용자는 더 높은 레벨의 품질로의 재생을 위해 신호 내의 위치를 표시하는 포인터 값을 선택할 수 있다.
저해상도 데이터 스트림 내의 특정한 위치의 선택에 응답하여, 신호 프로세서는, 계층에서 제 2 품질 레벨에 따라 신호를 재구성하도록 재구성 데이터를 포함하기 위해 (잠재적으로, 포인터 값에 의해서와 같이 요청된 위치로부터 시작하는) 재구성 데이터의 제 2 세트를 생성한다. 신호 프로세서는, 더 높은 품질 레벨에 따라 신호의 제 2 부분의 재생을 위해 디코더 리소스에 재구성 데이터의 제 2 세트를 송신한다.
재구성 데이터의 제 1 세트(초기 송신)와 재구성 데이터의 제 2 세트(후속 송신)의 결합은, 제 2 품질 레벨에 따른 신호의 재생을 가능하게 한다. 더 상세하게, 상술된 바와 같은 네비게이션 예에 기초하여, 재구성 데이터(예를 들어, 더 높은 품질 레벨로 신호를 재구성하기 위한 재구성 데이터)의 제 2 세트는, 재구성 데이터의 제 1 세트에 관해 보충적인 재구성 데이터이다. 재구성 데이터의 제 2 세트는, 제 2 신호 품질에 따라 포인터 값에 따라서 신호의 부분들을 재구성하기 위해 재구성 데이터의 제 1 세트에 기초하여 생성된 신호의 렌디션을 어떻게 변경시킬지를 표시한다.
추가적인 실시예들에서, 재구성 데이터는, 디코더 리소스를 동작시키는 각각의 사용자가 디코더 리소스에 송신된 재구성 데이터의 품질 레벨에 의존하여 상이한 양의 요금 또는 금액을 과금받는 요금 스케줄에 기초하여 분배될 수 있다. 초기에, 사용자는 제 1 품질 레벨에 따라 재구성 데이터를 수신하고, 후속하여 제 2 의 더 높은 품질 레벨에 따라 콘텐츠를 재생하기 위해 부가적인 재구성 데이터의 송신을 요청할 수 있다.
추가적인 실시예들에 따르면, 재구성 데이터의 일부들이 재구성 데이터의 선택된 부분에 관한 디지털 권리 관리의 애플리케이션을 통해 보호될 수 있음을 유의한다. 예를 들어, 언급된 바와 같이, 신호의 각각의 부분(예를 들어, 이미지, 프레임, 부분 등)은, 신호의 렌디션을 재구성하기 위해 재구성 데이터의 각각의 계층화된 세트에 의해 정의될 수 있다. 재구성 데이터의 더 상위 층들을 이용한 디코딩은, 더 높은 품질 레벨에서의 신호의 재생을 가능하게 한다. 여기에서의 실시예들은, 재구성 데이터의 세트의 더 낮은 층들(예를 들어, 더 낮은 품질 레벨의 재구성 데이터)에 관해서만 디지털 권리 관리를 구현하는 것을 포함한다. 그러한 실시예에 따르면, 이것은, 더 낮은 품질 레벨에서의 재구성 데이터의 인가되지 않은 디코딩을 방지한다. 더 상위 층들의 재구성 데이터가 액세스가능하며, 디지털 권리 관리에 의해 보호되지 않을 수도 있다. 그러나, 그들이 디지털 권리 관리를 통해 보호되기 때문에, 더 낮은 품질 레벨의 재구성 데이터를 디코딩하기 위한 능력이 없다면, 인가되지 않은 디코더 리소스는, 신호의 의미있는 렌디션을 생성하기 위해 더 높은 품질 레벨의 재구성 데이터를 사용할 수 없다. 즉, 더 높은 품질 레벨의 재구성 데이터의 사용은, 대응하는 더 낮은 품질 레벨의 재구성 데이터의 성공적인 디코딩에 의존하며, 디지털 권리 관리에 의해 보호된다.
다른 실시예에 따르면, 신호 프로세서는, 신호의 재생을 가능하게 하도록 리던던트 인코딩을 포함하기 위해 하나 또는 그 초과의 품질 레벨로 재구성 데이터의 세트들을 생성할 수 있다. 낮은 품질 레벨의 재구성 데이터는, 에러의 발생(event) 시에, 더 낮은 품질 레벨의 재구성 데이터의 재생을 가능하게 하기 위해 리던던트 인코딩을 포함할 수 있다. 신호 프로세서는, 비-리던던트 인코딩을 포함하도록 더 높은 품질 레벨의 재구성 데이터를 생성한다. 따라서, 재구성 데이터를 수신하는 사용자는, 더 높은 품질 레벨의 재구성 데이터가 손상될 수도 있는 경우, 에러의 발생 시에 적어도 더 낮은 품질 레벨로 신호를 재생할 수 있을 가능성이 더 높다.
더 추가적인 실시예들에 따르면, 신호 프로세서는 재구성 데이터를 그룹화(grouping)들로 파싱(parse)하도록 구성될 수 있다. 일 실시예에서, 재구성 데이터의 그룹화들 각각은 신호의 시간-기반 부분(예를 들어, 이미지, 프레임, 세그먼트, 조각(piece) 등)을 표현한다. 재구성 데이터의 그룹화들 각각은, 계층에서 가장 낮은 품질 레벨로부터 더 높은 품질 레벨까지의 계층적으로 계층화된 재구성 데이터의 다수의 시퀀스들을 포함할 수 있다. 그러한 실시예에 따르면, 가장 낮은 품질 레벨로부터 더 높은 품질 레벨까지의 계층화된 재구성 데이터의 다수의 시퀀스들 각각은, 신호와 연관된 인접한 엘리먼트들의 각각의 타일의 셋팅들을 표시한다.
디코더 리소스로의 재구성 데이터의 송신은, 순차적인 순서로, 잇따라서(one after another), 비트 스트림에서 다수의 시퀀스들의 각각을 디코더에 직렬로 송신하는 것, 및 계층화된 재구성 데이터의 각각의 시퀀스에 대한 각각의 타일의 각각의 시작부 및 종료부를 표시하기 위해 비트 스트림에 마커 정보를 제공하는 것을 포함할 수 있다. 디코더 리소스는 다수의 프로세서들을 포함할 수 있으며, 그들 각각은 재구성 데이터의 타일을 생성하기 위해 다수의 시퀀스들 중 하나를 디코딩하도록 구성된다. 타일들의 결합은, 더 높은 품질 레벨로 신호의 렌디션을 획득하는데 사용되는 재구성 데이터를 생성한다.
대안적으로, 신호의 일부에 대한 재구성 데이터의 송신은, 신호의 일부와 연관된 다수의 시퀀스들에 대해 더 낮은 품질 레벨들에서의 재구성 데이터로부터 더 높은 품질 레벨에 대한 재구성 데이터 시작하는 비트 스트림에서, 계층화된 재구성 데이터를 송신하는 것을 포함할 수 있다. 신호 프로세서는, 각각의 품질 레벨에 대한 계층화된 재구성 데이터의 각각의 시작부 및 종료부를 표시하기 위해 비트 스트림에 마커 정보를 제공할 수 있다.
신호 프로세서는, 데이터 스트림의 다수의 부분들을 통해 신호의 주어진 부분에 대한 재구성 데이터를 송신하도록 구성될 수 있다. 예를 들어, 일 실시예에서, 신호 프로세서는, 제 1 세그먼트 및 제 2 세그먼트를 적어도 포함하는 다수의 세그먼트들로, 재구성 데이터를 전송하기 위한 데이터 스트림을 분할한다. 데이터 스트림의 제 1 세그먼트는 신호의 제 1 이미지/프레임을 재생하기 위한 재구성 데이터를 포함하고; 데이터 스트림의 제 2 세그먼트는 신호의 제 2 이미지/프레임을 재생하기 위한 재구성 데이터를 포함한다.
일 실시예에서, 신호 프로세서는, 신호의 제 1 이미지/프레임을 재구성하기 위한 재구성 데이터의 다수의 품질 레벨들을 포함하도록 데이터 스트림의 제 1 세그먼트를 거주(populate)시키며; 신호 프로세서는, i) 신호의 제 2 이미지/프레임을 재구성하기 위한 재구성 데이터의 다수의 품질 레벨들, 및 ii) 신호의 제 1 이미지/프레임을 재구성하기 위한 재구성 데이터의 적어도 하나의 품질 레벨을 포함하도록 데이터 스트림의 제 2 세그먼트를 거주시킨다. 따라서, 신호의 각각의 부분에 대해 전용된 데이터 스트림의 대응하는 세그먼트에서 신호의 그 각각의 부분에 대한 재구성 데이터를 송신하는 것 대신에, 신호의 일부에 대한 재구성 데이터는 데이터 스트림의 다수의 세그먼트들을 통해 확산될 수 있다.
디코더 리소스는 신호 프로세서에 의해 송신된 데이터 스트림을 버퍼링하도록 구성될 수 있다. 예를 들어, 디코더는, 데이터 스트림의 제 1 세그먼트 내의 재구성 데이터 및 데이터 스트림의 제 2 세그먼트 내의 (그리고, 잠재적으로는 또한, 부가적인 추가의 세그먼트들 내의) 재구성 데이터의 다수의 품질 레벨들에 기초하여 신호의 제 1 이미지/프레임을 재구성한다. 신호 프로세서는, 제 2 세그먼트 내의 재구성 데이터의 다수의 품질 레벨들에 기초하여 신호의 제 2 이미지/프레임을 재구성한다. 이러한 방식으로, 더 높은 품질 레벨의 재구성 데이터가 각각의 데이터 스트림에서 확산될 수 있다.
이들 및 다른 실시예 변경들이 더 상세히 후술된다.
상술된 바와 같이, 여기에서의 실시예들이, 여기에 기재된 방법 동작들 중 임의의 방법 동작 또는 모든 방법 동작을 수행하고 그리고/또는 지원하기 위해 하나 또는 그 초과의 컴퓨터화된 디바이스들, 라우터들, 네트워크, 워크스테이션들, 핸드헬드 또는 랩탑 컴퓨터들 등의 구성을 포함할 수 있음을 유의한다. 즉, 하나 또는 그 초과의 컴퓨터화된 디바이스들 또는 프로세서들은, 상이한 실시예들을 수행하기 위해 여기에 설명된 바와 같이 동작하도록 프로그래밍되고 그리고/또는 구성될 수 있다.
상술된 업샘플링에 부가하여, 여기에서의 또 다른 실시예들은, 상기 요약되고 아래에 상세히 기재되는 단계들 및 동작들을 수행하기 위한 소프트웨어 프로그램들을 포함한다. 그러한 일 실시예는, 프로세서 및 대응하는 메모리 및/또는 프로그램들을 갖는 컴퓨터화된 디바이스에서 수행될 경우, 프로세서로 하여금 여기에 기재된 동작들 중 임의의 동작을 수행하게 하는, 상부에 인코딩된, 컴퓨터 프로그램 로직, 명령들 등을 포함하는 컴퓨터-판독가능 하드웨어 저장 리소스(즉, 비-일시적인 컴퓨터 판독가능 매체들)를 포함한다. 그러한 어레인지먼트(arrangement)들은, 광학 매체(예를 들어, CD-ROM), 플로피 또는 하드 디스크와 같은 컴퓨터 판독가능 매체 또는 하나 또는 그 초과의 ROM 또는 RAM 또는 PROM 칩들 내의 펌웨어 또는 마이크로코드와 같은 다른 매체 상에 배열 또는 인코딩된 소프트웨어, 코드, 및/또는 다른 데이터(예를 들어, 데이터 구조들)로서, 또는 주문형 집적 회로(ASIC)로서 제공될 수 있다. 소프트웨어 또는 펌웨어 또는 다른 그러한 구성들은, 컴퓨터화된 디바이스가 여기에 설명된 기술들을 수행하게 하도록 컴퓨터화된 디바이스 상으로 인스톨될 수 있다.
따라서, 본 발명의 특정한 일 실시예는, 신호 프로세싱 동작들을 지원하기 위한 명령들이 저장된 컴퓨터-판독가능 하드웨어 저장 매체를 포함한 컴퓨터 프로그램 물건에 관한 것이다. 예를 들어, 일 실시예에서, 각각의 컴퓨터 디바이스의 프로세서에 의해 수행될 경우, 명령들은 프로세서로 하여금: 저장소로부터 재구성 데이터를 리트리브하게 하고 - 리트리브된 재구성 데이터는 다수의 품질 레벨들을 포함하는 계층화된 계층에 따라 인코딩됨 -; 리트리브된 재구성 데이터를 디코더에 송신하게 하며 - 디코더는, 송신된 재구성 데이터에 기초하여 신호의 렌디션들을 재구성하도록 구성됨 -; 그리고, 송신 동안, 리트리브되고 디코더에 송신된 재구성 데이터의 품질 레벨을 변경시키게 한다.
단계들의 순서는 명확화의 목적을 위해 부가되었다. 이들 단계들은 임의의 적절한 순서로 수행될 수 있다.
본 발명의 일 실시예들은, 상기 요약되고 아래에 상세히 기재되는 방법 실시예의 단계들 및 동작들 중 임의의 단계 및 동작을 수행하기 위한 소프트웨어 프로그램들, 펌웨어, 및/또는 각각의 하드웨어를 포함한다.
또한, 여기에 설명된 바와 같은 시스템, 방법, 장치, 컴퓨터 판독가능 저장 매체들 상의 명령들 등이 소프트웨어 프로그램으로서, 소프트웨어, 펌웨어, 및/또는 하드웨어의 하이브리드로서, 또는 프로세서 내에서, 또는 운영 시스템 내에서, 또는 소프트웨어 애플리케이션 등과 같은 하드웨어 단독으로 엄격히 구현될 수 있음을 이해할 것이다.
상술된 바와 같이, 여기에서의 기술들은 신호들을 인코딩하는 소프트웨어, 펌웨어, 및/또는 하드웨어 애플리케이션들에서의 사용에 매우 적합하다. 그러나, 여기에서의 실시예들이 그러한 애플리케이션들에서의 사용으로 제한되지 않으며, 여기에 설명된 기술들이 다른 애플리케이션들에 또한 매우 적합함을 유의해야 한다.
부가적으로, 여기에서의 상이한 특성들, 기술들, 구성들 등의 각각이 본 발명의 상이한 부분들에서 설명될 수도 있지만, 개념들 각각이 서로 독립적으로 또는 서로 결합하여 실행될 수 있다고 의도됨을 유의한다. 따라서, 여기에 설명된 바와 같은 하나 또는 그 초과의 본 발명의 발명들, 실시예들 등은 많은 상이한 방식들로 구현 및 뷰잉될 수 있다.
또한, 여기에서의 실시예들의 이러한 예비(preliminary) 설명이 본 발명 또는 청구된 발명(들)의 모든 각각의 실시예 및/또는 증분적으로 신규한 양상을 특정하지 않음을 유의한다. 대신, 이러한 간략한 설명은 단지, 종래의 기술들에 비해 신규성있는 일반적인 실시예들 및 대응하는 포인트들만을 제공한다. 본 발명(들)의 부가적인 세부사항들 및/또는 가능한 관점들(치환들)에 대해, 독자는 추가적으로 후술될 바와 같은 본 발명의 상세한 설명 및 대응하는 도면들로 안내된다.
본 발명의 상기 및 다른 목적들, 특성들, 이점들은, 첨부한 도면들에 도시된 바와 같이, 여기에서의 바람직한 실시예들의 다음의 더 특정한 설명으로부터 명백해질 것이며, 도면에서, 유사한 참조 부호들은 상이한 도면들 전반에 걸쳐 동일한 부분들을 지칭한다. 도면들은 반드시 축적에 맞게 도시될 필요가 없으며, 대신, 강조가 실시예들, 원리들, 개념들 등을 도시할 시에 배치된다.
도 1은 여기에서의 실시예들에 따른, 재구성 데이터의 생성 및 사용을 도시한 예시도이다.
도 2는 여기에서의 실시예들에 따른, 서브-엘리먼트들로의 모(parent) 엘리먼트들의 분할을 도시한 예시도이다.
도 3은 여기에서의 실시예들에 따른, 재구성 데이터를 프로세싱, 포워딩, 및 디코딩하는 것을 도시한 예시도이다.
도 4는 여기에서의 실시예들에 따른, 재구성 데이터의 상이한 품질 레벨들을 포함하는 데이터 스트림을 도시한 예시도이다.
도 5는 여기에서의 실시예들에 따른, 디코더로 포워딩된 재구성 데이터의 품질 레벨에서의 변화들을 도시한 예시도이다.
도 6은 여기에서의 실시예들에 따른, 디코더로 포워딩된 재구성 데이터의 품질 레벨에서의 변화들을 도시한 예시도이다.
도 7은 여기에서의 실시예들에 따른, 더 낮은 품질 레벨의 재구성 데이터의 그룹의 송신, 후속하는 더 높은 품질 레벨의 재구성 데이터의 송신을 도시한 예시도이다.
도 8은 여기에서의 실시예들에 따른, 재구성 데이터의 분배를 위한 요금 구조를 도시한 예시도이다.
도 9는 여기에서의 실시예들에 따른, 하나 또는 그 초과의 더 낮은 품질 레벨들에서의 디지털 권리 관리의 사용을 도시한 예시도이다.
도 10은 여기에서의 실시예들에 따른, 하나 또는 그 초과의 더 낮은 품질 레벨들에서의 재구성 데이터에 대한 리던던시 정보를 도시한 예시도이다.
도 11a 및 도 11b는 여기에서의 실시예들에 따른, 다수의 타일들 각각에 대한 재구성 데이터를 도시하는 예시도들이다.
도 12는 여기에서의 실시예들에 따른, 다수의 타일들 각각에 대한 재구성 데이터의 상이한 방식들을 도시한 예시도이다.
도 13은 여기에서의 실시예들에 따른, 재구성 데이터의 버퍼링을 도시한 예시도이다.
도 14는 여기에서의 실시예들에 따른, 컴퓨터 코드, 펌웨어, 소프트웨어, 애플리케이션, 로직 등을 실행하기 위한 예시적인 컴퓨터 아키텍처를 도시한 다이어그램이다.
도 15는 여기에서의 실시예들에 따른, 재구성 데이터를 이용하는 방법을 도시한 예시적인 흐름도이다.
도 1은 여기에서의 실시예들에 따른, 재구성 데이터의 생성을 도시한 예시도이다.
도시된 바와 같이, 신호 프로세서(100-1)는 계층에서 더 낮은 품질 레벨들의 상이한 렌디션들로 신호(115)를 다운샘플링한다. 일반적으로, 신호(115)를 다운샘플링하는 것은, 상이한 품질 레벨들 각각으로 신호의 렌디션을 생성하는 것, 및 제 1 품질 레벨의 신호의 주어진 렌디션을 계층 내의 다음의 더 높은 품질 레벨의 신호의 렌디션으로 어떻게 변환할지를 특정하는 재구성 데이터를 생성하는 것을 포함할 수 있다. 신호 프로세서(100-2)는, 상이한 품질 레벨들로 신호의 렌디션들을 재구성하도록 재구성 데이터(150)를 이용한다. 신호 프로세서(100-2)는 임의의 적절한 소스(예를 들어, 통신 링크, 저장 디바이스 등)로부터 재구성 데이터(150)를 수신할 수 있다.
신호(115)의 렌디션과 연관된 값들 및 더 낮은 품질 레벨들에서의 신호의 대응하는 렌디션이 임의의 적절한 타입의 데이터 정보를 표현할 수 있음을 유의한다. 비-제한적인 예로서, 신호(115)는, 각각의 이미지 등에서 다수의 신호 엘리먼트들(예를 들어, 화소(pel)들/평면 엘리먼트들, 픽셀들/화상 엘리먼트들, 복셀(voxel)들/볼륨 화상 엘리먼트들 등)의 각각의 셋팅들을 표시하는 오디오 데이터, 이미지 데이터(예를 들어, 스틸(still) 또는 동영상(moving), 비디오, 이미지들, 프레임들, 모션 맵들, 잔여(residual) 데이터 등), 심볼들, 볼륨 데이터 등일 수 있다. 일 실시예에서, 신호(115)의 하나 또는 그 초과의 컴포넌트들 또는 엘리먼트들의 각각은 각각의 컬러 셋팅을 정의할 수 있다. 그러한 일 실시예에 따르면, 신호 데이터에 의해 특정된 바와 같은 엘리먼트의 컬러 컴포넌트는, YUV, RGB, HSV 등과 같은 적절한 컬러 공간 표준에 따라 인코딩된다. 재구성 데이터(150)는, 신호(115)의 렌디션들에서 각각의 엘리먼트에 대한 하나 또는 그 초과의 셋팅들을 어떻게 생성할지를 특정한다. 재구성 데이터(150)는 속성 셋팅들의 다수의 평면들을 특정하도록 구성될 수 있다.
비-제한적인 예로서, 신호(115)에 의해 표현된 이미지는, 2차원(예를 들어, 화상, 비디오 프레임들, 2D 모션 맵들 등), 3차원(예를 들어, 3D/볼륨 이미지들, 홀로그래픽 이미지들, CAT-스캔들, 의료/과학적 이미지들, 3D 모션 맵들 등), 또는 심지어 3차원들을 초과하는 피쳐(feature), 시간-기반 신호(예를 들어, 오디오 신호, 비디오 신호 등) 등일 수 있다. 신호(115)가 3-D 신호를 표현할 경우, 각각의 엘리먼트는 볼륨 엘리먼트이다. 간략화를 위해, 여기에 도시된 실시예들은 종종, 예를 들어, 화상과 같은 셋팅들의 2D 평면들로서 디스플레이된 이미지들(예를 들어, 적절한 컬러 공간 내의 2D 이미지들)을 지칭한다. 그러나, 동일한 개념들 및 방법들이 또한 임의의 다른 타입의 신호에 적용가능하다.
신호 엘리먼트들 또는 컴포넌트들의 셋팅들은, 각각의 재생 디바이스 상에서의 재생을 위해 본래의(original) 신호를 어떻게 재구성할지를 표시한다. 설명된 바와 같이, 재구성 데이터(150)는 재구성 데이터(150)의 다수의 평면들을 포함할 수 있다. 많은 파라미터들이 신호(115)의 주어진 엘리먼트에 대한 셋팅들을 정의하는데 필요할 수도 있다.
추가적인 실시예들에 따르면, 신호(115)가 다수의 엘리먼트들을 포함하는 본래의 신호 또는 고해상도 신호를 표현할 수 있음을 유의한다. 그러한 실시예에서, 신호의 렌디션들(예를 들어, 신호(115-3)의 렌디션, 신호(115-2)의 렌디션, 신호(115-1)의 렌디션...)의 각각은, 신호(115)로부터 더 낮은 품질 레벨로 다운샘플링되었던 본래의 신호의 썸네일(thumbnail) 표현과 유사할 수 있다. 더 높은 품질 레벨들에서의 신호(115)의 렌디션들은 더 상세한 재생 정보를 포함한다.
일 실시예에서, 더 낮은 품질 레벨들에서의 신호(115)의 렌디션들은, 본래의 신호의 더 상세하고 더 정밀한 속성들이 아니라 본래의 신호의 더 코오스한(coarse) 속성들을 캡쳐한다. 더 상세하고 더 정밀한 속성들은 더 높은 품질 레벨들의 신호의 렌디션에서 나타난다.
추가적인 비-제한적인 예로서, 일 실시예에서, 신호 프로세서(100-1)는 본래의 신호(115)를 신호의 렌디션(115-3)으로 다운샘플링하고; 신호 프로세서(100-1)는 신호의 렌디션(115-3)을 신호의 렌디션(115-2)으로 다운샘플링하고; 신호 프로세서(100-1)는 신호의 렌디션(115-2)을 신호의 렌디션(115-1)으로 다운샘플링하며; 가장 낮은 품질 레벨로 기타 등등을 행한다. 신호(115)는 가장 높은 품질 레벨로부터 임의의 수의 적절한 레벨들로 다운샘플링될 수 있다.
설명된 바와 같이, 신호(115)의 렌디션을 각각의 더 낮은 품질 레벨로 다운샘플링할 경우, 신호 프로세서(110-1)는 각각의 재구성 데이터(150)를 생성한다. 각각의 레벨의 재구성 데이터는, 더 낮은 품질 레벨의 신호의 렌디션을 다음의 더 높은 품질 레벨의 신호의 렌디션으로 어떻게 업샘플링, 변환, 변경 등을 행하는지를 표시한다. 예를 들어, 재구성 데이터(150-1)는, 신호의 렌디션(115-0)을 신호의 렌디션(115-1)으로 어떻게 변환하는지를 표시하고; 재구성 데이터(150-2)는, 신호의 렌디션(115-1)을 신호의 렌디션(115-2)으로 어떻게 변환하는지를 표시하고; 재구성 데이터(150-3)는, 신호의 렌디션(115-2)을 신호의 렌디션(115-3)으로 어떻게 변환하는지를 표시하며; 기타 등등을 행한다.
재구성 데이터(150)는, 더 높은 품질 레벨로 신호(115)를 어떻게 재구성하는지를 표시하는 다수의 상이한 타입들의 데이터 중 임의의 데이터를 포함할 수 있다. 예를 들어, 재구성 데이터는, 상이한 레벨들로 신호(115)를 재구성하기 위해, 업샘플링 동작들의 파라미터들, 양자화 임계치 정보, 잔여 데이터, 모션 구역들, 모션 벡터들, 잡음에 대한 스펙트럼 정보, 메타-데이터, 조정치들, 클래스 정보 등과 같은 상이한 타입들의 재구성 데이터의 하나 또는 그 초과의 세트들, 평면들 등 중 임의의 것을 포함한다.
각각의 신호를 다운샘플링하고 재구성 데이터를 생성하는 부가적이고 비-제한적이며 예시적인 세부사항들에서, 신호 프로세서는, 하나의 품질 레벨로부터 다른 품질 레벨로 신호의 렌디션을 변환하기 위해 재구성 데이터의 상이한 세트들을 테스트 및 생성하도록 구성될 수 있다.
설명된 바와 같이, 재구성 데이터(150)는 신호 프로세싱에 대한 임의의 적절한 데이터를 포함할 수 있다. 예를 들어, 재구성 데이터(150)의 각각의 세트는 메타데이터, 잔여 데이터 등을 포함할 수 있다. 메타데이터는, 하나의 품질 레벨로부터 다른 품질 레벨로 신호의 렌디션을 변환할 하나 또는 그 초과의 업샘플링 동작들의 세트와 같은 데이터를 포함할 수 있고; 잔여 데이터는, 상이한 품질 레벨들에서 신호 엘리먼트들에 행해질 조정들과 같은 정보를 표시할 수 있으며, 기타 등등이다. 더 상세하게, 일 실시예에서, 재구성 데이터(150)는 컬러 또는 엘리먼트들, 강도, 업샘플 동작들, 업샘플링 동작들의 파라미터들, 양자화 임계치들, 이미지/프레임 내의 잔여 데이터, 모션 구역들, 모션 벡터들, 이전 이미지/프레임으로부터 도래하는 엘리먼트들의 운동보상(motocompensation) 이후 적용할 조정들을 표시하는 잔여 데이터, 잡음에 대한 특수한 정보, 다른 메타-데이터 등과 같은 파라미터들을 표시하는 멀티-평면 엘리먼트 셋팅 정보를 특정할 수 있다.
재구성 데이터의 세트들이, 제 1 품질 레벨의 신호의 렌디션을 다음의 더 높은 품질 레벨의 신호의 렌디션으로 업샘플링하는 동안 행해질 조정들을 표시하는 잔여 데이터를 포함할 수 있음을 다시 유의한다.
여기에서의 실시예들은, 재구성 데이터(150)를 인코딩하는데 필요한 비트들, 심볼들 등의 양을 감소시키기 위해 상속(inheritance)을 이용하는 것을 포함한다. 예를 들어, 더 낮은 품질 레벨들의 신호의 렌디션들에서의 엘리먼트들은 특정한 셋팅 정보를 할당받는다. 특정한 경우들에서, 더 낮은 품질 레벨의 각각의 엘리먼트에 할당된 셋팅 정보는, 더 높은 품질 레벨의 각각의 엘리먼트의 세분(subdivision)들을 위해 재사용될 수 있다. 즉, 하나의 품질 레벨의 모 엘리먼트는 다음의 품질 레벨에 대한 다수의 서브-엘리먼트들로 분할될 수 있다. 각각의 서브-엘리먼트(및 서브-엘리먼트가 더 높은 품질 레벨들에서 분할되는 대응하는 서브-엘리먼트들)는, 모 엘리먼트의 속성 셋팅들 중 하나 또는 그 초과를 상속할 수 있다.
이러한 예시에서, 각각의 서브-엘리먼트에 대한 모의 셋팅들을 복제하기 위해 더 높은 품질 레벨들로 재구성 데이터를 인코딩하기보다는, 여기에서의 실시예들은, 서브-엘리먼트들이 모 엘리먼트의 속성 셋팅들을 상속하는지를 신호 프로세서(100-2)(예를 들어, 디코더)에 통지하기 위해 적절한 심볼들을 사용하는 것을 포함한다.
추가적인 실시예들에 따르면, 신호 프로세서(100-2)는 계층에서 제 1 품질 레벨로 신호(115)를 재구성하기 위해 재구성 데이터(150)를 수신한다. 신호 프로세서(100-2)는 각각의 통신 링크를 통해 재구성 데이터(150)를 수신할 수 있다.
도 2는 여기에서의 실시예들에 다른, 제 1 품질 레벨의 각각의 모 엘리먼트들을 다음의 더 높은 품질 레벨의 다수의 서브-엘리먼트들로 분할하는 것을 도시한 예시도이다.
일 실시예에서, 신호(115)는 이미지 정보를 표현한다. 이러한 비-제한적인 예에서, 신호(115) 및 대응하는 재구성 데이터가 주어진 스캐일 인자(예를 들어, 이러한 비-제한적인 예에서, 2의 스캐일 인자)를 이용하여 저해상도 이미지를 고해상도 이미지로 어떻게 변환 또는 확장하는지를 표시한다.
추가적으로, 인코딩된 재구성 데이터(150)의 세트들이, 디코딩될 경우, 각각의 품질 레벨에서 이미지 엘리먼트들의 셋팅들을 어떻게 제어하는지를 표시한다고 가정한다. 예를 들어, 품질 레벨 J의 이미지(210-1)는 이미지 엘리먼트 W의 필드를 포함하고; 품질 레벨 J+1의 이미지(210-2)는 이미지 엘리먼트 X의 필드를 포함하고; 이미지(210-3)는 이미지 엘리먼트 Y의 필드를 포함하며; 기타 등등이 존재한다.
품질 레벨 J에 대한 재구성 데이터는, 이미지(210-1) 내의 이미지 엘리먼트들 W(예를 들어, 신호(115-0)의 렌디션)의 셋팅들을 어떻게 제어하는지를 표시하고; 품질 레벨 J+1에 대한 재구성 데이터는, 이미지(210-2) 내의 4개의 X 엘리먼트들로 분할되는 이미지(210-1) 내의 각각의 이미지 엘리먼트 W에 대한 셋팅 정보를 어떻게 변환 및 생성하는지를 표시하고; 품질 레벨 J+2에 대한 재구성 데이터는, 이미지(210-3) 내의 4개의 Y 엘리먼트들로 분할되는 이미지(210-2) 내의 각각의 이미지 엘리먼트 X에 대한 셋팅 정보를 어떻게 변환 및 생성하는지를 표시하며; 기타 등등이 행해진다. 따라서, 더 높은 품질 레벨들의 재구성 데이터는 더 낮은 품질 레벨들의 재구성 데이터에 의존한다.
도 3은 여기에서의 실시예들에 따른, 재구성 데이터의 사용을 도시한 예시도이다.
일 실시예에서, 디코더 리소스와 같은 신호 프로세서(100-1)는, 저장소(180)로부터 재구성 데이터(150)를 선택적으로 리트리브한다. 저장소(180)는 재구성 데이터의 그룹화들, 즉 A1...A8, B1...B8, C1...C8, D1...D8 등을 저장한다. 상이한 품질 레벨들의 수가 단지 비-제한적인 예로서 도시되며, 재구성 데이터가 임의의 적절한 수의 층들(예를 들어, 품질 레벨들)을 포함할 수 있음을 유의한다.
재구성 데이터의 그룹화 A 내의 재구성 데이터 A1은, 가장 낮은 품질 레벨에서 신호(115)의 이미지/프레임 F1을 어떻게 재구성할지를 표시하고; 재구성 데이터 A2는, 품질 레벨 #1에 대해 생성된 이미지/프레임 F1의 렌디션에 기초하여 품질 레벨 #2(예를 들어, 품질 레벨 #1보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F1을 어떻게 재구성할지를 표시하고; 재구성 데이터 A3는, 품질 레벨 #2에 대해 생성된 이미지/프레임 F1의 렌디션에 기초하여 품질 레벨 #3(예를 들어, 품질 레벨 #2보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F1을 어떻게 재구성할지를 표시하고; 재구성 데이터 A4는, 품질 레벨 #3에 대해 생성된 이미지/프레임 F3의 렌디션에 기초하여 품질 레벨 #4(예를 들어, 품질 레벨 #3보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F1을 어떻게 재구성할지를 표시하고; 재구성 데이터 A5는, 품질 레벨 #4에 대해 생성된 이미지/프레임 F1의 렌디션에 기초하여 품질 레벨 #5(예를 들어, 품질 레벨 #4보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F1을 어떻게 재구성할지를 표시하고; 재구성 데이터 A6은, 품질 레벨 #5에 대해 생성된 이미지/프레임 F1의 렌디션에 기초하여 품질 레벨 #6(예를 들어, 품질 레벨 #5보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F1을 어떻게 재구성할지를 표시하고; 재구성 데이터 A7은, 품질 레벨 #6에 대해 생성된 이미지/프레임 F1의 렌디션에 기초하여 품질 레벨 #7(예를 들어, 품질 레벨 #6보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F1을 어떻게 재구성할지를 표시하고; 재구성 데이터 A8은, 품질 레벨 #7에 대해 생성된 이미지/프레임 F1의 렌디션에 기초하여 품질 레벨 #8(예를 들어, 품질 레벨 #7보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F1을 어떻게 재구성할지를 표시한다. 따라서, 더 높은 품질 레벨로 신호(115)의 렌디션을 생성하는 것은, 더 낮은 품질 레벨들로 재구성 데이터를 적절히 디코딩하는 것에 의존한다.
재구성 데이터의 그룹화 B 내의 재구성 데이터 B1은, 가장 낮은 품질 레벨에서 신호(115)의 이미지/프레임 F2를 어떻게 재구성할지를 표시하고; 재구성 데이터 B2는, 품질 레벨 #1에 대해 생성된 이미지/프레임 F2의 렌디션에 기초하여 품질 레벨 #2(예를 들어, 품질 레벨 #1보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F2를 어떻게 재구성할지를 표시하고; 재구성 데이터 B3는, 품질 레벨 #2에 대해 생성된 이미지/프레임 F2의 렌디션에 기초하여 품질 레벨 #3(예를 들어, 품질 레벨 #2보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F2를 어떻게 재구성할지를 표시하고; 재구성 데이터 B4는, 품질 레벨 #3에 대해 생성된 이미지/프레임 F2의 렌디션에 기초하여 품질 레벨 #4(예를 들어, 품질 레벨 #3보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F2를 어떻게 재구성할지를 표시하고; 재구성 데이터 B5는, 품질 레벨 #4에 대해 생성된 이미지/프레임 F2의 렌디션에 기초하여 품질 레벨 #5(예를 들어, 품질 레벨 #4보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F2를 어떻게 재구성할지를 표시하고; 재구성 데이터 B6은, 품질 레벨 #5에 대해 생성된 이미지/프레임 F2의 렌디션에 기초하여 품질 레벨 #6(예를 들어, 품질 레벨 #5보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F2를 어떻게 재구성할지를 표시하고; 재구성 데이터 B7은, 품질 레벨 #6에 대해 생성된 이미지/프레임 F2의 렌디션에 기초하여 품질 레벨 #7(예를 들어, 품질 레벨 #6보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F2를 어떻게 재구성할지를 표시하고; 재구성 데이터 B8은, 품질 레벨 #7에 대해 생성된 이미지/프레임 F2의 렌디션에 기초하여 품질 레벨 #8(예를 들어, 품질 레벨 #7보다 높은 하나의 품질 레벨)로 신호(115)의 이미지/프레임 F2를 어떻게 재구성할지를 표시한다.
유사한 방식으로, 저장소(180) 내의 재구성 데이터의 상이한 그룹화들 각각은 신호(115)의 각각의 이미지/프레임의 재구성을 가능하게 한다.
재구성 데이터의 계층화된 세트들을 생성하기 위한 부가적인 예시적인 세부사항들이 인용에 의해 여기에 포함된 관련 출원들에서 발견될 수 있음을 유의한다.
일 실시예에서, 신호 내의 프레임들의 시퀀스 F1, F2, F3, F4 등은, 미디어 플레이어(310)에 의해 재생될 경우 동영상 또는 비디오로서 나타나는 이미지의 시퀀스이다. 여기에 설명된 바와 같이, 신호 프로세서(100-1)는 데이터 스트림(400) 내의 재구성 데이터의 모두 또는 선택된 부분들을 신호 프로세서(100-2)(예를 들어, 디코더 리소스)에 송신한다. 신호 프로세서(100-2)는 수신된 재구성 데이터에 기초하여 본래의 신호(115)의 렌디션들을 재구성하도록 구성된다.
일 실시예에서, 재구성 데이터의 송신 동안, 신호 프로세서(100-1)는 신호 프로세서(100-2)에 송신된 재구성 데이터의 품질 레벨을 변경시킨다. 신호 프로세서(100-2)는, 재생 디바이스(310) 상에서 상이한 품질 레벨들로 신호를 재생하기 위해, 수신된 재구성 데이터를 디코딩한다.
도 4는 여기에서의 실시예들에 따른, 재구성 데이터의 상이한 품질 레벨들을 포함하는 데이터 스트림을 도시하는 예시도이다.
상술된 바와 같이, 일 실시예에서, 신호 프로세서(100-1)는 신호 프로세서(100-2)에 송신된 재구성 데이터의 품질 레벨을 변경시킨다.
예를 들어, 신호 프로세서(100-1)는, 신호(115)의 제 1 부분(예를 들어, F1과 같은 프레임)의 재생을 위해 신호 프로세서(100-2) 내의 디코더 리소스에 재구성 데이터의 제 1 세트(예를 들어, 재구성 데이터 A1, A2, A3, A4, A5, A6, A7, A8)를 송신한다. 신호 프로세서(100-1)는 신호(115)의 제 2 부분(예를 들어, 프레임 F2와 같은 프레임)의 재생을 위해 디코더 리소스에 재구성 데이터의 제 2 세트(예를 들어, B1, B2, B3, B4, B5)를 송신한다.
데이터 스트림(400) 내의 재구성 데이터의 제 1 세트(예를 들어, 재구성 데이터의 X=8개의 층들을 포함하는 그룹화 A 재구성 데이터)는, 계층화된 계층 내에서 품질 레벨 #8까지 신호의 제 1 부분(예를 들어, 프레임 F1)의 렌디션을 어떻게 재구성할지를 표시한다.
데이터 스트림(400) 내의 재구성 데이터의 제 2 세트(예를 들어, 재구성 데이터의 Y=5개의 층들을 포함하는 그룹화 B 재구성 데이터)는, 계층화된 계층 내에서 품질 레벨 #5까지 신호의 제 2 부분(예를 들어, 프레임 F2)의 렌디션을 어떻게 재구성할지를 표시한다.
데이터 스트림(400) 내의 재구성 데이터의 제 3 세트(예를 들어, 재구성 데이터의 5개의 층들을 포함하는 그룹화 C 재구성 데이터)는, 계층화된 계층 내에서 품질 레벨 #5까지 신호의 제 3 부분(예를 들어, 프레임 F3)의 렌디션을 어떻게 재구성할지를 표시한다.
재구성 데이터의 제 4 세트(예를 들어, 재구성 데이터의 8개의 층들을 포함하는 그룹화 D 재구성 데이터)는, 계층화된 계층 내에서 품질 레벨 #8까지 신호의 제 4 부분(예를 들어, 프레임 F4)의 렌디션을 어떻게 재구성할지를 표시한다.
이러한 방식으로, 신호 프로세서(100-1)는, 미디어 플레이어(310)에 의한 신호(115)의 재생을 위해 신호 프로세서(100-2)로의 재구성 데이터의 품질 레벨을 선택 및 변경시킨다.
도 5는 여기에서의 실시예들에 따른, 디코더에 송신된 재구성 데이터의 품질 레벨에서의 변화들을 도시한 다른 예시도이다.
신호(115)의 렌디션을 재구성하기 위한 재구성 데이터의 층들은 다수의 상이한 이유들 때문에 상이한 품질 레벨들로 송신될 수 있다.
예를 들어, 일 실시예에서, 그룹화 B, C, 및 D에 대한 재구성 데이터는, 각각의 통신 링크 내의 네트워크 혼잡으로 인해 가장 높은 품질 레벨에 따른 재구성 데이터를 송신하는 것에 대한 무능력을 검출하는 것에 응답하여, 가장 높은 품질 레벨 대신에 선택된 더 낮은 품질 레벨들(예를 들어, 가장 높은 품질 레벨 아래의 품질 레벨들)로 신호 프로세서(100-1)로부터 디코더 리소스로 송신될 수도 있다.
이러한 예에 도시된 바와 같이, 신호 프로세서(100-1)는 이미지/프레임 F1의 재구성을 위해 재구성 데이터 A1...A8을 송신하고; 신호 프로세서(100-1)는 이미지/프레임 F2의 재구성을 위해 재구성 데이터 B1...B4를 송신하고; 신호 프로세서(100-1)는 이미지/프레임 F3의 재구성을 위해 재구성 데이터 C1...C4를 송신하고; 신호 프로세서(100-1)는 이미지/프레임 F4의 재구성을 위해 재구성 데이터 D1...D5를 송신하고; 신호 프로세서(100-1)는 이미지/프레임 F5의 재구성을 위해 재구성 데이터 E1... E8을 송신하는 식이다.
따라서, 일 실시예에서, 신호 프로세서는, 신호의 다수의 이미지들/프레임들의 각각에 대해 디코더 리소스에 송신된 재구성 데이터의 가장 높은 품질 레벨을 변경시킨다.
추가적인 실시예들에 따르면, 신호 프로세서(100-1)는, 신호의 다수의 연속적인 이미지들/프레임들의 각각에 대하여, 계층화된 재구성 데이터의 실질적으로 일정한 비트 레이트를 디코더 리소스에 송신하기 위해, 디코더에 송신된 재구성 데이터의 가장 높은 품질 레벨을 변경시킨다. 예를 들어, 각각의 이미지/프레임에 대한 더 높은 품질 레벨들의 재구성 데이터는 상당한 양의 데이터를 포함할 수 있다. 더 높은 품질 레벨의 재구성 데이터의 송신을 제거하는 것은, 적어도 더 낮은 품질 레벨의 재구성 데이터가 지연 없이 미디어 플레이어에 의해 수신 및 재생될 수 있다는 것을 보장한다. 따라서, 네트워크 혼잡은 더 낮은 품질 레벨의 신호의 재생을 초래할 수 있다.
일 실시예에서, 신호 프로세서(100-1)는, 디코더 리소스에 의해 실질적으로 실시간으로 신호의 재생을 용이하게 하기 위하여 디코더에 송신된 재구성 데이터의 품질 레벨을 변경시킨다. 예를 들어, 고해상도의 "라이브(live)" 이미지들의 디코더로의 지연 송신보다는, 신호 프로세서(100-1)는, 디코더가 적어도 낮은 품질 레벨에 따른 신호를 지연없이 재생할 수 있다는 것을 보장하기 위해 디코더에 송신된 재구성 데이터의 품질 레벨을 감소시킬 수도 있다. 따라서, 여기에서의 실시예들은, 특정한 디코더들이 레버리지(leverage)할 수 없을 정보를 송신하기 위한 필요성을 제거함과 동시에, 상이한 컴퓨팅 전력(및/또는 디스플레이 디바이스 해상도들)을 이용하여 다수의 디코딩 리소스들 상에서의 "라이브" 또는 실질적으로 "라이브" 비디오 피드들의 재생을 지원한다.
또한, 신호(115) 및 대응하는 재구성 데이터가 더 오래된 레코딩(recording)으로부터 도출될 수 있음을 유의한다. 네트워크 혼잡의 경우, 예를 들어, 혼잡 동안 하나 또는 그 초과의 이미지들/프레임들에 대해 송신된 재구성 데이터의 품질 레벨을 감소시키는 것은, 디코더가 지연없이 신호를 재생할 수 있게 한다.
도 6은 여기에서의 실시예들에 따른, 디코더에 포워딩된 재구성 데이터의 품질 레벨에서의 변화들을 도시한 예시도이다.
도시된 바와 같이, 신호 프로세서(100-1)는 초기에, 이미지들/프레임들 F1, F2, 및 F3에 대한 제 1 품질 레벨(예를 들어, 품질 레벨 #4)까지 재구성 데이터 A, B, 및 C를 송신한다. 품질 레벨 #4는, 재구성 데이터를 송신할 디폴트 품질 레벨일 수도 있다.
신호 프로세서(100-1)는, 상이한 품질 레벨로 재구성 데이터를 송신하기 위한 요청을 사용자와 같은 소스로부터 수신하는 것에 응답하여, 제 2 품질 레벨(예를 들어, 품질 레벨 #8)로 시간 T1을 따라 재구성 데이터를 송신하도록 구성될 수 있다. 예를 들어, 디코더 리소스, 사용자 등과 같은 소스는, 이전에 송신된 이미지/프레임보다 더 높거나 더 낮은 품질에 따른 신호의 송신을 요청할 수 있다. 상이한 품질 레벨로 재구성 데이터를 송신하기 위한 요청에 응답하여, 신호 프로세서(100-1)는 새롭게 요청된 품질 레벨로 재구성 데이터를 송신한다. 이러한 예에서, 신호 프로세서(100-1)는, 사용자가 더 높은 품질 레벨로 신호(115)를 뷰잉하도록 요청하는 것에 응답하여, 더 높은 품질 레벨로 재구성 데이터의 이미지들/프레임들 F4, F5 및 후속 이미지들/프레임들을 송신한다. 디코더 리소스는, 신호 프로세서(100-1)에 의해 송신된 바와 같은 이미지들/프레임들에 대한 재구성 데이터를 수신하고, 상이한 품질 레벨들에 따라 신호(115)를 재생한다. 예를 들어, 신호 프로세서(100-2)는, 수신된 재구성 데이터를 디코딩하고, 제 1 품질 레벨로 이미지/프레임 F3까지 신호(115)의 이미지들/프레임들을 재생하고; 신호 프로세서(100-2)는, 재구성 데이터를 디코딩하고, 제 2 품질 레벨로 신호(115)의 후속 이미지들/프레임들(예를 들어, F4 이후의 이미지들/프레임들)을 재생한다.
도 7은 여기에서의 실시예들에 따른, 더 낮은 품질 레벨의 재구성 데이터의 그룹의 송신, 후속하는 더 높은 품질 레벨의 재구성 데이터의 송신을 도시한 예시도이다.
추가적인 실시예들에 따르면, 신호 프로세서(100-1)는, 신호(115)의 이미지들/프레임들과 같은 다수의 부분들 각각에 대한 더 낮은 품질 레벨의 재구성 데이터를 송신하고, 후속하여, 더 높은 품질 레벨의 재구성 데이터를 송신하도록 구성될 수 있다.
예를 들어, 도시된 바와 같이, 신호 프로세서(100-1)는, 재구성 데이터 A1,...A4, B1,...B4, C1,...C4 등을 포함하도록 재구성 데이터의 제 1 세트를 생성하고, 데이터 스트림(800) 내의 재구성 데이터의 이러한 그룹을 디코더에 송신한다. 재구성 데이터의 이러한 초기 세트에 기초하여, 디코더는, 각각의 더 낮은 품질 레벨로 신호를 재생할 수 있다.
일 실시예에서, 신호 프로세서는, 제 1 품질 레벨(예를 들어, 비-제한적인 예로서, 품질 레벨 #4)에 따라 신호(115) 중에서의 네비게이션을 가능하게 하기 위해 디코더 리소스에 재구성 데이터의 제 1 세트(810-1)를 송신한다. 재구성 데이터의 제 1 세트(810-1)가 비교적 콤팩트(compact)하기 때문에 그 세트가 작은 품질 레벨에 따른 재구성을 가능하게 하므로, 데이터 스트림(800)에서의 재구성 데이터의 제 1 세트의 송신은 비교적 작은 시간에 달성될 수 있다.
사용자로부터의 입력에 기초하여, 디코더 리소스는, 각각의 사용자가 신호의 저해상도(예를 들어, 더 낮은 품질 레벨) 버전의 재생 중에서 (예를 들어, 고속 포워딩, 리버싱 등과 같은 커맨드들을 통해) 신속하게 네비게이팅할 수 있게 하는 재구성 데이터의 제 1 세트(810-1)의 재생을 개시한다. 재구성 데이터(810-1)를 통해 생성된 저해상도 신호를 뷰잉하는 것에 기초하여, 사용자는, 더 높은 품질 레벨의 재생을 위한 신호 내의 위치를 표시하는 포인터 값을 선택 및 생성할 수 있다.
저해상도 신호 내의 위치의 선택에 응답하여, 신호 프로세서(100-1)는, 더 높은 품질 레벨들의 신호의 모든 이미지들/프레임들에 대한 재구성 데이터(예를 들어, 디코더에 아직 전송되지 않은 더 높은 품질 레벨들의 재구성 데이터)를 포함하는 재구성 데이터의 제 2 세트, 또는 포인터 값에 의해서와 같이 요청된 위치에서 시작하여 (아직 전송되지 않은) 더 높은 품질 레벨들에서 시작하는 재구성 데이터의 세트를 생성한다. 신호 프로세서(100-1)는, 더 높은 품질 레벨에 따른 신호의 재생을 위해 디코더 리소스에 재구성 데이터의 제 2 세트(810-2)를 송신한다.
따라서, 재구성 데이터의 제 1 세트(810-1)는 제 1 품질 레벨(예를 들어, 품질 레벨 #4)에 따른 신호의 재생을 가능하게 한다. 재구성 데이터의 제 1 세트(810-1)와 재구성 데이터의 제 2 세트(810-2)의 결합은, 더 높은 품질 레벨(예를 들어, 품질 레벨 #8)에 따른 신호의 재생을 가능하게 한다.
여기에 설명된 바와 같이, (예를 들어, 더 높은 품질 레벨로 신호를 재구성하기 위한 재구성 데이터를 포함하는) 재구성 데이터의 제 2 세트(810-2)는 재구성 데이터의 제 1 세트에 관한 보충적인 재구성 데이터일 수 있다. 즉, 재구성 데이터 A5...A8은, 재구성 데이터 A1...A4에 의해 생성된 신호의 렌디션의 상위 품질 레벨을 어떻게 변경시키는지를 표시하고; 재구성 데이터 B5...B8은 재구성 데이터 B1...B4에 의해 생성된 신호의 렌디션을 어떻게 변경할지를 표시하며; 기타 등등이 행해진다.
이러한 예에서, 사용자가 더 낮은 품질 레벨의 관심있는 영역에 대한 대응하는 콘텐츠를 스캔하기 위해 재구성 데이터의 제 1 세트(810-1)를 수신한다고 가정한다. 사용자가 더 낮은 품질 레벨 #4의 콘텐츠를 뷰잉하며, 고해상도의 그룹 D에 따르는 신호의 일부를 뷰잉하기 위한 요청을 생성한다고 가정한다. 일 실시예에서, 요청을 수신하는 것에 응답하여, 신호 프로세서(100-1)는, 선택된 위치에서 시작하는 신호의 재생을 위해 재구성 데이터 D5...D8, E5...E8 등을 사용자에게 즉시 스트리밍한다. 그러한 예시에서, 신호 프로세서(100-1)가 재구성 데이터 A5...A8, B5...B8, C5...C8을 송신할 필요성이 없는데, 이는 (이러한 예에서) 사용자가 고해상도로 이러한 데이터를 뷰잉하는 것에 관심이 없기 때문이다. 따라서, 사용자는 더 낮은 품질 레벨로 콘텐츠(예를 들어, 신호(115))를 뷰잉하며, 존재한다면, 어느 부분들을 고해상도로 뷰잉할지를 결정할 수 있다.
도 8은 여기에서의 실시예들에 따른, 신호의 렌디션을 재생하기 위한 재구성 데이터의 분배를 위한 요금 구조를 도시하는 예시도이다.
예를 들어, 일 실시예에 따르면, 재구성 데이터의 상이한 품질 레벨들은 요금 스케줄에 기초하여 분배될 수 있다. 사용자는 디코더 리소스를 동작시키며, 재구성 데이터의 리트리벌(retrieval)에 기초하여 신호(115)의 재생을 개시한다. 사용자는, 디코더 리소스에 송신되고 사용자에 의해 재생된 재구성 데이터의 품질 레벨에 의존하여 상이한 요금(예를 들어, 돈의 양)을 과금받는다. 이러한 예에서, 사용자는, 품질 레벨 #5까지의 재구성 데이터의 세트들의 송신 및 수신에 기초하여 요금(700-1)을 과금받고; 사용자는, 품질 레벨 #7까지의 재구성 데이터의 송신 및 수신에 기초하여 요금(700-2)을 과금받고; 사용자는, 품질 레벨 #9까지의 재구성 데이터의 송신 및 수신에 기초하여 요금(700-3)을 과금받으며; 기타 등등이 행해진다.
상기 예에 표시된 바와 같이, 신호 프로세서(100-2)(예를 들어, 디코더)를 동작시키는 사용자가 초기에, 신호(115)의 재생 및 뷰잉을 위해 제 1 품질 레벨(예를 들어, 품질 레벨 #5)에 따른 재구성 데이터를 수신할 수 있음을 유의한다. 더 낮은 품질 레벨의 재구성 데이터의 송신은, 사용자에게 무료(free)일 수도 있거나, 상이한 요금에 의해 특성화될 수도 있다. 더 높은 품질 레벨로 신호를 뷰잉하기 위한 사용자로부터의 요청에 기초하여, 신호 프로세서(100-1)는, 사용자의 요청을 충족시키기 위해, 제 2 의 더 높은 품질 레벨(예를 들어, 품질 레벨 #7, 품질 레벨 #9 등)까지 재구성 데이터를 리트리브 및 송신한다. 사용자는, 더 높은 품질 레벨의 재구성 데이터의 수신을 위해 상술된 바와 같이 각각의 요금을 과금받을 수도 있다.
다른 실시예에서, 신호 프로세서(100-2)(예를 들어, 디코더)를 동작시키는 사용자에게 과금된 요금에 관계없이, 상이한 로열티 요금(royalty fee) 구조가 신호 프로세서(100-2)에 송신된 품질 레벨들에 기초하여 신호 프로세서(100-1)의 오퍼레이터에 적용될 수도 있다.
도 9는 여기에서의 실시예들에 따른, 하나 또는 그 초과의 품질 레벨들의 디지털 권리 관리 알고리즘들의 사용을 도시한 예시도이다.
예를 들어, 설명된 바와 같이, 신호(115)의 각각의 부분(예를 들어, 이미지, 프레임 등)은 신호의 그 부분을 재구성하기 위해 재구성 데이터의 각각의 계층화된 세트에 의해 정의될 수 있다. 여기에서의 실시예들은, 재구성 데이터의 세트들의 선택된 더 낮은 층들(예를 들어, 비-제한적인 예로서, 품질 레벨 #1)에 관해 디지털 권리 관리(910)를 구현하는 것을 포함한다.
일 실시예에서, 디지털 권리 관리(901)의 사용은, 더 낮은 품질 레벨의 재구성 데이터의 안가되지 않은 디코딩을 방지한다. 예를 들어, 신호 프로세서(100-2)는 가장 낮은 품질 레벨 #1의 디코딩을 가능하게 하는 각각의 애플리케이션을 실행한다. 재구성 데이터의 더 높은 층들이 액세스가능하며, 디지털 권리 관리에 의해 보호되지 않을 수도 있다. 신호 프로세서(100-2)는, 각각의 디지털 권리 관리 알고리즘 애플리케이션을 사용하여 더 낮은 품질 레벨 #1의 재구성 데이터(예를 들어, 재구성 데이터 A1, B1, C1, D1, E1 등)를 디코딩한다. 더 높은 품질 레벨들의 부가적인 재구성 데이터(예를 들어, 품질 레벨 #2, 품질 레벨 #3, 품질 레벨 #4 등의 재구성 데이터)는, 디지털 권리 관리 애플리케이션 없이 디코딩될 수 있다. 일 실시예에서, 품질 레벨 #1의 재구성 데이터(예를 들어, 재구성 데이터 A1, B1, C1, D1, E1 ...)는 적절한 프로토콜에 따라 암호화된다. 신호 프로세서(100-2)는 품질 레벨 #1의 수신된 재구성 데이터를 암호해제하기 위해 각각의 암호해제 키를 수신한다. 설명된 바와 같이, 더 높은 품질 레벨의 재구성 데이터를 암호화할 필요가 존재하지 않는데, 이는 품질 레벨 #2, #3 등의 재구성 데이터의 사용이 품질 레벨 #1의 재구성 데이터의 적절한 디코딩에 의존하기 때문이다. 품질 레벨 #1로 더 낮은 품질 레벨의 재구성 데이터를 디코딩하기 위한 능력 없다면, 각각의 암호해제 키를 갖지 않은 디코더 리소스는, 신호의 의미있는 렌디션을 생성하기 위해 더 높은 품질 레벨의 재구성 데이터를 사용할 수 없다. 즉, 더 높은 품질 레벨의 재구성 데이터의 사용은, 대응하는 더 낮은 품질 레벨의 재구성 데이터의 성공적인 디코딩에 의존한다.
도 10은 여기에서의 실시예들에 따른, 하나 또는 그 초과의 더 낮은 품질 레벨들의 재구성 데이터의 리던던시를 도시한 예시도이다.
그러한 실시예에 따르면, 신호 프로세서는, 에러의 발생 시에 더 낮은 품질 레벨의 재구성 데이터의 재생을 가능하게 하기 위해 더 낮은 품질 레벨의 리던던트 인코딩을 포함하도록 재구성 데이터의 세트들을 생성한다. 신호 프로세서는, 비-리던던트 인코딩을 포함하도록 더 높은 품질 레벨의 재구성 데이터를 생성한다. 따라서, 재구성 데이터를 수신하는 사용자는, 에러의 발생 시에, 더 높은 품질 레벨의 재구성 데이터가 손상될 수도 있지만, 더 낮은 품질 레벨의 신호에 포함된 "코오스 정보"는 온전하므로, 우아한 열화를 갖는 신호를 재생할 가능성이 더 높다.
일 예로서, 리던던시 정보 RA는 재구성 데이터 A1, A2, A3, A4, 및 A5에 기초할 수 있고; 리던던시 정보 RB는 재구성 데이터 B1, B2, B3, B4, 및 B5에 기초할 수 있고; 리던던시 정보 RC는 재구성 데이터 C1, C2, C3, C4, 및 C5에 기초할 수 있으며; 기타 등등이 행해진다.
도 11a는 여기에서의 실시예들에 따른, 타일들에 기초하여 파싱된 재구성 데이터를 도시한 예시도이다.
일 실시예에서, 재구성 데이터는 그룹화들(예를 들어, A, B, C, D 등)로 파싱되고; 재구성 데이터의 그룹화들 각각은 신호의 시간-기반 부분(예를 들어, 이미지/프레임)을 재구성하기 위한 정보를 포함한다. 예를 들어, 설명된 바와 같이, 재구성 데이터 A는 이미지/프레임 F1을 어떻게 재구성할지를 표시하는 정보를 포함하고; 재구성 데이터 B는 이미지/프레임 F2를 어떻게 재구성할지를 표시하는 정보를 포함하고; 재구성 데이터 C는 이미지/프레임 F3를 어떻게 재구성할지를 표시하는 정보를 포함하며; 기타 등등이 행해진다.
재구성 데이터의 그룹화들 각각은, 계층 내에서 가장 낮은 품질 레벨로부터 더 높은 품질 레벨로의 계층적으로 계층화된 재구성 데이터의 다수의 시퀀스들을 포함할 수 있다. 예를 들어, 그리드(1110) 내의 타일 T1에서의 신호의 일부(예를 들어, 이미지/프레임 F1)를 재구성하기 위한 재구성 데이터는, 재구성 데이터의 시퀀스 A1-T1, A2-T1, A3-T1, A4-T1, A5-T1, A6-T1, A7-T1, 및 A8-T1을 포함하고; 타일 T2에서의 신호의 일부(예를 들어, 이미지/프레임 F1)를 재구성하기 위한 재구성 데이터는 재구성 데이터의 시퀀스 A1-T2, A2-T2, A3-T2, A4-T2, A5-T2, A6-T2, A7-T2, 및 A8-T2를 포함하고; 타일 T3에서의 신호의 일부(예를 들어, 이미지/프레임 F1)를 재구성하기 위한 재구성 데이터는 재구성 데이터의 시퀀스 A1-T3, A2-T3, A3-T3, A4-T3, A5-T3, A6-T3, A7-T3, 및 A8-T3를 포함하며; 기타 등등이 행해진다.
타일 T1에서의 신호의 일부(예를 들어, 이미지/프레임 F2)를 재구성하기 위한 재구성 데이터는 재구성 데이터의 시퀀스 B1-T1, B2-T1, B3-T1, B4-T1, B5-T1, B6-T1, B7-T1, 및 B8-T1를 포함하고; 타일 T2에서의 신호의 일부(예를 들어, 이미지/프레임 F1)를 재구성하기 위한 재구성 데이터는 재구성 데이터의 시퀀스 B1-T2, B2-T2, B3-T2, B4-T2, B5-T2, B6-T2, B7-T2, 및 B8-T2를 포함하고; 타일 T3에서의 신호의 일부(예를 들어, 이미지/프레임 F1)를 재구성하기 위한 재구성 데이터는 재구성 데이터의 시퀀스 B1-T3, B2-T3, B3-T1, B4-T1, B5-T1, B6-T1, B7-T1, 및 B8-T1를 포함하며; 기타 등등이 행해진다. 따라서, 가장 낮은 품질 레벨로부터 더 높은 품질 레벨로의 계층화된 재구성 데이터의 다수의 시퀀스들 각각은, 신호와 연관된 인접한 엘리먼트들의 각각의 타일의 셋팅들을 표시한다.
설명된 바와 같이, 그리드(1110)는, 타일들에 따라 분할되는 재구성 데이터를 사용하여 디코더에 의해 생성된 신호(115)의 렌디션 내의 타일들을 도시한다. 계층 내의 가장 낮은 품질 레벨의 각각의 타일은 하나 또는 그 초과의 엘리먼트들을 포함할 수 있다. 여기에 설명된 바와 같이, 계층 내의 각각의 품질 레벨에서의 타일 내의 각각의 엘리먼트는 다음의 더 높은 품질 레벨의 다수의 서브-엘리먼트들로 분할되고; 각각의 개별 품질 레벨의 타일에 대한 재구성 데이터는 엘리먼트들의 셋팅들을 표시한다. 따라서, 가장 낮은 품질 레벨의 타일 내의 각각의 엘리먼트는, 각각의 타일에 대한 가장 높은 품질 레벨까지 각각의 레벨에서 서브-엘리먼트들로 세분된다.
일 실시예에서, 신호 프로세서(100-2)는 다수의 프로세서들을 포함한다. 각각의 프로세서는, 타일에 대한 다수의 품질 레벨들의 각각의 재구성 데이터에 기초하여, 주어진 타일(예를 들어, 타일은 엘리먼트들의 그룹화를 포함할 수 있음)에 대한 신호의 각각의 렌디션을 생성하도록 할당될 수 있다. 그 후, 엘리먼트들의 타일들은 재생을 위해 신호(115)의 전체 렌디션을 생성하도록 결합된다. 하나 또는 그 초과의 프로세서들을 사용하여 병렬로 타일들을 프로세싱하는 것은, 재생 디바이스 상에서의 재생을 위한 신호의 더 신속한 재구성을 가능하게 한다. 예를 들어, 각각의 프로세서는, 각각의 상이한 이미지/프레임에 대한 신호(115)의 타일을 재구성하도록 구성될 수 있다.
도 11b는 여기에서의 실시예들에 따른, 타일들에 기초하여 파싱된 재구성 데이터를 도시하는 다른 예시도이다.
일 실시예에서, 재구성 데이터는 그룹화들(예를 들어, A, B, C, D 등)로 파싱되고; 재구성 데이터의 그룹화들 각각은 엔트로피 인코딩된 데이터를 포함한다. 각각의 상이한 품질 레벨에서의 엔트로피 인코딩된 데이터의 각각의 타일의 사이즈는 도시된 바와 같이 변할 수 있다. 예를 들어, 타일 A1-T1은, 타일 A1-T2보다 품질 레벨 #1에서 더 많은 엘리먼트들에 대한 엔트로피 인코딩된 데이터를 포함하고; 타일 A1-T2는 타일 A1-T3보다 품질 레벨 #1에서 더 많은 엘리먼트들에 대한 엔트로피 인코딩된 데이터를 포함한다. 따라서, 주어진 품질 레벨에서의 엔트로피 인코딩된 재구성 데이터의 타일들의 커버리지의 사이즈 및 특정한 영역은 변할 수 있다.
부가적으로, 엔트로피 인코딩된 재구성 데이터의 타일들의 수 및 각각의 타일에 대한 각각의 커버리지는 상이한 품질 레벨들에 대해 변할 수 있다. 예를 들어, 품질 레벨 #1은 엔트로피 인코딩된 재구성 데이터의 3개의 타일들을 포함하고; 품질 레벨 #2는 엔트로피 인코딩된 재구성 데이터의 5개의 타일들을 포함하고; 품질 레벨 #3는 엔트로피 인코딩된 재구성 데이터의 15개의 타일들을 포함하며; 기타 등등이 행해진다.
따라서, 가장 낮은 품질 레벨로부터 더 높은 품질 레벨로의 계층화된 재구성 데이터의 다수의 시퀀스들 각각은, 신호와 연관된 인접한 엘리먼트들의 각각의 타일의 셋팅들을 표시한다.
도 12는 여기에서의 실시예들에 따른, 다수의 타일들 각각에 대한 재구성 데이터의 상이한 방식들을 도시한 예시도이다.
데이터 스트림(1210-1)에 도시된 바와 같이, 신호 프로세서(100-1)로부터 디코더 리소스(즉, 신호 프로세서(100-2))로의 재구성 데이터의 송신은, 순차적인 순서로, 잇따라서, 비트 스트림(즉, 데이터 스트림(1210-1))으로 디코더에 다수의 시퀀스들(예를 들어, 시퀀스 A1-T1, A2-T1, A3-T1, A4-T1, A5-T1, A6-T1, A7-T1, 및 A8-T1; 시퀀스 A1-T2, A2-T2, A3-T2, A4-T2, A5-T2, A6-T2, A7-T2, 및 A8-T2; 시퀀스 A1-T3, A2-T3, A3-T3, A4-T3, A5-T3, A6-T3, A7-T3, 및 A8-T3; 기타 등등) 각각을 직렬로 송신하는 것을 포함할 수 있다.
신호 프로세서(100-2)는, 각각의 타일에 대한 계층화된 재구성 데이터의 각각의 시퀀스의 각각의 시작부 및 종료부를 표시하기 위해 데이터 스트림(1210-1)에 마커 정보를 제공하도록 구성될 수 있다. 예를 들어, 신호 프로세서(100-1)는, 재구성 데이터 A8-T1과 A1-T2 사이, 재구성 데이터 A8-T2와 A1-T3 사이 등에 마커(예를 들어, 심볼, 구획(demarcation) 등)를 삽입할 수 있다.
다른 실시예에 따르면, 신호 프로세서(100-1)로부터 각각의 디코더로의 신호의 각각의 부분에 대한 재구성 데이터의 송신은, 재구성 데이터의 주어진 이미지/프레임에 대해, 신호의 일부와 연관된 다수의 시퀀스들에 대한 더 낮은 품질 레벨들의 재구성 데이터로부터 더 높은 품질 레벨에 대한 재구성 데이터로 시작하는 데이터 스트림(1210-2)에서 계층화된 재구성 데이터를 송신하는 것을 포함할 수 있다.
예를 들어, 그러한 실시예에 따르면, 신호 프로세서(100-1)는 데이터 스트림(1210-2)에 도시된 바와 같이, A1-T1, A1-T2, A1-T3, A1-T4, A1-T5, A1-T6 등, 후속하여 시퀀스 A2-T1, A2-T2, A2-T3, A2-T4, A2-T5, A2-T6 등, 후속하여 A3-T1, A3-T2, A3-T3, A3-T4, A3-T5, A5-T6 등 그리고 기타 등등을 포함하는 더 낮은 품질 레벨의 엔트로피 인코딩된 재구성 데이터를 송신한다. 그러한 실시예에 따르면, 신호 프로세서(100-1)는 각각의 품질 레벨에 대한 계층화된 재구성 데이터의 각각의 시작부 및 종료부를 표시하기 위해 데이터 스트림(1210-2)에 마커 정보(예를 들어, 고유한 심볼들)를 제공할 수 있다. 예를 들어, 신호 프로세서(100-1)는 A1-Tν와 A2-T1 사이에 마커를 제공할 수 있고 (여기서, ν는 가장 높은 수의 타일임); 신호 프로세서(100-1)는 A2-Tν와 A3-T1 사이에 마커를 제공할 수 있으며 (여기서, ν는 가장 높은 수의 타일임); 기타 등등이 행해진다.
설명된 바와 같이, 디코더 리소스는 다수의 프로세서들을 포함할 수 있으며, 그들 각각은 재구성 데이터의 타일을 생성하기 위하여 각각의 타일에 대한 엔트로피 인코딩된 데이터를 디코딩하도록 구성된다. 주어진 품질 레벨에서의 엔트로피 디코딩한 타일들의 결합은 전체 품질 레벨에 대한 재구성 데이터를 생성한다. 예를 들어, 다수의 프로세서들 각각은, 주어진 품질 레벨에서의 각각의 타일에 대한 엔트로피 인코딩된 데이터를 엔트로피 디코딩할 수 있다. 엔트로피 인코딩된 데이터의 모든 타일들의 엔트로피 디코딩에 기초하여, 각각의 개별 프로세서는, 대응하는 품질 레벨에서 엘리먼트들의 타일을 재구성하기 위한 재구성 데이터를 생성한다. 그 후, 주어진 품질 레벨에 대해 전체로서 프레임에 적용된 글로벌(global) 업샘플 동작들을 사용하여, 품질 레벨에 대한 각각의 재구성 데이터는, 신호의 렌디션을 다음의 더 높은 품질 레벨로 업샘플링하는데 사용된다. 상이한 품질 레벨들에서의 상이한 사이즈의 그리고/또는 상이한 수들의 타일들을 엔트로피 디코딩하는 이러한 프로세스는, 가장 높은 품질 레벨에서 신호를 재생성할 때까지 각각의 레벨에서 반복될 수 있다.
도 13은 여기에서의 실시예들에 따른, 재구성 데이터의 버퍼링을 도시한 예시도이다.
도 13에 도시된 바와 같이, 신호 프로세서(100-1)는, 데이터 스트림(1310)의 다수의 세그먼트들(예를 들어, 2개 또는 그 초과의 세그먼트들)을 통해 신호의 (각각의 이미지/프레임과 같은) 주어진 부분에 대한 재구성 데이터를 송신하도록 구성될 수 있다.
더 상세하게, 일 실시예에서, 신호 프로세서(100-1)는 디코더와 같은 원격 리소스에 재구성 데이터를 전송하기 위해, 데이터 스트림(1310)을 세그먼트들(1320)(예를 들어, 세그먼트(1320-1), 세그먼트(1320-2), 세그먼트(1320-3) 등)로 분할한다. 일 실시예에서, 데이터 스트림(1310)의 각각의 세그먼트(1320)는 실질적으로 동일한 수의 데이터 비트들의 송신을 지원한다. 일반적으로, 각각의 세그먼트는, 각각의 이미지/프레임과 같은 신호(115)의 일부를 재구성하기 위한 재구성 데이터를 포함할 수 있다.
도시된 바와 같이, 신호 프로세서(100-1)는, 신호의 제 1 이미지/프레임을 재생하기 위해 재구성 데이터 A1, A2, A3 ... A8을 포함하도록 데이터 스트림(1310)의 세그먼트(1320-1)를 생성하고; 신호 프로세서(100-1)는, 신호의 제 2 이미지/프레임을 재생하기 위해 재구성 데이터 B1, B2, B3 ... B8을 포함하도록 데이터 스트림(1310)의 세그먼트(1320-2)를 생성하며; 신호 프로세서(100-1)는, 신호의 제 3 이미지/프레임을 재생하기 위해 재구성 데이터 C1, C2, C3 ... C8을 포함하도록 데이터 스트림(1310)의 세그먼트(1320-3)를 생성한다.
일 실시예에서, 신호 프로세서(100-1)는, 신호의 제 1 이미지/프레임을 재구성하기 위해 재구성 데이터의 다수의 품질 레벨들을 포함하도록 데이터 스트림(1310)의 제 1 세그먼트(1320-1)를 거주시킨다. 신호 프로세서(100-1)는, 신호의 제 2 이미지/프레임을 재구성하기 위해 재구성 데이터의 다수의 품질 레벨들을 포함하도록 데이터 스트림(1310)의 제 2 세그먼트(1320-2)를 거주시킨다. 신호 프로세서(100-1)는, i) 신호의 제 2 이미지/프레임을 재구성하기 위해 재구성 데이터의 다수의 품질 레벨들, 및 ii) 신호의 제 3 이미지/프레임을 재구성하기 위해 재구성 데이터의 적어도 하나의 품질 레벨을 포함하도록, 데이터 스트림(1310)의 제 2 세그먼트(1320-2)를 거주시킨다. 제 3 세그먼트(1320-3)는 제 3 이미지/프레임을 재구성하기 위해 부가적인 재구성 데이터를 포함한다. 따라서, 데이터 스트림의 대응하는 세그먼트에서 재구성 데이터를 송신하는 것 대신에, 신호의 일부에 대한 재구성 데이터는 다수의 세그먼트들에 걸쳐 확산될 수 있다.
일 실시예에서, 디코더 리소스는, 신호 프로세서(100-1)에 의해 송신된 데이터 스트림(1310)을 버퍼링하도록 구성된다. 예를 들어, 수신된 데이터의 포인트가 이전의 재구성 데이터 D4인 경우, 신호 프로세서(100-2)는, 데이터 스트림(1310)의 세그먼트(1320-3) 내의 재구성 데이터 C1...C6의 다수의 품질 레벨들에 기초하여 뿐만 아니라 데이터 스트림(1310)의 세그먼트(1320-2) 내의 재구성 데이터 C7 및 C8에 기초하여, 세그먼트(1320-3)와 연관된 이미지/프레임을 재구성한다. 이러한 방식으로, 더 높은 품질 레벨의 재구성 데이터는 데이터 스트림(1310)의 상이한 세그먼트들에서 확산될 수 있다. 재구성 데이터를 버퍼링하는 것 및 재생을 지연시키는 것은 디코더가, 품질 레벨 #8에 따라 신호를 디코딩하고 신호를 재생하기 위해 적절한 재구성 데이터를 수신할 수 있게 한다.
도 14는 여기에서의 실시예들에 따른, 신호 프로세싱을 제공하는 컴퓨터 시스템(800)의 예시적인 블록도이다.
컴퓨터 시스템(800)은, 개인용 컴퓨터, 프로세싱 회로, 텔레비전, 재생 디바이스, 인코딩 디바이스, 워크스테이션, 휴대용 컴퓨팅 디바이스, 콘솔, 네트워크 단말, 프로세싱 디바이스, 스위치, 라우터, 서버, 클라이언트 등으로서 동작하는 네트워크 디바이스 등일 수 있거나 그들을 포함할 수 있다.
다음의 설명이 여기에 설명된 바와 같이, 신호 프로세서(100-1), 신호 프로세서(100-2), 미디어 플레이어 등과 같은 리소스들 중 임의의 리소스와 연관된 기능을 어떻게 수행할지를 표시하는 기본적인 실시예를 제공함을 유의한다. 그러나, 동작들을 수행하기 위한 컴퓨터 시스템(800)의 실제 구성이 각각의 애플리케이션에 의존하여 변할 수 있음을 유의해야 한다.
도시된 바와 같이, 본 발명의 예의 컴퓨터 시스템(800)은, 디지털 정보가 저장 및 리트리브될 수 있는 비-일시적인 타입의 매체들, 컴퓨터 판독가능 하드웨어 저장 매체 등과 같은 컴퓨터 판독가능 저장 매체들(812)을 커플링하는 상호접속부(811)를 포함한다. 컴퓨터 시스템(800)은, 프로세서(813), I/O 인터페이스(814), 및 통신 인터페이스(817)를 더 포함할 수 있다.
I/O 인터페이스(814)는 저장소(180), 및 존재한다면, 디스플레이 스크린, 키보드, 컴퓨터 마우스와 같은 주변 디바이스들(816) 등으로의 접속을 제공한다.
컴퓨터 판독가능 저장 매체(812)(예를 들어, 하드웨어 저장 매체들)는, 메모리, 광학 저장부, 하드 드라이브, 플로피 디스크 등과 같은 임의의 적절한 디바이스 및/또는 하드웨어일 수 있다. 컴퓨터 판독가능 저장 매체는, 신호 프로세서(840)와 연관된 명령들을 저장하기 위한 비-일시적인 저장 매체들일 수 있다. 명령들은, 여기에 설명된 바와 같은 동작들 중 임의의 동작을 수행하기 위해 신호 프로세서(840)와 같은 각각의 리소스에 의해 실행된다.
통신 인터페이스(817)는 컴퓨터 시스템(800)이, 원격 소스들로부터 정보를 리트리브하기 위해 네트워크(190)를 통하여 통신하고, 다른 컴퓨터들, 스위치들, 클라이언트들, 서버들 등과 통신할 수 있게 한다. I/O 인터페이스(814)는 또한, 프로세서(813)가 저장소(180)로부터 저장된 정보를 리트리브하거나 그 정보의 리트리벌을 시도할 수 있게 한다.
도시된 바와 같이, 컴퓨터 판독가능 저장 매체들(812)은 신호 프로세서 프로세스(840-2)로서 프로세서(813)에 의해 실행되는 신호 프로세서 애플리케이션(840-1)을 이용하여 인코딩될 수 있다.
컴퓨터 시스템(800)이 또한, 데이터 및/또는 로직 명령들을 저장하기 위해 컴퓨터 판독가능 저장 매체(812)(예를 들어, 하드웨어 저장 매체들, 비-일시적인 저장 매체들 등)를 포함하도록 구현될 수 있음을 유의한다.
컴퓨터 시스템(800)은 그러한 명령들을 실행하고, 여기에 설명된 바와 같은 동작들을 수행하기 위한 프로세서(813)를 포함할 수 있다. 따라서, 실행될 경우, 신호 프로세서 애플리케이션(840-1)과 연관된 코드는 여기에 설명된 바와 같은 프로세싱 기능을 지원할 수 있다. 설명된 바와 같이, 여기에 설명된 바와 같은 신호 프로세서들은 인코딩 및/또는 디코딩을 지원하도록 구성될 수 있다.
일 실시예의 동작 동안, 프로세서(813)는, 컴퓨터 판독가능 저장 매체(812)에 저장된 신호 프로세서 애플리케이션(840-1)의 명령들을 런칭(launch), 구동, 실행, 해석 또는 그렇지 않으면 수행하기 위해, 상호접속부(811)의 사용을 통하여 컴퓨터 판독가능 저장 매체들(812)에 액세스한다. 신호 프로세서 애플리케이션(840-1)의 실행은 프로세서(813) 내의 프로세싱 기능을 생성한다. 즉, 프로세서(813)와 연관된 신호 프로세서 프로세스(840-2)는, 컴퓨터 시스템(800) 내의 프로세서(813) 내에서 또는 그 상에서 신호 프로세서 애플리케이션(840-1)을 실행하는 하나 또는 그 초과의 양상들을 나타낸다.
당업계의 당업자들은, 컴퓨터 시스템(800)이 신호 프로세서 애플리케이션(840-1)을 실행하기 위해 하드웨어 프로세싱 리소스들(예를 들어, 인코더, 디코더 등)의 할당 및 사용을 제어하는 운영 시스템과 같은, 다른 프로세스들 및/또는 소프트웨어 및 하드웨어 컴포넌트들을 포함할 수 있음을 이해할 것이다.
상이한 실시예들에 따르면, 컴퓨터 시스템이, 개인용 컴퓨터 시스템, 데스크탑 컴퓨터, 랩탑, 노트북, 넷북, 컴퓨터, 메인프레임 컴퓨터 시스템, 핸드헬드 컴퓨터, 워크스테이션, 네트워크 컴퓨터, 애플리케이션 서버, 저장 디바이스, (카메라, 캠코더, 셋탑 박스, 모바일 디바이스, 비디오 게임 콘솔, 핸드헬드 비디오 게임 디바이스와 같은) 소비자 전자 디바이스, (스위치, 모뎀, 라우터와 같은) 주변 디바이스, 또는 일반적으로는 임의의 타입의 컴퓨팅 또는 전자 디바이스를 포함하는 (하지만 이에 제한되지 않음) 임의의 다양한 타입들의 디바이스들일 수도 있음을 유의한다.
도 15는 여기에서의 실시예들에 따른, 재구성 데이터를 사용하는 방법을 도시한 예시적인 흐름도(1500)이다.
단계(1510)에서, 신호 프로세서(100-1)는 저장소(180)로부터 재구성 데이터를 리트리브한다. 리트리브된 재구성 데이터는, 다수의 품질 레벨들을 포함하는 계층화된 계층에 따라 인코딩된다.
단계(1520)에서, 신호 프로세서(100-1)는 리트리브된 재구성 데이터를 디코더와 같은 원격 소스에 송신한다. 디코더는, 송신된 재구성 데이터에 기초하여 신호의 렌디션들을 재구성하도록 구성될 수 있다.
단계(1530)에서, 송신 동안, 신호 프로세서(100-1)는, 저장소로부터 리트리브되고 디코더에 송신된 재구성 데이터의 품질 레벨을 변경시킨다.
또한, 여기에서의 기술들이 신호들을 프로세싱 및 재구성할 시에 사용하기에 매우 적합함을 유의한다. 그러나, 여기에서의 실시예들이 그러한 애플리케이션들에서의 사용으로 제한되지 않으며, 여기에 설명된 기술들이 다른 애플리케이션들에 또한 매우 적합함을 유의해야 한다.
여기에 기재된 설명에 기초하여, 다수의 특정한 세부사항들이 청구된 사항의 완전한 이해를 제공하도록 기재되었다. 그러나, 청구된 사항이 이들 특정한 세부사항들 없이도 실시될 수도 있음이 당업계의 당업자들에 의해 이해될 것이다. 다른 예시들에서, 당업자에 의해 알려졌을 방법들, 장치들, 시스템들 등은 청구된 사항을 불명료하게 하지 않기 위해 상세히 설명되지 않았다. 상세한 설명의 몇몇 부분들은, 컴퓨터 메모리와 같은 컴퓨팅 시스템 메모리 내에 저장된 데이터 비트들 또는 바이너리 디지털 신호들에 대한 동작들의 알고리즘들 또는 심볼적 표현들의 관점들에서 제공되었다. 이들 알고리즘 설명들 또는 표현들은, 데이터 프로세싱 분야들의 당업자들의 작업의 본질을 당업계의 다른 당업자들에게 전달하기 위해 그 데이터 프로세싱 분야들의 당업자들에 의해 사용된 기술들의 예들이다. 여기에 설명된 바와 같이 그리고 일반적으로, 알고리즘은, 원하는 결과를 유도하는 동작들 또는 유사한 프로세싱의 일관적인(self-consistent) 시퀀스인 것으로 고려된다. 이러한 콘텍스트에서, 동작들 또는 프로세싱은 물리적 양들의 물리적 조작을 수반한다. 통상적으로, 필수적이지는 않지만, 그러한 양들은 저장, 전달, 결합, 비교 또는 그렇지 않으면 조작될 수 있는 전기 또는 자기 신호들의 형태를 취할 수도 있다. 종종, 일반적인 사용의 이유들 때문에 주로, 비트들, 데이터, 값들, 엘리먼트들, 심볼들, 문자들, 용어들, 숫자들, 수치들 등으로서 그러한 신호들을 지칭하는 것이 편리한 것으로 증명된다. 그러나, 이들 및 유사한 용어들의 모두가 적절한 물리적인 양들과 연관될 것이며, 단지 편리한 라벨들일 뿐임을 이해해야 한다. 달리 특정하게 표현되지 않으면, 다음의 설명으로부터 명백한 바와 같이, 본 명세서 전반에 걸쳐, "프로세싱", "컴퓨팅", "계산", "결정" 등과 같은 용어들을 이용하는 설명들은, 컴퓨팅 플랫폼의 메모리들, 레지스터들, 또는 다른 정보 저장 디바이스들, 송신 디바이스들, 또는 디스플레이 디바이스들 내의 물리적 전자 또는 자기 양들로서 표현된 데이터를 조작 또는 변환하는 컴퓨터 또는 유사한 전자 컴퓨팅 디바이스와 같은 컴퓨팅 플랫폼의 동작들 또는 프로세스들을 지칭함을 인식한다.
본 발명이 본 발명의 바람직한 실시예들을 참조하여 상세하게 도시 및 설명되었지만, 형태 및 세부사항들에서의 다양한 변화들이, 첨부된 청구항들에 의해 정의된 바와 같은 본 출원의 사상 및 범위를 벗어나지 않으면서 본 발명에서 행해질 수도 있음은 당업계의 당업자들에 의해 이해될 것이다. 그러한 변화들은 본 발명의 출원의 범위에 의해 커버되는 것으로 의도된다. 그로써, 본 발명의 출원의 실시예들의 상기 설명은 제한하는 것으로 의도되지 않는다. 오히려, 본 발명에 대한 임의의 제한들은 다음의 청구항들에서 제공된다.

Claims (29)

  1. 서버로부터 디코더로의 재구성 데이터의 리트리벌(retrieval) 및 송신을 관리하기 위한 방법으로서,
    상기 서버는 하나 이상의 인코딩된 신호들을 갖는 저장소를 포함하고, 각각의 인코딩된 신호는 다수의 품질 레벨들을 포함하는 계층화된 계층(tiered hierarchy)에 따라 인코딩된 재구성 데이터의 복수의 식별된 세트들을 포함하고, 제 1 인코딩된 신호에 대응하는 상기 재구성 데이터의 세트는 더 낮은 품질 레벨의 상기 제 1 신호의 부분의 재구성된 렌디션(rendition)에 기초하여, 그리고, 주어진 품질 레벨의 상기 제 1 신호의 다른 부분들의 임의의 재구성된 렌디션에 독립적으로, 상기 주어진 품질 레벨로 상기 제 1 신호의 렌디션의 부분을 어떻게 재구성할지를 상기 디코더에 특정하며,
    상기 방법은,
    네트워크 접속에 대하여 상기 디코더에 의해 지원될 것으로 기대되는 송신 비트 레이트 및/또는 가장 높은 품질 레벨을 결정하는 단계;
    상기 저장소로부터 재구성 데이터를 리트리브(retrieve)하는 단계;
    리트리브된 재구성 데이터를 상기 디코더에 송신하는 단계 - 상기 디코더는, 송신된 재구성 데이터에 기초하여 신호의 렌디션들을 재구성하도록 구성됨 -;
    송신 동안, 상기 디코더에 의해 지원될 것으로 기대되는 송신 비트 레이트 및/또는 가장 높은 품질 레벨을 업데이트하고, 리트리브되고 상기 디코더에 송신된 상기 재구성 데이터의 품질 레벨을 변경시키는 단계;
    상기 재구성 데이터의 제 1 스트림 및 상기 재구성 데이터의 제 2 스트림을 포함하도록 상기 재구성 데이터를 인코딩하는 단계 - 상기 재구성 데이터의 상기 제 1 스트림은 상기 계층에서 제 1 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 재구성 데이터의 상기 제 2 스트림은 상기 계층에서 제 2 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 제 2 품질 레벨은 상기 제 1 품질 레벨보다 높으며, 상기 재구성 데이터의 상기 제 2 스트림은, 상기 제 2 품질 레벨에 따라 상기 신호를 재구성하기 위해, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 제 1 품질 레벨의 신호에 대해 행해질 조정들을 표시하는 보충적인 재구성 데이터임 -;
    상기 재구성 데이터의 상기 제 1 스트림에 대해 에러의 발생(event) 시에, 상기 제 1 품질 레벨에 따른 상기 신호의 재생을 가능하게 하기 위해, 리던던트(redundant) 인코딩 및/또는 보장된 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 1 스트림을 생성하는 단계; 및
    비-리던던트 인코딩 및/또는 보장되지 않은 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 2 스트림을 생성하는 단계를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 품질 레벨을 변경시키는 단계는,
    상기 신호의 제 1 부분의 재생을 위해 상기 디코더에 상기 재구성 데이터의 제 1 스트림을 송신하는 단계 - 상기 재구성 데이터의 상기 제 1 스트림은, 상기 계층화된 계층에서 제 1 품질 레벨까지 상기 신호의 제 1 부분의 렌디션을 어떻게 재구성할지를 표시함 -; 및
    상기 신호의 제 2 부분의 재생을 위해 상기 디코더에 상기 재구성 데이터의 제 2 스트림을 송신하는 단계 - 상기 재구성 데이터의 상기 제 2 스트림은, 상기 계층화된 계층에서 제 2 품질 레벨까지 상기 신호의 제 2 부분의 렌디션을 어떻게 재구성할지를 표시함 -; 를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  3. 제 2 항에 있어서,
    상기 제 1 품질 레벨은 상기 제 2 품질 레벨보다 높으며,
    상기 재구성 데이터의 상기 제 2 스트림은, 상기 네트워크 접속에 대하여 상기 서버 상에서 구동하는 네트워크 혼잡(congestion) 제어 메커니즘과 연관된 정보로부터 송신 채널에서 현재 이용가능한 대역폭을 검출하는 것에 응답하여, 상기 제 1 품질 레벨 대신에 상기 제 2 품질 레벨까지의 재구성 데이터를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  4. 제 2 항에 있어서,
    상기 재구성 데이터의 상기 제 2 스트림은, 상기 제 1 품질 레벨 대신에 상기 제 2 품질 레벨로 상기 재구성 데이터의 상기 제 2 스트림을 송신하기 위한 요청을 수신하는 것에 응답하여, 상기 제 2 품질 레벨까지의 재구성 데이터를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  5. 제 2 항에 있어서,
    상기 재구성 데이터의 상기 제 2 스트림은, 디코딩 리소스의 특성을 검출하는 것에 응답하여, 상기 제 2 품질 레벨까지의 재구성 데이터를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  6. 제 1 항에 있어서,
    상기 신호는 비디오 신호이며, 주어진 품질 레벨의 재구성 데이터의 세트는, 상기 주어진 품질 레벨의 다른 이미지들/프레임들과는 독립적으로, 더 낮은 품질 레벨로의 상기 신호의 재구성에 기초하여 상기 신호의 이미지/프레임의 렌디션을 어떻게 재구성할지를 표시하고;
    상기 송신 동안, 상기 품질 레벨을 변경시키는 단계는, 리트리브되고 상기 디코더에 송신된 가장 높은 품질 레벨의 재구성 데이터를, 상기 비디오 신호의 임의의 시간 샘플에서 변경시키는 단계를 포함하며;
    상기 송신 동안, 상기 품질 레벨을 변경시키는 단계는, 상기 계층화된 계층의 품질 레벨들에 따라 어느 하나의 방향으로 변하는 단계를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  7. 제 1 항에 있어서,
    상기 품질 레벨을 변경시키는 단계는,
    상기 신호의 제 1 부분에 대해, 상기 계층에서 가장 낮은 품질 레벨로부터 상기 제 1 품질 레벨까지 상기 재구성 데이터의 시퀀스를 포함하도록 상기 재구성 데이터의 제 1 스트림을 생성하는 단계;
    상기 제 1 품질 레벨에 따라 상기 신호의 제 1 부분의 재생을 위해 상기 디코더에 상기 재구성 데이터의 상기 제 1 스트림을 송신하는 단계;
    상기 신호의 제 2 부분에 대해, 상기 계층에서 가장 낮은 품질 레벨로부터 상기 제 2 품질 레벨까지 상기 재구성 데이터의 시퀀스를 포함하도록 상기 재구성 데이터의 제 2 스트림을 생성하는 단계 - 상기 제 2 품질 레벨은 상기 제 1 품질 레벨과는 상이함 -; 및
    상기 제 2 품질 레벨에 따라 상기 신호의 제 2 부분의 재생을 위해 상기 디코더에 상기 재구성 데이터의 상기 제 2 스트림을 송신하는 단계를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  8. 제 7 항에 있어서,
    상기 방법은,
    사용자가 제 1 재생 속도로 상기 신호의 제 1 부분의 재생을 수행하고 있다는 상기 디코더로부터의 표시에 응답하여 상기 재구성 데이터의 상기 제 1 스트림을 송신하는 단계; 및
    사용자가 제 2 재생 속도로의 상기 신호의 제 2 부분에 대한 재생을 요청하고 있다는 상기 디코더로부터의 표시에 응답하여 상기 재구성 데이터의 상기 제 2 스트림을 송신하는 단계 - 상기 제 2 재생 속도는 상기 제 1 재생 속도와는 상이함 - 를 더 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  9. 제 1 항에 있어서,
    상기 디코더에 송신된 재구성 데이터의 품질 레벨을 변경시키는 단계는,
    상기 계층에서 제 1 품질 레벨에 따라 상기 신호의 부분들을 재구성하기 위한 상기 재구성 데이터의 세트들을 포함하도록 상기 재구성 데이터의 제 1 스트림을 생성하는 단계;
    상기 제 1 품질 레벨에 따른 상기 신호 중에서의 재생 및 네비게이션(navigation)을 가능하게 하도록 상기 디코더에 상기 재구성 데이터의 상기 제 1 스트림을 송신하는 단계;
    상기 계층에서 제 2 품질 레벨에 따라 상기 신호를 재구성하기 위한 상기 재구성 데이터의 세트들을 포함하도록 상기 재구성 데이터의 제 2 스트림을 생성하는 단계 - 상기 재구성 데이터의 상기 제 2 스트림은, 상기 재구성 데이터의 상기 제 1 스트림에 관한 보충적인 재구성 데이터이고, 상기 재구성 데이터의 상기 제 2 스트림은, 상기 제 2 품질 레벨에 따라 상기 신호를 재구성하기 위해, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 신호의 렌디션을 어떻게 변경할지를 표시함 -; 및
    상기 재구성 데이터의 상기 제 1 스트림을 송신하는 것에 후속하여, 상기 제 2 품질 레벨에 따른 상기 신호의 재생을 위해 상기 디코더에 상기 재구성 데이터의 상기 제 2 스트림을 송신하는 단계를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  10. 제 9 항에 있어서,
    상기 신호는 비디오 신호이고, 상기 재구성 데이터의 상기 제 1 스트림은 버퍼링 정보이고, 상기 버퍼링 정보는, 재생을 위한 타겟 품질 레벨보다 낮은 품질 레벨로 송신되는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  11. 제 1 항에 있어서,
    상기 디코더에 송신되는 재구성 데이터의 품질 레벨을 변경시키는 단계는,
    상기 재구성 데이터의 세트들을 리트리브하며, 상기 계층에서 제 1 품질 레벨에 따라 상기 신호를 재구성하기 위한 상기 재구성 데이터의 제 1 스트림을 생성하는 단계;
    상기 제 1 품질 레벨에서 재생되는 상기 신호 중에서의 네비게이션을 가능하게 하도록 상기 디코더에 상기 재구성 데이터의 상기 제 1 스트림을 송신하는 단계;
    상기 신호 내의 위치를 표시하는 포인터 값을 수신하는 단계 - 상기 포인터 값은, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 제 1 품질 레벨에서의 상기 신호의 재생을 뷰잉(view)하는 사용자에 의해 생성됨 -;
    상기 포인터 값에 의해 특정된 위치에서 시작하여 상기 신호를 재구성하기 위한 상기 재구성 데이터의 세트들을 포함하도록 상기 재구성 데이터의 제 2 스트림을 생성하는 단계 - 상기 재구성 데이터의 상기 제 2 스트림은, 상기 재구성 데이터의 상기 제 1 스트림에 관한 보충적인 재구성 데이터를 제공하며, 상기 제 2 품질 레벨에 따라 상기 포인터 값에 의해 특정된 상기 위치에서 시작하여 상기 신호를 재구성하기 위해, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 신호의 렌디션을 어떻게 변경할지를 표시함 -; 및
    상기 포인터 값에 의해 특정된 상기 위치 이후의 상기 신호의 부분들의 상기 제 2 품질 레벨에서의 재생을 가능하게 하도록 상기 디코더에 상기 재구성 데이터의 상기 제 2 스트림을 송신하는 단계를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  12. 제 1 항에 있어서,
    원하는 재생 속에 따라 상기 디코더에 의해 실질적으로 실시간으로 상기 신호의 재생을 용이하게 하기 위하여 상기 재구성 데이터의 품질 레벨을 변경시키는 단계를 더 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  13. 제 1 항에 있어서,
    과금된 요금들/로열티(royalty)들이 디코더들에 송신된 재구성 데이터의 품질 레벨에 의존하는 요금 스케줄 또는 로열티 스케줄을 구현하는 단계를 더 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  14. 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법으로서,
    상기 서버는 하나 이상의 인코딩된 신호들을 갖는 저장소를 포함하고, 각각의 인코딩된 신호는 다수의 품질 레벨들을 포함하는 계층화된 계층에 따라 인코딩된 재구성 데이터의 복수의 식별된 세트들을 포함하고, 제 1 인코딩된 신호에 대응하는 상기 재구성 데이터의 세트는 더 낮은 품질 레벨의 상기 제 1 신호의 부분의 재구성된 렌디션에 기초하여, 그리고, 주어진 품질 레벨의 상기 제 1 신호의 다른 부분들의 임의의 재구성된 렌디션에 독립적으로, 상기 주어진 품질 레벨로 상기 제 1 신호의 렌디션의 부분을 어떻게 재구성할지를 상기 디코더에 특정하며,
    상기 방법은,
    네트워크 접속에 대하여 상기 디코더에 의해 지원될 것으로 기대되는 송신 비트 레이트 및/또는 가장 높은 품질 레벨을 결정하는 단계;
    상기 저장소로부터 재구성 데이터를 리트리브하는 단계;
    리트리브된 재구성 데이터를 상기 디코더에 송신하는 단계 - 상기 디코더는, 송신된 재구성 데이터에 기초하여 신호의 렌디션들을 재구성하도록 구성됨 -; 및
    송신 동안, 상기 디코더에 의해 지원될 것으로 기대되는 송신 비트 레이트 및/또는 가장 높은 품질 레벨을 업데이트하고, 리트리브되고 상기 디코더에 송신된 상기 재구성 데이터의 품질 레벨을 변경시키는 단계;
    상기 재구성 데이터의 제 1 스트림 및 상기 재구성 데이터의 제 2 세트를 포함하도록 상기 재구성 데이터를 인코딩하는 단계 - 상기 재구성 데이터의 상기 제 1 스트림은, 상기 계층에서 제 1 품질 레벨까지 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 재구성 데이터의 상기 제 2 스트림은, 상기 계층에서 제 2 품질 레벨까지 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 제 2 품질 레벨은 상기 제 1 품질 레벨보다 높으며, 상기 재구성 데이터의 상기 제 2 스트림은, 상기 제 2 품질 레벨에 따라 상기 신호를 재구성하기 위해, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 제 1 품질 레벨의 신호에 대해 행해질 조정들을 표시하는 보충적인 재구성 데이터임 -; 및
    상기 재구성 데이터의 상기 제 1 스트림 또는 상기 제 2 스트림 중 어느 하나에 대해서만 암호화 및/또는 디지털 권리 관리를 구현하여, 상기 재구성 데이터의 스트림의 인가되지 않은 디코딩을 방지하는 단계를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  15. 삭제
  16. 제 1 항에 있어서,
    상기 신호는 비디오 신호이며, 상기 재구성 데이터는 계층화된 계층의 품질 레벨들로 인코딩된 상기 재구성 데이터의 세트들로 파싱(parse)되고, 상기 재구성 데이터의 상기 세트들의 각각은, 상기 비디오 신호의 하나 이상의 이미지들/프레임들의 부분과 연관된 인접한 엘리먼트들의 각각의 타일을 주어진 품질 레벨로 어떻게 재구성할지를 표시하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  17. 제 16 항에 있어서,
    상기 재구성 데이터들의 상기 세트들은 다수의 시퀀스들로 결합되며,
    상기 디코더에 재구성 데이터의 시퀀스들을 송신하는 단계는,
    순차적인 순서로, 하나의 완전한 시퀀스 이후에 다른 완전한 시퀀스로, 비트 스트림으로 상기 디코더에 상기 다수의 시퀀스들의 각각을 송신하는 단계; 및
    상기 계층화된 재구성 데이터의 세트들의 각각의 완전한 시퀀스의 각각의 시작부 및 종료부를 표시하기 위해 상기 비트 스트림에 마커 정보를 제공하는 단계를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  18. 제 1 항에 있어서,
    상기 디코더에 재구성 데이터를 송신하는 단계는,
    각각의 품질 레벨에 대한 그리고 상기 신호의 각각의 부분에 대한 계층화된 재구성 데이터의 각각의 시작부 및 종료부를 표시하기 위해 비트 스트림에 마커 정보를 제공하는 단계를 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  19. 제 1 항에 있어서,
    상기 디코더에 재구성 데이터의 세트들을 송신하는 단계는,
    상기 신호의 다수의 연속하는 부분들의 각각의 부분에 대해 실질적으로 일정한 비트 레이트의 계층화된 재구성 데이터를 상기 디코더에 송신하기 위하여, 상기 신호의 각각의 부분에 대해 상기 디코더에 송신된 재구성 데이터의 가장 높은 품질 레벨을 변경시키는 단계를 더 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  20. 제 1 항에 있어서,
    제 1 세그먼트 및 제 2 세그먼트를 적어도 포함하는 다수의 세그먼트들로 데이터 스트림을 분할하는 단계 - 상기 제 1 세그먼트는 상기 신호의 제 1 부분을 재생하기 위한 재구성 데이터를 포함하고, 상기 신호의 제 1 부분은 이미지/프레임이고, 상기 제 2 세그먼트는 상기 신호의 제 2 부분을 재생하기 위한 재구성 데이터를 포함하고, 상기 신호의 제 2 부분은 적어도 하나의 후속 이미지들/프레임들의 세트를 포함함 -;
    상기 신호의 제 1 부분을 제 1 품질 레벨로 재구성하기 위한 다수의 품질 레벨들의 재구성 데이터를 포함하도록 상기 데이터 스트림의 제 1 세그먼트를 채우는(populate) 단계; 및
    i) 상기 신호의 제 2 부분을 재구성하기 위한 다수의 품질 레벨들의 재구성 데이터, 및 ii) 상기 신호의 제 1 부분을 제 2 품질 레벨로 재구성하기 위한 적어도 하나의 품질 레벨의 재구성 데이터를 포함하도록 상기 데이터 스트림의 제 2 세그먼트를 채우는 단계 - 상기 제 2 품질 레벨은 상기 제 1 품질 레벨보다 높음 - 를 더 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  21. 제 1 항에 있어서,
    상기 디코더는 연관된 오디오 신호를 갖는 비디오 신호를 디코딩하며,
    상기 디코더에 상기 재구성 데이터의 부분들을 송신하는 단계는,
    상기 비디오 신호와 연관된 오디오 신호의 재구성 데이터와 상기 비디오 신호의 재구성 데이터를 결합하는 단계; 및
    리트리브되고, 단일 스트림으로 결합되며, 상기 디코더에 송신되는 상기 비디오 신호 및/또는 상기 오디오 신호에 대한 재구성 데이터의 품질 레벨을 변경시키는 단계를 더 포함하는, 서버로부터 디코더로의 재구성 데이터의 리트리벌 및 송신을 관리하기 위한 방법.
  22. 저장소로부터 리트리브된 재구성 데이터의 세트들을 프로세싱하는 디코더 디바이스에서의 재구성 데이터의 적응성 디코딩을 관리하기 위한 방법으로서,
    상기 재구성 데이터의 상기 세트들은 다수의 품질레벨들을 포함하는 계층화된 계층에 따라 인코딩되고, 제 1 인코딩된 신호에 대응하는 재구성 데이터의 세트는, 더 낮은 품질 레벨의 상기 제 1 신호의 부분의 재구성된 렌디션에 기초하여, 그리고 주어진 품질 레벨의 상기 제 1 신호의 다른 부분들의 임의의 재구성된 렌디션과는 독립적으로, 상기 주어진 품질 레벨로 상기 제 1 신호의 렌디션의 부분을 어떻게 재구성할지를 상기 디코더에게 특정하며,
    상기 방법은,
    제 1 품질 레벨에 따른 신호 재구성 및 재생을 시작하는 단계;
    사용자 동작이 상기 신호에 대한 재생 셋팅들을 변경했다는 표시를 수신하는 단계;
    상기 신호 재구성 및 상기 재생의 품질 레벨을 변경시키는 단계;
    상기 재구성 데이터의 제 1 스트림 및 상기 재구성 데이터의 제 2 스트림을 포함하도록 상기 재구성 데이터를 인코딩하는 단계 - 상기 재구성 데이터의 상기 제 1 스트림은 상기 계층에서 제 1 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 재구성 데이터의 상기 제 2 스트림은 상기 계층에서 제 2 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 제 2 품질 레벨은 상기 제 1 품질 레벨보다 높으며, 상기 재구성 데이터의 상기 제 2 스트림은, 상기 제 2 품질 레벨에 따라 상기 신호를 재구성하기 위해, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 제 1 품질 레벨의 신호에 대해 행해질 조정들을 표시하는 보충적인 재구성 데이터임 -;
    상기 재구성 데이터의 상기 제 1 스트림에 대해 에러의 발생(event) 시에, 상기 제 1 품질 레벨에 따른 상기 신호의 재생을 가능하게 하기 위해, 리던던트(redundant) 인코딩 및/또는 보장된 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 1 스트림을 생성하는 단계; 및
    비-리던던트 인코딩 및/또는 보장되지 않은 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 2 스트림을 생성하는 단계를 포함하는, 재구성 데이터의 적응성 디코딩을 관리하기 위한 방법.
  23. 제 22 항에 있어서,
    상기 신호 재구성 및 재생의 품질 레벨을 변경시키는 단계는, 상기 저장소로부터 리트리브되고, 재생되고 있는 상기 신호의 각각의 렌디션에 대하여 상기 디코더에 의해 프로세싱되는 재구성 데이터의 세트들의 양을 변경시키는 단계를 포함하는, 재구성 데이터의 적응성 디코딩을 관리하기 위한 방법.
  24. 제 22 항에 있어서,
    상기 저장소는 하나 이상의 서버 디바이스들 내에 존재하고, 네트워크를 통해 상기 디코더 디바이스에 접속되며,
    상기 재구성 데이터의 각각의 세트는 고유한 식별자에 의해 특성화되는, 재구성 데이터의 적응성 디코딩을 관리하기 위한 방법.
  25. 제 22 항에 있어서,
    상기 사용자 동작은 재생을 느리게 하는 것 및/또는 재생을 중지하는 것을 포함하며,
    상기 품질 레벨을 변경시키는 단계는, 더 느린 속도로 재생되고 있거나 중지상태에 있는 상기 신호의 부분에 대해 상기 신호 재구성 및 상기 재생의 품질 레벨을 증가시키는 단계를 포함하는, 재구성 데이터의 적응성 디코딩을 관리하기 위한 방법.
  26. 제 22 항에 있어서,
    상기 사용자 동작은 재생되고 있는 상기 신호의 렌디션을 줌밍(zoom)하는 것을 포함하며,
    상기 품질 레벨을 변경시키는 단계는, 상기 신호의 부분에 대해 상기 신호 재구성 및 상기 재생의 품질 레벨을 증가시키는 단계를 포함하는, 재구성 데이터의 적응성 디코딩을 관리하기 위한 방법.
  27. 저장소로부터 리트리브된 하나 이상의 볼륨(volumetric) 신호들의 재구성 데이터의 세트들을 프로세싱하는 디코더 내의 재구성 데이터의 적응성 디코딩을 관리하는 방법으로서,
    상기 재구성 데이터의 상기 세트들은 다수의 품질레벨들을 포함하는 계층화된 계층에 따라 인코딩되고, 제 1 인코딩된 신호에 대응하는 재구성 데이터의 세트는, 더 낮은 품질 레벨의 상기 제 1 신호의 부분의 재구성된 렌디션에 기초하여, 그리고 주어진 품질 레벨의 상기 제 1 신호의 다른 부분들의 임의의 재구성된 렌디션과는 독립적으로,
    상기 주어진 품질 레벨로 상기 제 1 신호의 렌디션의 부분을 어떻게 재구성할지를 상기 디코더에게 특정하며,
    상기 방법은,
    제 1 품질 레벨에 따라 상기 제 1 신호의 신호 재구성 및 렌더링(rendering)을 시작하는 단계;
    상기 제 1 신호의 부분에 대한 변경된 렌더링 요건들의 표시를 수신하는 단계;
    상기 신호 재구성 및 상기 렌더링의 품질 레벨을 변경시키는 단계;
    상기 재구성 데이터의 제 1 스트림 및 상기 재구성 데이터의 제 2 스트림을 포함하도록 상기 재구성 데이터를 인코딩하는 단계 - 상기 재구성 데이터의 상기 제 1 스트림은 상기 계층에서 제 1 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 재구성 데이터의 상기 제 2 스트림은 상기 계층에서 제 2 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 제 2 품질 레벨은 상기 제 1 품질 레벨보다 높으며, 상기 재구성 데이터의 상기 제 2 스트림은, 상기 제 2 품질 레벨에 따라 상기 신호를 재구성하기 위해, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 제 1 품질 레벨의 신호에 대해 행해질 조정들을 표시하는 보충적인 재구성 데이터임 -;
    상기 재구성 데이터의 상기 제 1 스트림에 대해 에러의 발생(event) 시에, 상기 제 1 품질 레벨에 따른 상기 신호의 재생을 가능하게 하기 위해, 리던던트(redundant) 인코딩 및/또는 보장된 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 1 스트림을 생성하는 단계; 및
    비-리던던트 인코딩 및/또는 보장되지 않은 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 2 스트림을 생성하는 단계를 포함하는, 재구성 데이터의 적응성 디코딩을 관리하기 위한 방법.
  28. 명령들이 저장된 컴퓨터-판독가능 저장 하드웨어로서,
    상기 명령들은 프로세싱 디바이스에 의해 실행될 경우, 상기 프로세싱 디바이스로 하여금,
    네트워크 접속에 대하여 디코더에 의해 지원될 것으로 기대되는 송신 비트 레이트 및/또는 가장 높은 품질 레벨을 결정하고;
    저장소로부터 재구성 데이터를 리트리브하고 - 상기 저장소는 하나 이상의 인코딩된 신호들을 포함하고, 각각의 인코딩된 신호는, 다수의 품질 레벨들을 포함하는 계층화된 계층에 따라 인코딩된 재구성 데이터의 복수의 식별된 세트들을 포함하고, 제 1 인코딩된 신호에 대응하는 재구성 데이터의 세트는, 더 낮은 품질 레벨의 상기 제 1 신호의 부분의 재구성된 렌디션에 기초하여, 그리고 주어진 품질 레벨의 상기 제 1 신호의 다른 부분들의 임의의 재구성된 렌디션과는 독립적으로, 상기 주어진 품질 레벨로 상기 제 1 신호의 렌디션의 부분을 어떻게 재구성할지를 상기 디코더에 특정함 -;
    리트리브된 재구성 데이터를 상기 디코더에 송신하고 - 상기 디코더는, 송신된 재구성 데이터에 기초하여 신호의 렌디션들을 재구성하도록 구성됨 -;
    송신 동안, 상기 디코더에 의해 지원될 것으로 기대되는 송신 비트 레이트 및/또는 가장 높은 품질 레벨을 업데이트하고, 리트리브되고 상기 디코더에 송신된 상기 재구성 데이터의 품질 레벨을 변경시키고;
    상기 재구성 데이터의 제 1 스트림 및 상기 재구성 데이터의 제 2 스트림을 포함하도록 상기 재구성 데이터를 인코딩하고 - 상기 재구성 데이터의 상기 제 1 스트림은 상기 계층에서 제 1 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 재구성 데이터의 상기 제 2 스트림은 상기 계층에서 제 2 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 제 2 품질 레벨은 상기 제 1 품질 레벨보다 높으며, 상기 재구성 데이터의 상기 제 2 스트림은, 상기 제 2 품질 레벨에 따라 상기 신호를 재구성하기 위해, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 제 1 품질 레벨의 신호에 대해 행해질 조정들을 표시하는 보충적인 재구성 데이터임 -;
    상기 재구성 데이터의 상기 제 1 스트림에 대해 에러의 발생(event) 시에, 상기 제 1 품질 레벨에 따른 상기 신호의 재생을 가능하게 하기 위해, 리던던트(redundant) 인코딩 및/또는 보장된 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 1 스트림을 생성하며; 그리고
    비-리던던트 인코딩 및/또는 보장되지 않은 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 2 스트림을 생성하는 동작들을 수행하게 하는, 컴퓨터-판독가능 저장 하드웨어.
  29. 컴퓨터 시스템으로서,
    프로세서;
    상기 프로세서에 의해 실행되는 애플리케이션과 연관된 명령들을 저장하는 메모리 유닛; 및
    상기 프로세서 및 상기 메모리 유닛을 커플링시키는 상호접속부를 포함하며,
    상기 상호접속부는 상기 컴퓨터 시스템이 상기 애플리케이션을 실행하여,
    네트워크 접속에 대하여 디코더에 의해 지원될 것으로 기대되는 송신 비트 레이트 및/또는 가장 높은 품질 레벨을 결정하고;
    저장소로부터 재구성 데이터를 리트리브하고 - 상기 저장소는 하나 이상의 인코딩된 신호들을 포함하고, 각각의 인코딩된 신호는, 다수의 품질 레벨들을 포함하는 계층화된 계층에 따라 인코딩된 재구성 데이터의 복수의 식별된 세트들을 포함하고, 제 1 인코딩된 신호에 대응하는 재구성 데이터의 세트는, 더 낮은 품질 레벨의 상기 제 1 신호의 부분의 재구성된 렌디션에 기초하여, 그리고 주어진 품질 레벨의 상기 제 1 신호의 다른 부분들의 임의의 재구성된 렌디션과는 독립적으로, 상기 주어진 품질 레벨로 상기 제 1 신호의 렌디션의 부분을 어떻게 재구성할지를 상기 디코더에 특정함 -;
    리트리브된 재구성 데이터를 상기 디코더에 송신하며 - 상기 디코더는, 송신된 재구성 데이터에 기초하여 신호의 렌디션들을 재구성하도록 구성됨 -;
    송신 동안, 상기 디코더에 의해 지원될 것으로 기대되는 송신 비트 레이트 및/또는 가장 높은 품질 레벨을 업데이트하고, 리트리브되고 상기 디코더에 송신된 상기 재구성 데이터의 품질 레벨을 변경시키고;
    상기 재구성 데이터의 제 1 스트림 및 상기 재구성 데이터의 제 2 스트림을 포함하도록 상기 재구성 데이터를 인코딩하고 - 상기 재구성 데이터의 상기 제 1 스트림은 상기 계층에서 제 1 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 재구성 데이터의 상기 제 2 스트림은 상기 계층에서 제 2 품질 레벨에 따라 상기 신호의 재구성을 가능하게 하도록 구성되고, 상기 제 2 품질 레벨은 상기 제 1 품질 레벨보다 높으며, 상기 재구성 데이터의 상기 제 2 스트림은, 상기 제 2 품질 레벨에 따라 상기 신호를 재구성하기 위해, 상기 재구성 데이터의 상기 제 1 스트림에 기초하여 생성된 상기 제 1 품질 레벨의 신호에 대해 행해질 조정들을 표시하는 보충적인 재구성 데이터임 -;
    상기 재구성 데이터의 상기 제 1 스트림에 대해 에러의 발생(event) 시에, 상기 제 1 품질 레벨에 따른 상기 신호의 재생을 가능하게 하기 위해, 리던던트(redundant) 인코딩 및/또는 보장된 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 1 스트림을 생성하며; 그리고
    비-리던던트 인코딩 및/또는 보장되지 않은 전달을 이용한 송신을 포함하도록 상기 재구성 데이터의 상기 제 2 스트림을 생성하는
    동작들을 수행할 수 있게 하는, 컴퓨터 시스템.
KR1020147004589A 2011-07-21 2012-07-20 계층화된 신호 품질 계층에서의 재구성 데이터의 송신 KR102027410B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/188,237 US10873772B2 (en) 2011-07-21 2011-07-21 Transmission of reconstruction data in a tiered signal quality hierarchy
US13/188,237 2011-07-21
PCT/IB2012/053726 WO2013011496A1 (en) 2011-07-21 2012-07-20 Transmission of reconstruction data in a tiered signal quality hierarchy

Publications (2)

Publication Number Publication Date
KR20140071339A KR20140071339A (ko) 2014-06-11
KR102027410B1 true KR102027410B1 (ko) 2019-10-01

Family

ID=46851542

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147004589A KR102027410B1 (ko) 2011-07-21 2012-07-20 계층화된 신호 품질 계층에서의 재구성 데이터의 송신

Country Status (14)

Country Link
US (3) US10873772B2 (ko)
EP (2) EP3723381A1 (ko)
JP (1) JP6339012B2 (ko)
KR (1) KR102027410B1 (ko)
CN (1) CN103843353B (ko)
AU (2) AU2012285360A1 (ko)
BR (1) BR112014001207B1 (ko)
CA (1) CA2842560C (ko)
EA (1) EA032768B1 (ko)
ES (1) ES2808531T3 (ko)
IL (1) IL230273A (ko)
MX (1) MX336296B (ko)
WO (1) WO2013011496A1 (ko)
ZA (1) ZA201400472B (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8977065B2 (en) * 2011-07-21 2015-03-10 Luca Rossato Inheritance in a tiered signal quality hierarchy
US8718445B1 (en) 2013-09-03 2014-05-06 Penthera Partners, Inc. Commercials on mobile devices
US9244916B2 (en) * 2013-10-01 2016-01-26 Penthera Partners, Inc. Downloading media objects
US9143773B2 (en) * 2013-10-04 2015-09-22 Institute For Information Industry Video signal fault detection system capable of inference of abnormal components
WO2016092759A1 (ja) * 2014-12-09 2016-06-16 パナソニックIpマネジメント株式会社 送信方法、受信方法、送信装置および受信装置
CN107750456B (zh) 2015-04-13 2022-02-11 V-诺瓦国际有限公司 利用依赖于复杂性信息的一个信号的数据速率目标对多个信号进行编码
CN106162911B (zh) * 2015-04-17 2021-12-07 索尼公司 用于无线通信的电子设备和方法
CN104966001B (zh) * 2015-06-24 2017-04-12 广州酷狗计算机科技有限公司 一种多媒体文件的处理方法及装置
GB2547442B (en) * 2016-02-17 2022-01-12 V Nova Int Ltd Physical adapter, signal processing equipment, methods and computer programs
GB2553556B (en) * 2016-09-08 2022-06-29 V Nova Int Ltd Data processing apparatuses, methods, computer programs and computer-readable media
US10853887B2 (en) * 2016-09-27 2020-12-01 Adobe Inc. Determination of paywall metrics
US10360727B2 (en) * 2017-08-02 2019-07-23 Omnivor, Inc. Methods for streaming visible blocks of volumetric video
US10516885B1 (en) 2018-07-11 2019-12-24 Tencent America LLC Method and apparatus for video coding
GB201817784D0 (en) * 2018-10-31 2018-12-19 V Nova Int Ltd Methods,apparatuses, computer programs and computer-readable media
GB2617790B (en) * 2019-03-20 2024-03-13 V Nova Int Ltd Low complexity enhancement video coding
GB2598701B (en) 2020-05-25 2023-01-25 V Nova Int Ltd Wireless data communication system and method
JP2022179992A (ja) * 2021-05-24 2022-12-06 ソニーグループ株式会社 情報処理システム、情報処理装置及び情報処理方法
WO2024020403A1 (en) * 2022-07-22 2024-01-25 Bytedance Inc. Method, apparatus, and medium for visual data processing
GB2620655A (en) 2022-11-01 2024-01-17 V Nova Int Ltd Image processing using residual frames and differential frames

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001069486A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd ビデオデータ送受信システム及びビデオデータ送受信装置
JP2005277949A (ja) * 2004-03-25 2005-10-06 Sony Corp 送信装置および方法、受信装置および方法、記録媒体、並びにプログラム
US20110010748A1 (en) * 2008-02-20 2011-01-13 Nec Corporation Video distribution device, video distribution system, and video distribution method

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08181966A (ja) 1994-12-27 1996-07-12 Toshiba Corp 送信装置並びに受信装置並びに通信処理システム
JPH1118087A (ja) 1997-06-20 1999-01-22 Olympus Optical Co Ltd 画像データの変換装置および変換方法
JP2001007786A (ja) * 1999-06-21 2001-01-12 Matsushita Electric Ind Co Ltd データ通信方法およびシステム
EP1670260A3 (en) 2002-01-23 2010-03-03 Nokia Corporation Grouping of image frames in video coding
JP2003324700A (ja) 2002-05-08 2003-11-14 Hitachi Ltd 多重符号化情報分離装置及び復号装置
US7379496B2 (en) * 2002-09-04 2008-05-27 Microsoft Corporation Multi-resolution video coding and decoding
US20130107938A9 (en) * 2003-05-28 2013-05-02 Chad Fogg Method And Apparatus For Scalable Video Decoder Using An Enhancement Stream
US7369610B2 (en) * 2003-12-01 2008-05-06 Microsoft Corporation Enhancement layer switching for scalable video coding
KR100596705B1 (ko) * 2004-03-04 2006-07-04 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩 방법과 비디오 인코딩 시스템, 및 비디오 디코딩 방법과 비디오 디코딩 시스템
JP4766888B2 (ja) * 2004-03-30 2011-09-07 三洋電機株式会社 画像処理装置
JP2006033507A (ja) 2004-07-16 2006-02-02 Sony Corp 遠隔編集システム、主編集装置、遠隔編集装置、編集方法、編集プログラム、及び記憶媒体
JP2008523686A (ja) * 2004-12-13 2008-07-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ スケーラブル画像符号化
US7336837B2 (en) * 2005-01-11 2008-02-26 Nokia Corporation Method and system for coding/decoding of a video bit stream for fine granularity scalability
GB0600141D0 (en) * 2006-01-05 2006-02-15 British Broadcasting Corp Scalable coding of video signals
US20070160134A1 (en) * 2006-01-10 2007-07-12 Segall Christopher A Methods and Systems for Filter Characterization
US20080043832A1 (en) * 2006-08-16 2008-02-21 Microsoft Corporation Techniques for variable resolution encoding and decoding of digital video
JP4915208B2 (ja) * 2006-10-26 2012-04-11 三菱電機株式会社 ストリームデータ再生システム
US8199812B2 (en) * 2007-01-09 2012-06-12 Qualcomm Incorporated Adaptive upsampling for scalable video coding
US20080181298A1 (en) * 2007-01-26 2008-07-31 Apple Computer, Inc. Hybrid scalable coding
US20090262801A1 (en) * 2008-04-17 2009-10-22 Qualcomm Incorporated Dead zone parameter selections for rate control in video coding
US8509434B2 (en) 2008-06-20 2013-08-13 Korean Broadcasting System Method and apparatus for protecting scalable video coding contents
US20090320081A1 (en) * 2008-06-24 2009-12-24 Chui Charles K Providing and Displaying Video at Multiple Resolution and Quality Levels
US20100262708A1 (en) * 2009-04-08 2010-10-14 Nokia Corporation Method and apparatus for delivery of scalable media data
JP5504336B2 (ja) * 2009-05-05 2014-05-28 テレフオンアクチーボラゲット エル エム エリクソン(パブル) スケーラブルビデオ符号化方法、符号器及びコンピュータプログラム
US9093185B2 (en) 2009-05-29 2015-07-28 Kabushiki Kaisha Toshiba Method of and system for suppressing deposition of radioactive substance

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001069486A (ja) * 1999-08-31 2001-03-16 Hitachi Ltd ビデオデータ送受信システム及びビデオデータ送受信装置
JP2005277949A (ja) * 2004-03-25 2005-10-06 Sony Corp 送信装置および方法、受信装置および方法、記録媒体、並びにプログラム
US20110010748A1 (en) * 2008-02-20 2011-01-13 Nec Corporation Video distribution device, video distribution system, and video distribution method

Also Published As

Publication number Publication date
CA2842560C (en) 2022-12-06
CN103843353A (zh) 2014-06-04
BR112014001207A8 (pt) 2022-07-19
ES2808531T3 (es) 2021-03-01
BR112014001207B1 (pt) 2024-03-12
AU2017213593A1 (en) 2017-08-31
KR20140071339A (ko) 2014-06-11
JP2014525190A (ja) 2014-09-25
EP2735166A1 (en) 2014-05-28
US10873772B2 (en) 2020-12-22
IL230273A (en) 2017-09-28
MX336296B (es) 2016-01-14
EA201490314A1 (ru) 2014-06-30
BR112014001207A2 (pt) 2017-02-21
US20130297466A1 (en) 2013-11-07
CN103843353B (zh) 2018-03-09
ZA201400472B (en) 2015-09-30
AU2012285360A2 (en) 2014-03-20
AU2017213593B2 (en) 2019-10-10
EP2735166B1 (en) 2020-05-06
US11695973B2 (en) 2023-07-04
US20240121454A1 (en) 2024-04-11
MX2014000704A (es) 2014-06-23
CA2842560A1 (en) 2013-01-24
AU2012285360A1 (en) 2014-02-13
US20210211752A1 (en) 2021-07-08
WO2013011496A1 (en) 2013-01-24
JP6339012B2 (ja) 2018-06-06
EA032768B1 (ru) 2019-07-31
EP3723381A1 (en) 2020-10-14

Similar Documents

Publication Publication Date Title
KR102027410B1 (ko) 계층화된 신호 품질 계층에서의 재구성 데이터의 송신
CN108476324B (zh) 增强视频流的视频帧中的感兴趣区域的方法、计算机和介质
CN109804635B (zh) 在定时媒体数据流式传输期间改进渲染显示的方法和设备
CN109155873B (zh) 改进虚拟现实媒体内容的流传输的方法、装置和计算机程序
JP6516766B2 (ja) 分割タイムドメディアデータのストリーミングを改善するための方法、デバイス、およびコンピュータプログラム
US10504246B2 (en) Distinct encoding and decoding of stable information and transient/stochastic information
EP3782368A1 (en) Processing video patches for three-dimensional content
US20160029091A1 (en) Method of displaying a region of interest in a video stream
US10931930B2 (en) Methods and apparatus for immersive media content overlays
EP3906701A2 (en) Method and apparatus for storage and signaling of media segment sizes and priority ranks
KR20210019017A (ko) 컨텐츠의 처리 방법 및 장치
JP6632550B2 (ja) タイムピリオドにまたがってオブジェクトを識別する方法および対応デバイス
KR101603976B1 (ko) 동영상 파일 결합 방법 및 그 장치
Kammachi‐Sreedhar et al. Omnidirectional video delivery with decoder instance reduction
US20220337800A1 (en) Systems and methods of server-side dynamic adaptation for viewport-dependent media processing

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