JP7263583B2 - タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム - Google Patents

タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム Download PDF

Info

Publication number
JP7263583B2
JP7263583B2 JP2022032243A JP2022032243A JP7263583B2 JP 7263583 B2 JP7263583 B2 JP 7263583B2 JP 2022032243 A JP2022032243 A JP 2022032243A JP 2022032243 A JP2022032243 A JP 2022032243A JP 7263583 B2 JP7263583 B2 JP 7263583B2
Authority
JP
Japan
Prior art keywords
adaptationset
quality
media
representation
preselection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022032243A
Other languages
English (en)
Other versions
JP2022066370A (ja
Inventor
フランク ドゥヌアル
フレデリック マゼ
ジョナサン タケ
ナエル ウエドラオゴ
シリル コンコラト
フェーブル ジャン ル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of JP2022066370A publication Critical patent/JP2022066370A/ja
Application granted granted Critical
Publication of JP7263583B2 publication Critical patent/JP7263583B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • 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/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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/23439Processing 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 for generating different versions
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • 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/61Network physical structure; Signal processing
    • 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/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • 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/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • 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
    • 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/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • 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
    • 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/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Library & Information Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、概略として、ビデオデータを元のビデオの所与の空間領域に対応する空間時間サンプルのセットとして送信することを可能とする通信ネットワーク、例えばインターネットプロトコル(IP)標準に準拠する通信ネットワークを介したタイムドメディアデータストリーミングの分野に関する。より詳細には、発明は、タイムドメディアデータのストリーミング中にレンダリング表示を向上するための方法、デバイス及びコンピュータプログラムに関する。
ビデオ符号化は、ビデオ画像が送信又は記憶可能となるように一連のビデオ画像をコンパクトなデジタル化ビットストリームに変換する一態様である。符号化デバイスは、ビデオ画像を表示するためにビットストリームを再構成するのに利用可能な関連の復号デバイスを用いてビデオ画像を符号化するのに使用される。一般的な目的は、元のビデオ情報よりも小さいサイズとなるようにビットストリームを形成することである。これは、通信ネットワーク又は記憶デバイスがビットストリームコードを送信又は記憶するのに必要な容量を有利に減少させる。ビデオビットストリーム又はビデオストリームは、送信されるために、一般にヘッダ、記述メタデータ及びチェックビットを通常は加える送信プロトコルに従ってカプセル化される。この圧縮ビットストリームの概念は、ビデオに当てはまるだけでなく、オーディオ及び最終的にはメタデータのような他のメディアタイプにも当てはまる。「メディアストリーム」は、いずれかの特定のメディアタイプを対象とするものではない。
通信ネットワークを介するストリーミングメディアデータは、サーバ装置というホストコンピュータによってメディアプレゼンテーションを表すデータが、クライアント装置ともいう再生デバイスに通信ネットワークを介して提供されることを意味する。クライアント装置は、一般に、デスクトップパーソナルコンピュータ(PC)、タブレットPC、ノートブック若しくは可搬コンピュータ、携帯電話、無線ハンドヘルドデバイス、パーソナルデジタルアシスタント(PDA)、ゲームコンソール又はヘッドマウントディスプレイのような様々な従来的コンピューティングデバイスのいずれかとして実施されるメディア再生コンピュータである。クライアント装置は、通常(ファイル全体が配信されるのを待機するのではなく)ストリーム化コンテンツをホストから受信されるにつれてレンダリングする。
メディアプレゼンテーションは一般に、クライアント装置によって共に再生されるための、サーバ装置からクライアント装置に送信可能なオーディオ、ビデオ、テキスト、メタデータ及び/又はサブタイトルのような幾つかのメディアコンポーネントを備える。これらのメディアコンポーネントは通常、個々に別個のメディアストリームに符号化されてから、共に又は個々に複数のメディアセグメントにカプセル化され、サーバ装置からクライアント装置に対して後者によって共に再生されるために送信される。
共通の運用は、クライアント装置がその特徴(例えば、解像度、計算能力及び帯域幅)に関連して1つのバージョンを選択することができるように幾つかのバージョンの同じメディアコンポーネントへのアクセスを与えることを目的とする。既存の専売的ソリューションによると、代替のバージョンの各々が記述され、メディアデータは小さい時間セグメントにセグメント化される。
HTTPを介した動的及び適応的ストリーミングの背景において、DASH(Dynamic Adaptive Streaming over HTTP)という標準がMPEG標準化団体(「ISO/IEC23009-1、Dynamic adaptive streaming over HTTP(DASH)、Part1:Media presentation description and segment formats」)から出現した。この標準は、HTTP Uniform Resource Location(URL)によるメディアプレゼンテーションのメディアコンテンツのコンパクトな記述の関連付けを可能とする。そのような関連付けは通常、マニフェストファイル又は記述ファイルというファイルにおいて記述される。DASHの背景において、このマニフェストファイルは、MPD(Media Presentation Description)ファイルともいうXMLファイルである。プレイリストともいうマニフェストのためのプレーンテキストファイルを用いるのではなく、XMLファイル又は同様のHTTPライブストリーミングも用いて、Smooth Streamingなどの他のマニフェストベースのストリーミングソリューションがある。好適な実施形態として、ストリーミングプロトコルとしてDASHが用いられるが、マニフェストに付加された記述情報はこれらの他のソリューションにおいても同じ効果を提供し得る。
マニフェストファイルは、マニフェストに記載されたメディアサンプルに関する記述情報を指定する一組のディスクリプタ(記述子)を収集する。ディスクリプタは、例えばXMLノード(要素及び/又は属性)などの構造化要素であってもよいし、JSON(JavaScript Object Notation、JavaScriptは登録商標)で又はキーワード若しくはコメントがこれらのディスクリプタを搬送するのに特化したことを前提としてプレーンテキストフォーマットにおいてさえも記述され得る。
MPDファイル又はより一般的にはマニフェストファイルを受信することによって、クライアント装置は、各メディアコンテンツコンポーネントの記述を得る。したがって、それは、メディアプレゼンテーションにおいて提示されるメディアコンテンツコンポーネントの種類を知得しており、関連のメディアセグメントをダウンロードするために使用されるHTTP URLを知る。したがって、クライアント装置は、どのメディアコンテンツコンポーネントを(HTTPリクエストを介して)ダウンロードして再生するか(すなわち、メディアセグメントの受信後に復号及び再生するか)を決定することができる。
そのような関連付けに加えて、DASH標準は、各メディアコンテンツを期間の関数として分離することを提案する。時間分解は、MPDファイルにおいて記述される。したがって、後者は、HTTP URLと各期間にわたるメディアコンテンツからの各コンポーネントのコンパクトな記述との間の関係を定義する。各メディアコンテンツコンポーネントは、これらの期間に対応する複数の独立したメディアセグメントにカプセル化され得る。メディアコンポーネント数は1つの期間から他の期間に変化可能であり、及び/又はそれらの特性は1つの期間から他の期間にも変化し得る。この期間への分解は、<Period>要素によってDASHにおいて表される。
この標準は、クライアントが、メディアプレゼンテーションの所望のメディアコンテンツコンポーネントを所望の期間にわたってダウンロードすることを可能とする。
マニフェストにおいて抽出された情報は、カプセル化ステップ中に圧縮メディアデータに付加される記述メタデータから実際に抽出される。コンテナフォーマットともいうことがある異なるカプセル化フォーマットは、例えば、ISO Base Media File Format(ISO BMFF)、WebM、Quicktime、MPEG-2 Transport Stream及びCommon Media Application Format(Quicktime及びMPEGは商標)として存在する。実際、DASHは、カプセル化フォーマットに対して不可知論的なものである。
説明のために、MPEG標準化活動の背景において定義されるISOベースメディアファイルフォーマットを用いるカプセル化が、以下において検討される。
特に、カプセル化ファイルフォーマットは、High Efficiency Video Coding(HEVC)のカプセル化の標準化及びISOベースメディアファイルフォーマット(ISO/IEC14496Part15)におけるそのスケーラブルな拡張に関連し得る。ISO/IEC14496-15は、例えば対象領域に対応し、又は単にビデオフレームの区分けに存在してビデオストリームへの空間アクセスを与える1以上のタイル領域としてHEVCタイルのカプセル化を記述する章を含む。
なお、タイル構成による対象領域の抽出/ストリーミング及び表示は、例えば、ユーザがビデオシーケンスにおける特定の領域をクリックして特定の選択領域に対する一層高解像度なビデオへのアクセスを与えることによって、ストリーミング中にインタラクティブ高品質ズームイン機能を可能とするために特に有用である。
ビデオ解像度は、標準精細(SD)から高精細(HD)、そして超高精細(例えば、4K2K又は8K4K)に向かって連続的に増加することが再認識されるべきである。ビデオシーケンスは、単一レイヤ(例えば、HEVC)又はマルチレイヤ(例えば、スケーラブルHEVC)符号化標準のいずれかを用いて符号化され得る。マルチレイヤ符号化フォーマットの場合、所与のレイヤが、1以上の他のレイヤに対する基準データとして使用され得る。レイヤ化ビデオオーガニゼーションは複数の従属メディアコンテンツコンポーネントを用いて効率的に表示され得るものであり、各メディアコンテンツコンポーネントは異なるレベルのスケーラビリティでビデオレイヤを表す。所与のメディアコンテンツコンポーネントを復号するために、クライアントデバイスは、メディアコンテンツコンポーネント自体へのアクセスだけでなく、それが依拠する全てのメディアコンテンツコンポーネントへのアクセスも有しなければならない。
ビデオストリーミング能力を有するモバイル及び接続デバイスの急増があることも再認識されるべきである。そこで、モバイルデバイスのユーザが品質を維持又はさらには向上することによってビデオシーケンスの一部分を表示することを望み、又は注目することを望む場合、ビデオシーケンスをタイル又は空間部分に分離又は区分けすることも重要となる。したがって、ユーザは、タイルを用いることによって、ビデオシーケンスの空間小部分をインタラクティブに要求することができる。スケーラブルなビデオ符号化フォーマット(例えば、スケーラブルHEVC又はマルチビューHEVC)の場合、符号化従属性がエンハンスメントレイヤのタイルとベースレイヤの1以上のタイルとの間に存在し得ることを除き、各ビデオレイヤは複数の独立した空間小部分に組織化され得る。タイルはまた、全てのタイルに共通の情報を含む他のメディアコンポーネントに全てが依拠する一組の関係するメディアコンポーネントとしても組織化され得る。通常、ISOベースメディアファイルフォーマットを検討する場合、これはタイルトラック及びタイルベーストラックにそれぞれ対応する。
DASHの最初のアプリケーションではクライアントデバイスが一時にメディアタイプ毎の1つのプレゼンテーションをダウンロードするのに使用されたが、以下に言及するものなど、より進化したシナリオが出現し始めており、それに従って所与のメディアタイプの幾つかのプレゼンテーションが同時にストリーミングされる。より良好なユーザエクスペリエンスを与えるように複数のオーディオストリームが同時にストリーミング及びレンダリングされ得るような次世代オーディオのためのユースケースがある。具体的なディスクリプタが、そのようなユースケースを記述するのにDASHマニフェストにおいて定義されてきた。これはまた、ユーザは複合、アセンブリ又は統合ビデオにレンダリングされるように同時にストリーミングされるビデオの複数の部分を選択することができるビデオの場合でもある。これは通常、図1aに図示するように、空間小部分に組織化されて異なる品質レベルで圧縮されたビデオストリームについての場合である。これらの空間小部分は、図2に示す例のように、DASHの空間関係記述構成で記述され得る。ユーザは、より大きなビデオにおける対象領域(ROI)を選択し、対象領域に注目することを決定することができる。
Jens Devloo他による2013年の「Design and evaluation of tile selection algorithms for tiled HTTP adaptive streaming」という表題の論文、Computer SciencesにおいてLecture Notes、第7943巻、第25~36頁は、大きなビデオ、例えばパノラマビデオについての使用のシナリオに応じた事前構成されたクライアント適応ロジックを開示する。パン及びズームを可能とする検討されるシナリオの1つにおいて、著者は、低品質バージョンが常にクライアントにストリーミングされ、利用可能な帯域幅に応じてある部分のみが高品質でクライアントにストリーミングされるような複数のストリーミング手法を提示する。そして、視認性の基準に従って、すなわち、空間小部分がユーザについての対象領域を覆うか否かに応じて、クライアントは、タイル要求者を介して、まず可視的な空間小部分をダウンロードする。その後、残りの低域幅に応じて、クライアントはまた、対象領域に近い他の空間小部分について高品質をダウンロードする。
しかし、発明者らは、そのようなソリューションは帯域幅の使用の観点において効率的である一方でユーザエクスペリエンスに疑問がある場合があることを観察してきた。
したがって、タイムドメディアデータのストリーミング中にレンダリング品質を向上するように既存のソリューションを改善することが望まれ得る。
本発明は、上記の問題点の1以上に対処するために考案された。
この背景において、サーバ装置とクライアント装置の間において、画像を備えるタイムドメディアデータのストリーミング中にレンダリング表示を向上するためのソリューションが提供される。
発明の第1の課題によると、サーバ装置とクライアント装置の間での画像を備えるタイムドメディアデータのストリーミング中のレンダリング表示を向上するための方法が提供され、方法はサーバ装置において実施されるものであり、
タイムドメディアデータの画像の部分間の品質不均衡に関連する品質情報を取得するステップと、
少なくとも部分的に表示される少なくとも第1及び第2の部分にそれぞれ属するデータの少なくとも第1及び第2のアイテムを送信するステップであって、画像の部分間の品質不均衡は取得された品質情報に従うデータの第1及び第2のアイテムに対応する、ステップと
を備える。
発明の方法は、画像の部分間、例えば対象領域とその周辺部分の間での知覚可能な品質のジャンプを回避又は抑制することによってタイムドメディアデータのストリーミング中のレンダリング表示を向上することを可能とする。
特定の実施形態によると、画像の部分は画像全体である。
ある実施形態では、品質情報は、タイムドメディアデータの画像の2つの部分の間の品質不均衡閾値の表示である。
ある実施形態では、タイムドメディアデータは時間毎に分割されたメディアデータ(partitioned timed media data)であり、データの第1及び第2のアイテムは同じ画像の2つの隣接部分に属する。画像の部分は、画像の区間であり得る。
ある実施形態では、タイムドメディアデータの画像は少なくとも第1及び第2のレイヤによって符号化され、異なるレイヤに属するデータの第1及び第2のアイテム並びに品質情報はタイムドメディアデータの画像の異なるレイヤの部分間の品質不均衡に関連する。
ある実施形態では、データの第1及び第2のアイテムは異なる画像に属し、品質情報はタイムドメディアデータの異なる画像の部分間の品質不均衡に関連する。
ある実施形態では、方法は、ストリーミングに利用可能なタイムドメディアデータのデータを記述する情報及び品質情報を備えるマニフェストを送信するステップをさらに備える。
ある実施形態では、品質情報はストリーミングのために利用可能なタイムドメディアデータのデータの可能な組合せのセットとしてマニフェストにおいて少なくとも部分的に符号化され、データの各組合せは品質不均衡に従う。
ある実施形態では、品質情報は、ストリーミングのために利用可能なタイムドメディアデータのデータが品質不均衡に従うか否かをクライアント装置が判定することを可能とする品質規則としてマニフェストにおいて少なくとも部分的に符号化される。
ある実施形態では、マニフェストは、ストリーミングのために利用可能なタイムドメディアデータのデータに関連付けられる少なくとも1つの品質ディスクリプタをさらに備え、少なくとも1つの品質ディスクリプタは同じ品質のものであるデータをシグナリングするものであり、少なくとも1つの品質ディスクリプタは品質規則を適用するために使用される。
ある実施形態では、マニフェストは、同じタイムドメディアデータに対して利用可能な異なる品質レベルを分類するための品質ランク属性をさらに備え、品質ランク属性は品質規則を適用するために使用される。
ある実施形態では、データの送信された第1又は第2のアイテムは、クライアントからのメインリクエストに応じて、サーバ装置からクライアント装置に送信されるメインデータに続く、プッシュされたデータである。
発明の第2の課題によると、サーバ装置とクライアント装置の間での画像を備える時間毎に分割されたメディアデータ(partitioned timed media data)のストリーミング中にレンダリング表示を向上するための方法が提供され、方法は、クライアント装置において実施されるものであり、時間毎に分割されたメディアデータ(partitioned timed media data)の画像の部分間の品質不均衡に関連する品質情報を取得するステップと、少なくとも部分的に表示される画像の少なくとも第1及び第2の部分にそれぞれ属するデータの少なくとも第1及び第2のアイテムを要求するステップであって、画像の部分間の品質不均衡は取得された品質情報に従うデータの第1及び第2のアイテムに対応する、ステップと
を備える。
発明の方法は、画像の部分間、例えば対象領域とその周辺部分の間での知覚可能な品質のジャンプを回避又は抑制することによってタイムドメディアデータのストリーミング中のレンダリング表示を向上することを可能とする。
特定の実施形態によると、画像の部分は画像全体である。
ある実施形態では、品質情報は、タイムドメディアデータの画像の2つの部分の間の品質不均衡閾値の表示である。
ある実施形態では、タイムドメディアデータは時間毎に分割されたメディアデータ(partitioned timed media data)であり、データの第1及び第2のアイテムは同じ画像の2つの隣接部分に属する。画像の部分は、画像の区間であり得る。
ある実施形態では、タイムドメディアデータの画像は少なくとも第1及び第2のレイヤによって符号化され、異なるレイヤに属するデータの第1及び第2のアイテム並びに品質情報はタイムドメディアデータの画像の異なるレイヤの部分間の品質不均衡に関連する。
ある実施形態では、データの第1及び第2のアイテムは異なる画像に属し、品質情報はタイムドメディアデータの異なる画像の部分間の品質不均衡に関連する。
ある実施形態では、方法は、ストリーミングに利用可能なタイムドメディアデータのデータを記述する情報及び品質情報を備えるマニフェストを受信するステップをさらに備える。
ある実施形態では、品質情報はストリーミングのために利用可能なタイムドメディアデータのデータの可能な組合せのセットとしてマニフェストにおいて少なくとも部分的に符号化され、データの各組合せは品質不均衡に従い、方法は、データの1つの可能な組合せを選択するステップと、選択された組合せのデータを要求するステップとをさらに備える。
ある実施形態では、品質情報は、ストリーミングのために利用可能なタイムドメディアデータのデータが品質不均衡に従うか否かをクライアント装置が判定することを可能とする品質規則としてマニフェストにおいて少なくとも部分的に符号化され、方法は、データを選択する品質規則を適用するステップと、選択されたデータを要求するステップとをさらに備える。
ある実施形態では、品質情報は、サーバ装置から独立して取得される。
ある実施形態では、マニフェストは、ストリーミングのために利用可能なタイムドメディアデータのデータに関連付けられる少なくとも1つの品質ディスクリプタをさらに備え、少なくとも1つの品質ディスクリプタは同じ品質のものであるデータをシグナリングするものであり、少なくとも1つの品質ディスクリプタは品質規則を適用するために使用される。
ある実施形態では、マニフェストは、同じタイムドメディアデータに対して利用可能な異なる品質レベルを分類するための品質ランク属性をさらに備え、品質ランク属性は品質規則を適用するために使用される。
発明の第3の課題によると、サーバ装置とクライアント装置の間での画像を備えるタイムドメディアデータのストリーミング中にレンダリング表示を向上するためのデバイスが提供され、デバイスはサーバ装置内にあり、タイムドメディアデータの画像の部分間の品質不均衡に関連する品質情報を取得するステップと、少なくとも部分的に表示される画像の少なくとも第1及び第2の部分にそれぞれ属するデータの少なくとも第1及び第2のアイテムを送信するステップであって、画像の部分間の品質不均衡は取得された品質情報に従うデータの第1及び第2のアイテムに対応する、ステップとを実行するように構成されたマイクロプロセッサを備える。
発明のデバイスは、画像の部分間、例えば対象領域とその周辺部分の間での知覚可能な品質のジャンプを回避又は抑制することによってタイムドメディアデータのストリーミング中のレンダリング表示を向上することを可能とする。
特定の実施形態によると、画像の部分は画像全体である。
ある実施形態では、品質情報は、タイムドメディアデータの画像の2つの部分の間の品質不均衡閾値の表示である。
ある実施形態では、タイムドメディアデータは時間毎に分割されたメディアデータ(partitioned timed media data)であり、データの第1及び第2のアイテムは同じ画像の2つの隣接部分に属する。画像の部分は、画像の区間であり得る。
ある実施形態では、タイムドメディアデータの画像は少なくとも第1及び第2のレイヤによって符号化され、異なるレイヤに属するデータの第1及び第2のアイテム並びに品質情報はタイムドメディアデータの画像の異なるレイヤの部分間の品質不均衡に関連する。
ある実施形態では、データの第1及び第2のアイテムは異なる画像に属し、品質情報はタイムドメディアデータの異なる画像の部分間の品質不均衡に関連する。
ある実施形態では、マイクロプロセッサは、ストリーミングに利用可能なタイムドメディアデータのデータを記述する情報及び品質情報を備えるマニフェストを送信するステップを実行するようにさらに構成される。
ある実施形態では、品質情報はストリーミングのために利用可能なタイムドメディアデータのデータの可能な組合せのセットとしてマニフェストにおいて少なくとも部分的に符号化され、データの各組合せは品質不均衡に従う。
ある実施形態では、品質情報は、ストリーミングのために利用可能なタイムドメディアデータのデータが品質不均衡に従うか否かをクライアント装置が判定することを可能とする品質規則としてマニフェストにおいて少なくとも部分的に符号化される。
ある実施形態では、マニフェストは、ストリーミングのために利用可能なタイムドメディアデータのデータに関連付けられる少なくとも1つの品質ディスクリプタをさらに備え、少なくとも1つの品質ディスクリプタは同じ品質のものであるデータをシグナリングするものであり、少なくとも1つの品質ディスクリプタは品質規則を適用するために使用される。
ある実施形態では、マニフェストは、同じタイムドメディアデータに対して利用可能な異なる品質レベルを分類するための品質ランク属性をさらに備え、品質ランク属性は品質規則を適用するために使用される。
ある実施形態では、データの送信された第1又は第2のアイテムは、クライアントからのメインリクエストに応じて、サーバ装置からクライアント装置に送信されるメインデータに続く、プッシュされたデータである。
発明の第4の課題によると、サーバ装置とクライアント装置の間での画像を備える時間毎に分割されたメディアデータ(partitioned timed media data)のストリーミング中にレンダリング表示を向上するためのデバイスが提供され、デバイスはクライアント装置内にあり、時間毎に分割されたメディアデータ(partitioned timed media data)の画像の部分間の品質不均衡に関連する品質情報を取得するステップと、少なくとも部分的に表示される画像の少なくとも第1及び第2の部分にそれぞれ属するデータの少なくとも第1及び第2のアイテムを要求するステップであって、画像の部分間の品質不均衡は取得された品質情報に従うデータの第1及び第2のアイテムに対応する、ステップとを実行するように構成されたマイクロプロセッサを備える。
発明のデバイスは、画像の部分間、例えば対象領域とその周辺部分の間での知覚可能な品質のジャンプを回避又は抑制することによってタイムドメディアデータのストリーミング中のレンダリング表示を向上することを可能とする。
特定の実施形態によると、画像の部分は画像全体である。
ある実施形態では、品質情報は、タイムドメディアデータの画像の2つの部分の間の品質不均衡閾値の表示である。
ある実施形態では、タイムドメディアデータは時間毎に分割されたメディアデータ(partitioned timed media data)であり、データの第1及び第2のアイテムは同じ画像の2つの隣接部分に属する。画像の部分は、画像の区間であり得る。
ある実施形態では、タイムドメディアデータの画像が少なくとも第1及び第2のレイヤによって符号化され、異なるレイヤに属するデータの第1及び第2のアイテム並びに品質情報はタイムドメディアデータの画像の異なるレイヤの部分間の品質不均衡に関連する。
ある実施形態では、データの第1及び第2のアイテムは異なる画像に属し、品質情報はタイムドメディアデータの異なる画像の部分間の品質不均衡に関連する。
ある実施形態では、マイクロプロセッサは、ストリーミングに利用可能なタイムドメディアデータのデータを記述する情報及び品質情報を備えるマニフェストを受信するステップを実行するようにさらに構成される。
ある実施形態では、品質情報はストリーミングのために利用可能なタイムドメディアデータのデータの可能な組合せのセットとしてマニフェストにおいて少なくとも部分的に符号化され、データの各組合せは品質不均衡に従い、マイクロプロセッサは、データの1つの可能な組合せを選択するステップと、選択された組合せのデータを要求するステップとを実行するようにさらに構成される。
ある実施形態では、品質情報は、ストリーミングのために利用可能なタイムドメディアデータのデータが品質不均衡に従うか否かをクライアント装置が判定することを可能とする品質規則としてマニフェストにおいて少なくとも部分的に符号化され、マイクロプロセッサは、データを選択する品質規則を適用するステップと、選択されたデータを要求するステップとを実行するようにさらに構成される。
ある実施形態では、品質情報は、サーバ装置から独立して取得される。
ある実施形態では、マニフェストは、ストリーミングのために利用可能なタイムドメディアデータのデータに関連付けられる少なくとも1つの品質ディスクリプタをさらに備え、少なくとも1つの品質ディスクリプタは同じ品質のものであるデータをシグナリングするものであり、少なくとも1つの品質ディスクリプタは品質規則を適用するために使用される。
ある実施形態では、マニフェストは、同じタイムドメディアデータに対して利用可能な異なる品質レベルを分類するための品質ランク属性をさらに備え、品質ランク属性は品質規則を適用するために使用される。
メディアコンテンツコンポーネントに関する情報を記述する記述データのための処理方法も提供され、方法は、記述データを生成するステップと、生成された記述データをクライアントに送信するステップとを備え、記述データは、少なくとも2つのアダプテーションセットと、各アダプテーションセットに属する複数のメディアコンテンツコンポーネントの各々の品質ランク付けを識別するためのランク付け情報と、少なくとも2つのアダプテーションセットについて少なくとも2つのランク付け情報の間の関係を示すためのランク付け関連情報と、メディアコンテンツコンポーネントを要求するためにクライアントによって参照されるアドレス情報とを含む。
メディアコンテンツコンポーネントに関する情報を記述する記述データを処理するための処理装置も提供され、処理装置は、記述データを生成するステップと、生成された記述データをクライアントに送信するステップとを実行するように構成され、記述データは、少なくとも2つのアダプテーションセットと、各アダプテーションセットに属する複数のメディアコンテンツコンポーネントの各々の品質ランク付けを識別するためのランク付け情報と、少なくとも2つのアダプテーションセットについて少なくとも2つのランク付け情報の間の関係を示すためのランク付け関連情報と、メディアコンテンツコンポーネントを要求するためにクライアントによって参照されるアドレス情報とを含む。
1つ以上のメディアコンテンツコンポーネントの1つ以上の代替バージョンに関する情報を提供する記述データを処理するための方法も提供され、方法は以下の、記述データを生成するステップと、生成された記述データをクライアントに送信するステップとを備え、記述データは、各々が1つ以上のメディアコンテンツコンポーネントの1つ以上の代替バージョンを備える少なくとも2つのアダプテーションセットと、各アダプテーションセットについて、1つ以上のメディアコンテンツコンポーネントの各代替バージョンの品質ランク付けを識別するための第1の情報と、少なくとも2つのアダプテーションセットに関連付けられる第1の情報間の関係を示す第2の情報と、メディアコンテンツコンポーネントの1つ以上の代替バージョンの1つを要求するためにクライアントによって各々参照される1つ以上のアドレスを示す第3の情報とを備える。
1つ以上のメディアコンテンツコンポーネントの1つ以上の代替バージョンに関する情報を提供する記述データを処理するためのデバイスも提供され、デバイスは以下の、記述データを生成するステップと、生成された記述データをクライアントに送信するステップとを実行するように構成され、記述データは、各々が1つ以上のメディアコンテンツコンポーネントの1つ以上の代替バージョンを備える少なくとも2つのアダプテーションセットと、各アダプテーションセットについて、1つ以上のメディアコンテンツコンポーネントの各代替バージョンの品質ランク付けを識別するための第1の情報と、少なくとも2つのアダプテーションセットに関連付けられる第1の情報間の関係を示す第2の情報と、メディアコンテンツコンポーネントの1つ以上の代替バージョンの1つを要求するためにクライアントによって各々参照される1つ以上のアドレスを示す第3の情報とを備える。
本発明の更なる効果が、図面及び詳細な説明の検討によって当業者に明らかとなる。任意の追加的な効果がここに取り込まれることが意図される。
発明の実施形態を、例示としてのみ以下の図面を参照してここに説明する。
図1は、図1a及び1bからなり、それぞれ、ビデオシーケンスが3個の品質レベルで符号化されるビデオの区分けされたフレームの例及びビデオ構成の例を示す。 図2は、ビデオビットストリームにおける空間部分又はタイルを記述するストリーミングマニフェストの例を示す。 図3は、発明の実施形態を実施することを可能とするDASHサーバ装置及びクライアント装置を示す。 図4は、MPEG DASH規格によるDASHにおけるメディアプレゼンテーションの標準的な記述を示す。 図5は、図5a及び5bからなり、それぞれ、サーバ装置視点及びクライアント装置視点からのメディアデータのストリーミング中のレンダリング品質を向上するための品質規則の使用を示す。 図6は、図6a乃至6dからなり、品質規則ディスクリプタを用いる場合及び品質等価ディスクリプタを用いる場合の「コンテンツ作成者」の実施形態によるマニフェストの例を示す。 図7は、発明の1以上の実施形態の実施のためのコンピューティングデバイスの概略ブロック図である。 図8は、発明の実施形態によるメディアコンポーネントの組合せを提供するテーブルである。
説明のために、以下において、「メディアコンポーネント」(又は「メディアコンテンツコンポーネント」)は具体的メディアタイプ(例えば、オーディオ、ビデオ、テキスト又はメタデータ)のメディアストリームのデータのアイテムであるものとみなされる。MPEG DASHによると、メディアコンポーネントは、「割り当てられたメディアコンポーネントタイプを有するメディアコンテンツの1つの連続コンポーネント」として定義される。以下において、メディアコンポーネントは、DASHにおけるContentComponent要素よりも包括的な態様で使用される。
ここでも説明のために、以下において、「タイル」は1以上の画像の空間部分(又は区間若しくは一部分)であるものとみなされる。画像は、いずれの符号化フォーマットであっても、(図1aに示すような)ビデオビットストリームのフレーム又はただ1つの圧縮静止画像であり得る。タイルは、位置(x、y)及びサイズ(幅(w)、高さ(h))によって定義される。デフォルトとして、タイルは、すなわちビデオシーケンスの各フレームのための静止したものであり、タイルの位置及びサイズは同じままである。一方、動的タイルが使用されてもよく、それらの位置及び/又はサイズはシーケンスに沿って、フレーム毎に、又は時間セグメント毎に変化する。MPEG DASHによると、タイルは、ピクチャにおいて特定のタイル列(x位置)及び特定のタイル行(y位置)内の符号化ツリーブロック(符号化エンティティ)の矩形領域である。
「タイル領域」は、一般に(x、y、w、h)によっても定義されるピクチャにおける矩形エリアである。タイルについて、タイル領域は、ビデオシーケンスに沿って固定されてもよいし、されていなくてもよい。ISO BMFFによると、タイル領域は、同じ符号化ピクチャ内にありかつ他のHEVCタイルを含まない1以上の完全なスライスセグメントにおいて1以上の完全なHEVCタイルを表す。
ここでも説明のために、以下において、「注目領域」(すなわち「ROI」)は、1以上のタイル領域と同様である。ISO BMFFによると、注目領域に対応するデータは、タイル領域に対応する1つのトラックにおいて、又はROIが覆う各タイル領域のためのデータを各々が含む複数のトラックとして、ROI及び非ROIについての両データを含む1つのトラックにカプセル化され得る。
組合せ、複合体又はバンドルは、共にレンダリングされることが意図される一組のメディアコンテンツコンポーネントである。
ここでも説明のために、以下において、「複合ビデオ又は画像」はビデオのバンドル若しくは組合せ又はビデオコンテンツコンポーネントの組合せとみなされる。それは、少なくとも2つのビデオフレーム部分又は画像部分のスティッチング、複合体又はアセンブリから得られるビデオ又は画像である。ビデオフレーム部分又は画像部分は、タイル、タイル領域又はROI・・・、その他画像部分に対応し得る。これは、ユーザ装置によって表示される単一のフレーム又は画像における少なくとも2つのビデオフレーム部分又は画像部分のスティッチング、複合体又はアセンブリをレンダリングすることを可能とする。
最後に、「品質規則」は、以下において、品質ベースの選択についての制約又はパラメータを与えるヒントとしてみなされる。以下に記載するように、品質規則の例は、max_quality_degradationである。
特定の実施形態によると、ストリーミングされ得るデータを記述するために使用されるフォーマットの記述能力、例えばMPEG DASHが、幾つかのタイルがストリーミングクライアントによって選択される場合にコンテンツ作者が各タイルの品質適応についての何らかのガイダンスを指定することができるように、拡張される。説明のために、2つの隣接ビデオフレーム部分又は画像部分の間の品質劣化が所定の閾値よりも大きくなり得ることがストリーミングマニフェストにおいて示され得る。そのような情報のアイテムは、ストリーミングされるタイル(すなわち、そのような品質規則に準拠するタイルの組合せ)を選択するクライアント装置によって使用され得る。これにより、ROI及び周辺タイルの双方の許容可能な品質がもたらされる。これらの記述能力は、品質劣化パターンに、タイルを記憶するAdaptationSetにわたる同等のRepresentationの表示を加えたものを含む。
発明の多数の実施形態が存在するが、3個の特定の実施形態を以下に説明する。
第1の実施形態によると、ストリーミングマニフェストは、クライアント装置が品質規則に準拠するタイルの組合せを決定することを可能とする情報を備える。これは、品質規則に準拠するタイルの組合せをクライアント装置が決定及び選択することができるように、マニフェストにおける品質規則をシグナリングし、マニフェストにおける同等のメディアコンポーネントを関連付けることによって行われ得る。
以下において「コンテンツ作成者」といわれる第2の実施形態によると、品質規則に準拠するタイルの組合せは、事前、すなわち、ストリーミングマニフェストを送信する前に決定される。これは、コンテンツパッケージング段階においてコンテンツ作者によってオフラインで行われ得る。品質規則に準拠する組合せは、クライアント装置がそれらの1つを選択し得るようにストリーミングマニフェストにおいて記述され得る。
これは、ストリーミングするクライアント装置端において修正適応ロジックを用いて同じメディアタイプの複数のコンポーネントを一時に扱うことによっても行われ得るものであり、例えば閲覧モードにおけるユーザ選択に従って活性化される。
以下において「サーバ制御」といわれる第3の実施形態によると、サーバ装置は、クライアント装置に送信されない品質規則を知得している。したがって、サーバ装置は、周辺メディアコンポーネントのバージョンを提案(再方向付け)又は送信(プッシュ)する対象のメディアコンポーネントについてのクライアントリクエストに関して主導権を有する。
図1a及び1bからなる図1は、それぞれ、ビデオシーケンスが3個の品質レベルに符号化されるビデオの区分けされたフレームの例及びビデオ複合体の例を示す。
図1aは、ビデオの区分けされたフレームの例を示し(明瞭化のために1つのフレームのみを示すが、ビデオシーケンスの全てのフレームがタイルへの同じ区分けを有し得る)、ビデオシーケンスは3個の品質レベル:それぞれ100、110及び120で示される高(「HQ」)、中(「MQ」)及び低(「LQ」)に符号化される。
各品質レベルは、独立ビデオビットストリームとして符号化され得る。あるいは、各品質レベルは、他のレイヤのスケーラビリティレイヤであってもよい。説明のために、高品質フレーム100は、低品質フレーム120に対応するベースレイヤのエンハンスメントレイヤである中品質フレーム110に対応するエンハンスメントレイヤの品質エンハンスメントレイヤとなり得る。
最低品質のレイヤを(図1の例における低品質フレーム120に対応する)ベースレイヤという。各品質レベル又はレイヤは、タイル101及び102のような一組の独立タイルとして符号化され得る。
特定の実施形態では、タイルは、他のタイルに従属性を有しないHEVCタイルである。これは、一組の選択されたタイル(例えば、選択されたセット105)を単一のHEVCデコーダが復号及び表示可能な単一のビデオビットストリームにアセンブリすることを可能とする。
独立タイル及び/又はHEVC符号化されていないものの使用も可能である。例えば、各タイルは、おそらくはHEVC(例えば、AVC又はVP9)とは異なる符号化フォーマットで、それ自体のビデオビットストリームにおいて符号化され得る。
データをスケーラブルレイヤに符号化するために、SHVC、SVC又は任意のスケーラブル若しくはレイヤード符号化フォーマットが使用され得る。そして、クライアント装置は、単一のデコーダに供給する何らかのストリーム再アセンブリを行うこと又は選択された組のタイルから得られる複合ビデオを再生する複数のデコーダを使用することのいずれかを必要とする。
使用される符号化フォーマットが何であれ、この符号化フォーマットは、クライアント装置はそれがメディアファイルを再生できるかを判定し、複数の符号化フォーマットが利用可能な場合にはそれが選好するものを選択することができるように、カプセル化されたメディアストリームにおいて記述され、ストリーミングマニフェストに公開される。
図1bは、発明から利益を得て複合ビデオについてのスムーズな品質を生成することができるビデオ合成の幾つかの例を示す。例えば、複合ビデオ150は、2つの別個のビデオビットストリームの空間部分の並置から得られる。これらのビットストリームは、同じシーンの異なるバージョンとなり得るものであり、異なるシーンからのビデオビットストリームとさえなり得る。
複合ビデオ160は、異なる品質で同じビデオの部分をアセンブリすることにある。ビデオ161及び162を表すビデオビットストリームは、独立したビデオビットストリーム又はスケーラブルなビットストリームのレイヤとなり得る。それらは、異なるフォーマットで符号化されてもよく(したがって、クライアントサイドにおいて複数のビデオデコーダを必要とする)、符号化フォーマットはISO BMFFにおいて搬送され、@codecsDASH属性において公開される。
なお、図1bに図示する異なる区間は、ビデオがタイル化されることを意味するものではない。1つの空間部分(1、2、3又は4)の抽出は収穫処理からもたらされ得るものであり、収穫された部分は直接に又はレイヤ化を介して複合ビデオにペーストされる(結果として得られる複合ビデオは幾つかのレイヤを有し得るものであり、すなわち、下位レイヤの幾つかの部分は上位レイヤに隠れる)。
そのようなレイヤ化された複合ビデオ及び例160を検討することについて、ビデオ161からの他の空間部分(又はその全体でさえ)が下位レイヤに配置される一方で、ビデオ162からの空間部分1は上位レイヤに配置される。
図2は、ビデオビットストリームにおける空間部分又はタイルを記述するストリーミングマニフェストの例を示す。特に、MPEG DASHの場合、1つの空間関係ディスクリプタ(SRD)は、各タイル、タイル領域又は空間部分の記述に関連付けられ得る。
説明のために、ビデオ200が4個のタイルに区分けされる。対応するDASH MPDマニフェスト210の例は、SRDを有する各空間部分(タイル1、2、3及び4)の記述を示す。ここでも説明のために、タイル1及び2についてのMPD記述のみを示す。
識別子id=「1」を有する最初のAdaptationSetは、タイル1の記述に対応する。それは、1920×1080画素(フルビデオフレームの4分の1)の解像度の1つのRepresentationを含む。(SupplementalPropertyディスクリプタを用いる)SRDディスクリプタは、基準フレームの(0,0)において220で示すその左上角の位置が1に等しいsource_idに関連付けられた状態で、source_id(「value」属性の第1のパラメータ)が1に等しいビデオの空間部分(マニフェストには記述されない)であることを特定する。この空間部分のサイズは、各方向における基準フレームの半分を表す(221で示す幅及び高さが、222で示す基準フレームの2つの任意単位にわたって1をカバーする)。SRDディスクリプタから、基準空間の全体が当然に4k2kビデオ(3840×2160画素)を表すことが推定され得る。
識別子id=「2」を有する第2のAdaptationSetのSRDディスクリプタにおいて説明するように、このAdaptationSetは、他の空間部分(タイル2)の記述を含む。このSRDディスクリプタはSupplementalPropertyディスクリプタを用いて、タイルが第1のAdaptationSetと同じ基準フレーム(同じsource_id=1)に関係すること、並びにそれが符号230で示すようにx軸上の中域(値1から2)及びy軸(値0)の基底に位置し符号231及び232で示すように第1のタイルと同じサイズを有することを指定する。
同様のSRDに基づく手法を用いると、図1に示すビデオフレームは、タイル毎に1つの9個のAdaptationSetとして表現可能であり、各々は各品質レベルのビデオビットストリームを記述する3個の代替のRepresentation要素を含む。
図1及び図2から、ストリーミングするクライアント装置はそれらの空間関係とともに異なるバージョンのビデオストリームについて通知されることが分かる。一方、それらのそれぞれの品質及び帯域幅が変化した場合にどのように適応するのかについての情報は与えられない。例えば、ユーザ装置が図1のタイル領域105を選択する場合、ROI105に同じ高品質レベルにおいてこのROI105を囲むメディアセグメントを加えたものに対応するメディアセグメントのストリーミングをネットワーク帯域幅が可能とするか否かが判定され得る。
実際には様々な組合せ及び様々な適応戦略が可能であるが、クライアントはネットワーク帯域幅及びレンダリング品質の観点から(バッファ枯渇及び表示フリーズを回避するのに)どの組合せが使用されるべきかを迅速に決定しなければならない。これは、コンテンツデータを準備する場合に、異なる戦略に従って:専用適応ロジックを有する高度化したクライアント装置を用いることによって、ストリーミングマニフェストにおいて適切なシグナリングを処理する標準クライアント装置を用いることによって、又は適切な組合せを選択若しくはストリーミングする際にクライアントを補助する品質知得サーバ装置によって行われ得る。
図3は、発明の実施形態を実施可能とするDASHサーバ装置及びクライアント装置を示す。
図示するように、メディアサーバ装置300は、特に、異なるメディアコンテンツコンポーネント、例えば、オーディオ及びビデオデータストリームを含むメディアプレゼンテーション305の間でメディアプレゼンテーションを備える。オーディオ及びビデオストリームは、独立してインターリーブ又は記憶され得る。メディアプレゼンテーションは、同じメディアコンテンツコンポーネントの代替のバージョンを(異なるビットレート、品質、解像度、サンプリングレート、例えば360度ビデオのような全方向メディアにおける異なる視点などで)提案することができる。
例えば、このメディアプレゼンテーションのメディアコンテンツコンポーネントは、ISOベースメディアファイルフォーマットに従ってカプセル化され、DASH推奨に従って記述及びストリーミングされる。カプセル化ステップの結果として、各代替バージョン(又はDASHコンテキストにおけるRepresentation、例えば、Representation1及びRepresentation2)が、独立してアドレス付け及びダウンロードされ得る小さな独立かつ連続の時間メディアセグメント(例えば、それぞれ時間メディアセグメント310-1~310-3及び311-1~311-3)、例えば、DASH及びISOベースメディアファイルフォーマット標準(それぞれISO/IEC23009-1並びにISO/IEC14496パート12及び15)に準拠するメディアセグメントに時間的に分離される。各メディアセグメントは、コンテンツが多重化されるか否かに応じて1以上のメディアコンテンツコンポーネントを含み得る。アドレス(すなわち、説明した例におけるHTTP URL)が全てのメディアセグメントについてのサーバ装置300によって設定され、(例えば、図5aを参照して記載されるように)メディアプレゼンテーションを記述するマニフェスト315が作成される。
マニフェスト、例えばMPDは、所与のメディアプレゼンテーションについてアクセスされ得る全てのメディアコンテンツコンポーネントを記述する文書、標準的にはXMLファイル(又はHTTPライブストリーミングに対してはプレーンテキストファイルであってさえもよい)であることが再認されるべきである。そのような記述は、メディアコンテンツコンポーネント(例えば、オーディオ、ビデオ、オーディオ-ビデオ、メタデータ又はテキスト)のタイプ、メディアセグメントの継続時間、及びメディアセグメントに関連付けられるアドレス(例えば、URL)、すなわち、メディアコンテンツコンポーネントが得られるアドレスを備え得る。メディアコンテンツコンポーネントは、同じコンテンツの代替バージョンとして若しくは同じコンテンツの部分(例えば、空間部分、SRDを有するビデオの注目領域若しくはタイル又は仮想現実若しくは全方向メディアコンテンツにおける視点)として記述され、又は共に提示又は表示されることが意図されるコンテンツコンポーネントを記述する「メディアエクスペリエンス」の部分として記述され得る。
通常、MPDは、図4に記述するような階層的データモデルに基づく。
図4は、MPEG DASH規格によるDASHにおけるメディアプレゼンテーションの標準的な記述を示す。
図示するように、それは主に、各々がPeriod要素によって記述される400で示す1又は複数の期間にあり、各Period要素は開始時間及び継続時間を有する。同様に、各Period要素は主に、401で示す1又は複数のAdaptationSet要素にある。
AdaptationSet要素は、符号402で示すような1又は複数のメディアコンテンツコンポーネント及びその種々の符号化代替物についての情報を与える。同じメディアコンテンツコンポーネントの各符号化代替物は、通常は403で示す1又は複数のメディア及び/又は初期化セグメントにあるRepresentationといわれる。
図3に戻ると、説明のために、メディアプレゼンテーション305からのAdaptationSetの一例のみがサーバ装置300との関係で示される。図示する例によると、このAdaptationSetは、所与のメディアタイプの同じコンテンツの310及び311で示す2つの代替のバージョンを含み、メディアセグメントは異なるメディアタイプの多重化データも含み得ることが確認される。各バージョンは、3個の連続する時間間隔に対応する連続的な時間メディアセグメントに、例えば、3個の連続する時間メディアセグメント310-1~310-3及び311-1~311-3に分離される。
そのようなマニフェストファイルは、通常はHTTPを介してクライアント装置320に送信され得る(ステップ325)。
マニフェストファイル315は、受信された後に、どのプレゼンテーションが利用可能となり、メディアプレゼンテーション305のいずれのメディアセグメント310-1~310-3及び311-1~311-3がアクセス可能となるかを特定するように、クライアント装置のパーサ307によって解析される。
マニフェストファイル315はまた、これらのメディアセグメントのhttpアドレス及びこれらのメディアセグメント間の関係を特定するのに使用される。なお、ここでは、記述ファイル315並びにまとめて310及び311で示すメディアセグメントが異なるサーバに記憶され得る。さらに、マニフェストファイル315は、ディスクリプタ、例えば<Role>要素若しくは<Label>要素の使用を介して又は<EssentialProperty>若しくは<SupplementalProperty>要素のような包括的ディスクリプタを介してメディアプレゼンテーションのコンテンツに関する情報のアイテムを与える。これらの情報のアイテムは、解像度、ビットレート及び類似の情報を備え得る。
したがって、受信記述の観点から、クライアント装置320の適応ロジックモジュール308は、適切なバージョンからメディアセグメントを選択してこれらのメディアセグメントをダウンロードするための対応のhttpリクエストを送信することができる(ステップ330)。
これに応じて、サーバ装置300は、要求された時間メディアセグメントを送信する(ステップ335)。http応答335において受信されたこれらの時間メディアセグメントはパーサモジュール340(例えばmp4又はISOBMFFリーダ)によってパース(又は脱カプセル化)可能となり、各メディアストリームは適切なメディアデコーダ341及び342に送信される。メディアタイプ毎に少なくとも1つのデコーダ(例えば、オーディオに対してデコーダ341及びビデオに対してデコーダ342)及び選択的にメディアタイプに対して幾つかの追加のデコーダ、例えばビデオに対して343がある。例えばオーディオのような同様に他のメディアタイプに対しても追加のデコーダがあり得る。
終わりに、復号されたメディアストリームは、表示モジュール345においてレンダリングされる。表示モジュール345は、例えば、パノラマ画像を新たな基準フレーム(表示基準フレーム)に投影する変換処理、又は大きな画像を小さな表示ウィンドウに合わせるクリッピングモジュール若しくは例えば復号された画像にフィルタを適用する後処理能力を含む。
なお、サーバ装置300は別個のサーバ装置又はデバイスにあってもよく、各々は以下のステップ:
-メディアコンテンツの生成、
-ファイルフォーマットにおけるメディアストリームのカプセル化、
-ストリーミングマニフェスト又はプレイリストファイルの生成、
-メディアプレゼンテーションの送信、及び
-メディアコンテンツの、多くはコンテンツセグメントとしての送信
のうちの1以上を実行する。
したがって、クライアント装置は、マニフェストのリクエストを第1のサーバ装置、例えばアプリケーションサーバ装置に発行し、メディアコンテンツのリクエストを1以上の他のサーバ装置、例えばメディアサーバ装置又はストリーミングサーバ装置に発行する。メディアサンプルを送信するサーバ装置は、例えば、メディアデータがCDN(コンテンツ配信ネットワーク)を介して配信された場合にも異なっていてもよい。
特定の実施形態によると、サーバ装置300は、DASHパート6からのプッシュDirectivesに対応するHTTP/2サーバ装置である。そのような場合、クライアント装置もHTTP/2及び有利にDASHパート6に対応することを条件として(なお、DASHパート6に対応することは、「サーバ制御」ともいう特定の実施形態を除いて発明を実施するためには必要ではない)、あるデータは、符号336で示すようなクライアント装置320にプッシュなどされ得る。
図5a及び5bからなる図5は、それぞれ、サーバ装置視点及びクライアント装置視点からのメディアデータのストリーミング中のレンダリング品質を向上するための品質規則の使用を示す。
図5aは、「コンテンツ生成」実施形態による、コンテンツデータ作者による配信のためのメディアストリームのプレゼンテーションに特化した様々な代替例を示す。
図示するように、そのような実施形態の第1のステップは、メディアプレゼンテーションともいうマルチメディアコンテンツ、例えば、オーディオ記録(ステップ501)及びビデオ記録(ステップ502)を記録することに向けられる。
そして、記録されたマルチメディアコンテンツは、特にビデオデータから、それぞれ包括的に505及び506で示されるオーディオ及び/又はビデオエンコーダを制御するのにユーザが利用できる幾つかの構成を抽出するようにビデオ解析モジュール503において選択的に処理され得る。
説明のために、ビデオ解析は、将来の符号化のためにビデオによって表されるシーンの複雑さのレベルを推定し、幾つかの注目領域を検出し、ユーザに幾つかのマルチストリーム符号化、例えば、背景に対するもの及びROIに対するものを提案し、空間領域への区分けを提案することができる。ビデオ解析は、ビデオエンコーダ506を直接構成することができる。あるいは、ユーザは、ステップ531を介してビデオ符号化構成における制御を維持することができる。そのようなステップは、スケーラブルフォーマットを用いるか否か又は複数の独立ストリーム若しくは単一のビデオビットストリームを選択するかにかかわらず、ユーザが符号化フォーマットを選択することを可能とする。
ユーザは、注目領域を符号化することを決定し、注目領域及び背景に対して異なる圧縮比を定義することもできる。複数の注目領域が、符号化され得る。ユーザは、何らかの動的適応の可能性を後に与えるように同じコンテンツ(フルビデオ、タイル、ROI・・・)の1以上のバージョンを符号化することを決定することができる。区間は、クライアントが符号化ビデオビットストリームにおいて任意のタイル領域を選択及びストリーミングすることを可能とするようにステップ531中にユーザによって定義され得る。
同様のことが、オーディオデータ及びオーディオ符号化に当てはまる。
ビデオ解析モジュールはまた、メタデータストリーム(XML又はJSONのようなテキストデータ又は構造化データ)とみなされ得るビデオ注釈、ビデオ及び/又はオーディオフレームで時間配列可能なおそらくはタイムドメタデータを生成することもできる。ユーザが追加のリソースを記録コンテンツ上に有する場合、それらはメディアデータプレゼンテーション上の情報を与える他のメタデータトラックとしても追加され得る。ビデオ解析モジュールはまた、メディアエンコーダ505又は506から情報及び/又は統計を得て、情報の対応するアイテムをメタデータトラックとして記憶することもできる。例えば、ビデオビットストリームの場合、情報の品質アイテムは、フレーム毎に記憶され得る。空間区間がユーザによって構成される場合、これらの情報のアイテムはタイル毎に記憶され得る。
符号化がなされると、全てのメディアストリームにメタデータストリームを加えたものが1以上のメディアファイルにカプセル化される。ここでも、ユーザは、メディアコンテンツがカプセル化される態様を構成することができる(ステップ532)。例えば、ビデオビットストリームは、1つのトラックにおいて又は別個のトラックにおいてカプセル化され得る。特定の実施形態によると、符号化フォーマットがHEVC又はタイルを用いるレイヤードHEVCである場合、ユーザはタイル領域ディスクリプタを有するタイルトラックにおいて各タイルをカプセル化し、共通の情報をタイルベーストラックに収集することができる。
独立ストリームが符号化されると、ユーザは1つのビデオビットストリームをそれ自体のトラックにカプセル化することができる。これらのビデオビットストリームが実際には他のビデオの空間部分である場合、ユーザは(ISO/IEC14496-15第4版に規定されるような)「trif」として知られるタイル領域ディスクリプタを各ビデオトラックに注記することができる。ユーザ設定又はビデオ解析モジュールに応じて、ユーザはトラックにカプセル化された空間部分の粒度を制御することができる。
メタデータトラックがビデオ注釈507又は何らかのユーザ記述508のように存在する場合、これらのメタデータトラックはトラック参照タイプ「cdsc」を介して該当のビデオトラックに関連付けられ得る。これは、メタデータトラックがビデオトラックについての記述情報を含むことを示す。メタデータトラックの例は、ISO/IEC23001-10に規定される動的ROI情報又は品質メトリックとなり得る。
次に、カプセル化ステップ509の後に、ユーザは適応的ストリーミングに対するデータのパッケージングを制御することができる(ステップ533)。このステップは、特定の実施形態によると、mp4(ISO BMFF)ライタによって実行可能である。MPEG CMAF、WebM、Matroska又はMPEG-2 Transport Streamのような他のパッケージング又は記述フォーマットが使用されてもよい。このステップの間に、ユーザは、(ステップ532において選択されたカプセル化フォーマットは、ステップ533において選択されたストリーミングプロトコルによってサポートされることを確実にする)適応的ストリーミングフォーマット、例えば、DASH、HLS、又はSmooth Streamingを選択することができる。
特定の実施形態によると、ユーザがDASHを選択するので、マニフェストファイルとしてMPDの生成並びに初期化及びメディアセグメントの生成がもたらされる。メディアセグメントは実際にメディアデータを含む一方で、初期化セグメントはクライアント装置のデコーダをセットアップするデータを含む。ステップ531における符号化の選択又はメディアエンコーダ505及び506の構成(固定設定の場合)に応じて、幾つかの代替バージョンの同じメディアコンポーネントがあり得る。メディアコンポーネントは、1つのオーディオストリーム若しくは1つのビデオストリーム又は1つのメタデータストリーム又は特定のメディアタイプの任意のストリームである。ビデオストリームは、実際には完全なビデオに、又はタイル、タイルのセット若しくは注目領域に対応するもののような完全なビデオの区間に対応し得る。
なお、ライブコンテンツについては、ユーザ制御ステップ531、532及び533は、何らかの遅延をもたらすために可能ではないことがある。そのようなシナリオでは、ユーザは、マニフェスト及びセグメントを符号化すること(505、506)、カプセル化すること(509)並びに生成すること(510)を担う異なるモジュールを経験的に構成する。
図5bは、クライアント装置(例えば、図3におけるクライアント装置320)によってメディアデータを処理するためのステップの例を示す。
図示するように、第1のステップは、例えば、ビデオがストリーミングされ得るウェブサイトを介して又はストリーミングポータルサービス上においてストリーミングサービスにアクセスすること(ステップ550)に向けられる。サービスにアクセスすること及びビデオを選択又はクリックすることによって、クライアント装置は、ストリーミングマニフェストを要求する(ステップ511)。なお、場合によっては、クライアント機能及び関連の適応ロジックが、ユーザが接続しているウェブページ又はストリーミングサービスにおける適用可能なJavascriptコードとして組み込まれ得る。このような場合、それは、ユーザインターフェース及びディスプレイとして作用するウェブブラウザによって実行される。あるいは、ストリーミングするクライアントは、クライアント装置におけるソフトウェアモジュールとしてそれ自体の適応ロジックで実施されるスタンドアロンアプリケーションであってもよい。
受信(ステップ552)の後に、マニフェストは、メディアリソース及びそれらの代替表示の観点で、メディアプレゼンテーションオーガニゼーションのメモリ内表示又はコンパイル済みMPDを構築するようにパースされる(ステップ553)。
クライアントは、マニフェストから、複合体又は事前選択物がマニフェストファイルにおいて宣言されたかを判定することができる(テスト554)。これは、<Preselection>要素若しくはディスクリプタ、又はリソースがパーサ(メディアビットストリームの脱カプセル化及び生成のために)及びメディアデコーダに提供される前に統合され得ることを示す他のディスクリプタを探すことによって行われ得る。タイル化ビデオの特定の場合では、これは、タイルベーストラックに対応するRepresentation又はAdaptationSet及びタイルトラックを記述する関連のRepresentation又はAdaptationSetがあるか否かを確認することになり得る。タイルトラックは、Representation、AdaptationSet、Preselection又はSubRepresentation要素における(「hvt1」で始まる値を有する)コーデック属性を介して容易に識別可能である。
複合体又は事前選択物がマニフェストファイルにおいて宣言される場合及びクライアント装置がこれらの複合体又は事前選択物をハンドリングできる場合(テスト555)、クライアント装置は、ネットワーク条件(例えば、帯域幅の変動又は遅延の変動)への動的適応について選択処理が実行されるべきことを知得している。次に、クライアント装置は、マニフェストファイルを検査して(ステップ556)、(後述するように)要求するデータの組合せをクライアント装置が決定するのに役立つ品質適応についての何らかのガイダンスを提供するマニフェストにおいて追加の記述を探す。
マニフェストがそのような追加情報を備えない場合、クライアント装置はそれがマニフェストにおいて記述された高度なエクスペリエンス(すなわち、同時に再生される同じメディアタイプの幾つかのメディアコンポーネントの組合せ、複合体又は事前選択物)をサポートできるかを判断することができる(テスト557)。
クライアント装置がそのような高度なエクスペリエンスをサポートしない場合、それは(「サーバ制御」実施形態を参照して後述するような)サーバ装置とのネゴシエーションを介して、サーバによって品質適応をハンドリングすることができるかを判断する(テスト558)。
クライアント装置がサーバによって品質適応をハンドリングできる場合、それは主な対象メディアコンポーネント、例えば、事前選択物におけるメインリソース、タイル化ビデオにおけるROIのみ、360度ビデオにおけるユーザビュー、又はメタデータストリームのような関連の追加リソースなしでの1つのメディアストリームのみを要求し(ステップ559)、それは追加のコンテンツ(同じメディアタイプのメディアコンポーネントの複合体の事前選択物又は組合せの残余のコンテンツ)を受信するヒントをサーバ装置に与える。
クライアント装置がサーバによっては品質適応をハンドリングできない場合(テスト558)、後者は、幾つかの構成は利用可能でないこと、例えば、複合ビデオ全体(例えば、ROIに周辺タイルを加えたもの)にわたるスムーズな品質のための幾つかのビューモードが許可されないことをユーザ装置に通知することができる(ステップ560)。それはまた、(ユーザ視点において)サポートされない構成を示さないままのものであってもよく、グラフィカルインターフェースにおいてユーザに提供されるナビゲーションメニュー及び/又は構成を適合することができる。これは、例えば、ステップ553において構築されたMPD又はコンパイル済みMPDのメモリ内表示における複合体、組合せ又は事前選択物を宣言するMPD要素を考慮せずに行われ得る。そのような場合、クライアントは、一時に所与のメディアタイプの1つのメディアコンポーネントしかストリーミングされない基本DASHに後退する(ステップ561)。
説明するように、同じことが、クライアント装置が複合体又は事前選択物をハンドリングできない場合にも当てはまる(テスト555)。
クライアント装置が高度なエクスペリエンスをサポートする場合(テスト557)、それはマニフェストにおいて宣言される組合せ、事前選択物又は複合体を再生することができる。したがって、それは、ストリーミング中に、以降に説明する高度な適応ロジックを活性化及び適用する(ステップ562)。次に、クライアント装置は複合体、事前選択物又は組合せの全ての選択メディアコンポーネントに対応する様々なメディアセグメントを要求する。ダウンロードする各セグメントに対する適切なバージョンが、高度な適応ロジックによって計算される。
品質適応規則ともいう品質適応、例えば、単一の複合ビデオとして再生される隣接ビデオストリーム間の承認される品質劣化についての何らかのガイダンスを提供する追加情報をマニフェストが備える場合(テスト556)、クライアント装置は要求する適切なメディアセグメントの選択についてそれに依拠することができる(ステップ563及び564)。
最後に、受信メディアセグメントがクライアントのパーサに提供され、さらにユーザに対するレンダリングのための適切なメディアデコーダに発送される。そして、クライアントは、メディアプレゼンテーションの時間セグメントを反復し、例えば、利用可能な帯域幅、そのメディアバッファの充填率などに応じたメディアコンテンツコンポーネントのバージョンの選択を再考する。
クライアント装置は、ストリーミングセッション全体の間に同じ要求モードを維持し、又は変更を決定することができる。要求モードの変更(ステップ561、559、562又は563)は、クライアント装置の判断により、ユーザ入力により、又はサーバ装置に応じて発生し得る。一例は、ユーザが彼のビューモードを変更する場合であり、例えば、完全なビデオ内の注目領域のビューからROIのみでのビューに変更する場合である。この例は、例えばROIが1つのタイルに対応する場合に、基本メディアストリームの要求への逆切替をもたらすことになる(ステップ561)。
同様に、クライアント装置は、品質規則の表示にかかわらず(テスト556並びにステップ563及び564)、それ自体の高度な適応ロジックを適用することを決定することができる(ステップ562)。しかし、ストリーミングされるデータの組合せを決定しようとするクライアント装置は、適応問題(例えば、表示のフリーズ、バッファ枯渇若しくは超過、又は復号及び/若しくは表示する複合メディアストリームの高過ぎる計算集中度)に直面し得る。そのような場合、クライアントは、例えば、ステップ562からステップ563にその要求モードを変更するように決定することができる。サーバ装置に応じた他の例は、クライアント装置が、例えばデータプッシングを用いてサーバ装置に依拠することを決定し(ステップ559)、サーバ装置がある時点でプッシングを停止することを決定する場合である。そのような場合、クライアント装置は基本モードに後退することになり(ステップ561)又はそれ自身で複数のメディアコンポーネントの選択を適合させようとすることができる(ステップ562)。いずれにしても、マニフェストに付加される品質規則適合に対する注釈は、コンテンツ作成者から(又はメディアコンテンツを統合するMPD編集者から)クライアント装置への提案にすぎない。後者は、それを使用するか否か(すなわち、ステップ563を実行するか否か)を決定することができる。
幾つかのブラウジングモードがユーザに提供され得ることも注記される。例えば、静的なROIが符号化時に決定される場合、ユーザは、ROIのみ、完全なビデオにおけるROIであるが最良品質のもの又はROI周辺の完全なビデオのクロップの間で選択するように1つのROIが提示されることを通知され得る。最後の2つの可能性に関して、特定の適応ロジックが、クライアントが良好なセットのタイルを選択するのを補助するのに使用され得る。ROIはまた、動的であってもよいし、品質を最適化しようとするビデオの好適な部分としてユーザ選択されるものであってもよい。選択領域が複数のビデオコンポーネントに対応する場合、高度な適応が、一貫した画像全体の品質を保証する必要もある。同様に、仮想現実又は全方向コンテンツへの応用については、ユーザの現在の視点と周辺領域との間で異なる品質が選択され得る。ユーザが仮想シーンにおける他の点又は全方向ビデオにおける他の領域を見る場合に品質が大幅に落ちないような、現在の視点及び周辺領域に対する品質における良好なバランスがある(すなわち、異なる領域間での品質不均衡又は品質差が制御されるべきである)。
品質規則の適用
特定の実施形態によると、幾つかのシグナリングが(例えば、図5aのステップ533中に)マニフェスト生成に対して挿入される。コンテンツ作成者は、メディアコンテンツコンポーネント、特に同じメディアタイプのメディアコンテンツコンポーネント(例えば幾つかのタイル)の選択においてクライアント装置を補助する幾つかの品質適応規則を提供する。これらの実施形態によると、コンテンツ作成者は、コンテンツの準備を容易化するとともにメディアプレゼンテーションの記述を軽くする全ての可能な組合せを記述する必要はない。さらに、それは、静的品質規則はマニフェストにおいて一度限り定義可能であり、全ての可能な組合せの計算を必要としないので、ライブコンテンツのパッケージングに対して一層適応され得る。これらの品質適応規則は、同じメディアタイプの複数のメディアコンテンツコンポーネントの選択の場合にコンテンツ作成者によって計画される有利な組合せが存在することをクライアント装置に通知するように意図される。
そのような品質規則の使用によって、構成メディアストリームのより良い全体レンダリング品質、例えば、ROIとその周辺タイルとの間のスムーズな品質がもたらされる。
なお、そのような品質規則の存在にかかわらず、クライアント装置はこれらの表示に従わないことを決定することができる。同様に、このMPDの拡張子をサポートしない古いクライアントは、そのような情報のアイテムを無視する。
説明のために、それに従って品質適応規則がストリーミングマニフェストに挿入されるこれらの実施形態は、DASHコンテキストにおいて、すなわち、MPDの拡張子として記述される。DASHクライアントにわたって一貫したユーザエクスペリエンスを保証するために、コンテンツ作成者は、空間的に関係するコンテンツの選択について、特に品質の観点で何らかのガイダンスを示す。この目的のため、MPDは、メディアコンテンツコンポーネントを、コンテンツ作成者が等価とみなす品質レベルを有する同じメディアタイプに関連付けるサンプリング手段を提供する。この情報は、ビデオ解析モジュール(例えば、図5aにおいてビデオ解析モジュール503)によって若しくはビデオエンコーダ(例えば、図5aにおけるビデオエンコーダ506)から、ログによって、又は(例えば、図5bにおけるステップ551中に)コンテンツ作成者によって定義される符号化パラメータによって若しくはメディアコンテンツを符号化する際にコンテンツ作成者によって行われる主観的テストから決定され得る。
品質等価シグナリング又はクロスアダプテーションセット品質シグナリング
Representationの品質レベルは、MPEG DASH標準によるRepresentation要素における「qualityRanking」属性によって規定され得るものであり、Representation要素はビデオと等しいメディアタイプを有するメディアコンテンツコンポーネントのバージョンを通常は記述することが再認される。qualityRanking属性の範囲は、1つのAdaptationSetに制限され、AdaptationSet内部の品質レベルによるRepresentationを命令することを可能とする。
異なる品質レベルを有する画像の部分又はタイルの組合せはAdaptationSetにわたってRepresentationをランク付けする必要があるので、解決策は、「qualityRanking」属性に基づいて異なるAdaptationSetの品質レベルの間でリンクを確立することにある。これは、Periodレベルにおける新たなディスクリプタを用いることによって(又は品質ランクが1つのPeriodから他のものへと変化しない場合にはMPD要素レベルでも)行われ得る。そのような新たなディスクリプタは、以下のように表現可能である:
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality_equivalence“ value="1, 2” />
ここで、新たな@schemeIdUriの値は、属性@qualityRankingがクロスAdaptationSet qualityRankingを提供し、「value」属性がこの@qualityRankingが過負荷となることによって検討されるAdaptationSetのリストを提供することを示す。
例えば、以下に記載するMPDスニペットでは、新たなディスクリプタは、所与のPeriodについて、id「1.1」のRepresentation及びid「2.1」のRepresentationが品質の観点で等価とみなされ得ることを示す。
以下のMPDの例は、品質等価ディスクリプタを示す。
<MPD…>
<Period> …
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality_equivalence“ value="1, 2”/>
<AdaptationSet contentType=≪ video ≫ id=”1” …>
<Representation id=≪ 1.1 ≫ bandwidth=≪ 1000 ≫ qualityRanking=≪ 0 ≫ …> <!--/*best Quality*/-> … </Representation>
<Representation id=≪ 1.2 ≫ bandwidth=≪ 500 ≫ qualityRanking=≪ 1 ≫…> <!-- /*mid Quality*/ -> … </Representation>
<Representation id=≪ 1.3 ≫ bandwidth=≪ 250 ≫ qualityRanking=≪ 2 ≫…> <!-- /*low Quality*/ -> … </Representation>
</AdaptationSet>
<AdaptationSet contentType=≪ video ≫ id=2 …>
<Representation id=≪ 2.1 ≫ bandwidth=≪ 1000 ≫ qualityRanking=≪ 0 ≫…> <!-- /*best Quality*/ -> … </Representation>
<Representation id=≪ 2.2 ≫ bandwidth=≪ 800 ≫ qualityRanking=≪ 1 ≫ …> <!--/*mid Quality*/ -> … </Representation>
<Representation id=≪ 2.3 ≫ bandwidth=≪ 500 ≫ qualityRanking=≪ 2 ≫ …> <!--/*low Quality*/ -> … </Representation>
<Representation id=≪ 2.4 ≫ bandwidth=≪ 250 ≫ qualityRanking=≪ 3 ≫ …> <!--/*low Quality*/ -> … </Representation>
</AdaptationSet>
… </Period>
</MPD>
この品質等価性についての他の代替例を本記載においてさらに説明する。品質等価性についてのこの第1の新たなディスクリプタは、解決手段の第1の部分である。他の情報は、許容可能な全体品質を有する複合ビデオ:品質劣化の観点で承認されたものの表示を生成するのに必要となる。我々は、この表示を一般に「品質規則」ディスクリプタという。
品質適応規則(又は品質規則)表示
異なるAdaptationSetのRepresentation間に品質の観点で類似度が特定されると、Representationを選択するための品質規則がマニフェスト内に付加され、すなわち、品質劣化の観点で承認されるものを示すべきである。
そのような品質規則は、クライアント装置が良いセットのタイルを選択して再構成ビデオの全体的品質を確保することに役立つ。これは、品質劣化パターンのコンテンツ作成者からの表示である。
例えば、コンテンツ作成者は、ROIに対応する1以上のタイルとその周辺タイルとの間に(品質ランク付け部において)品質差が1レベル以下となるべきことを示し得る。言い換えると、コンテンツ作成者は、1レベルの品質の最大品質不均衡を承認する。これを表現するために、以下のディスクリプタが使用可能である:
<SupplementalProperty schemeIdUri="urn:mpeg:dash:max_quality_degradation “value="1”/>
このディスクリプタは、以前のものについて、MPD要素レベル又はPeriod要素レベルで置換可能である。@schemeIdUri属性値は、1タイルとその隣接タイルの間の、より一般的には共に表示される1つのメディアコンポーネントと他のメディアコンポーネントの間の、提案される最大品質劣化を示す。属性@valueは、異なるAdaptationSetからの同じメディアタイプのRepresentationのセットを再生する場合にクライアントは1より大きい品質ランク付けの差を有する隣接Representationを選択すべきではないことを示す。
説明のために、そのような適応手法は以下のシナリオとなる:第1に、クライアント装置は最高品質で複合ビデオを構成する全ての空間部分を選択しようとする;この選択に対応する必要ビットレートが利用可能帯域幅に対して高すぎる場合には、それは注目領域に対応するもの以外の全てのタイルについてより低い品質レベルに切り替わる;それがビットレートの観点で高過ぎるままである場合には、それはROIに対応するタイルについて及び周辺タイルについてもより低い品質レベルに切り替わる。そのような品質規則を使用しないとすると、クライアント装置は、ROIについては最高品質で、周辺タイルについては最低品質でRepresentationを選択していることになり、これはROI境界周辺での品質のジャンプをもたらして程度の低いユーザエクスペリエンスを生成することになる。
品質規則をシグナリングするために使用されるディスクリプタは、パラメータ、属性又は要素を付加することによってより高い記述能力を有し得る品質等価性を与えるのにも使用され得る。例えば、それは、等価Representationを
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality_equivalence” “value="1.1,2.1; 1.2, 2.2”/>
のような、Representation id値のリストとして明示的に列挙することができる。
そのようなディスクリプタの使用によって、それ以上の属性qualityRankingが定義されることが不要となる。
そして、前述の(短縮した)例は、以下の例として書き換えられる。
<MPD…>
<Period> …
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality_equivalence“ value="1.1, 1.2; 2.1, 2.2” />
<AdaptationSet contentType=≪ video ≫ id=1 …>
<Representation id=≪ 1.1 ≫ bandwidth=≪ 1000 ≫ …> <!--/* a first quality level*/--> … </Representation>
<Representation id=≪ 1.2 ≫ bandwidth=≪ 500 ≫ …> <!--/* a second quality */ --> … </Representation> …
</AdaptationSet>
<AdaptationSet contentType=≪ video ≫ id=2 …>
<Representation id=≪ 2.1 ≫ bandwidth=≪ 1000 ≫ …> <!--/* the first quality */ --> … </Representation>
<Representation id=≪ 2.2 ≫ bandwidth=≪ 800 ≫ …> <!--/*the second quality */ --> … </Representation>…
</AdaptationSet>
… </Period>
</MPD>
なお、この例によると、コンテンツ作成者は、対応する帯域幅が等しくなくても、「1.1」及び「1.2」のRepresentationが等価品質のものとなることを保証する。同様に、等しい帯域幅要件のRepresentationは、それらが品質の観点で等価であることを自動的に意味するものではない。等価性は、存在する場合には品質等価性ディスクリプタから推定されなければならない。
さらに、それは、品質等価性(帯域幅、解像度、関連のメタデータなど)についてのコンテンツ作成者によって使用される基準が何であれ、選択可能なメディアコンテンツコンポーネントのRepresentation間での直接の関連である。
この品質等価性ディスクリプタを使用する例は、それによってストリーミングマニフェストが、例えばSVC又はSHVCで符号化されたビデオビットストリームのようなスケーラブルストリームを含む場合に向けられる。各レイヤが例えばAVC又はHEVCでビデオビットストリームとして符号化されるスケーラブルストリームに対する代替例を同じマニフェストが含む場合には、品質等価性ディスクリプタは、スケーラブルストリームの1以上のレイヤを有する独立したビットストリーム間での等価性を示すのに使用され得る。
以下に与えられるMPDの例は、ベースレイヤ(id「2.1」のRepresentation)及びエンハンスメントレイヤ(Representation「2.1」に応じるRepresentation「2.2」)によって表されるスケーラブルHEVCビットストリーム(SHVC)のスケーラブルレイヤに品質等価性が与えられるHEVCにおいて符号化される(Representation「1.1」及び「1.2」によって記述される)2つの独立したビットストリームについての例を与える。ここで、スケーラビリティのタイプは空間スケーラビリティであるが、これは他のタイプのスケーラビリティ、特にマルチビューHEVCにも当てはまり得る。各Representationのコーデック属性は、符号化フォーマットを示す。
<MPD….>
<Period> …
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality_equivalence “ value="1.1, 2.1; 1.2, 2. 2”/>
<AdaptationSet contentType=≪ video ≫ id=1 …>
<Representation id=≪ 1.1 ≫ codec=”hvc1…” bandwidth=≪ 1000 ≫ width=1920 …> … </Representation>
<Representation id=≪ 1.2 ≫ codec=”hvc1…” bandwidth=≪ 2500 ≫ width=”3840”…> … </Representation>
</AdaptationSet>
<AdaptationSet contentType=≪ video ≫ id=2 …>
<Representation id=≪ 2.1 ≫ codec=”hvc1…” bandwidth=≪ 1000 ≫ width=”1920”…> … </Representation>
<Representation id=≪ 2.2 ≫ codec=”hvc2…” dependencyId=”2.1” bandwidth=≪ 1200 ≫… </Representation>
</AdaptationSet>
… </Period>
</MPD>
品質等価性ディスクリプタについての代替実施形態は、Representationの定義における新たな属性として、Representationが等価品質のMPDにおける他のRepresentationと組合せ可能であることを示す要素を定義する。この属性の値は、例えば、符号のない整数又はストリングであり得る。この属性の各値は、所与のPeriodに対して固有でなければならない。以下の例は、クロスAdaptationSet品質ランク付け情報についてのそのようなディスクリプタの例を与える:
<AdaptationSet id=”1” …>
<Representation id=”Rep1” bandwidth =”500000” … preselect=”HQ”…>

</Representation>
<Representation id=”Rep2” bandwidth =”250000” … preselect=”MQ”…>

</Representation>
<Representation id=”Rep3” bandwidth =”175000” … preselect=”LQ”…>

</Representation>
</AdaptationSet>
<AdaptationSet id=”2” …>
<Representation id=”Rep4” bandwidth =”540000” … preselect=”HQ”…>

</Representation>
<Representation id=”Rep5” bandwidth =”280000” … preselect=”MQ”…>

</Representation>
<Representation id=”Rep6” bandwidth =”195000” … preselect=”LQ”…>

</Representation>
</AdaptationSet>
この実施形態によると、クライアント装置は、「HQ」、「MQ」及び「LQ」である3レベルの事前選択物を直ちに識別することができる。この新たな属性によって採られる値は、タイプストリング(XMLスキーマにおいて表現される場合のxs:string)のものであり得る。それらの「preselect」属性が同じ値を共有する全てのRepresentationが、コンテンツ作者によって品質の観点で等価なものとしてみなされるので、この属性の使用は実際に簡素である。
このように、事前選択属性に対して同じ値を有する2以上の表示から2つのメディアストリーム、例えば表示画面の左に一方の画像、同じ表示画面の右に他方の画像をアセンブリすることによって、これらの2つの画像間の等質な品質がもたらされる。
このシグナリングは、品質不均衡をもたらさずに相互に組合せ可能なRepresentationを見出すことを直接的なものとし、クライアント装置は、それらの「preselect」属性において同じ値を有するRepresentationのセットを選択する。
品質不均衡の動的適応及び制御のための代替例が存在する。
第1の代替例によると、事前選択属性の値は、符号のない整数(XMLスキーマにおけるxs:unsignedInt)に制限される。そうすることによって、クライアント装置は、それが(マニフェストにおける特定のシグナリングを介して、クライアント装置の構成を介して、又は彼/彼女のグラフィカルインターフェースを介したユーザからの動的定義を介してのいずれかにより)2レベルの品質の承認される品質劣化セットを有する場合にそれが「N」に設定された事前選択属性値の1つの第1のRepresentationを選択し、それを値「N-2」以上に設定されたそれらの事前選択属性を有する他のRepresentationと合成することができることを特定することができる。デフォルトにより、組合せ、複合体又は事前選択物の情報がマニフェストにおいて示されていない場合、事前選択属性の全てのRepresentationが合成され得る。
品質不均衡の動的適応及び制御についての第2の代替例は、Representation要素、例えば「max_quality_disparity」名を有する属性における他の属性を定義することにある(それがMPDのXMLスキーマにおいて宣言されることを条件に他の名前が使用され得ることが観察される)。この属性は、タイプ整数であるものとして宣言可能であり、その値は同時に複合及びレンダリングされる選択メディアコンポーネント間の最大品質不均衡又は差を示す。
そして、上記例は以下のように書き換えられる。
<AdaptationSet id=”1” …>
<Representation id=”Rep1” bandwidth =”500000” … preselect=”HQ” max_quality_disparity=”2”>

</Representation>
<Representation id=”Rep2” bandwidth =”250000” … preselect=”MQ” max_quality_disparity=”2”>

</Representation>
<Representation id=”Rep3” bandwidth =”175000” … preselect=”LQ” max_quality_disparity=”2”>

</Representation>
</AdaptationSet>
<AdaptationSet id=”2” …>
<Representation id=”Rep4” bandwidth =”540000” … preselect=”HQ” max_quality_disparity=”2”>

</Representation>
<Representation id=”Rep5” bandwidth =”280000” … preselect=”MQ” max_quality_disparity=”2”>

</Representation>
<Representation id=”Rep6” bandwidth =”195000” … preselect=”LQ” max_quality_disparity=”2”>

</Representation>
</AdaptationSet>
例えば、MPDの最上位<Period>要素又は<MPD>に最大品質劣化を記述するディスクリプタが既にあるマニフェストにmax_quality_disparity=「2」が存在する場合には、このmax_quality_disparityは好適には最上位ディスクリプタの値を再定義する。属性値に対して代替的に、max_quality_disparityパラメータが、例えばSupplementalPropertyのようなRepresentation要素のDASHディスクリプタ要素において又は品質規則表示についての専用要素において配置され得る。これは、RepresentationがSubRepresentation要素を含む場合にも同様に当てはまる。max_quality_disparityパラメータは、コンテンツ作者がRepresentation又はSubRepresentationと、このmax_quality_disparityパラメータを含むものを2段階下回る品質レベルを有する他のRepresentation又はSubRepresentationと合成することを回避することを推奨することを示す。
上記に提案した属性に対する例示の値はまた、値「0」が例えば開始するデフォルトバージョンを示し、正の値がより高い品質を表すことになり、低い値ほど低い品質を示すことになるように、符号付きの整数であってもよい。qualityRanking属性との主な差異は、それが所与のPeriod要素について絶対品質表示である一方でqualityRanking属性が1つのAdaptationSetにしか当てはまらないことである。
この実施形態に基づいて、Representationのいずれのセットが共に合成され得るかを特定するために、複数の代替例が存在する。
第1の代替例は、2つの識別子:複合体、組合せ又は事前選択物についての固有の識別子を提供するのに使用される第1の識別子及び前述したような、すなわち、AdaptationSetにわたって絶対品質値を提供するための第2の識別子を含む値の対として(例えば、@preselectともいう)等価品質のRepresentationを特定するのに使用される新たな属性を定義することにある。
第1の識別子は、DASH SRDディスクリプタにおいて「source_id」パラメータと概念的に類似するものとみることができる。なお、この第1の識別子の導入によって、絶対品質の範囲は、その@Preselect属性がこの第1の識別子に対する同じ値を付帯するRepresentationに減縮可能となる。この識別子は、ストリング若しくは整数、又は1つの値が他の値と異なるか否かを照合するのが容易かつ高速であることを条件として任意のタイプであってもよい。
前述の例は、以下のように書き換えられる。
… <AdaptationSet id=”1” …>
<Representation id=”Rep1” bandwidth =”500000” … preselect=”C1, HQ” max_quality_disparity=”2”>

</Representation>
<Representation id=”Rep2” bandwidth =”250000” … preselect=”C1, MQ” max_quality_disparity=”2”>

</Representation>
<Representation id=”Rep3” bandwidth =”175000” … preselect=”C1, LQ” max_quality_disparity=”2”>

</Representation>
</AdaptationSet>
<AdaptationSet id=”2” …>
<Representation id=”Rep4” bandwidth =”540000” … preselect=”C1, HQ” max_quality_disparity=”2”>

</Representation>
<Representation id=”Rep5” bandwidth =”280000” … preselect=”C1, MQ” max_quality_disparity=”2”>

</Representation>
<Representation id=”Rep6” bandwidth =”195000” … preselect=”C1, LQ” max_quality_disparity=”2”>

</Representation>
</AdaptationSet>…
上記例では、識別子「C1」で定義される1つの複合体、組合せ又は事前選択物しかない。異なる品質レベルは、「HQ」、「MQ」又は「LQ」として識別される。
下記例は、2つの品質レベル「HQ」及び「LQ」のみであるが「C1」及び「C2」で示す2つの複合体、組合せ又は事前選択物で同じ属性の使用を示す。明瞭化のために、「max_quality_disparity」属性との可能な組合せは、この例では示されないが同様に当てはまる。
<MPD> …
<AdaptationSet id=”1” …>
<Representation id=”Rep1” bandwidth =”500000” … preselect=”C1, HQ” >

</Representation>

<Representation id=”Rep2” bandwidth =”175000” … preselect=”C1, LQ” >

</Representation>
</AdaptationSet>
<AdaptationSet id=”2” …>
<Representation id=”Rep3” bandwidth =”540000” … preselect=”C2, HQ” >

</Representation>
<Representation id=”Rep4” bandwidth =”195000” … preselect=”C2,LQ” >

</Representation>
</AdaptationSet>
<AdaptationSet id=”3” …>
<Representation id=”Rep5” bandwidth =”540000” … preselect=”C1, HQ” >

</Representation>
<Representation id=”Rep6” bandwidth =”195000” … preselect=”C1,LQ” >

</Representation>
</AdaptationSet>
<AdaptationSet id=”3” …>
<Representation id=”Rep7” bandwidth =”640000” … preselect=”C2, HQ” >

</Representation>
<Representation id=”Rep8” bandwidth =”235000” … preselect=”C2,LQ” >

</Representation>
</AdaptationSet>

</MPD>
この例によると、クライアント装置は、id=「1」のRepresentationが品質の差なくid=「5」を有するRepresentationと合成され得ることをMPDがパースすることから容易に推定することができる。同様に、id=「3」及びid=「7」のRepresentationが合成され得る。これらの2つの組合せは、より低い品質として組合せ:id=「2」及びid=「6」のRepresentation並びにid=「4」及びid=「8」のRepresentationを有する。
この実施形態で記載される品質規則及び品質等価性は、「コンテンツ作成者」という実施形態によって記載されるDASHにおいて定義される<Preselection>要素とも合成可能となる。
品質等価性についてのこの新たな属性は、既存のqualityRanking属性のセマンティクスを変更することを回避し、後方互換性の問題を回避し得る。
品質等価性及び品質規則ディスクリプタは、共に複合又は合成されるようにシグナリングされるコンテンツコンポーネントに当てはまる。これは、コンテンツコンポーネント選択ディスクリプタがクライアントに、コンテンツ作成者によって提供されるものを知得させることを必要とする。このコンテンツコンポーネント選択ディスクリプタは、「コンテンツ作成者」についての実施形態で以下に記載及び説明される。
より一般的には品質規則ディスクリプタといわれる品質適用規則パターンのシグナリングについて、様々な代替例がある。
特定の実施形態によると、それは、適応規則がプレゼンテーション全体に対して固定されるのか、1つのPeriod要素から他のものに変化し得るのかに応じて<MPD>又は<Period>レベルにおいて記述され、通常はメディアプレゼンテーションがある期間において広告によって割り込まれる場合、これらの期間中(広告が複数のメディアコンテンツコンポーネントの複合体又は組合せを示唆しない場合)に品質適用規則を不活性化するのに有用となり得る。この品質適用規則がPeriod要素よりも下位で宣言され得る場合がある。これは、各々がRepresentationにカプセル化されるタイルトラックにカプセル化されるタイルを有するビデオストリームのプレゼンテーションに対する場合となり得る。
品質規則は、最大承認劣化レベルを指定する場合に2つの次元に分離可能であり、水平次元における第1の値及び垂直次元における他のものを指定する。例えば:<SupplementalProperty schemeIdUri="urn:mpeg:dash:max_quality_degradation value=“1, 2”/>、又は水平隣接における1つのレベルの最大承認品質差及び垂直次元における2つの品質レベルまでの品質差を示す明示的な属性名とともに:<SupplementalProperty schemeIdUri="urn:mpeg:dash:max_quality_degradation value_h ="1” value_v=”2”/>。
特定の実施形態によると、ROIと他の部分との間の最大品質差などの品質規則をシグナリングするために使用されるディスクリプタはまた、(ROIを中心とするデフォルトにより)「フィルタ状」品質低減比及び/又はビデオにおける特定の場所を示して品質低減を適用する選択的表示を備える。例えば、<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality_rule_filter “value="3, 3, 2, 1, 2, 1, 0, 1, 2, 1, 2 ”/>は、値0(フィルタの中心)に位置するビデオの空間部分付近の異なる承認品質劣化値を有する3×3のパターンを示す。「フィルタ状」品質低減はまた、次元ごとに1つの2つのフィルタ、例えば:<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality_rule_filter_2D “value="(3, 1,0,1); (3, 1, 0,1)”/>に分離可能であり、各水平及び垂直次元に対して値0に位置するビデオの空間部分の周辺の異なる承認品質劣化値を有する1×3のパターンを指定する。
上記例は、両方向に同じ値を割り当てるが、方向に応じて異なるパターンを有することが有用な場合もある。これは、ユーザが主に一方向に沿って頭を動かす場合の360度ストリーミングのようなアプリケーションについて有利となり得るものであり、クライアントは、ユーザによって潜在的に見られる領域(すなわち、上及び下のビューではなく、現在のビューの左及び/又は右のビュー)に、より高い品質を与えることができる。品質規則は、頭の動きに応じてクライアントによって動的に計算されてもよい。右に動く場合、品質はビデオの右部分に対して可能な限り高く確保され、より大きな劣化が他の方向(左、上及び下)において許容される。理想的には、フィルタは、品質適応重み付けが事前選択物のコンポーネント毎に指定されるように、図1a又は1bに示すような空間部分のタイル化又は複合グリッドに追従する。
それは、maxDeltaQuality、maxHorizDeltaQuality、maxVertDeltaQuality又はmaxDiagDeltaQuality属性、単一のビットストリームを作成するか否かの表示、タイル化され又はタイル化されないメディアデータに関連する表示のような他のパラメータも示し得る。他の品質規則は、条件が厳しくなる場合(ネットワーク輻輳、高い遅延・・・)に1以上のセグメント中に事前選択物の幾つかのコンテンツコンポーネントがフリーズされるように列挙することにある。品質規則はまた、360度ビデオ又は仮想現実コンテンツにおけるタイル又は領域を示すsource_idのようなパラメータのリストを定義することによってSRDディスクリプタ、及びManhattan距離によるタイル重み付けについてvalue="<SRD_source_id>、NULL、<maxQualityDegradation>"、又はvalue="<SRD_source_id>、NULL、方向毎に1つの品質劣化を指定する<maxHQualityDegradation> <maxVQualityDegradation>"又はvalue="<SRD_source_id>、NULL、<maxHQualityDegradation> <maxVQualityDegradation> <maxDiagQualityDegradation>のような関連のタイル又は領域に対して許容される最大品質劣化と合成することができる。品質規則はまた、特定の@associationType値を用いてメタデータトラックにおいて示され得る。例えば、特定のassociationType値は、メタデータストリームが関連のRepresentationの品質適応についてのメタデータ又は関連のRepresentationの品質情報についてのタイムドサンプルを含むことを示す4文字コード(例えば、品質情報について「qinf」)として定義及び登録される。メタデータストリームが品質規則を含む場合には、品質規則ディスクリプタはこれを直接反映することができる。例えば、<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality_rule_external “value=" (ID of the metadata stream) ”/>
これらの実施形態によると、ストリーミングするクライアントは、コンテンツ作成者によって示される劣化品質パターンがあることを知る(図5bのテスト556の結果が真である)。これは、メディアデータを要求する場合にそれを考慮する。これは、クライアント装置にわたって一貫したエクスペリエンスのために有用となるべきである。
他の実施形態は、ユーザ作成者について、クライアント装置はその適応ロジックにいかなる変更も必要としないようにマニフェストにおいて全ての可能な組合せを記述して、ただこれらの組合せについてのシグナリングをサポートすることによって品質適応パターンよりも明示的となるものである。
コンテンツ作成者
前述の実施形態によると、コンテンツ作成者は品質適応のための規則(品質規則ディスクリプタ)を提供し、全ての可能な組合せの代替の網羅的宣言を回避した。
これらの実施形態では、コンテンツ作成者は、(例えば、図5aのステップ533において、又はステップ531及び532においてそれぞれエンコーダ、トランスコーダ又はパッケージャを構成する際に)メディアコンテンツコンポーネントの可能な組合せの網羅的な記述を提供することによって品質規則を暗示的とする。
これを行うために、コンテンツ作成者は、コンテンツコンポーネント選択要素及び/又はコンテンツコンポーネントディスクリプタに依拠する。結果として得られる複合ビデオの品質が、共に複合される画像部分又はタイルの境界における強い品質変動を受けない場合に、コンテンツコンポーネント選択要素はコンテンツ作成者が、共に再生される場合に、それが保証する同じメディアタイプのメディアコンテンツコンポーネントとの組合せを表現することを可能とする。
コンテンツコンポーネント選択要素は、(2016年6月にw16221に規定される第4回修正以降)DASH MPDに存在する<Preselection>要素の拡張子となり得る。コンテンツコンポーネント選択ディスクリプタはまた、そのAdaptationSetが、同じMPDにおいて又は例えば他のMPDにおいて宣言されるAdaptationSetのXlink要素を介して宣言される古典的なAdaptationSetの複合体、組合せ又はバンドルであることを示す特定の属性又はディスクリプタを有する特定種のAdaptationSetとなり得る。注釈の一例は、その名前が何であれ、AdaptationSetが「仮想」AdaptationSetであることを示す新たな属性である:
<AdaptationSet virtual=”true” …. >
or a “referencing” AdaptationSet declared through a DASH descriptor:
<AdaptationSet ….>
<EssentialProperty scheme_id_uri=”urn:mpeg:dash:2017:component-selection” value=”1, 2”/> …
</AdaptationSet>
上記例では、コンテンツコンポーネント選択についてのAdaptationSetは、id=「1」及びid=「2」の他のAdaptationSetを参照する。これは、コンテンツコンポーネント選択としてAdaptationSetを用いる場合に、参照されるAdaptationSetは「id」属性を宣言すべきであることを意味する。コンテンツコンポーネント選択要素は、いずれのセグメントurlも宣言することなく他のAdaptationSetを参照する。コンポーネント選択要素(拡張Preselection要素又は特定のAdaptationSet)は、複合体、組合せ又はバンドルの代替バージョンを宣言するRepresentation要素を含み得るが、これらのRepresentationはコンテンツコンポーネント選択要素による参照AdaptationSetからの他のRepresentationしか参照しない。
Preselection要素又はディスクリプタがコンテンツコンポーネント選択要素として使用される場合には、列挙されたメディアコンポーネントの予想される組合せの表示が有用となり得る。実際、両構成MainAdaptationSet及びPartialAdaptationSetが導入される場合には既存のPreselection構成の定義は不明となることを注記してきた。
特に、全てのpreselectionComponentが共に再生されるのか、又は部分的なAdaptationSetのメインのみ若しくはメインにサブセットを加えたものも許可されるのかが不明である。
発明の他の実施形態によると、コンテンツコンポーネント選択要素において、メディアコンポーネントの組合せの観点で、コンテンツ作者の予想される使用を記述する追加のパラメータを含むことを提案する。例えば、この新たなパラメータ(下記の名前「selectionType」は例である)は、Preselection要素における追加の属性として提供される:
<Preselection id=”P1” selectionType=”all” preselectionComponents=”(list of components)” ...> … </Preselection>
<Preselection id=”P2” selectionType=”any” preselectionComponents=”(list of components)” …> … </Preselection>
<Preselection id=”P2” selectionType=”main” preselectionComponents=”(list of components)” …> … </Preselection>
この新たなパラメータは、Preselectionディスクリプタにおいても宣言され得る:
<SupplementalProperty schemeIdUri=” urn:mpeg:dash:preselection:2016” selectionType =”all” value=” (list of components)”.../>
<SupplementalProperty schemeIdUri=” urn:mpeg:dash:preselection:2016” selectionType =”main” value=” (list of components)”.../>
<SupplementalProperty schemeIdUri=” urn:mpeg:dash:preselection:2016” selectionType =”any” value=” (list of components)”.../>
なお、Preselection内又はより一般的にはコンテンツコンポーネント選択要素におけるメディアコンポーネントの意図された又は予想される組合せについてのこの追加パラメータは、その宣言:SupplementalProperty、EssentialProperty又はMPDスキーマにおいて定義されるDescriptorTypeから受け継ぐ特定の要素が何であれ、Preselectionに当てはまる。これは、Preselection要素又はディスクリプタの下で任意のノード(例えば、要素又は属性)として実施され得る。Preselectionディスクリプタの場合、それは「value」属性に列挙されたパラメータの1つとなり得る。
この新たなパラメータのセマンティクスは、以下のように定義される:
-パラメータが値「any」を有する場合、それはコンテンツコンポーネント選択要素におけるメディアコンポーネントの任意の組合せ(例えば、Preselection要素又はディスクリプタ)が、メインAdaptationSetに対応するメディアコンポーネントがない場合でも、ダウンロード及びレンダリングのために選択可能であることを意味する。
-パラメータが値「main」を取る場合、それはコンテンツコンポーネント選択要素におけるメディアコンポーネントの任意の組合せ(例えば、Preselection要素又はディスクリプタ)が、メインAdaptationSetに対応するメディアコンポーネントが選択されることを条件に、ダウンロード及びレンダリングのために選択可能であることを意味する。
-最後の可能な値は「all」であり、それは列挙された組合せのみ、すなわち、コンテンツコンポーネント選択要素、例えば、Preselection要素において宣言される各メディアコンポーネントについて1つの代替の符号化バージョンが再生可能であることを意味し、それは、Preselectionディスクリプタについて属性「preselectionComponents」において宣言されたリストであり、属性「value」において提供された識別子のリストとなり、図8におけるテーブル800は、MainAdaptationSetとPartialAdaptationSetの間の各組合せについて、このパラメータに対する可能な値を与える。
-他の可能な値は、メインAdaptationSetのみとPreselection全体との間の関心ある組合せを提供するPreselection内でコンポーネントのリストを提供する識別子のリストを有する「recommended」若しくは「best」又は「fallback」であり、この「recommended」又は「best」選択は受信機側でのコンテンツのストリーミング又は処理の観点で何らかの適応が適応を必要とする場合の後退動作点とみることができ、そのような場合、Preselection全体をダウンロード及びレンダリングが可能でないことがあり、メインAdaptationSetのみへの後退は、Preselectionにおいて宣言されるコンポーネントのサブセットに戻って切り替えつつ、低い程度のユーザエクスペリエンスを与えることになる。
selectionType属性についての代替の実施形態は、どのコンテンツコンポーネントがメインメディアコンポーネント(すなわち、AdaptationSet又はContentComponent)に対応するかを明示的に示すためにそれを用いることである。例えば、以下の宣言:
<Preselection id= “P1” preselectionComponents="3 1 2 4" selectionType="main 3">
は、識別子1、2又は4のリストにおける部分的AdaptationSetの間の組合せが何であれ、3に等しい@id値を有するメディアコンポーネントが再生されるべきことの、コンテンツ作者による表示である。
これによって、クライアント装置は、1つのメディアコンテンツコンポーネントが所与の時間に選択されたかのように適応ロジックを使用し続けることができる。実際、コンテンツコンポーネント選択要素において宣言される各Representation要素は、例えば幅及び高さについて参照Representationの最大値、又は例えば帯域幅要素について参照Representationの合計に対応する属性を宣言する。コンテンツコンポーネント選択要素の各Representationは、品質の観点で等価となることがコンテンツ作成者によって知られるRepresentationを実際に参照する(すなわち、共に表示される場合に、品質の差が各コンテンツコンポーネント間、例えば、ROIとその周辺タイルとの間においてユーザによって視認されることはない)。
複合体又は組合せについての他のRepresentationを参照するために、コンテンツ作成者は、特にメインコンテンツコンポーネント(クライアントが組合せ全体をサポートすることができない場合にはデフォルトによって再生するもの)について、dependencyId属性を使用することができる。他の参照Representationについて、コンテンツ作成者は、associationType属性について、DASHによって定義されるようなassociatedRepresentationを示す「aggregate」値又は任意の予約若しくは登録値を有するassociationIdを介してそれらを宣言することができ、その値がメディア複合体、メディアエクスペリエンス又はバンドルの1つのコンポーネントとしてassociationId属性に存在するidを有するRepresentationを含む。
コンテンツコンポーネント選択要素は、マニフェストにおける開始点、すなわち、ストリーミング及びレンダリングについて選択可能なメディアコンポーネントのセットとして見ることができる。コンテンツコンポーネント選択要素内の1つのメディアコンポーネントの宣言は、このメディアコンポーネントをこれ以上選択可能としないようにすることができる。そのような場合、このメディアコンポーネントは、単独では選択及びレンダリングされることは意図されない。これは、幾つかの選択可能なメディアコンポーネントはそれに依存するので、又はそれがPreselection若しくは任意のコンテンツコンポーネント選択要素において参照されるので、ストリーミングマニフェストにしか存在しないことを意味する。
発明の実施形態では、単独で選択及びレンダリング可能なメディアコンポーネントは、他のコンポーネントの計算において使用され、又はバンドル、事前選択物若しくはコンテンツコンポーネント選択において参照されるので、ただ記述されるメディアコンポーネントからそれを明示的に区別することが提案される。これによって、ストリーミングするメディアプレイヤは、ユーザ又はコンテンツ選択を担うアプリケーションに公開するメディアコンポーネントを容易にフィルタリングすることを可能とする。この区別は、例えば、AdaptationSet、ContentComponent、Representation又はSub-Representationにおける属性としてメディアコンポーネントに関連付けられる追加のパラメータによって行われる。一例として、この属性を「playbackType」ということもできる。
それは、例えばタイルトラックで使用され得る。タイルトラックを記述するAdaptationSetがコンテンツコンポーネント選択の一部(例えば、Preselection)である場合、それらは、タイルトラックが単独で再生されるように選択可能でないことを示す「disable」に設定されたこの「playbackType」属性を有し得る。この場合のコンテンツコンポーネント選択(例えば、Preselection)は、メディア事前選択物の選択可能な部分(開始点ということもある)を提供する。全てのトラックをPreselectionにおいて参照されるAdaptationSetにおいてRepresentationとして公開されるようにし、表示のために選択されないように記述されるようにすることによって、マニフェストが同じコーデックタイプを有するトラックを記述するAdaptationSetを含む場合に不明確さが回避可能となる。
例えば、これにより、hvc2又はhev2タイルベーストラックは、hvc2若しくはhev2複合トラック又はそれ自体が(デフォルト値である)playbackType=「always」として宣言され得る古典的なHEVCトラックから区別可能となる。
<AdaptationSet id=”10” playbackType=”disable” … > … </AdaptationSet>
<Preselection preselectionComponents=”… 10 …” id=”P1”/>.
マニフェストにおいて(クライアントによってパースされる最初のメディアコンポーネントを意味する)開始点となるメディアコンポーネントは、この「playbackType」属性における値「always」でマークされ得る。この「always」値は「playbackType」に対するデフォルト値であり、すなわち、これがない場合、メディアコンポーネントは単独で選択可能であるものとされ、レンダリングされる。「alone」は、対応する現在のRepresentationにこの現在のRepresentationが従属するRepresentationを加えたものを意味する。この新たなパラメータに対する名前及び可能な値が表示可能であり、例として提供される。他の可能な値は、ユーザ又はアプリケーションが動画のプレビュー若しくは数秒のオーディオクリップ又はその他メディア要素の短いプレゼンテーションを必要とする場合にメディアコンポーネントが存在し得ることを示す「preview」である。ここで提供される例は、網羅的ではない。この属性でマークされたAdaptationSetは、相互作用的に選択可能なもの/DASHクライアントによるプレゼンテーションの開始点とみなされるべきではない。
メディアコンテンツコンポーネントがSubRepresentationによって記述される場合、SubRepresentationもコンテンツコンポーネント選択要素となり、このSubRepresentationについてのコンポーネントのリストはこのSubRepresentationの親のRepresentationによって参照されるRepresentationに含まれる他のSubRepresentationからのコンポーネントを参照する。
コンポーネント選択ディスクリプタを含むシンタックス要素(Preselection、AdaptationSet又はRepresentation)は代替物の順序付けられたリストを提供するので、品質等価性ディスクリプタ及び品質適応規則ディスクリプタは、これらの実施形態では暗示的なものとなり得る。上記説明に加えて、メディアプレゼンテーション記述は、他の情報性ディスクリプタ:複合目的(又は「合成目的」若しくは「事前選択目的」又は「バンドル目的」)ディスクリプタ及びデコーダ要件ディスクリプタも含み得る。複合目的ディスクリプタは、コンテンツコンポーネント選択ディスクリプタに関連付けられたディスクリプタである。これは、コンテンツコンポーネント選択ディスクリプタ又はコンテンツコンポーネント選択ディスクリプタの子としてのEssentialProperty若しくはSupplementalProperty要素の属性となり得る。以下のMPDスニペットは、コンテンツコンポーネント選択ディスクリプタがPreselection要素を用いる場合のそのようなディスクリプタの使用を示す:
…<Preselection … purpose=”HEVC tiling”>
</Preselection>….
目的記述は、例えば図1bによる様々な組合せを記述する意図された組合せについての追加情報を与えることができる。例えば、複合体が独立のビデオを示唆する場合、クリッピングがストリーム修正なしに抽出タイルのサブセットにおいて行われる場合、幾つかの独立のビデオが単一のビデオビットストリームにアセンブリされる場合である。1つの複合体又は事前選択物しかない場合、目的ディスクリプタ及びデコーダ要件ディスクリプタは、(静的な場合)MPD要素レベルにおいて、又は時間とともに変化する場合にはPeriod要素レベルで宣言可能である。
この「複合目的」の課題は、コンテンツ作者がストリーミングについて準備した複合体、組合せ又は事前選択物の種類をクライアント装置に通知することである。これは、ユーザインターフェースを調整し、何らかのナビゲーションメニューを提案又は活性化若しくは不活性化するのにクライアント装置によって使用可能である。例えば、上記の「HEVCタイル化」目的であれば、クライアント装置は、同時に再生するタイルのセットをユーザが容易に選択することができるようにタイルのグリッドをユーザに表示することができる。「ROIに周辺タイルを加えたもの」又は「360度メインビューに他のビューを加えたもの」のような他の値も可能である。この「合成目的」又は「複合目的」の値は、ストリングタイプのものとなり得る。それは、レジストリにおいて事前定義値のリストから採られた値であってもよい。後者の選択肢は、クライアント装置からの更なる解釈を促進する。なお、Label要素も、ストリーミングマニフェストにおいて「合成目的」を表現するのに使用可能である。
他の選択的ディスクリプタは、「デコーダ要件」ディスクリプタである。実際に、コンテンツ作成者が高度な組合せを提供する場合、クライアント装置は同時に複数のデコーダを用いることが必要となる。したがって、デコーダ要件ディスクリプタは、コンテンツコンポーネント選択ディスクリプタの下でMPDにおいて使用可能となる。前述のものについて、それは、コンテンツコンポーネント選択ディスクリプタ又はそのscheme_id_uriのDASHディスクリプタにおける特定の属性又はパラメータとなり得る。例えば:
<Preselection …> …
<EssentialProperty scheme_id_uri=”urn:mpeg:decoder-reqs” value=”single”/>

</Preselection>
複合体、組合せ又は事前選択物が所与のメディアタイプ(例えば、図3におけるビデオデコーダ343、又はオーディオデコーダ)のデコーダの2以上のインスタンスを必要とする場合、このディスクリプタの値は「複数」に設定され得る。それはまた、何らかの後段フィルタリング(例えば、value=「post-filter」)を実施するクライアント装置によって実行される復号ステップの直後に続く後段処理動作を示すのにも使用可能である。値は合成可能である(例えば、単一のデコーダが後段処理ステップで必要となることを示すvalue=「post-filter&single」)。デコーダ要件ディスクリプタはまた、例えばデブロッキングフィルタが利用可能である場合にクライアント側で後段フィルタリング動作を推奨するのにも使用可能である。後段フィルタリング動作は、ISO BMFFファイルに含まれる後段デコーダ情報においてシグナリングされてもよいし、メタデータストリームによって提供されてもよい。それは、コンテンツコンポーネント選択要素に関連付けられる。
Preselection要素が単一のデコーダインスタンスに提供されるメディアコンポーネントのセットとして定義される場合、初期化セグメントについての表示がクライアントにとって有用となり得る。実際、Preselectionは、デコーダ特定情報を提供するものとして「メイン」AdaptationSetを定義する。これは、メインAdaptationSetが(DASH専門用語における)InitializationSegmentを含むことを意味する。従来技術では、PartialAdaptationSetがこの初期化セグメントを使用するのか、それら自体の初期化セグメントを有し得るのかが明確でない。この情報は、メディアプレイヤにとって、それらのデコーダを正しくセットアップするのに有用である。例えば、PreselectionがメインAdaptationSetとしてタイルベーストラックを有する「hvt1」タイルトラックのビデオトラックのセットを宣言する場合、1つの初期化セグメントしか宣言されない(タイルベーストラックの1つ)。逆において、マルチストリームオーディオの3Dオーディオに対するPreselectionを考慮する場合、例えば各ストリームに対して1つの幾つかの初期化セグメントがあり得る。これらは、例えば、1以上のオーディオデコーダに各オーディオストリームを提供するオーディオスペーシャライザによってハンドリングされ得る。タイル化及び単一のビデオインスタンスについて、ISOBMFFパーサ及びビデオデコーダは、準拠する(例えば、HEVCの1以上のプロファイル、ティア、レベルに準拠する)ビデオビットストリームをそれぞれ構成してこのビットストリームを復号することを担う。
それは、各タイルが独立のHEVCビットストリームに対応する「hvc1」トラック(「hvt1」ではなく)を用いるタイルトラックについての場合となり得る。発明の実施形態では、これは、コンテンツコンポーネント選択要素において(例えば、Preselection要素又はディスクリプタにおいて)列挙されるメディアコンポーネントの合成に規制が存在するかについてのデコーダ特有情報に応じて、クライアントが(マニフェストをパーシングする場合に)迅速に識別することを可能とする特定のシグナリングにおいて提案される。このシグナリングは、例えば、Boolean値を採り「singleInit」といわれる新たな属性となり得る。この属性は、以下に示すPreselection要素又はPreselectionディスクリプタにおいて存在し得る:
下記2行は、Preselectionに存在する初期化セグメント数についての情報を提供する追加のパラメータでPreselection要素を示す:
<Preselection id=”P1” singleInit=”true” preselectionComponents=”(list of components)” ...> … </Preselection>
<Preselection id=”P2” singleInit=”false” preselectionComponents=”(list of components)” …> … </Preselection>
以下の例示の行は、Preselectionに存在する初期化セグメント数についての情報を提供する追加のパラメータを有するPreselectionディスクリプタを(ここではSupplementalPropertyとして)示す:
<SupplementalProperty schemeIdUri=” urn:mpeg:dash:preselection:2016” singleInit=”true” value=” (list of components)”.../>
<SupplementalProperty schemeIdUri=” urn:mpeg:dash:preselection:2016” singleInit=”false” value=” (list of components)”.../>
なお、DASH第3版(w16221、2016年6月)におけるPreselectionディスクリプタの定義において、Descriptorの値は、カンマによって分離される2つのフィールド:Preselectionのタグ及びこのPreselectionリストの含まれるコンテンツコンポーネントのidを処理順に空白で分離されたリストとして与える。最初のidはメインメディアコンポーネントを定義する。前述の例はまた、値属性のそのようなセマンティクスで作用する。なお、この「singleInit」追加パラメータは、Preselection、その宣言が何であれ:SupplementalProperty、EssentialProperty又はMPDスキーマにおいて定義されるDescriptorTypeから受け継ぐ特定の要素に当てはまる。
この新たな属性は、真にセットされると、同じInitializationSegmentを共有するPreselectionのメディアコンポーネントのみが合成され得ることを示す。これは、Preselection内で宣言されたメディアコンポーネントの組合せにおける規制を導入する。そして、クライアントは、1つのリクエストにおいて、そのデコーダをセットアップする情報全体を得ることができることを知る。この新たな属性は、偽にセットされると、1以上の初期化セグメントがあるが、Preselection内で宣言されるメディアコンポーネントの可能な組合せが「selectionType」パラメータによって与えられることを示す。存在しない場合、Preselectionに適用されるデフォルト値は「偽」である。これは、クライアントがこの新たなパラメータを解釈することなく後方互換性を担保する。
例えば、テーブル1a及び1bにおける例のように、タイル化ビデオについて異なる解像度で使用される場合、解像度あたり1つのInitializationSegmentがあることになる。そして、シームレスな切替を与えるように同じ解像度におけるタイルのみが合成され得る。これは、他の解像度への切替が他の解像度に対応する初期化セグメントでデコーダを再初期化することを要し得ることを意味する。なお、DASH MPDはXMLスキーマに依拠するので、Preselection要素又はPreselectionディスクリプタの下で任意のノード(例えば、要素又は属性)が、この単一初期化情報を搬送するのに使用可能となる。さらに、それは、複数のメディアコンポーネントを記述する任意のMPDシンタックス要素において有用となり得る。
テーブル1aは、2つの異なる解像度レベルで2つのタイルトラックを収集するsingleInit=「真」の(要素としての)1つのPreselectionの例を示す。
テーブル1bは、各々がPreselectionにある2つの異なる解像度レベルにおいて2つのタイルトラックの同じセットの例を示す(読み易さのために全てのシンタックス要素が現れるわけではない)。
テーブル1a:
<MPD ….>
<Period...>
<AdaptationSet id=”10” …>
<Representation id=”101” codecs=’hvc2…” width=”1920” height=”1080” … >…</Representation>
<Representation id=”102” codecs=’hvc2…” width=”960” height=”540” … >…</Representation>
</AdaptationSet >
<AdaptationSet id=”11” bitstreamSwitching = “false” …>
<Representation id=”111” dependencyId=”101” codecs=’hvt1…” width=”1920” height=”1080” … >…</Representation>
<Representation id=”112” dependencyId=”102” codecs=’hvt1…” width=”960” height=”540” … >…</Representation>
</AdaptationSet >
<AdaptationSet id=”12” bitstreamSwitching = “false” …>
<Representation id=”121” dependencyId=”101” codecs=’hvt1…” width=”1920” height=”1080” … >…</Representation>
<Representation id=”122” dependencyId=”102” codecs=’hvt1…” width=”960” height=”540” … >…</Representation>
</AdaptationSet >
<Preselection id=”P1” preselectionComponents=”10 11 12” singleInit=”true” />
</Period>
</MPD>
テーブル1aにおけるMPDの例は、「singleInit」パラメータでの拡張されたPreselection要素を記述する。「P1」で識別されるPreselectionは、(10、11及び12に等しいidを有する)3個のAdaptationSetを事前選択コンポーネントとして宣言する。これらのAdaptationSetの各々は、異なる解像度でHEVCトラックについて2つのRepresentationを含む。例における最初のAdaptationSetはHEVCタイルベーストラックを記述し、残りの2つはHEVCタイルトラックを記述する。ここでは再構成のために2つのサブセット:一方でRepresentation101、111及び121に対するセグメントの連結、他方でRepresentation102、112及び122に対するセグメントの連結があるので、「singleInit」=真は、Preselection内の全ての組合せが許可されるわけではないことを示す。同じ初期化セグメントを共有するRepresentationのみが、「selectionType」属性が値「any」を示す場合であっても、接合レンダリングのために合成可能となる。「singleInit」は、Preselection内のRepresentationの組合せはスムーズな表示及びシームレスな切替を保証するのに注意深く選択されなければならないというプレーヤに対する警告である。またさらに、MPDの作者は、切替がRepresentationにわたって常にシームレスでないこともあること、すなわち、切替はデコーダの再初期化を必要とし得ることをAdaptationSetにおける例えばbitstreamSwitching属性で示すことができる。
テーブル1b:
<MPD ….>
<Period...>
<AdaptationSet id=”10” …>
<Representation id=”100” codecs=’hvc2…” width=”1920” height=”1080” … >…</Representation>
</AdaptationSet >
<AdaptationSet id=”20” …>
<Representation id=”200” codecs=’hvc2…” width=”960” height=”540” … >…</Representation>
</AdaptationSet >
<AdaptationSet id=”11” …>
<Representation id=”110” dependencyId=”100” codecs=’hvt1…” width=”1920” height=”1080” … >…</Representation>
</AdaptationSet>
<AdaptationSet id=”21” …>
<Representation id=”210” dependencyId=”200” codecs=’hvt1…” width=”960” height=”540” … >…</Representation>
</AdaptationSet >

<AdaptationSet id=”12” …>
<Representation id=”120” dependencyId=”100” codecs=’hvt1…” width=”1920” height=”1080” … >…</Representation>
</AdaptationSet >
<AdaptationSet id=”22” …>
<Representation id=”220” dependencyId=”200” codecs=’hvt1…” width=”960” height=”540” … >…</Representation>
</AdaptationSet >
<Preselection id=”P1” preselectionComponents=”10 11 12” singleInit=”false” />
<Preselection id=”P2” preselectionComponents=”20 21 22” />
</Period>
</MPD>
テーブル1bのMPDの例は、異なる解像度レベルにおける2つのHEVCタイルトラックの記述に対する代替例を提供する。この例では、各解像度レベルは、ストリーミングするクライアントにPreselectionとして利用可能である。Preselection「P2」がSD解像度において事前選択物を与える一方で、Preselection「P1」はHD解像度についての事前選択物を与える。作者は各AdaptationSet10、11、12及び20、21、22におけるRepresentation間のシームレスな切替を保証するので、Preselection要素に対する「singleInit」値は、値「偽」に設定され得る。これにより、Preselection内のRepresentationの任意の合成が可能となる。Preselection「P2」は、「偽」に等しいデフォルト値を想定するsingleInitに対していずれの値も宣言しない。概要として、パラメータ「singleInit」は、値「真」に設定されると、同じ初期化セグメントを共有するRepresentationのみが、ユースケース:ビデオストリームにおける幾つかの解像度又は異なる品質であるがシームレスに切替可能でない、に関わらず合成され得ることを示す。
テーブル2aは、DASH MPDにおいて記述されるHEVCタイルトラックの例を提供する。より正確には、それは、Preselectionディスクリプタにおいて公開される品質等価性ディスクリプタを有するタイルトラックの例を提供する。
テーブル2a:
<MPD ….>
<Period...>
<AdaptationSet id=”1” …>
<Representation id =”1.1” codecs=”hev2…” bandwidth=”312” …>
// Segment URLs for the tile base track…
</Representation>
</AdaptationSet>
<AdaptationSet id=”2” …>
<Representation codecs=”hvt1…” dependencyId=”1.1” qualityRanking=”1”…>

</Representation>
<Representation codecs=”hvt1…” dependencyId=”1.1” qualityRanking=”2”…>

</AdaptationSet>
// other AdaptationSets for the 3 other tile tracks
<AdaptationSet id=”3” …> … </AdaptationSet >
<AdaptationSet id=”4” …> … </AdaptationSet >
<AdaptationSet id=”5” …> … </AdaptationSet>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016 " id=”P1” value="1, 2, 3, 4, 5” singleInit=”true”/>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”P:P1”>
</Period>
</MPD>
この例では、マニフェストは、タイルベーストラックに対して1つのAdaptationSetを記述する(各々「hev2」トラックにおいて、id=「1」がその子Representationにおいて1以上の代替符号化バージョンを与える)。マニフェストはまた、タイルトラック(4個のタイル)「hvt1」トラックあたり1つのAdaptationSetを記述する。上記例(テーブル2a)では、Preselectディスクリプタは、「id」属性におけるPreselection識別子及び識別子の空間分離リストとして「value」属性におけるPreselectionを複合するメディアコンポーネントのリスト(テーブル2aの例におけるAdaptationSet識別子のリスト)を定義する。
メインAdaptationSetは、タイルベーストラック(@id=「1」のもの)を記述するものである。PartialAdaptationSet(例ではid2~5)は、各タイルトラック「hvt1」AdaptationSetに対応する。なお、タイルトラック「hvt1」に対する各Representationは、そのタイルベーストラックに対応するRepresentationに対する「dependencyId」属性を含む。さらに、各タイルトラックの各Representationは、「qualityRanking」属性を有する。これは、hvt1タイルトラックの記述に対して2つの選択肢を許可する。第1の選択肢では、タイルベーストラック(テーブル2aのものではない)は事前選択物のコンポーネントのリストにおいては宣言されない。そして、Preselectionは、(hvt1)タイルトラックのみを宣言する。タイルベーストラックは、各タイルトラックからの従属性に起因するダウンロード及び表示について自動的に選択される(各タイルトラックはタイルベーストラックに対する「tbas」トラック基準を有する)。そして、Preselectionの「selectionType」属性についての値は「any」となる。第2の選択肢(テーブル2aのもの)は、事前選択物のコンポーネントのリストにベーストラックを含めることである。そして、タイルベーストラックに対応するAdaptationSetは、事前選択物のコンポーネントのリストにまず列挙される。タイルトラックに対応する各Representationは、(「tbas」トラック基準タイプに起因して)タイルベーストラックに対する対応のRepresentationに対する従属性をそれでも宣言する。そして、Preselectionの「selectionType」属性に対する値は、「main」に設定される。
テーブル2aの例では、選択的に、Preselectionディスクリプタはまた、DASHプレーヤが、同じ初期化セグメント、タイルベーストラックに対するものを共有するコンテンツコンポーネント(「selectionType」パラメータの値に応じて1つ、多数又は全部)のRepresentationを合成のみをすべきであることを示す「singleInit」属性を含み、ここでは真に設定される。なお、Representationの「dependencyId」属性に基づくDASH従属性メカニズムは、初期化セグメント及びメディアセグメントを識別及び連結して選択Representationの@mimeTypeにおいて指定されるようなメディアフォーマットに準拠するセグメント又はサブセグメントシーケンスを取得することを可能とする。品質等価性は、ここでは「P1」識別子を有するPreselectionを参照するMPDにも存在する。なお、Preselection識別子を可能とする任意の属性(「tag」・・・)又は値(例えば、「value」属性における最初のパラメータ)は、Preselectionを参照するのに使用されてもよい。品質等価性は、Preselectionに列挙されるメディアコンポーネントのRepresentationの間の品質等価性が当てはまることを示す。例えば、あるAdaptationSetから他のものへ、品質の観点で等価性Representationが識別可能である。ここでは、品質等価性は、これらのRepresentationの間の最大品質差についての推奨を与えない。図示するように、上記例では、品質等価性は、Preselection要素に当てはまる。このように、それは、Preselection要素の子として定義可能であり、その後コンテンツコンポーネント選択についてのパラメータはもはや不要となる。このように、それは、品質等価性ディスクリプタにおける選択的パラメータとみなされる。上記例はタイルベーストラック及びタイルトラックを記述するAdaptationSetを使用するが、任意のメディアトラック(例えば、オーディオ又はビデオ)にも同様に当てはまる。
例えば、
テーブル2b:
<Preselection id=”P1” preselectionComponents=”(list of media components) …. >
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” >
</Preselection>
例示のテーブル2bでは、単なるディスクリプタの存在が、Preselectionの全てのコンポーネント(品質等価性ディスクリプタの親の要素)について、品質等価性が当てはまることを示す。全ての品質等価性パラメータに対するデフォルト値でのこの特定の場合では、それは、親のPreselection要素の全てのコンテンツコンポーネントが、AdaptationSetにわたって比較され得るqualityRankingを有することを暗示的に意味する。さらに、推奨品質差は0であり、これはデフォルト値に対応する。
テーブル2c:
<Preselection id=”P1” preselectionComponents=”(list of media components) …. >
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”2”>
</Preselection>
例示のテーブル2cでは、品質等価性ディスクリプタの存在は、親のPreselection要素の全てのコンポーネントについて、2に等しい最大品質差で品質等価性が当てはまることを示す。ディスクリプタはPreselection要素の子として宣言されるので、該当するコンポーネントのリストは暗示的であり、その後にそれはPreselectionの全てのコンテンツコンポーネントに当てはまる。
テーブル2d:
<Preselection id=”P1” preselectionComponents=”11, 12, 13, 14” ... >
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”AS:13,14 2”>
</Preselection>
上記例(テーブル2d)では、品質等価性ディスクリプタの存在は、Preselectionのコンポーネントのサブセット(13及び14に等しい「id」のAdaptationSet)について、2に等しい最大品質差で品質等価性が当てはまることを示す。
テーブル2e:
<Preselection id=”P1” preselectionComponents=”11, 12, 13, 14” ... >
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”AS:13,14”>
</Preselection>
上記例(テーブル2e)では、品質等価性ディスクリプタの存在は、Preselectionのコンポーネントのサブセット(13及び14に等しい「id」のAdaptationSet)について、(デフォルト値である)0に等しい最大品質差で品質等価性が当てはまることを示す。
テーブル2f:
<Preselection id=”P1” preselectionComponents=”11, 12, 13, 14” ... >
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”*”>
</Preselection>
上記例(テーブル2f)では、品質等価性ディスクリプタの存在は、Preselectionの全てのコンポーネントについて、(デフォルト値である)0に等しいデフォルト最大品質差で品質等価性が当てはまることを示す。
テーブル2g:
<Preselection id=”P1” preselectionComponents=”11, 12, 13, 14” ... >
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”* 1”>
</Preselection>
上記例(テーブル2g)では、品質等価性ディスクリプタの存在は、Preselectionの全てのコンポーネントについて、1に等しいデフォルト最大品質差で品質等価性が当てはまることを示す。なお、品質等価性ディスクリプタについての上記宣言は、以下のものと同等である:
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”1”>
Preselection要素及びディスクリプタはスキーマ視点から拡張可能であるので、品質等価性の同じ使用は新たな要素又は属性で拡張されるPreselection要素又はディスクリプタに当てはまる。
品質等価性ディスクリプタは、Preselectionディスクリプタに同様に当てはまる。
テーブル3a:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016” value=”P1 1 2 3”>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”P:P1”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>

</Period> …
</MPD>
テーブル3aの例は、0(デフォルト値)に等しい最大品質差で「P1」によって識別されるPreselectionディスクリプタにおいて宣言される全てのコンテンツコンポーネントに品質等価性ディスクリプタが当てはまることを示す。
テーブル3b:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016” value=”P1 1 2 3”>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”AS:1 2”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>

</Period> …
</MPD>
テーブル3bの例は、0(デフォルト値)に等しい最大品質差で「P1」によって識別されるPreselectionディスクリプタにおいて宣言されるコンテンツコンポーネントのサブセットに品質等価性ディスクリプタが当てはまることを示す。
テーブル3c:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016” value=”P1 1 2 3”>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”P:P1 2”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>

</Period> …
</MPD>
テーブル3cの例は、2に等しい最大品質差で「P1」によって識別されるPreselectionディスクリプタにおいて宣言される全てのコンテンツコンポーネントに品質等価性ディスクリプタが当てはまることを示す。
テーブル3d:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016” value=”P1 1 2 3”>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”AS:1,2 1 ”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>

</Period> …
</MPD>
テーブル3dの例は、1に等しい最大品質差で「P1」(ここでは、1及び2に等しいidのAdaptationSet)によって識別されるPreselectionディスクリプタにおいて宣言されるコンテンツコンポーネントのサブセットに品質等価性ディスクリプタが当てはまることを示す。
テーブル3e:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016” value=”P1 1 2”>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016” value=”P2 1 3”>

<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”P: P1,P2”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>

</Period> …
</MPD>
テーブル3eの例は、「P1」及び「P2」によって識別される両Preselectionディスクリプタの全てのコンテンツコンポーネントに品質等価性ディスクリプタが当てはまることを示す。最大品質差は0(デフォルト値)である。
テーブル3f:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016” value=”P1 1 3”>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:preselection:2016” value=”P2 2 4”>

<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”P: P1”>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”P: P2 1”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>
<AdaptationSet id=”4”… > … </AdaptationSet>

</Period> …
</MPD>
テーブル3fの例は、0に等しい最大品質差で「P1」によって識別されるPreselectionディスクリプタに第1の品質等価性ディスクリプタが当てはまることを示す。
第2の品質等価性ディスクリプタは、1に等しい最大品質差で「P2」によって識別されるPreselectionディスクリプタに当てはまる。
Preselection要素がMPDにおいて宣言されない場合、品質等価性ディスクリプタは、存在する場合には、その最初のパラメータを介して幾つかのAdaptationSetを直接参照することができる。第2のパラメータは、最大品質差を示し、又はデフォルトにより、最大品質差値が0に等しいことを示すことができる。以下のテーブルは、使用の幾つかの例を与える。
テーブル4a:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” >
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>
<AdaptationSet id=”4”… > … </AdaptationSet>
</Period> …
</MPD>
テーブル4aの例は、0に等しい最大品質差で所与のPeriodについて定義された全てのコンテンツコンポーネント(ここではid1~4のAdaptationSet)に品質等価性ディスクリプタが当てはまることを示す。
テーブル4b:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”3”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>
<AdaptationSet id=”4”… > … </AdaptationSet>
</Period> …
</MPD>
テーブル4bの例は、3に等しい最大品質差で所与のPeriodについて定義された全てのコンテンツコンポーネント(ここではid1~4のAdaptationSet)に品質等価性ディスクリプタが当てはまることを示す。最大品質差は明示的であるが、品質等価性によって該当するコンテンツコンポーネントのリストは暗示的である。上記の表記は、以下のものと同様である:
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”* 3”>
テーブル4c:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”AS: 1,2”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>
<AdaptationSet id=”4”… > … </AdaptationSet>
</Period> …
</MPD>
テーブル4cの例は、0(デフォルト値)に等しい最大品質差で所与のPeriodについて定義されたコンテンツコンポーネントのサブセット(ここではid1及び2のAdaptationSet)に品質等価性ディスクリプタが当てはまることを示す。最大品質差は暗示的であるが、品質等価性によって該当するコンテンツコンポーネントのリストは明示的である。
テーブル4d:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”AS: 1,2 1”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>
<AdaptationSet id=”4”… > … </AdaptationSet>
</Period> …
</MPD>
テーブル4dの例は、1(明示的値)に等しい最大品質差で所与のPeriodについて定義されたコンテンツコンポーネントのサブセット(ここではid1及び2のAdaptationSet)に品質等価性ディスクリプタが当てはまることを示す。
テーブル4e:
<MPD…> …
<Period …>
<SupplementalProperty schemeIdUri="urn:mpeg:dash:quality-equivalence” value=”AS: 1,2 1”>
<AdaptationSet id=”1”… > … </AdaptationSet>
<AdaptationSet id=”2”… > … </AdaptationSet>
<AdaptationSet id=”3”… > … </AdaptationSet>
<AdaptationSet id=”4”… > … </AdaptationSet>
</Period> …
</MPD>
テーブル4eの例は、Period要素において定義された全てのAdaptationSetのサブセットに2つの品質等価性ディスクリプタが各々当てはまることを示す。第1のものは1に等しい最大品質差値を推奨する一方で、第2のものは2に等しい最大品質差値を推奨する。
上記のようにPeriod要素が定義される場合、品質等価性ディスクリプタは、MPDの各Periodにおいて定義されるコンテンツコンポーネント(Preselection要素、Preselectionディスクリプタ、AdaptationSet要素又はContentComponent要素)に同様に当てはまる。
なお、「true」に等しい「singleInit」パラメータを宣言するPreselection要素又はディスクリプタを品質等価性ディスクリプタが参照する場合、Representationの可能な組合せは初期化セグメントにおける制約、そしてqualityRankingにおける制約によって制限される。
品質等価性がPeriodレベルで宣言される場合、及びこの品質等価性ディスクリプタがいずれのコンテンツコンポーネントも示さない場合には、品質等価性は、品質等価性ディスクリプタの親の要素内で宣言される全てのメディアコンポーネントに当てはまる。これは、複数のコンテンツコンポーネント選択要素、例えばPreselection要素又はディスクリプタがこの親要素内に存在する場合、品質等価性がPreselectionの全てのメディアコンポーネントに当てはまることを意味する。これは、任意の組合せが許可されることを意味するものではなく、これは各Preselectionのコンポーネントによって、最終的には「singleInit」パラメータで示される。ストリーミングマニフェストにおいて所与のレベルで宣言されるPreselectionのリストにおいて1つのPreselectionにしか品質等価性が当てはまらない場合、品質等価性ディスクリプタは、品質等価性によって影響を受けるメディアコンポーネントのリストをコンテンツコンポーネント選択パラメータにおいて示すべきである。
図6a~6dからなる図6は、品質規則ディスクリプタを用いる場合及び品質等価性ディスクリプタを用いる場合の「content creator」実施形態によるマニフェストの例を示す。
図6aは、タイルベースのストリーミングに向けられる。図1に示すビデオ構成を入力とすると、図6aは、601で示す1つのタイル記述で1つのストリーミングマニフェスト600の例を与える(9個のタイルの間で、簡明化及び明瞭化のために、他の8個のタイルは同様の態様で記載されることになる)。このストリーミングマニフェストは、特定のAdaptationSet要素(「virtual」属性及び「purpose」属性)の使用に基づいてコンテンツコンポーネント選択要素602を宣言する。SRDディスクリプタ603は、仮想AdaptationSet602が、結果として得られる3×3のビデオにおいて9個のタイルのアセンブリにあることを示す。
第2のディスクリプタ604は、複合体が複数のデコーダ、おそらくはタイル毎に1つのデコーダを必要とすることをここでは示す「decoder requirement」ディスクリプタである。代替の実施形態では、「multiple」値は、必要な同時デコーダインスタンス数、例えば、value=「multiple=9」を示す「number」値を予想する。
第1のRepresentation605は、602において記述される複合体に関与する全てのRepresentationに対する品質等価性を明示的に記述するマニフェストにおいて宣言される。この品質等価性は、ここでは例えば、複合体602によって該当するAdaptationSetにおける全てのRepresentationのリストとしてassociationId属性において与えられる。このリストは、(ここでは図1の「HQ」最高品質レベルに対応する)同じ品質レベルの全てのRepresentationを含む。dependencyId属性(例では5.1)において述べたタイルRepresentationは、複合体602のメインコンポーネントとしてコンテンツ作成者が記述するタイルである。これは、事前選択又は合成記述をサポートしない又は一時に9個のタイルを復号できないクライアント装置によって再生され得るものとなる。
以下のRepresentationは、クライアント装置がストリーミングに動的に適応する必要がある場合の事前選択物、組合せ又は複合体602についての代替例を記述する。デフォルトにより、コンテンツコンポーネント選択要素内のRepresentationの宣言の順序が最高品質から最低品質に向かうものとする。これは、(前述の実施形態におけるような品質等価性ディスクリプタによって過負荷とされるのではなく、その元のセマンティクスで)これらのRepresentationにおいてqualityRanking属性を用いることによって明示的なものとなり得る。
例えば、(id=「C.2」の)Representation606は、結果として得られる複合ビデオに対してより低い全体品質で、複合体の代替バージョンをクライアント装置に示す。この代替は、それでも最高品質における中央タイル(dependentiId属性におけるRepresentation「5.1」)を検討するが、周辺タイルに対する品質を低下させ、全ては606における「MQ」Representationから選択される。
最後のRepresentation607は、帯域幅が以前のRepresentationの1つを使用できない場合の他の代替例を記述する。この1つは、中央タイルに対する品質を「HQ」から「MQ」に低減させ(dependentiId属性におけるRepresentation5.2)、特定のパターンの周辺タイルに対する品質も低減させる。同じ行のタイルが中品質(associationIdにおけるRepresentation4.2)で保護されるが、残りのタイル(上行及び下行)が最低品質に低減される。これはコンテンツ作成者によって選択される品質規則を明示的に示し、以前の実施形態において説明したような品質規則ディスクリプタにおいて表現される品質劣化パターンに対する代替例となる。
図6bは、コンテンツコンポーネント選択要素がPreselection要素の拡張を使用する代替実施形態である。それは、要件において、例えば属性「preselectionComponent」において、合成又は事前選択に関与するコンテンツコンポーネント又はAdaptationSetのリストを宣言する。この例では、これは、主に各AdaptationSetにおいて図1からのタイルを宣言することにある。これは、コンテンツコンポーネントの固有識別子又は「id」属性若しくは「tag」属性のようなAdaptationSet又は識別目的のために予約された他の任意のシンタックス要素を用いることによってなされ得る。
この事前選択要素は、Presentationが9個のタイルを1つの大きなビデオアセンブリするピクチャとなることを示すSRDディスクリプタ623を含む。第2のディスクリプタであるデコーダ要件ディスクリプタ624は、Preselectionから得られる合成ビデオが単一のデコーダで復号及び表示可能であることを示すが、まずビットストリーム再構成(デコーダ要件ディスクリプタの値属性における第2のパラメータのオブジェクト)を必要とする。このビットストリーム再構成は、事前選択に関与する各ビデオコンテンツコンポーネントの(すなわち、各タイルについて)連結されたビットストリームが、ここでは9個のタイルを有する単一のビットストリームにトランスコードされなければならないことを意味する。他のディスクリプタ625は、事前選択の目的が「タイル複合」であることを示す。これは、ビットストリーム再構成処理についての有用な表示となる。クライアントは、それが実際にHEVCビットストリームであるべきことを意味する所与の例において、それを、コンテンツコンポーネント選択要素(ここではPreselection要素)において宣言されるコーデック属性の値及びプロファイル、ティア、レベル情報が続く「hvc2・・・」によって示されるタイプのビットストリームを再構成しなければならないと解釈することができる。
そして、図6aの例にあるように、クライアントがこれらの代替例の順序を理解することを確実にするようにここでは明示的なqualityRanking属性の代替Representationのリストが続く(なお、selectionPriority属性も使用され得る)。事前選択物又は組合せの各Representationに対する複合ビデオに対する統合帯域幅を示す帯域幅属性は、その動的適応のためにクライアントによっても使用され得る。
代替実施形態では、目的ディスクリプタ625は、Preselection要素の新たな属性又は要素として実施され得る。同様に、デコーダ要件ディスクリプタは、Preselection要素の新たな属性又は要素として実施され得る。図6a及び6bの両場合において、「composition purpose」ディスクリプタは、コンテンツコンポーネント選択要素におけるLabel要素として代替的に宣言され得る。
図6cは、Periodの開始で表現される品質規則ディスクリプタ640及び品質等価性ディスクリプタ641を用いる場合の同じメディアプレゼンテーション(すなわち、図1の9個のタイル及び中央のものに着目した場合のそれらの組合せ)を示す。AdaptationSet642は、タイル1の記述である。MPDは、1つのそのようなAdaptationSetをタイル毎に含むことになる(簡明化及び明瞭化のために表していない)。この例では、コンテンツコンポーネント選択要素、ここではPreselection要素643は、動的適応のためのいずれのRepresentationも含まない。その代わりに、クライアント装置は、等価品質レベルを有するpreselectionComponent属性において列挙されるAdaptationSetにわたってRepresentationのセットに依拠する。そして、品質規則ディスクリプタ640に続いて、クライアント装置は、必要な場合には、承認される品質低減を計算する。この例では、品質規則ディスクリプタ640は、事前選択物においてアセンブリされるいずれのRepresentationも2より大きな品質ランク付け差を有すべきではないことを示し、したがってクライアント選択についての可能な組合せ数を減少させる。なお、図6cにおいて説明する例における品質等価性は、その値属性において、事前選択に関与するAdaptationSetのリストを提供する。ここで、それは、それらの「id」属性の値に基づく。メディアコンテンツコンポーネントのいずれのパラメータが品質等価性を示すのに使用されるのかを明確にするために、schemeIdUri属性に入る値が現実に明示的となるように定義され得る。例えば:
属性「id」が使用されていることを示す「urn:mpeg:dash:quality-equivalence-id」、又は
属性「tag」が組合せの事前選択に関与するメディアコンテンツコンポーネントを列挙するのに使用されることを示す「urn:mpeg:dash:quality-equivalence-tag」。より一般的には、事前選択物又は組合せの部分となるメディアコンテンツコンポーネントを識別するのに「xxx」シンタックス要素が使用されることを示す「urn:mpeg:dash:quality-equivalence-xxx」。
参照を明示的なものとする代替実施形態は、schemeIdUri属性における包括的な値を維持し、該当するメディアコンテンツコンポーネントを列挙するのに使用されるシンタックス要素を提供する値属性における第1のパラメータで開始させることである。例えば:
schemeIdUri=「urn:mpeg:dash:quality-equivalence」及びvalue=「id、1、2」、又は
schemeIdUri=「urn:mpeg:dash:quality-equivalence」及びvalue=「tag、AS1、AS2」は、それぞれ、id=「1」及びid=2のAdaptationSetが事前選択又は合成に関与し、tag=「AS1」及びtag=「AS2」のAdaptationSetが事前選択又は合成に関与することを示す。より一般的には、
schemeIdUri=「urn:mpeg:dash:quality-equivalence」及びvalue=「foo、foo1、foo2」が、値foo1及びfoo2を有する「foo」要素又は属性のメディアコンテンツコンポーネントが事前選択物又は組合せの一部であることを示す。
図6dは、それによって品質等価性ディスクリプタが各AdaptationSet(符号661)のRepresentation要素の新たな属性として配置される例を示す。選択的に、コンテンツコンポーネント選択要素663は、事前選択物又は組合せのための幾つかの事前定義品質レベルを列挙するシンタックス要素を含み得る。
図6dに示す例によると、Preselection要素663は、可能な品質レベルのリストの記述のために予約された新たな「レベル」属性(ここでは名前は例にすぎない)を含む。この情報は、コンテンツコンポーネント選択要素の子として、例えば、DASH descriptorType要素、通常は、それ自体のschemeIdUri特定値のSupplementalProperty要素として配置され得る。これは、メディアコンテンツコンポーネントの複合体、組合せ又は事前選択物を選択する前に何らかの適応が可能となることをクライアントが知るのに有用である。それは、動的適応が可能でない場合に、これはユーザに対する低品質のエクスペリエンスをもたらすことになり、ストリーミングするクライアントはこの情報を用いてクライアントに警告することができるためである。
品質のレベルをコンテンツコンポーネント選択要素に関連付ける代替実施形態は、該当する組合せ又は事前選択物の値、例えば図6dの例における「P1」をRepresentation661の事前選択属性の第1の値として定義するものとなり得る。Preselect属性は、preselect=「P1、HQ」又はpreselect=「P1、MQ」など書くことになる。コンテンツコンポーネント選択要素が前述の実施形態において説明したようなAdaptationSet又は拡張AdaptationSetである場合、「id」属性の値も同様に使用可能である。
入力ビデオが(各品質レベルについて)タイルベーストラックに9個のタイルトラックを加えたものに(例えば、図5におけるカプセル化ステップ509中に)カプセル化された1つのタイル化ビデオHEVCビットストリームであるタイルベースのストリーミングの場合には、DASHにおけるタイルベーストラック記述についてのMPEG DASHにおいてなされた幾つかの提案が再利用可能となる。
タイル及びビデオストリームの特定の場合では、ISO/IEC14496-15第4版で定義されるようなタイルベーストラックの記述に対応する1以上のAdaptationSetが使用可能である。これはまた、コンテンツコンポーネントディスクリプタとしてこのAdaptationSetタイルベーストラックに従属するRepresentation間の品質等価性の何らかの表示を、それがタイルの全て、1つ又はセットの再構成を可能とするので、必要とする。ここで、AdaptationSetの特定の部分は、事前選択又は合成に関与する全てのタイルトラック間でデコーダセットアップ情報を含むタイルベーストラックを共有するという事実がある。目的ディスクリプタはHEVCタイル化を示し、デコーダ要件ディスクリプタは、結果として得られる複合ビデオをビデオデコーダの単一のインスタンスしかハンドリングできないことを示す。
タイルがVR又は360度ビデオに使用される場合、所与の領域、例えば、キューブの面に投影される球状シーンの部分についてのデータを含むために、発明はまた、例えば前面のビューと他のビューの間の品質をハンドリングすることに当てはまる。より一般的には、それは、記録された3Dシーンの投影部分が1以上のタイルにおいて含まれる2D表面に投影される場合に、VRコンテンツに当てはまる。上記実施形態により、ストリーミングするクライアントは、コンテンツ作成者によって示される劣化品質パターンがあることを知る。それは、メディアを要求する場合にそれを考慮に入れる。これは、ストリーミングするクライアントにわたって一貫したエクスペリエンスについて有用となるべきである。他の実施形態は、クライアントに、以下に説明する品質適応のための彼ら自身の所有ソリューションを実施させることにあってもよい。
クライアント適応ロジック
特定の実施形態によると、クライアント装置のグラフィカルユーザインターフェースは、メディアプレゼンテーションにおける幾つかのビデオストリームを引き抜いて同じ表示ウィンドウにそれらを複合及びレンダリングするのに使用され得る。これは、例えば、再生されているビデオに長方形を描くことによってタイルのセットを選択することによって、又は自動ROI表示のための何らかの設定若しくは他の任意の選択手段を定義することによって静的に、行われ得る。
あるいは、ユーザ/クライアント装置は、タイルの特定のセットをROIであるものとして選択しなくてもよいが、全てのタイルを選択する。そのような場合、タイルの全セットは、ROIとみなされてもよく、品質適応はこれらのタイル間の品質の観点で過大な差が存在しないことを確実にするように実行されなくてはならない。その目的のため、各ビデオストリームは、品質、ビットレート、解像度などの観点で記述され、対応のデータをダウンロードする対応のURLも提供される。
これらの実施形態によると、クライアント装置は、ROIのタイルのセットの品質を重視しつつもレンダリングされるビデオ複合体の全体的な視覚的品質を最適化するように様々な適応アルゴリズムを実施する。例えば、ある実施形態では、クライアント装置は、レート割当ての問題を解決するのに適用される古典的な最適化アルゴリズムを実行する。最適化は、最大利用可能帯域幅の制約の下で各タイルについて良好な表示を選択するために実行される。したがって、課題となる最大化の関数は、全体的レンダリング品質を表し、ROIタイルにより高い優先度を与え、ビデオの異なる領域間の品質不均衡又は品質差を制御するように隣接タイル間の品質の差を犠牲にする。例えば、課題となる最大化の関数は:
Figure 0007263583000001
となり得るものであり、ここで、
ROIは、ROIに属するタイルのセットであり、
Figure 0007263583000002
は、ROIに属さないタイルのセットであり、
NBTは、タイル隣接のセットであり、それは各対が2つの隣接タイルを含むタイルの対のセットを含み、
q(t)は、所与のタイルtについての品質値を与え、この品質はそのタイルについての選択された表示に応じ、
α、β及びγは、知覚される全体品質とROI品質の間の良好なトレードオフを取得するためにオフラインで決定されるパラメータである。例えば、α=2、β=1、γ=0.5が使用され得る。
したがって、この最適化アルゴリズムの入力は:
-最大利用可能帯域幅、
-各選択されたタイル及び関連付けられた品質の各可能なRepresentationの可能な帯域幅/利用可能なビットレート、
-ユーザがより良好な品質を有したいと思うROIを覆うタイル、
-及びより近いタイルを保護するタイル幾何学
である。
所与のタイルの品質は、例えば、このタイルの表示の(又は存在する場合にはqualityRanking属性を用いて)ビットレートを最高ビットレートから最低ビットレートまで順序付け、それらをRate/Distortion曲線に合わせることによって推定される。
簡略化のために、品質はn番目のビットレートに対して1/nを設定することができる。そして、最高ビットレートは1に等しい品質を有する。あるいは、そのタイルの表示についてrをn番目のビットレート、rを最高ビットレートとして、n番目のビットレートの品質は、r/rに設定され得る。
この種の問題を組合せ最適化問題として見ることもできる。
それは、古典的な最適化アルゴリズムを用いて解決可能であり、又は準最適解が見出され得る。例えば、動的プログラミング又は専門的システム技術が使用され得る。最適化処理を簡素化するのにヒューリスティクスも使用され得る。そのような可能な最適化アルゴリズムの例として、ゼロの重みが各ROIタイルに与えられ、ROIタイルへのその最小Manhattan距離となる他の各タイルに重みが与えられる。最適化は、品質を全てのタイルに関連付けないことによって開始される(すなわち、タイルは送信されない)。次に、最大帯域幅を超えないようにしながら、ゼロの重み、そして1の重み、最高の重みまでのタイルについての最低品質が反復的に検討される。次に、最大帯域幅を超えないようにしながら、「max_d=0」で開始し、ゼロの重みから「max_d」までの重みのタイルの品質が(より良い品質が利用可能である場合に)反復的に増加される。その後「max_d」が増加される。全てのタイルが最良の品質を有しない場合、アルゴリズムは継続する。これらの値は、最遠のタイルの品質をまず低下させてから、最遠及び「farthest-1」タイルを低下させるのに使用される。この最適化アルゴリズムは、隣接タイル間の最大品質差「1」を取得することを可能とする。これは、他の最大品質差又は他の品質変動のパターンをサポートするのに容易に拡張され得る。
この種の最適化アルゴリズムは、事前定義適応ロジックアルゴリズムとしてクライアント装置に組み込まれ得る。他の適応ロジックアルゴリズムがクライアント装置(例えば、図3のモジュール309)に組み込まれてもよく、各々は異なる事前決定された品質適応規則に従う。そして、コンテンツの使用に対するユーザ選択に応じて、クライアント装置は、最も妥当な適応アルゴリズムを活性化することができる。
最も妥当なアルゴリズムの選択はクライアントに委ねられるので、追加のシグナリングはストリーミングマニフェストにおいて必要とならない。これはコンテンツ作成者のタスクを簡素化する。
他の代替例は、一時に1つのAdaptationSetについて実行する古典的適応ロジック(例えば、図3における適応ロジック308)の拡張に向けられる。クライアントは、マニフェストからの情報、例えば、SRDディスクリプタ、Preselection要素などを用いて可能な組合せを計算する。そして、それは、関連する必要の帯域幅(組合せに関与する各Representationの@bandwidthの合計として)との可能な組合せのメモリ内順序付けリストを構築する。
次に、切替に過大な時間を費やすことを回避するために、可能な組合せのセットが所定の組合せのサブセット、例えば、5個の代替物に減縮され得る。これは、必要帯域幅の観点で組合せを大きな差で維持することによって行われ得る。そうすることによって、クライアントは、より多くの帯域幅が利用可能な場合に(又はバッファが迅速に充填する場合に)Representationの次のセットに切り替わることによって、又は利用可能な帯域幅が減少していく場合に(又はバッファが枯渇する危険がある場合に)より低いセットのRepresentationへの逆切替時に、1つのAdaptationSetについての適応ロジックを使用し続けることができる。主な相違は、この場合には切替は複数のリクエスト(組合せを構成する同じメディアタイプのRepresentationのセットにおけるRepresentation毎に1つのリクエスト)をもたらすが、古典的ユースケースでは切替は所与のメディアタイプの1つのRepresentationのセグメントの1つのリクエストをもたらすことである。これらの適応ロジックは、「quality rule」ディスクリプタを何ら必要とすることなく直接に実行され得る。その場合には、全ての選択がクライアントに委ねられる。あるいは、クライアントは、ユーザに対するレンダリングを向上するために、その適応ロジックの最良の1つを選択するために、「quality rule」及び/又は「quality equivalence」ディスクリプタの利益を受けることができる。
サーバ装置制御:プッシュ及び再方向付け
特定の実施形態によると、クライアント装置は、品質適応規則の情報なしにメディアセグメントを要求する。この実施形態では、品質適応規則はサーバ側に維持され、ストリーミングマニフェストは前述の実施形態において導入された品質適応規則ディスクリプタを含まない。
マニフェストは、組合せ又は事前選択の記述を含むことができる。この実施形態では、グラフィカルインターフェースを介したユーザは、例えば、ROIにおける強調及びより低いバージョンの周辺タイルのようなビューイングモードを選択することができる。サーバ及びクライアントが共にHTTP/2に対応している場合、クライアントは、他のコンポーネントでも着目される組合せ又は事前選択のメインコンポーネントを要求しつつ、サーバに示すことができる。
これは、例えば「urn:mpeg:dash:fdh:push-bundle」に設定されたプッシュタイプ名を有する新たなプッシュディレクティブを導入することによって行われ得る。これは、サーバもプッシュディレクティブに対応していること及び可能な組合せ又は事前選択物を知得していることを要する。品質規則、例えば、事前選択物のメインリソースと他のコンポーネントとの間の品質レベルの最大差も、サーバによって知られている。これは、ストリーミングマニフェストを解析することができるDASH認識サーバで、又はどのリソースが事前選択物のメインリソースに関係するかをそれが知るように構成されたサーバによって行われ得る。事前選択物のメインリソースにおけるGETリクエストに応じて、サーバは、事前選択物における関係するリソースをプッシュすることを約束することができる。要求されたリソースから、MPDを知る場合に、サーバはクライアントによって要求される品質のレベルを特定することができる。あるいは、プッシュディレクティブは、プッシュバンドルディレクティブのパラメータとして、メインリソースに対して要求された品質のレベルを示すことができる。例えば、それは、メインリソースが1Mbit/秒で要求されることを意味する帯域幅情報:
Accept-Push-Policy= “urn:mpeg:fdh:push-bundle”; “bw:1000000”として与えられ、又は品質レベルの表示として、図1のタイルの場合において、
Accept-Push-Policy= “urn:mpeg:fdh:push-bundle”; “qRank:HQ”として与えられ、又は品質等価性について使用される事前選択属性の場合に、
Accept-Push-Policy= “urn:mpeg:fdh:push-bundle”; “preselect:HQ” として与えられる。ROIのユースケースでは、このプッシュディレクティブは、クライアントによる要求を簡素化することができる。それは、サーバが周辺タイルをプッシュする一方で、ROIに対応するビデオ部分に対するリクエストを発行する。このプッシュディレクティブベースのアプローチは、クライアントのタスクを簡素化する。それは、メインリソースを要求することに注目し、メインリソースについて選択されたものと同等の品質レベルにおいてサーバが追加のコンポーネントを送信するのを待機するために、事前選択物が存在することを知りさえすればよい。プッシュディレクティブを許容及び適用する場合、サーバは、クライアントによって送信されたリクエスト及びディレクティブに肯定応答するいずれのパラメータもなしに、プッシュAck:
Push-policy= “urn:mpeg:fdh:push-bundle”で応答する。プッシュバンドルの肯定応答がパラメータを含む場合、それはメディアコンテンツコンポーネントの事前選択又は組合せにおける品質等価性レベルを識別するのにクライアントによって使用される。これは、いずれの品質等価性ディスクリプタが使用されるかに応じて、「preselect=HQ」又は「qRank=MQ」のようなパラメータとなり得る。
図7は、本発明の1以上の実施形態を実装するコンピューティングデバイス700の概略ブロック図である。コンピューティングデバイス700は、マイクロコンピュータ、ワークステーション又は軽量ポータブルデバイスなどのデバイスであってもよい。コンピューティングデバイス700は、
-マイクロプロセッサなどの中央処理装置(CPU)701、
-本発明の実施形態の方法の実行可能コードを記憶するランダムアクセスメモリ(RAM)702、その他、データをストリーミングするための方法を実行するのに必要な変数及びパラメータを記録するように適合されたレジスタ、例えばそのメモリ容量が拡張ポートに接続されたオプションのRAMによって拡張可能である、
-本発明の実施形態を具現化するコンピュータプログラムを記憶する読出し専用メモリ(ROM)703、
-通常、処理されるべきデジタルデータが送信又は受信される通信ネットワークに順次接続されるネットワークインターフェース704。ネットワークインターフェース704は、単一のネットワークインターフェースであってもよいし、異なるネットワークインターフェースのセット(例えば有線及び無線インターフェース、又は異なる種類の有線若しくは無線インターフェース)から構成されてもよい。データは、CPU701において稼働するソフトウェアアプリケーションの制御下で送信用にネットワークインターフェースに書き込まれ、又は受信用にネットワークインターフェースから読み出される。
-ユーザからの入力を受信する又はユーザに情報を表示するユーザインターフェース(UI)705、
-ハードディスク(HD)706、
-ビデオソース又はディスプレイなどの外部デバイスとデータを送受信するためのI/Oモジュール707
に接続された通信バスを備える。
実行可能コードは、読出し専用メモリ703、ハードディスク706、又は例えばディスクなどの取り外し可能デジタル媒体のいずれかに記憶され得る。変形例によれば、プログラムの実行可能コードは、実行される前にハードディスク706などの通信デバイス700の記憶手段の1つに記憶されるために、ネットワークインターフェース704を介して通信ネットワークによって受信され得る。
中央処理装置701は、本発明の実施形態による1つ又は複数のプログラムのソフトウェアコードの命令又は一部の実行を制御及び指示するように適合され、その命令は前述の記憶手段の1つに記憶される。電源投入後、CPU701は、例えばプログラムROM703又はハードディスク(HD)706からそれらの命令がロードされた後のソフトウェアアプリケーションに関連する主RAMメモリ702からの命令を実行することができる。CPU701によって実行される場合、そのようなソフトウェアアプリケーションは、前述の図に示すフローチャートのステップを実行する。
この実施形態において、装置は、発明を実施するのにソフトウェアを用いるプログラム可能な装置である。ただし、代替的に、本発明は、ハードウェアにおいて(例えば、特定用途向け集積回路、すなわちASICの形態で)実施され得る。
発明が図面及び上記説明において詳細に説明及び記載されてきたが、そのような説明及び記載は説明又は例示としてみなされるものであって限定的なものではなく、発明は開示の実施形態に限定されない。開示の実施形態に対する他の変形例が、図面、開示及び付随する特許請求の範囲の検討から、請求項に記載の発明を実施する際に当業者によって理解及び実施可能となる。
そのような変形例は、特に、発明の概要及び/又は付随する特許請求の範囲において説明するような組合せの実施形態から導かれ得る。
特許請求の範囲において、文言「備える」は他の要素又はステップを除外するものではなく、不定冠詞「a」又は「an」は複数形を除外するものではない。単一のプロセッサ又は他のユニットは、特許請求の範囲に記載される複数のアイテムの機能を充足し得る。異なる構成が相互に異なる従属請求項に記載されているという単なる事実は、それらの構成の組合せが有利に使用可能でないことを示すものではない。特許請求の範囲におけるいずれの符号も、発明の範囲を限定するものと解釈されるべきではない。

Claims (20)

  1. サーバ装置がメディアデータを送信するためのMPEG-DASH規格に準拠した方法であって、
    ベーストラックを記述するAdaptationSetと、タイルトラックを記述するAdaptationSetと、前記ベーストラックを記述するAdaptationSetと前記タイルトラックを記述するAdaptationSetとを含む事前選択に関する記述と、を含むMPD(Media Presentation Description)を生成するステップと、
    前記MPDをクライアント装置に送信するステップと、
    前記MPDに基づき前記クライアント装置から要求されたメディアデータを前記クライアント装置に送信するステップと、
    を有し、
    前記事前選択に関する記述において、メインAdaptationSetは、前記ベーストラックを記述するものであることを特徴とする方法。
  2. 請求項1に記載の方法において、
    前記ベーストラックを記述するAdaptationSetは、Representationを含み、
    前記タイルトラックを記述するAdaptationSetは、1つ以上のRepresentationを含み、
    前記タイルトラックのRepresentationと前記ベーストラックのRepresentationとが関連付けられていることを特徴とする方法。
  3. 請求項1又は2に記載の方法において、
    前記タイルトラックのAdaptationSetと前記ベーストラックのAdaptationSetとが関連付けられていることを特徴とする方法。
  4. 請求項3に記載の方法において、
    前記タイルトラックのAdaptationSetと前記ベーストラックのAdaptationSetとが品質等価性に関する記述子により関連付けられていることを特徴とする方法。
  5. クライアント装置がメディアデータを受信するためのMPEG-DASH規格に準拠した方法であって、
    ベーストラックを記述するAdaptationSetと、タイルトラックを記述するAdaptationSetと、前記ベーストラックを記述するAdaptationSetと前記タイルトラックを記述するAdaptationSetとを含む事前選択に関する記述と、を含むMPD(Media Presentation Description)をサーバ装置から受信するステップと、
    前記受信したMPDに基づきメディアデータを前記サーバ装置に要求するステップと、
    前記メディアデータを前記サーバ装置から受信するステップと、
    を有し、
    前記事前選択に関する記述において、メインAdaptationSetは、前記ベーストラックを記述するものであることを特徴とする方法。
  6. 請求項5に記載の方法において、
    前記ベーストラックを記述するAdaptationSetは、Representationを含み、
    前記タイルトラックを記述するAdaptationSetは、1つ以上のRepresentationを含み、
    前記タイルトラックのRepresentationと前記ベーストラックのRepresentationとが関連付けられていることを特徴とする方法。
  7. 請求項5又は6に記載の方法において、
    前記タイルトラックのAdaptationSetと前記ベーストラックのAdaptationSetとが関連付けられていることを特徴とする方法。
  8. 請求項7に記載の方法において、
    前記タイルトラックのAdaptationSetと前記ベーストラックのAdaptationSetとが品質等価性に関する記述子により関連付けられていることを特徴とする方法。
  9. メディアデータを送信するためのMPEG-DASH規格に準拠した方法を実行する装置であって、前記方法は、
    ベーストラックを記述するAdaptationSetと、タイルトラックを記述するAdaptationSetと、前記ベーストラックを記述するAdaptationSetと前記タイルトラックを記述するAdaptationSetとを含む事前選択に関する記述と、を含むMPD(Media Presentation Description)を生成するステップと、
    前記MPDをクライアント装置に送信するステップと、
    前記MPDに基づき前記クライアント装置から要求されたメディアデータを前記クライアント装置に送信するステップと、
    を有し、
    前記事前選択に関する記述において、メインAdaptationSetは、前記ベーストラックを記述するものであることを特徴とする装置。
  10. 請求項9に記載の装置において、
    前記ベーストラックを記述するAdaptationSetは、Representationを含み、
    前記タイルトラックを記述するAdaptationSetは、1つ以上のRepresentationを含み、
    前記タイルトラックのRepresentationと前記ベーストラックのRepresentationとが関連付けられていることを特徴とする装置。
  11. 請求項9又は10に記載の装置において、
    前記タイルトラックのAdaptationSetと前記ベーストラックのAdaptationSetとが関連付けられていることを特徴とする装置。
  12. 請求項11に記載の装置において、
    前記タイルトラックのAdaptationSetと前記ベーストラックのAdaptationSetとが品質等価性に関する記述子により関連付けられていることを特徴とする装置。
  13. メディアデータを受信するためのMPEG-DASH規格に準拠した方法を実行する装置であって、前記方法は、
    ベーストラックを記述するAdaptationSetと、タイルトラックを記述するAdaptationSetと、前記ベーストラックを記述するAdaptationSetと前記タイルトラックを記述するAdaptationSetとを含む事前選択に関する記述と、を含むMPD(Media Presentation Description)をサーバ装置から受信するステップと、
    前記受信したMPDに基づきメディアデータを前記サーバ装置に要求するステップと、
    前記メディアデータを前記サーバ装置から受信するステップと、
    を有し、
    前記事前選択に関する記述において、メインAdaptationSetは、前記ベーストラックを記述するものであることを特徴とする装置。
  14. 請求項13に記載の装置において、
    前記ベーストラックを記述するAdaptationSetは、Representationを含み、
    前記タイルトラックを記述するAdaptationSetは、1つ以上のRepresentationを含み、
    前記タイルトラックのRepresentationと前記ベーストラックのRepresentationとが関連付けられていることを特徴とする装置。
  15. 請求項13又は14に記載の装置において、
    前記タイルトラックのAdaptationSetと前記ベーストラックのAdaptationSetとが関連付けられていることを特徴とする装置。
  16. 請求項15に記載の装置において、
    前記タイルトラックのAdaptationSetと前記ベーストラックのAdaptationSetとが品質等価性に関する記述子により関連付けられていることを特徴とする装置。
  17. コンピュータに、メディアデータを送信するためのMPEG-DASH規格に準拠した方法を実行させるためのプログラムであって、前記方法は、
    ベーストラックを記述するAdaptationSetと、タイルトラックを記述するAdaptationSetと、前記ベーストラックを記述するAdaptationSetと前記タイルトラックを記述するAdaptationSetとを含む事前選択に関する記述と、を含むMPD(Media Presentation Description)を生成するステップと、
    前記MPDをクライアント装置に送信するステップと、
    前記MPDに基づき前記クライアント装置から要求されたメディアデータを前記クライアント装置に送信するステップと、
    を有し、
    前記事前選択に関する記述において、メインAdaptationSetは、前記ベーストラックを記述するものであることを特徴とするプログラム。
  18. 請求項17に記載のプログラムを記憶したコンピュータで読み取り可能な記憶媒体。
  19. コンピュータに、メディアデータを受信するためのMPEG-DASH規格に準拠した方法を実行させるためのプログラムであって、前記方法は、
    ベーストラックを記述するAdaptationSetと、タイルトラックを記述するAdaptationSetと、前記ベーストラックを記述するAdaptationSetと前記タイルトラックを記述するAdaptationSetとを含む事前選択に関する記述と、を含むMPD(Media Presentation Description)をサーバ装置から受信するステップと、
    前記受信したMPDに基づきメディアデータを前記サーバ装置に要求するステップと、
    前記メディアデータを前記サーバ装置から受信するステップと、
    を有し、
    前記事前選択に関する記述において、メインAdaptationSetは、前記ベーストラックを記述するものであることを特徴とするプログラム。
  20. 請求項19に記載のプログラムを記憶したコンピュータで読み取り可能な記憶媒体。
JP2022032243A 2016-10-10 2022-03-03 タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム Active JP7263583B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GB1617205.8 2016-10-10
GB1617205.8A GB2554877B (en) 2016-10-10 2016-10-10 Methods, devices, and computer programs for improving rendering display during streaming of timed media data
PCT/EP2017/075870 WO2018069357A1 (en) 2016-10-10 2017-10-10 Methods, devices, and computer programs for improving rendering display during streaming of timed media data
JP2019519292A JP7035038B2 (ja) 2016-10-10 2017-10-10 タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2019519292A Division JP7035038B2 (ja) 2016-10-10 2017-10-10 タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2022066370A JP2022066370A (ja) 2022-04-28
JP7263583B2 true JP7263583B2 (ja) 2023-04-24

Family

ID=57610533

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019519292A Active JP7035038B2 (ja) 2016-10-10 2017-10-10 タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム
JP2022032243A Active JP7263583B2 (ja) 2016-10-10 2022-03-03 タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2019519292A Active JP7035038B2 (ja) 2016-10-10 2017-10-10 タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム

Country Status (9)

Country Link
US (2) US10979783B2 (ja)
EP (2) EP3523981B1 (ja)
JP (2) JP7035038B2 (ja)
KR (2) KR102249173B1 (ja)
CN (2) CN113141379B (ja)
ES (1) ES2952427T3 (ja)
GB (1) GB2554877B (ja)
RU (1) RU2724318C1 (ja)
WO (1) WO2018069357A1 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2554877B (en) * 2016-10-10 2021-03-31 Canon Kk Methods, devices, and computer programs for improving rendering display during streaming of timed media data
US11659057B2 (en) * 2017-04-19 2023-05-23 Comcast Cable Communications, Llc Methods and systems for content delivery using server push
GB2587091B (en) 2017-04-21 2022-01-05 Zenimax Media Inc Systems and methods for encoder-guided adaptive-quality rendering
JP2019054417A (ja) 2017-09-15 2019-04-04 ソニー株式会社 画像処理装置およびファイル生成装置
JP7035401B2 (ja) * 2017-09-15 2022-03-15 ソニーグループ株式会社 画像処理装置およびファイル生成装置
US11321516B2 (en) * 2018-01-19 2022-05-03 Qualcomm Incorporated Processing dynamic web content of an ISO BMFF web resource track
EP3531703A1 (en) * 2018-02-26 2019-08-28 Thomson Licensing Method and network equipment for encoding an immersive video spatially tiled with a set of tiles
US11153482B2 (en) * 2018-04-27 2021-10-19 Cubic Corporation Optimizing the content of a digital omnidirectional image
US10567780B2 (en) 2018-06-14 2020-02-18 Telefonaktiebolaget Lm Ericsson (Publ) System and method for encoding 360° immersive video
US10623736B2 (en) * 2018-06-14 2020-04-14 Telefonaktiebolaget Lm Ericsson (Publ) Tile selection and bandwidth optimization for providing 360° immersive video
US10432970B1 (en) * 2018-06-14 2019-10-01 Telefonaktiebolaget Lm Ericsson (Publ) System and method for encoding 360° immersive video
US10419738B1 (en) 2018-06-14 2019-09-17 Telefonaktiebolaget Lm Ericsson (Publ) System and method for providing 360° immersive video based on gaze vector information
US10523914B1 (en) 2018-07-26 2019-12-31 Telefonaktiebolaget Lm Ericsson (Publ) System and method for providing multiple 360° immersive video sessions in a network
US10841662B2 (en) 2018-07-27 2020-11-17 Telefonaktiebolaget Lm Ericsson (Publ) System and method for inserting advertisement content in 360° immersive video
US10440416B1 (en) 2018-10-01 2019-10-08 Telefonaktiebolaget Lm Ericsson (Publ) System and method for providing quality control in 360° immersive video during pause
US10757389B2 (en) 2018-10-01 2020-08-25 Telefonaktiebolaget Lm Ericsson (Publ) Client optimization for providing quality control in 360° immersive video during pause
CN113424549B (zh) 2019-01-24 2024-05-28 交互数字Vc控股公司 用于利用多个细节级别和自由度的自适应空间内容流传输的系统和方法
GB2582155B (en) * 2019-03-12 2023-12-27 Canon Kk Method, device, and computer program for signaling available portions of encapsulated media content
WO2021064664A1 (en) * 2019-10-04 2021-04-08 Enensys Expway Method for broadcasting dash/hls hybrid multimedia streams
US11178439B2 (en) 2019-12-16 2021-11-16 Rovi Guides, Inc. Systems and methods for optimizing bandwidth for data transmission
EP4097987A4 (en) 2020-06-24 2023-03-08 ZTE Corporation METHODS AND APPARATUS FOR PROCESSING VOLUMETRIC MULTIMEDIA CONTENT
CN111726687B (zh) * 2020-06-30 2022-12-27 北京百度网讯科技有限公司 用于生成显示数据的方法和装置
KR20220012740A (ko) * 2020-07-23 2022-02-04 삼성전자주식회사 통신 시스템에서 컨텐츠의 송수신을 제어하기 위한 방법 및 장치
WO2022056666A1 (en) * 2020-09-15 2022-03-24 Qualcomm Incorporated Methods and apparatus for video over nr-dc
US11687386B2 (en) * 2020-10-07 2023-06-27 Tencent America LLC MPD validity expiration processing model
US20230019913A1 (en) * 2021-06-30 2023-01-19 Lemon Inc. Signaling Size and Position of Target Picture-In-Picture Region
US20230007210A1 (en) * 2021-06-30 2023-01-05 Lemon Inc. Signaling the Purpose of Preselection
US20230144442A1 (en) * 2021-11-05 2023-05-11 Tencent America LLC Immersive media streaming prioritized by asset complexity
US20240129537A1 (en) * 2022-10-18 2024-04-18 Tencent America LLC Method and apparatus for signaling cmaf switching sets in isobmff

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140317308A1 (en) 2013-04-19 2014-10-23 Futurewei Technologies, Inc Media Quality Information Signaling In Dynamic Adaptive Video Streaming Over Hypertext Transfer Protocol
WO2015060165A1 (ja) 2013-10-22 2015-04-30 シャープ株式会社 表示処理装置、配信装置、および、メタデータ
JP2015527809A (ja) 2012-08-03 2015-09-17 インテル・コーポレーション ハイパーテキスト転送プロトコルによる品質アウェア適応型ストリーミングのための方法
WO2015197815A1 (en) 2014-06-27 2015-12-30 Koninklijke Kpn N.V. Determining a region of interest on the basis of a hevc-tiled video stream
WO2016002496A1 (ja) 2014-06-30 2016-01-07 ソニー株式会社 情報処理装置および方法
JP2016521497A (ja) 2013-04-16 2016-07-21 キヤノン株式会社 パーティションで分割された時分割メディアデータをストリーミングするための方法、装置、およびコンピュータプログラム
JP2016522622A (ja) 2013-07-19 2016-07-28 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 動的適応型ハイパーテキスト転送プロトコルストリーミングにおけるメタデータ情報のシグナリングおよび搬送

Family Cites Families (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491645A (en) * 1993-10-13 1996-02-13 International Business Machines Corporation Method and system for N-track correlation
US9049449B2 (en) * 2005-04-13 2015-06-02 Nokia Corporation Coding of frame number in scalable video coding
WO2006109117A1 (en) * 2005-04-13 2006-10-19 Nokia Corporation Method, device and system for effectively coding and decoding of video data
US9521469B2 (en) * 2013-04-19 2016-12-13 Futurewei Technologies, Inc. Carriage of quality information of content in media formats
CA2762967A1 (en) * 2009-05-21 2010-11-25 Intertrust Technologies Corporation Content delivery systems and methods
US8924580B2 (en) 2011-08-12 2014-12-30 Cisco Technology, Inc. Constant-quality rate-adaptive streaming
US8396983B1 (en) * 2012-03-13 2013-03-12 Google Inc. Predictive adaptive media streaming
WO2014011848A2 (en) * 2012-07-12 2014-01-16 Huawei Technologies Co., Ltd. Signaling and processing content with variable bitrates for adaptive streaming
GB2505912B (en) * 2012-09-14 2015-10-07 Canon Kk Method and device for generating a description file, and corresponding streaming method
US8949206B2 (en) * 2012-10-04 2015-02-03 Ericsson Television Inc. System and method for creating multiple versions of a descriptor file
US9426196B2 (en) * 2013-01-04 2016-08-23 Qualcomm Incorporated Live timing for dynamic adaptive streaming over HTTP (DASH)
GB2512310A (en) * 2013-03-25 2014-10-01 Sony Corp Media Distribution
MY169901A (en) * 2013-04-12 2019-06-13 Ericsson Telefon Ab L M Constructing inter-layer reference picture lists
US20150006621A1 (en) * 2013-07-01 2015-01-01 Futurewei Technologies, Inc. Adaptive Video Streaming for Information Centric Networks
GB2542282B (en) * 2013-10-22 2018-08-01 Canon Kk Method, device, and computer program for encapsulating partitioned timed media data in a server
US10841353B2 (en) * 2013-11-01 2020-11-17 Ericsson Ab System and method for optimizing defragmentation of content in a content delivery network
GB2558086B (en) * 2014-03-25 2019-02-20 Canon Kk Methods, devices, and computer programs for improving streaming of partitioned timed media data
US10305941B2 (en) * 2014-10-21 2019-05-28 Lg Electronics Inc. Broadcasting signal transmission device, broadcasting signal reception device, broadcasting signal transmission method, and broadcasting signal reception method
KR101844237B1 (ko) * 2014-11-17 2018-04-02 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
CA3126649C (en) * 2014-11-20 2023-10-17 Lg Electronics Inc. Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal
US10742705B2 (en) * 2014-11-20 2020-08-11 Lg Electronics Inc. Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method, and broadcast signal reception method
US20160149956A1 (en) * 2014-11-21 2016-05-26 Whip Networks, Inc. Media management and sharing system
US9860571B2 (en) * 2014-12-10 2018-01-02 Lg Electronics Inc. Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal and method for receiving broadcast signal
WO2016122267A1 (ko) * 2015-01-29 2016-08-04 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016129866A1 (ko) * 2015-02-10 2016-08-18 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016129868A1 (ko) * 2015-02-10 2016-08-18 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016129869A1 (ko) * 2015-02-13 2016-08-18 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
EP3288270B1 (en) * 2015-04-22 2020-06-03 LG Electronics Inc. Broadcasting signal transmission device, broadcasting signal reception device, broadcasting signal transmission method, and broadcasting signal reception method
WO2016204481A1 (ko) * 2015-06-16 2016-12-22 엘지전자 주식회사 미디어 데이터 전송 장치, 미디어 데이터 수신 장치, 미디어 데이터 전송 방법, 및 미디어 데이터 수신 방법
US20180242028A1 (en) * 2015-08-20 2018-08-23 Koninklijke Kpn N.V. Forming A Tiled Video On The Basis Of Media Streams
EP3338454A1 (en) * 2015-08-20 2018-06-27 Koninklijke KPN N.V. Forming one or more tile streams on the basis of one or more video streams
EP3360330B1 (en) * 2015-10-08 2021-03-24 Koninklijke KPN N.V. Enhancing a region of interest in video frames of a video stream
CA3001290C (en) * 2015-10-13 2024-02-06 Sony Corporation Transmission apparatus, transmission method, reception apparatus, and reception method
US9854375B2 (en) * 2015-12-01 2017-12-26 Qualcomm Incorporated Selection of coded next generation audio data for transport
US10674229B2 (en) * 2016-02-01 2020-06-02 Dolby Laboratories Licensing Corporation Enabling personalized audio in adaptive streaming
WO2017164270A1 (en) * 2016-03-25 2017-09-28 Sharp Kabushiki Kaisha Systems and methods for signaling of information associated with audio content
US20190141311A1 (en) * 2016-04-26 2019-05-09 Lg Electronics Inc. Method for transmitting 360-degree video, method for receiving 360-degree video, apparatus for transmitting 360-degree video, apparatus for receiving 360-degree video
CN109155861B (zh) * 2016-05-24 2021-05-25 诺基亚技术有限公司 用于编码媒体内容的方法和装置以及计算机可读存储介质
GB2550604A (en) * 2016-05-24 2017-11-29 Canon Kk Method, device, and computer program for encapsulating and parsing timed media data
CN109511284B (zh) * 2016-05-26 2023-09-01 Vid拓展公司 视窗自适应360度视频传送的方法和设备
GB2550912B (en) * 2016-05-27 2019-09-04 Canon Kk Method, device and computer program for encapsulating and parsing timed media data
GB2554877B (en) 2016-10-10 2021-03-31 Canon Kk Methods, devices, and computer programs for improving rendering display during streaming of timed media data
US10917564B2 (en) * 2016-10-12 2021-02-09 Qualcomm Incorporated Systems and methods of generating and processing files for partial decoding and most interested regions
EP3535977A4 (en) * 2016-11-01 2020-05-20 Nokia Technologies Oy APPARATUS, METHOD, AND COMPUTER PROGRAM FOR VIDEO ENCODING AND DECODING
KR102546152B1 (ko) * 2017-02-15 2023-06-22 한국전자통신연구원 고정/이동방송 융합형 3DTV에서 화질 개선을 위한 부가 데이터(Video Enhancement Information, VEI) 시그널링 방법 및 장치
KR102314172B1 (ko) * 2017-03-23 2021-10-20 브이아이디 스케일, 인크. 360도 적응형 스트리밍에 대한 경험을 개선하기 위한 메트릭 및 메시지
GB2560921B (en) * 2017-03-27 2020-04-08 Canon Kk Method and apparatus for encoding media data comprising generated content
WO2018178507A1 (en) * 2017-03-27 2018-10-04 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
GB2587091B (en) * 2017-04-21 2022-01-05 Zenimax Media Inc Systems and methods for encoder-guided adaptive-quality rendering
WO2019002662A1 (en) * 2017-06-26 2019-01-03 Nokia Technologies Oy APPARATUS, METHOD AND COMPUTER PROGRAM FOR OMNIDIRECTIONAL VIDEO
US11082719B2 (en) * 2017-07-03 2021-08-03 Nokia Technologies Oy Apparatus, a method and a computer program for omnidirectional video
CN110832873A (zh) * 2017-07-06 2020-02-21 夏普株式会社 用于针对虚拟现实应用程序发送信号通知视图信息的系统和方法
CN111052748B (zh) * 2017-07-06 2022-05-17 弗劳恩霍夫应用研究促进协会 客户端设备和操作客户端设备的方法
US11665219B2 (en) * 2017-07-10 2023-05-30 Qualcomm Incorporated Processing media data using a generic descriptor for file format boxes
US20190014362A1 (en) * 2017-07-10 2019-01-10 Qualcomm Incorporated Enhanced region-wise packing and viewport independent hevc media profile
US10587883B2 (en) * 2017-07-14 2020-03-10 Qualcomm Incorporated Region-wise packing, content coverage, and signaling frame packing for media content
JP2019054417A (ja) * 2017-09-15 2019-04-04 ソニー株式会社 画像処理装置およびファイル生成装置
JP7035401B2 (ja) * 2017-09-15 2022-03-15 ソニーグループ株式会社 画像処理装置およびファイル生成装置
KR102411337B1 (ko) * 2017-10-09 2022-06-22 노키아 테크놀로지스 오와이 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
GB2567624B (en) * 2017-10-12 2021-05-26 Canon Kk Method, device and computer program for transmitting media content
WO2019130763A1 (ja) * 2017-12-28 2019-07-04 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
EP3769515A1 (en) * 2018-03-22 2021-01-27 Huawei Technologies Co., Ltd. Immersive media metrics for rendered viewports
US20210058600A1 (en) * 2018-04-04 2021-02-25 Sharp Kabushik Kaisha Systems and methods for signaling sub-picture composition information for virtual reality applications
WO2019195101A1 (en) * 2018-04-05 2019-10-10 Futurewei Technologies, Inc. Efficient association between dash objects
EP3776484A4 (en) * 2018-04-06 2021-05-05 Huawei Technologies Co., Ltd. ASSOCIATION OF FILE FORMAT OBJECTS AND OBJECTS WITH DYNAMIC ADAPTIVE STREAMING OVER HYPERTEXT TRANSFER PROTOCOL (DASH)
US10623736B2 (en) * 2018-06-14 2020-04-14 Telefonaktiebolaget Lm Ericsson (Publ) Tile selection and bandwidth optimization for providing 360° immersive video
US10567780B2 (en) * 2018-06-14 2020-02-18 Telefonaktiebolaget Lm Ericsson (Publ) System and method for encoding 360° immersive video
US10432970B1 (en) * 2018-06-14 2019-10-01 Telefonaktiebolaget Lm Ericsson (Publ) System and method for encoding 360° immersive video
US10419738B1 (en) * 2018-06-14 2019-09-17 Telefonaktiebolaget Lm Ericsson (Publ) System and method for providing 360° immersive video based on gaze vector information
US10523914B1 (en) * 2018-07-26 2019-12-31 Telefonaktiebolaget Lm Ericsson (Publ) System and method for providing multiple 360° immersive video sessions in a network
US10841662B2 (en) * 2018-07-27 2020-11-17 Telefonaktiebolaget Lm Ericsson (Publ) System and method for inserting advertisement content in 360° immersive video
CN112640473A (zh) * 2018-08-30 2021-04-09 夏普株式会社 用于发送信号通知子图片定时元数据信息的系统和方法
US11082728B2 (en) * 2018-08-31 2021-08-03 Electronics And Telecommunications Research Institute Method and apparatus for providing broadcast service based on scalable codec
WO2020053477A2 (en) * 2018-09-12 2020-03-19 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US10757389B2 (en) * 2018-10-01 2020-08-25 Telefonaktiebolaget Lm Ericsson (Publ) Client optimization for providing quality control in 360° immersive video during pause
US10440416B1 (en) * 2018-10-01 2019-10-08 Telefonaktiebolaget Lm Ericsson (Publ) System and method for providing quality control in 360° immersive video during pause
CN111417008B (zh) * 2019-01-08 2022-06-03 诺基亚技术有限公司 用于虚拟现实的方法、装置和计算机可读介质
US11381739B2 (en) * 2019-01-23 2022-07-05 Intel Corporation Panoramic virtual reality framework providing a dynamic user experience
US11094130B2 (en) * 2019-02-06 2021-08-17 Nokia Technologies Oy Method, an apparatus and a computer program product for video encoding and video decoding
CN114930866A (zh) * 2020-01-03 2022-08-19 诺基亚技术有限公司 用于实时纹理适配的方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015527809A (ja) 2012-08-03 2015-09-17 インテル・コーポレーション ハイパーテキスト転送プロトコルによる品質アウェア適応型ストリーミングのための方法
JP2016521497A (ja) 2013-04-16 2016-07-21 キヤノン株式会社 パーティションで分割された時分割メディアデータをストリーミングするための方法、装置、およびコンピュータプログラム
US20140317308A1 (en) 2013-04-19 2014-10-23 Futurewei Technologies, Inc Media Quality Information Signaling In Dynamic Adaptive Video Streaming Over Hypertext Transfer Protocol
JP2016522622A (ja) 2013-07-19 2016-07-28 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 動的適応型ハイパーテキスト転送プロトコルストリーミングにおけるメタデータ情報のシグナリングおよび搬送
WO2015060165A1 (ja) 2013-10-22 2015-04-30 シャープ株式会社 表示処理装置、配信装置、および、メタデータ
WO2015197815A1 (en) 2014-06-27 2015-12-30 Koninklijke Kpn N.V. Determining a region of interest on the basis of a hevc-tiled video stream
WO2016002496A1 (ja) 2014-06-30 2016-01-07 ソニー株式会社 情報処理装置および方法

Also Published As

Publication number Publication date
GB2554877A (en) 2018-04-18
ES2952427T3 (es) 2023-10-31
KR102286881B1 (ko) 2021-08-09
RU2724318C1 (ru) 2020-06-22
US11184683B2 (en) 2021-11-23
KR102249173B1 (ko) 2021-05-10
JP7035038B2 (ja) 2022-03-14
WO2018069357A1 (en) 2018-04-19
EP3523981B1 (en) 2023-05-17
JP2022066370A (ja) 2022-04-28
US10979783B2 (en) 2021-04-13
KR20210052596A (ko) 2021-05-10
GB201617205D0 (en) 2016-11-23
US20210185411A1 (en) 2021-06-17
CN113141379A (zh) 2021-07-20
CN109804635B (zh) 2021-06-18
JP2019531662A (ja) 2019-10-31
EP4224863A2 (en) 2023-08-09
CN113141379B (zh) 2022-12-20
CN109804635A (zh) 2019-05-24
EP4224863A3 (en) 2023-08-16
KR20190054165A (ko) 2019-05-21
GB2554877B (en) 2021-03-31
US20200053435A1 (en) 2020-02-13
EP3523981A1 (en) 2019-08-14

Similar Documents

Publication Publication Date Title
JP7263583B2 (ja) タイムドメディアデータのストリーミング中にレンダリング表示を改善するための方法、デバイス及びコンピュータプログラム
JP6591009B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
US10135952B2 (en) Method and corresponding device for streaming video data
US10862943B2 (en) Methods, devices, and computer programs for improving streaming of partitioned timed media data
KR20190008901A (ko) 가상 현실 미디어 콘텐트의 스트리밍을 개선하는 방법, 디바이스, 및 컴퓨터 프로그램
JP2016521497A5 (ja)
JP6632550B2 (ja) タイムピリオドにまたがってオブジェクトを識別する方法および対応デバイス
GB2567485A (en) Method and device for exchanging data between a web application and an associated web engine

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220303

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20220630

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230222

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230314

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230412

R151 Written notification of patent or utility model registration

Ref document number: 7263583

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151