JP7190589B2 - セッションベースdash動作のためのパターン指定 - Google Patents

セッションベースdash動作のためのパターン指定 Download PDF

Info

Publication number
JP7190589B2
JP7190589B2 JP2021557410A JP2021557410A JP7190589B2 JP 7190589 B2 JP7190589 B2 JP 7190589B2 JP 2021557410 A JP2021557410 A JP 2021557410A JP 2021557410 A JP2021557410 A JP 2021557410A JP 7190589 B2 JP7190589 B2 JP 7190589B2
Authority
JP
Japan
Prior art keywords
key
sequence
sbd
dash
session
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
JP2021557410A
Other languages
English (en)
Other versions
JP2022526162A (ja
Inventor
ソダガァ,イラジ
Original Assignee
テンセント・アメリカ・エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テンセント・アメリカ・エルエルシー filed Critical テンセント・アメリカ・エルエルシー
Publication of JP2022526162A publication Critical patent/JP2022526162A/ja
Application granted granted Critical
Publication of JP7190589B2 publication Critical patent/JP7190589B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26613Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
    • 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, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 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, manipulating MPEG-4 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440245Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
    • 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/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • 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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • 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
    • 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/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]

Description

[関連出願への相互参照]
本出願は、2020年11月11日に出願された米国特許第17/095,182号「PATTERN ADDRESSING FOR SESSION-BASED DASH OPERATIONS」に対する優先権の利益を主張し、当該出願は、2020年1月7日に出願された米国仮特許出願第62/958,136号「PATTERN ADDRESSING FOR SESSION-BASED DASH OPERATIONS」に対する優先権の利益を主張する。これらの先の出願の開示を参照により援用する。
[技術分野]
本開示は、概してハイパーテキスト転送プロトコル上の動的アダプティブストリーミング(DASH, dynamic adaptive streaming over hypertext transfer protocol)のための方法及び装置に関連する実施形態を記載する。
本明細書で提供される背景技術の説明は、本開示の内容を一般的に提示するためのものである。本発明の発明者の研究は、当該研究がこの背景技術の段落に記載されている範囲において、また、出願時に他の点では従来技術として適していない可能性がある説明の側面において、本開示に対する従来技術として明示的にも暗示的にも認められるものではない。
ハイパーテキスト転送プロトコル上の動画専門家集団(MPEG, moving picture expert group)動的アダプティブストリーミング(DASH)は、IPネットワーク上のストリーミングマルチメディアコンテンツのための標準を提供する。DASH標準では、メディアプレゼンテーション記述(MPD, media presentation description)は、DASHサーバからメディアセグメントをダウンロードすることにより、DASHクライアントがメディアコンテンツを適応的にストリーミングするための情報を提供するために使用される。しかし、MPDは全てのDASHクライアントにとって包括的である。したがって、DASHクライアントは、セッションベース記述(SBD, session-based description)ファイルのようなサイドファイルを取得してもよく、これは、クライアントがDASH視聴セッションに固有のMPDを作成するための情報を提供する。
本開示の態様は、HTTP上の動的アダプティブストリーミング(DASH)クライアントにおけるセッションベースDASH動作の方法を提供する。当該方法は、セッションベース記述(SBD)を参照し且つメディアアクセスセッション中のキー名を示すメディアプレゼンテーション記述(MPD)を受信するステップを含んでもよい。MPDは、セグメントのシーケンスに分割されたメディアコンテンツのメディアプレゼンテーションを記述する。MPDによって参照されるSBDが受信されてもよい。SBDは、キー名の時間設定キー値の第1のシーケンスを含む第1の反復パターン要素を含む。第1の反復パターン要素は、キー名の時間設定キー値の第1のシーケンスがタイムライン又はオーダーラインに沿って反復されることを示す。セグメントのシーケンスの現在のセグメントのタイミング又はセグメント番号に対応するキー名の第1のキー値は、SBD内の第1の反復パターン要素に基づいて決定されてもよい。現在のセグメントに対する要求は、メディアコンテンツサーバに送信されてもよい。要求は、キー名と第1のキー値とのペアを含む。
一例では、第1の反復パターン要素は、キー名の時間設定キー値の第1のシーケンスが何回反復されるかを示す反復属性を含む。一例では、反復属性が-1の値を有する場合、キー名の時間設定キー値の第1のシーケンスは、メディアアクセスセッションの終了まで反復される。一例では、反復属性が1の値を有する場合、キー名の時間設定キー値の第1のシーケンスは反復されない。
一例では、第1の反復パターン要素は、ネスト式の第2の反復パターン要素を含む。第2の反復パターン要素は、キー名の時間設定キー値の第2のシーケンスを含む。キー名の時間設定キー値の第2のシーケンスは、第2の反復パターン要素によって示されるように反復され、キー名の時間設定キー値の第3のシーケンスを形成する。キー名の時間設定キー値の第3のシーケンスは、キー名の時間設定キー値の第1のシーケンスの一部である。
一例では、SBDは、第1の反復パターン要素の外側にキー名の時間設定キー値の第4のシーケンスを含む。一例では、第1の反復パターン要素は、第1の反復パターン要素内のキー名の時間設定キー値の第1のシーケンスが適用し始めるときの開始タイミングを示す開始時間属性を含む。一実施形態では、開始タイミングは、基準タイミングに関するオフセットによって表される。
一実施形態では、キー名の時間設定キー値の第1のシーケンスは、オーダーラインに沿って反復され、第1の反復パターン要素は、第1の反復パターン要素内のキー名の時間設定キー値のシーケンスが適用し始める開始セグメント番号を示す開始カウント属性を含む。一実施形態では、開始セグメント番号は、SBDのSBD開始時間属性によって示される開始タイミングに関するセグメント番号である。
本開示の態様は、セッションベースDASH動作の装置を提供する。当該装置は、SBDを参照し且つメディアアクセスセッション中のキー名を示すMPDを受信するように構成された回路を含んでもよい。MPDは、セグメントのシーケンスに分割されたメディアコンテンツのメディアプレゼンテーションを記述する。MPDによって参照されるSBDが受信されてもよい。SBDは、キー名の時間設定キー値の第1のシーケンスを含む第1の反復パターン要素を含む。第1の反復パターン要素は、キー名の時間設定キー値の第1のシーケンスがタイムライン又はオーダーラインに沿って反復されることを示す。セグメントのシーケンスの現在のセグメントのタイミング又はセグメント番号に対応するキー名の第1のキー値は、SBD内の第1の反復パターン要素に基づいて決定されてもよい。現在のセグメントに対する要求は、メディアコンテンツサーバに送信されてもよい。要求は、キー名と第1のキー値とのペアを含む。
また、本開示の態様は、メディアデータを受信するためにコンピュータによって実行されると、コンピュータにセッションベースDASH動作の方法を実行させる命令を記憶した非一時的なコンピュータ読み取り可能媒体を提供する。
開示の対象物の更なる特徴、性質及び様々な利点は、以下の詳細な説明及び添付の図面からより明らかになる。
本開示の一実施形態による、例示的なハイパーテキスト転送プロトコル上の動的アダプティブストリーミング(DASH)システムを示す。 本開示の一実施形態による他の例示的なDASHシステムを示す。 いくつかの実施形態によるセッションベースDASH動作の例示的なプロセスを概説するフローチャートを示す。 一実施形態によるコンピュータシステムの概略図である。
[I.ハイパーテキスト転送プロトコル上の動的アダプティブストリーミング(DASH)及びメディアプレゼンテーション記述(MPD)]
ハイパーテキスト転送プロトコル上の動的アダプティブストリーミング(DASH)は、ウェブサーバ、コンテンツ配信ネットワーク(CDN, content delivery networks)、様々なプロキシ及びキャッシュ等のようなハイパーテキスト転送プロトコル(HTTP)インフラストラクチャを使用してメディアコンテンツのストリーミングを可能にするアダプティブビットレートストリーミング技術である。DASHは、DASHサーバからDASHクライアントへのオンデマンドストリーミング及びライブストリーミングの双方をサポートし、DASHクライアントがストリーミングセッションを制御することを可能にする。それにより、DASHサーバは、大規模配置において、ストリーム適応管理の更なる負荷に対処する必要はない。また、DASHは、DASHクライアントが様々なDASHサーバからストリーミングを選択することを可能にし、したがって、DASHクライアントのためのネットワークの負荷バランシングを更に達成する。DASHは、例えば、ネットワーク条件に適応するためにビットレートを変化させることによって、異なるメディアトラックの間の動的切り替えを提供する。
DASHでは、メディアプレゼンテーション記述(MPD)ファイルは、DASHクライアントがDASHサーバからメディアセグメントをダウンロードすることによりメディアコンテンツを適応的にストリーミングするための情報を提供する。MPDファイルは、階層データモデルによって定義されてもよい。MPDファイルは、セッション開始の遅延を低減するために、分割されて部分的に配信されてもよい。また、MPDファイルは、ストリーミングセッション中に更新されてもよい。いくつかの例では、MPDファイルは、コンテンツアクセシビリティ機能、レーティング及びカメラビューの表現をサポートする。また、DASHは、マルチビュー及びスケーラブル符号化コンテンツの配信をサポートする。
MPDファイルは、1つの期間又は期間のシーケンスを含んでもよい。1つ以上の期間のそれぞれは、MPDファイルの期間要素によって定義されてもよい。MPDファイルは、MPDのavailableStartTime属性と各期間の開始属性を含んでもよい。動的タイプ(例えば、ライブサービスに使用される)を有するメディアプレゼンテーションについては、期間の開始属性とMPD属性のavailableStartTimeとの和及びメディアセグメントの持続時間は、協定世界時(UTC, coordinated universal time)フォーマットでの期間の利用可能時間、特に、対応する期間における各リプレゼンテーションの最初のメディアセグメントを示してもよい。静的タイプ(例えば、オンデマンドサービスに使用される)のメディアプレゼンテーションについては、最初の期間の開始属性は0でもよい。いずれかの他の期間については、開始属性は、最初の期間の開始時間に対する対応する期間の開始時間の時間オフセットを指定してもよい。各期間は、次の期間の開始まで、或いは、最後の期間の場合にはメディアプレゼンテーションの終了まで延長してもよい。期間開始時間は正確であり、全ての過去の期間のメディアを再生した結果として生じる実際のタイミングを反映してもよい。
各期間は、1つ以上のアダプテーションセット(adaptation set)を含んでもよく、アダプテーションセットのそれぞれは、同じメディアコンテンツについての1つ以上のリプレゼンテーション(representation)を含んでもよい。リプレゼンテーションは、オーディオ又はビデオデータの複数の代替符号化バージョンのうち1つでもよい。リプレゼンテーションは、符号化タイプによって、例えば、ビットレート、解像度、及び/又はビデオデータ及びビットレートのコーデック、及び/又はオーディオデータのコーデックによって異なってもよい。リプレゼンテーションという用語は、マルチメディアコンテンツの特定の期間に対応し且つ特定の方法で符号化された符号化オーディオ又はビデオデータのセクションを示すために使用されてもよい。
特定の期間のアダプテーションセットは、MPDファイル内のグループ属性によって示されるグループに割り当てられてもよい。同じグループ内のアダプテーションセットは、一般的に互いに代替的であると考えられる。例えば、特定の期間のビデオデータの各アダプテーションセットは同じグループに割り当てられてもよく、それにより、いずれかのアダプテーションセットが、対応する期間のマルチメディアコンテンツのビデオデータを表示するように復号するために選択されてもよい。いくつかの例では、1つの期間内のメディアコンテンツは、存在する場合には、グループ0からの1つのアダプテーションセットによって表現されてもよく、或いは、それぞれのゼロでないグループからの多くても1つのアダプテーションセットの組み合わせによって表現されてもよい。期間の各リプレゼンテーションについてのタイミングデータは、期間の開始時間に対して表されてもよい。
リプレゼンテーションは、1つ以上のセグメントを含んでもよい。各リプレゼンテーションは、初期化セグメントを含んでもよく、或いは、リプレゼンテーションの各セグメントは、自己初期化してもよい。存在する場合、初期化セグメントは、リプレゼンテーションにアクセスするための初期化情報を含んでもよい。いくつかの場合、初期化セグメントはメディアデータを含まない。セグメントは、ユニフォームリソースロケータ(URL)、ユニフォームリソース名(URN, uniform resource name)又はユニフォームリソース識別子(URI, uniform resource identifier)のような識別子によって一意に参照されてもよい。MPDファイルは各セグメントについて識別子を提供してもよい。いくつかの例では、MPDファイルは、範囲属性の形式でバイト範囲を提供してもよく、範囲属性は、URL、URN又はURIによってアクセス可能なファイル内のセグメントのデータに対応してもよい。
また、各リプレゼンテーションは、1つ以上のメディアコンポーネントを含んでもよく、各メディアコンポーネントは、オーディオ、ビデオ又は(例えば、クローズドキャプションのための)タイミング付きテキストのような、1つの個々のメディアタイプの符号化バージョンに対応してもよい。メディアコンポーネントは、1つのリプレゼンテーション内の連続したメディアセグメントの境界を横切って時間的に連続でもよい。
いくつかの実施形態では、DASHクライアントは、DASHサーバからMPDファイルにアクセスしてダウンロードしてもよい。すなわち、DASHクライアントは、ライブセッションを開始する際に使用するMPDファイルを取得してもよい。MPDファイルに基づいて、選択された各リプレゼンテーションについて、DASHクライアントは、何がサーバ上で利用可能な最新セグメントであるかの決定、次のセグメント及び場合によっては将来のセグメントのセグメント利用可能開始時間の決定、いつセグメントの再生を開始するか及びセグメント内のどのタイムラインから開始するかの決定、並びにいつ新たなMPDファイルを取得/フェッチするかの決定を含む、いくつかの決定を行ってもよい。サービスが再生されると、クライアントは、ライブサービスと自身の再生との間のドリフトを追跡してもよく、これは検出されて補償される必要がある。
[II.セッションベースDASH動作及びセッションベース記述]
MPDファイルは、全てのDASHクライアントにとって包括的になり得る。DASHクライアントのセッションに固有のMPDファイルを作成するために、動画専門家集団(MPEG)は、セッションベースDASH動作をサポートするための方式を開発した。セッションベースDASH動作では、DASHクライアントは、セッションベース記述(SBD)ファイルと呼ばれるサイドファイルを受信してもよく、サイドファイルは、DASHクライアントがセッション毎、場合によってはクライアント毎にMPDファイルをカスタマイズするための情報を提供する。
図1は、本開示の一実施形態による、セッションベースDASHシステム(100)を示す。セッションベースDASHシステム(100)では、MPDファイルは、DASHサーバ(101)(例えば、コンテンツサーバ)からDASHクライアント(102)に送信される。DASHクライアント(102)は、MPDファイルに基づいてDASHサーバ(101)からメディアセグメントを受信してもよい。DASHクライアント(102)は、MPDファイルを更新するためにDASHサーバ(101)に要求を送信してもよい。さらに、DASHクライアント(102)は、DASHサーバ(101)又は第三者(例えば、セッションコントローラ)からSBDファイル(SBDドキュメントとも呼ばれる)を受信してもよい。
様々な例では、複数のDASHサーバは、MPDファイル及びメディアセグメントを送信してもよい。MPDファイル及びメディアセグメントは、異なるDASHサーバからDASHクライアント(102)に送信されてもよい。DASHクライアント(102)から送信された要求を受信したDASHサーバは、メディアセグメントを送信するDASHサーバとは異なってもよい。
本開示の態様によれば、SBDファイルは、更なるメタデータと共に、複数の時間範囲及び対応するキー・値のペア(又は名前・値のペア)を含んでもよい。SBDファイルは、例えば、URLによってMPDファイル内で参照されてもよい。SBDファイルは、DASHクライアント(102)によって受信されたMPDファイルを、DASHクライアント(102)のセッションに固有であるようにカスタマイズするために使用されてもよい。例えば、SBDファイルは、セッション毎に固有のMPDを生成することなく、セッション固有のパラメータをセグメントURLに追加することを可能にすることができる。
図2は、本開示の一実施形態による、他のセッションベースDASHシステム(200)を示す。セッションベースDASHシステム(200)では、マルチメディアコンテンツは、オーディオソース(例えば、マイクロフォン)及びビデオソース(例えば、ビデオカメラ)を含んでもよいコンテンツ生成デバイス(201)(例えば、スマートフォン)によって準備されて生成される。マルチメディアコンテンツは、コンテンツ生成デバイス(201)によって記憶されてもよく、或いは、様々なマルチメディアコンテンツを記憶できるコンテンツサーバ(202)に送信されてもよい。マルチメディアコンテンツは、MPDファイルによって記述されてもよい。MPDファイルは、コンテンツサーバ(202)によって記憶されて更新され、メディアセグメントを取得するためにDASHアクセスクライアント(203)を含むクライアントデバイスによってアクセスされてもよい。コンテンツサーバ(202)は、マルチメディアコンテンツの1つ以上のメディアセグメントについて、DASHアクセスクライアント(203)のようなクライアントデバイスから要求を受信してもよい。
セッション固有の情報を取得するために、DASHアクセスクライアント(203)は、SBDファイルにアクセスするための要求をSBDクライアント(204)(例えば、セッションクライアント)に送信してもよい。SBDファイルは、現在のセッションについての複数の時間範囲及び対応するキー・値のペアを含んでもよい。例えば、DASHアクセスクライアント(203)は、キー名(例えば、パラメータの名前)及び時間をSBDクライアント(204)に送信してもよい。これに応じて、SBDクライアント(204)は、キー名及び時間に対応する値をDASHアクセスクライアント(203)に返信してもよい。DASHアクセスクライアント(203)は、その値を要求内のセグメントURLのクエリ部分に含めてもよい。要求は、対応するメディアセグメントを要求するためにコンテンツサーバ(202)に送信されてもよい。例えば、セグメント要求は、HTTP GET又は部分GET要求でもよい。
SBDクライアント(204)は、セッションコントローラ(205)及びセッションコントローラ(206)のような異なるセッションコントローラから複数のSBDファイルを受信してもよい。
本開示の態様によれば、様々な例において、コンテンツサーバ(202)(例えば、DASHサーバ)の機能の一部又は全部は、ルータ、ブリッジ、プロキシデバイス、スイッチ又は他のデバイスのような、コンテンツ配信ネットワーク(CDN)の1つ以上のデバイスに実装されてもよい。一例では、コンテンツサーバ(202)は、クライアントデバイス(例えば、DASHアクセスクライアント(203))からネットワーク要求を受信するように構成された要求処理ユニットを含んでもよい。例えば、要求処理ユニットは、HTTP GET又は部分GET要求を受信し、要求に応じてマルチメディアコンテンツのデータを提供するように構成されてもよい。要求はセグメントのURLを使用してセグメントを指定してもよい。いくつかの例では、要求はセグメントの1つ以上のバイト範囲を指定してもよく、したがって、部分GET要求を含む。要求処理ユニットは、セグメントのヘッダデータを提供するためのHTTP HEAD要求を提供するように構成されてもよい。
様々な例では、コンテンツ生成デバイス(201)及びコンテンツサーバ(202)は、無線ネットワーク又は有線ネットワークによって結合されてもよく、或いは、直接通信可能に結合されてもよい。コンテンツ生成デバイス(201)及びコンテンツサーバ(202)は、同じデバイスに含まれてもよい。コンテンツサーバ(202)及びセッションコントローラ(205)~(206)は、同じデバイスに含まれてもよい。コンテンツサーバ(202)及びDASHアクセスクライアント(203)は、無線ネットワーク又は有線ネットワークによって結合されてもよい。SBDクライアント(204)及びセッションコントローラ(205)~(206)は、無線ネットワーク又は有線ネットワークによって結合されてもよく、或いは、直接通信可能に結合されてもよい。
いくつかの実施形態では、DASHアクセスクライアント(203)及びSBDクライアント(204)は、同じデバイスに含まれてもよい。デバイスは、DASHアクセスクライアント(203)及びSBDクライアント(204)の双方の機能を実行するDASHクライアントとして機能してもよい。
[III.セッション及びセッションパラメータ]
様々な実施形態では、SBDメカニズムは、セッション毎に固有のMPDを生成することなく、セッション特有の要素をセグメントURLに追加することを可能にする。SBDにおけるタイムライン上の特定の時間範囲に関連するセッションパラメータ列は、SBDクライアント(204)によって解析され、DASHアクセスクライアント(203)によって発行されたHTTPセグメント要求に追加されるパラメータに変換される。SBDは、そのURLによってMPD内で参照されてもよい。
一例として、SBDで伝達される情報は、表1に概念的に提示されるものでもよい。
Figure 0007190589000001
表1において、各行は時間範囲に対応し、各列は1つの名前付きパラメータに対応する。パラメータ「p1」及び「p2」は、セグメント要求URLのクエリ部分において情報を伝達することが想定される。時間範囲00:00:00~00:00:00:42では、「p1」の値は「foo」であり、「p2」の値は42である。時間範囲00:00:42~00:04:20では、「p1」は「bar」であり、「p2」は420である。2秒セグメントの場合、最初の21個のセグメントは、URLクエリパラメータの一部として「p1=foo&p2=42」を含み、次の109個のセグメントは、HTTP GET要求内のセグメントURLの一部として「p1=bar&p2=420」を含む。
[IV.タイムライン及びオーダーライン指定]
いくつかの実施形態では、SBDドキュメントは、識別された(ID)にそれぞれ関連する1つ以上のテーブルを概念的に含んでもよい。各テーブルは、表2に示すように、異なる時間間隔のキー・値のペアの割り当てを含んでもよい。
Figure 0007190589000002
表2において、tiはメディアタイムラインにおける時点を示し、(kj,vi,j)は時間tiのキー・値のペアjである。
或いは、SBDドキュメントは、1つ以上のテーブルを概念的に含んでもよい。各テーブルは、表3に示すように、セグメント順序のためのキー・値のペアの情報を含んでもよい。
Figure 0007190589000003
表3において、niはセグメントniを示すセグメントインデックス又はセグメント番号であり、(kj,vi,j)は、セグメントniからセグメントni+1まで(セグメントni+1を含まない)の全てのセグメントについてのキー・値のペアjである。
[V.SBDについてのMPD伝達]
いくつかの例では、DASHマニフェスト内でセッションベース情報を伝達するために、1つ以上のSBD記述子が定義されてもよい。一例では、SBD記述子は、MPD階層データモデルの1つ以上のレベルにおいて1回以上現れてもよい。
一例では、SBD記述子は、MPDのEssentialPropertyで示されるエッセンシャルプロパティ記述子でもよい。例えば、SBD記述子は、その@schemeIdUriとしてURN「urn:mpeg:dash:sbd:2020」を有してもよく、1つ以上のKeyList要素を含んでもよい。一例として、表4は、SBDを伝達するための要素及び属性を含むMPD EssentialProperty記述子を示す。
Figure 0007190589000004
[VI.セッションベースDASH動作のためのパターンベース指定]
[VI.1 単純タイムライン指定方式]
いくつかの例では、セッション毎及びクライアント毎にMPDをカスタマイズするために、単純タイムライン指定方式(simple timeline addressing scheme)がセッションベースDASH動作に使用される。このようなシナリオでは、SBDファイルは、セグメントのタイミング又は順序、及びSBDテーブル内の各エントリに対応する、対応するキー・値のペアを記述するための要素(キー値タイムライン要素と呼ばれる)を含んでもよい(例えば、表2又は表3と同様)。
表5は、単純SBDタイムライン指定を実装するキー値タイムライン要素の例を示す。キー値タイムライン要素は、拡張可能マークアップ言語(XML, extensible markup language)の形式のSBDファイルの一部でもよい。
Figure 0007190589000005
表5において、KeyValueTimelineで示されるキー値タイムライン要素は、タイムライン要素(行2~行6)を含む。タイムライン要素は、V(行3~行5)で示す3つの値要素を含む。3つの値要素のそれぞれは、dで示される持続時間属性と、vで示されるキー値属性とを含む。さらに、最初の値要素は、sで示される開始時間属性も含む。例えば、1秒のタイムスケールが使用されると仮定すると、キー値タイムライン要素は、基準タイミングに関して0の時間オフセットにおいて適用し始める(例えば、表5におけるキー値タイムライン要素を含むSBDを適用する開始時間、又は表5におけるSBDを参照する期間の開始時間)。行3~行5において、3つのキー値のシーケンスが、それぞれ1秒間、3秒間及び1秒間続く3つの連続した持続時間に適用される。
対応するキー・値のペアのテーブルに反復パターンが存在する場合、そのパターンは、単純タイムライン指定方式に基づいて反復されてもよい。例えば、表5のキー・値のペアが3回反復される場合、対応するSBDファイルは表6に示されるものとなる。行3~行5におけるキー値のシーケンスは、行6~行8及び行9~行11において2回反復される。パターンの反復は、反復回数に比例してSBDファイルの増加をもたらす。
Figure 0007190589000006
[VI.2 パターンベースタイムライン及びオーダーライン指定]
いくつかのアプリケーションでは、クエリのパターンが反復されることがあるので、本開示の態様は、パターンベース指定方式を提供する。パターンベース指定方式を使用することにより、SBDのよりコンパクトな表現が達成でき、これはSBDを伝達するためのビット及びSBDを解析するための時間を節約する。ビット及び時間の節約は、パターン反復回数に比例してもよい。
一実施形態では、表6における時間設定キー値(timed key value)のシーケンスにおける反復パターンを伝達するための要素が定義されてもよい。このような要素は、反復パターン要素又はパターン要素と呼ばれてもよい。表7は、タイムライン指定のためのパターン要素を使用したXMLにおけるキー値タイムライン要素の例を示す。
Figure 0007190589000007
表7に示すように、Pで示される反復パターン要素が行3~行7に含まれる。P要素を使用した結果、表6の反復パターンは、6行も有するパターンを反復する代わりに、行3及び行7において2つの更なるラインを使用して伝達される。さらに、P要素は、P要素内で時間設定キー値のシーケンス(行4~行6)が何回反復されるかを示すために、rで示される反復属性を含む。
表8は、オーダーライン指定のためのパターン要素を使用したXMLにおけるキー値タイムライン要素の例を示す。
Figure 0007190589000008
表8に示すように、P要素は、キー値タイムライン要素内のオーダーライン要素に含まれる。P要素は、行4~行6にOで示される3つのオーダーライン値要素を含む。それぞれのO要素は、vで示されるキー値属性を含む。さらに、P要素は、基準タイミングに関する時間オフセットを示す、cで示される開始セグメント番号属性を含んでもよい。例えば、基準タイミングは、表8におけるキー値タイムライン要素を含むSBDを適用する開始時間、又は表8のSBDへの参照を含む期間の開始時間でもよい。5の値を有する属性cは、基準タイミングに関して最初の4つのセグメントがスキップできることを示してもよい。P要素内のキー値は、第5のセグメントから適用し始める。
[VI.3 パターン指定を有するタイムライン指定]
表9は、本開示のいくつかの実施形態に従って使用されるパターン指定を有する例示的タイムライン要素の意味テーブルを示す。
Figure 0007190589000009

Figure 0007190589000010
表9に示すように、行9及び16で定義されるP要素によって表されるパターン指定は、行7のタイムライン要素及び行14のオーダーライン要素によって表されるタイムライン指定及びオーダーライン指定の双方に使用されてもよい。
さらに、パターン指定は、通常の指定と組み合わされてもよい。例えば、行7のタイムライン要素は、V要素(通常の指定)とP要素(パターン指定)との双方を含んでもよい。行9において定義されたP要素内に、V要素とP要素との双方が存在してもよい。行14におけるオーダーライン要素は、O要素(通常の指定)とP要素(パターン指定)との双方を含んでもよい。行16において定義されたP要素内に、O要素とP要素との双方が存在してもよい。
さらに、パターン指定は、無限のパターン反復(すなわち、セッションの終了まで)を伝達するために使用されてもよい。例えば、行13及び行21において定義されるように、反復属性rは、メディアアクセスセッションの終了までパターンが反復されることを示すために、予め定義された値(例えば-1)を有してもよい。
また、パターン指定は、ネストされた方式で使用されてもよく、いずれかのネストレベルにおいて通常の指定と組み合わされてもよい。行11及び行18に示すように、P要素は、ネスト式パターン反復を表すために、他のP要素を含んでもよい。
通常のタイムライン指定及びオーダーライン指定と同様に、パターン指定は、開始時間属性s又は開始セグメント番号cを使用することによって、時間又はカウントオフセットを有してもよい。タイムライン指定におけるパターン指定は、属性sを用いて時間でオフセットされてもよい。オーダーライン指定におけるパターン指定は、時間(属性sを使用する)又はカウント(属性cを使用する)のいずれかによってオフセットされてもよい。
表5~表9における要素又は属性は、本発明の概念を説明するための例として使用されるが、本開示はこれらの例に限定されない。例えば、様々な実施形態において、反復要素P内の要素及び属性は、タイムライン又はオーダーラインのいずれかにおける時間設定キー値のシーケンスを記述するために、表5~表9において提供されるものと同様のものでもよく或いは同様のものでもない様々な形式を取ってもよい。例えば、キー値は、表7に示すような持続時間のシーケンスの代わりに、複数の時間範囲の開始時間のシーケンスに関連付けられてもよい。
さらに、反復パターン要素は、XMLファイル内の要素として定義される代わりに、タイムライン要素又はオーダーライン要素に含まれる属性として定義されてもよい。或いは、SBDのキー値タイムライン要素は、要素の代わりにオブジェクトとして定義されてもよい。したがって、表9における要素及び属性は、オブジェクトのフォーマットに適した一組のパラメータに適合されてもよい。例えば、反復パターン要素は、時間設定キー値のシーケンスの反復を制御するループパラメータに変換されてもよい。
[VII.セッションベースDASH動作の例示的なプロセス]
図3は、本開示のいくつかの実施形態によるセッションベースDASH動作のプロセス(300)を概説するフローチャートを示す。様々な実施形態では、プロセス(300)は、DASHクライアント(102)内の処理回路のような処理回路によって実行される。いくつかの実施形態では、プロセス(300)は、ソフトウェア命令で実装され、したがって、処理回路がソフトウェア命令を実行したとき、処理回路はプロセス(300)を実行する。プロセス(300)は(S301)で始まり、(S310)に進む。
(S310)において、MPDは、例えばメディアコンテンツサーバから、メディアアクセスセッション中に受信されてもよい。MPDはSBDを参照し、キー名を示してもよい。MPDは、セグメントのシーケンスに分割されたメディアコンテンツのメディアプレゼンテーションを記述してもよい。
(S320)において、MPDによって参照されるSBDは、例えばセッションコントローラから受信されてもよい。SBDは、キー名の時間設定キー値の第1のシーケンスを含む第1の反復パターン要素を含んでもよい。第1の反復パターン要素は、キー名の時間設定キー値の第1のシーケンスがタイムライン又はオーダーラインに沿って反復されることを示す。
(S330)において、セグメントのシーケンスの現在のセグメントのタイミング又はセグメント番号に対応するキー名の第1のキー値は、SBD内の第1の反復パターン要素に基づいて決定されてもよい。
(S340)において、現在のセグメントに対する要求は、メディアコンテンツサーバに送信されてもよい。要求は、キー名と第1のキー値とのペアを含んでもよい。例えば、要求は、URLのクエリ部分に含まれるキー名及び第1のキー値を有するURLを含んでもよい。プロセスは(S399)に進み、(S399)で終了してもよい。
[VIII.コンピュータシステム]
本明細書に記載の技術、コンポーネント(例えば、図1及び図2)、機能及び実施形態は、回路(例えば、集積回路、プロセッサ等)、又はソフトウェアとハードウェアとの組み合わせによって実装されてもよい。いくつかの例では、コンポーネントの機能は、非一時的なコンピュータ読み取り可能媒体に記憶された命令によって実装されてもよい。
上記の技術は、コンピュータ読み取り可能命令を使用してコンピュータソフトウェアとして実装され、1つ以上のコンピュータ読み取り可能媒体に物理的に記憶されてもよい。
例えば、図4は、開示の対象物の特定の実施形態を実装するのに適したコンピュータシステム(400)を示す。
コンピュータソフトウェアは、いずれかの適切な機械コード又はコンピュータ言語を使用して符号化されてもよく、当該機械コード又はコンピュータ言語は、命令を含むコードを生成するために、アセンブリ、コンパイル、リンク又は類似のメカニズムを受けてもよく、当該命令は、1つ以上のコンピュータ中央処理装置(CPU, central processing unit)、グラフィックス処理ユニット(GPU, Graphics Processing Unit)等によって、直接的に或いはインタープリタ、マイクロコード実行等を通じて実行されてもよい。
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、モノのインターネットのデバイス等を含む様々なタイプのコンピュータ又はその構成要素上で実行されてもよい。
コンピュータシステム(400)について図4に示される構成要素は、本質的に例示的なものであり、本開示の実施形態を実装するコンピュータソフトウェアの使用範囲又は機能に関する如何なる限定も示唆することを意図するものではない。また、構成要素の構成も、コンピュータシステム(400)の例示的な実施形態に示される構成要素のいずれか1つ又は組み合わせに関する如何なる依存性又は要件も有するものとして解釈されるべきではない。
コンピュータシステム(400)は、特定のヒューマンインタフェース入力デバイスを含んでもよい。このようなヒューマンインタフェース入力デバイスは、例えば、触覚入力(キーストローク、スワイプ、データグローブの動き等)、オーディオ入力(音声、拍手等)、視覚入力(ジェスチャ等)、嗅覚入力(図示せず)を通じて、1人以上の人間のユーザによる入力に応答してもよい。また、ヒューマンインタフェースデバイスは、オーディオ(例えば、会話、音楽、周辺音)、画像(スキャンされた画像、静止画カメラから取得された写真画像等)、ビデオ(2次元ビデオ、立体ピクチャを含む3次元ビデオ等)のような、人間による意識的入力に必ずしも直接関連しない特定のメディアをキャプチャするために使用されてもよい。
入力ヒューマンインタフェースデバイスは、キーボード(401)、マウス(402)、トラックパッド(403)、タッチ画面(410)、データグローブ(図示せず)、ジョイスティック(405)、マイクロフォン(406)、スキャナ(407)及びカメラ(408)のうち1つ以上を含んでもよい。
また、コンピュータシステム(400)は、特定のヒューマンインタフェース出力デバイスを含んでもよい。このようなヒューマンインタフェース出力デバイスは、例えば、触覚出力、音、光及び嗅覚/味覚を通じて、1人以上の人間のユーザの感覚を刺激してもよい。このようなヒューマンインタフェース出力デバイスは、触覚出力デバイス(例えば、タッチ画面(410)、データグローブ(図示せず)又はジョイスティック(405)による触覚フィードバック、ただし、入力デバイスとして機能しない触覚フィードバックデバイスが存在してもよい)と、オーディオ出力デバイス(スピーカ(409)、ヘッドフォン(図示せず)等)と、視覚出力デバイス(それぞれがタッチ画面入力機能を有しても有さなくてもよく、それぞれが触覚フィードバック機能を有しても有さなくてもよく、いくつかが2次元視覚出力又は立体出力のような手段を通じた3次元以上の出力を出力可能でもよいCRT画面、LCD画面、プラズマ画面、OLED画面を含む画面(410)、仮想現実メガネ(図示せず)、ホログラフィックディスプレイ及びスモークタンク(図示せず))と、プリンタ(図示せず)とを含んでもよい。これらの視覚出力デバイス(画面(410)等)は、グラフィックスアダプタ(450)を通じてシステムバス(448)に接続されてもよい。
また、コンピュータシステム(400)は、CD/DVD又は同様の媒体(421)を有するCD/DVD ROM/RW(420)を含む光媒体のような人間がアクセス可能な記憶デバイス及び関連する媒体、サムドライブ(422)、取り外し可能ハードドライブ又はソリッドステートドライブ(423)、テープ及びフロッピーディスク(図示せず)のようなレガシー磁気媒体、セキュリティドングル(図示せず)のような特殊なROM/ASIC/PLDに基づくデバイス等を含んでもよい。
また、当業者は、ここに開示の対象物に関連して使用される用語「コンピュータ読み取り可能媒体」が伝送媒体、搬送波又は他の非一時的な信号を含まないことを理解すべきである。
また、コンピュータシステム(400)は、1つ以上の通信ネットワーク(455)へのネットワークインタフェース(454)を含んでもよい。1つ以上の通信ネットワーク(455)は、例えば、無線、有線、光でもよい。1つ以上の通信ネットワーク(455)は、ローカル、広域、メトロポリタン、車両及び産業、リアルタイム、遅延耐性等でもよい。1つ以上の通信ネットワーク(455)の例は、イーサネット、無線LAN、セルラネットワーク(GSM、3G、4G、5G、LTE等を含む)、TV有線又は無線広域デジタルネットワーク(ケーブルTV、衛星TV、及び地上放送TVを含む)、車両及び産業(CANBusを含む)等を含む。特定のネットワークは、一般的に、特定の汎用データポート又は周辺バス(449)に取り付けられる外部ネットワークインタフェースアダプタ(例えば、コンピュータシステム(400)のUSBポート等)を必要とし、他のネットワークインタフェースアダプタは、一般的に、以下に説明するシステムバス(例えば、PCコンピュータシステムへのイーサネットインタフェース又はスマートフォンコンピュータシステムへのセルラネットワーク)に取り付けられることによって、コンピュータシステム(400)のコアに統合される。これらのネットワークのいずれかを使用して、コンピュータシステム(400)は、他のエンティティと通信することができる。このような通信は、一方向の受信のみ(例えば、放送TV)、一方向の送信のみ(例えば、特定のCANbusデバイスへのCANbus)でもよく、或いは、例えば、ローカル又は広域デジタルネットワークを使用する他のコンピュータシステムへの双方向でもよい。特定のプロトコル及びプロトコルスタックは、上記のようなネットワーク及びネットワークインタフェースのそれぞれにおいて使用されてもよい。
上記のヒューマンインタフェースデバイス、人間がアクセス可能な記憶デバイス及びネットワークインタフェースは、コンピュータシステム(400)のコア(440)に取り付けられてもよい。
コア(440)は、1つ以上の中央処理装置(CPU)(441)、グラフィックス処理ユニット(GPU)(442)、フィールドプログラマブルゲートアレイ(FPGA, Field Programmable Gate Area)(443)の形式の特殊なプログラム可能処理ユニット、特定のタスク用のハードウェアアクセラレータ(444)等を含んでもよい。これらのデバイスは、読み取り専用メモリ(ROM)(445)、ランダムアクセスメモリ(446)、内部大容量記憶装置(内部のユーザアクセス不可能なハードドライブ、SSD等)(447)と共に、システムバス(448)を通じて接続されてもよい。いくつかのコンピュータシステムでは、システムバス(448)は、更なるCPU、GPU等による拡張を可能にするために、1つ以上の物理プラグの形式でアクセス可能でもよい。周辺デバイスは、コアのシステムバス(448)に直接取り付けられてもよく、或いは、周辺バス(449)を通じて取り付けられてもよい。周辺バスのアーキテクチャは、PCI、USB等を含む。
CPU(441)、GPU(442)、FPGA(443)及びアクセラレータ(444)は特定の命令を実行してもよく、当該特定の命令は、組み合わせによって上記のコンピュータコードを構成してもよい。当該コンピュータコードは、ROM(445)又はRAM(446)に記憶されてもよい。また、一時的なデータは、RAM(446)に記憶されてもよいが、永続的なデータは、例えば、内部大容量記憶装置(447)に記憶されてもよい。1つ以上のCPU(441)、GPU(442)、大容量記憶装置(447)、ROM(445)、RAM(446)等と密接に関連してもよいキャッシュメモリを使用することによって、メモリデバイスのいずれかへの高速記憶及び検索が可能になってもよい。
コンピュータ読み取り可能媒体は、様々なコンピュータに実装された動作を実行するためのコンピュータコードを有してもよい。媒体及びコンピュータコードは、本開示の目的のために特に設計及び構築されたものでよく、或いは、コンピュータソフトウェア分野における当業者に周知で入手可能なようなものでもよい。
限定ではなく一例として、アーキテクチャ(400)、具体的には、コア(440)を有するコンピュータシステムは、1つ以上の有形のコンピュータ読み取り可能媒体に具現されたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータ等を含む)の結果として機能を提供できる。このようなコンピュータ読み取り可能媒体は、コア内部の大容量記憶装置(447)又はROM(445)のような非一時的な性質のコア(440)の特定の記憶装置と同様に、上記のようなユーザがアクセス可能な大容量記憶装置に関連する媒体でもよい。本開示の様々な実施形態を実装するソフトウェアは、このようなデバイスに記憶されてコア(440)によって実行されてもよい。コンピュータ読み取り可能媒体は、特定のニーズに従って、1つ以上のメモリデバイス又はチップを含んでもよい。ソフトウェアは、コア(440)、具体的には、その中のプロセッサ(CPU、GPU、FPGA等を含む)に、RAM(446)に記憶されたデータ構造を定義し、ソフトウェアによって定義された処理に従ってこのようなデータ構造を修正することを含む、本明細書に記載の特定の処理又は特定の処理の特定の部分を実行させてもよい。さらに或いは代替として、コンピュータシステムは、回路(例えば、アクセラレータ(444))内に配線されたロジック又は他の方法で具現されたロジックの結果として、機能を提供してもよく、当該回路は、本明細書に記載の特定の処理又は特定の処理の特定の部分を実行するために、ソフトウェアの代わりに或いはソフトウェアと共に動作してもよい。ソフトウェアへの言及は、ロジックを含み、必要に応じて、その逆も可能である。コンピュータ読み取り可能媒体への言及は、必要に応じて、実行するためのソフトウェアを記憶する回路(集積回路(IC)等)、実行するためのロジックを具現する回路又はこれらの双方を含んでもよい。本開示は、ハードウェア及びソフトウェアのいずれかの適切な組み合わせを含む。
本開示は、いくつかの例示的な実施形態を記載しているが、本開示の範囲内に入る変更、置換及び様々な代替の等価物が存在する。したがって、当業者は、本明細書に明示的に図示又は記載されていないが、本開示の原理を具現し、したがって、本開示の真意及び範囲内にある多数のシステム及び方法を考案することができることが認識される。

Claims (12)

  1. HTTP上の動的アダプティブストリーミング(DASH)クライアントが実行するセッションベースDASH動作の方法であって、
    セッションベース記述(SBD)を参照し且つメディアアクセスセッション中のキー名を示すメディアプレゼンテーション記述(MPD)を受信するステップであって、前記MPDは、セグメントのシーケンスに分割されたメディアコンテンツのメディアプレゼンテーションを記述する、ステップと、
    前記MPDによって参照される前記SBDを受信するステップであって、前記SBDは、前記キー名の時間設定キー値の第1のシーケンスを含む第1の反復パターン要素を含み、前記第1の反復パターン要素は、前記キー名の前記時間設定キー値の前記第1のシーケンスがタイムライン又はオーダーラインに沿って反復されることを示す、ステップと、
    前記SBD内の前記第1の反復パターン要素に基づいて、前記セグメントのシーケンスの現在のセグメントのタイミング又はセグメント番号に対応する前記キー名の第1のキー値を決定するステップと、
    前記現在のセグメントに対する要求をメディアコンテンツサーバに送信するステップであって、前記要求は、前記キー名と前記第1のキー値とのペアを含む、ステップと
    を含む方法。
  2. 前記第1の反復パターン要素は、前記キー名の前記時間設定キー値の前記第1のシーケンスが何回反復されるかを示す反復属性を含む、請求項1に記載の方法。
  3. 前記反復属性が-1の値を有する場合、前記キー名の前記時間設定キー値の前記第1のシーケンスは、前記メディアアクセスセッションの終了まで反復される、請求項2に記載の方法。
  4. 前記反復属性が1の値を有する場合、前記キー名の前記時間設定キー値の前記第1のシーケンスは反復されない、請求項2に記載の方法。
  5. 前記第1の反復パターン要素は、ネスト式の第2の反復パターン要素を含み、前記第2の反復パターン要素は、前記キー名の時間設定キー値の第2のシーケンスを含み、
    前記キー名の前記時間設定キー値の前記第2のシーケンスは、前記第2の反復パターン要素によって示されるように反復され、前記キー名の時間設定キー値の第3のシーケンスを形成し、
    前記キー名の前記時間設定キー値の前記第3のシーケンスは、前記キー名の前記時間設定キー値の前記第1のシーケンスの一部である、請求項1乃至4のうちいずれか1項に記載の方法。
  6. 前記SBDは、前記第1の反復パターン要素の外側に前記キー名の時間設定キー値の第4のシーケンスを含む、請求項1乃至5のうちいずれか1項に記載の方法。
  7. 前記第1の反復パターン要素は、前記第1の反復パターン要素内の前記キー名の前記時間設定キー値の前記第1のシーケンスが適用し始めるときの開始タイミングを示す開始時間属性を含む、請求項1乃至6のうちいずれか1項に記載の方法。
  8. 前記開始タイミングは、基準タイミングに関するオフセットによって表される、請求項7に記載の方法。
  9. 前記キー名の前記時間設定キー値の前記第1のシーケンスは、オーダーラインに沿って反復され、前記第1の反復パターン要素は、前記第1の反復パターン要素内の前記キー名の前記時間設定キー値のシーケンスが適用し始める開始セグメント番号を示す開始カウント属性を含む、請求項1乃至6のうちいずれか1項に記載の方法。
  10. 前記開始セグメント番号は、前記SBDのSBD開始時間属性によって示される開始タイミングに関するセグメント番号である、請求項9に記載の方法。
  11. セッションベースのHTTP上の動的アダプティブストリーミング(DASH)動作の装置であって、
    請求項1乃至10のうちいずれか1項に記載の方法を実行するように構成された回路を含む装置。
  12. プロセッサによって実行されると、前記プロセッサに対して、請求項
    1乃至10のうちいずれか1項に記載の方法を実行させるコンピュータプログラム。
JP2021557410A 2020-01-07 2021-01-04 セッションベースdash動作のためのパターン指定 Active JP7190589B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202062958136P 2020-01-07 2020-01-07
US62/958,136 2020-01-07
US17/095,182 2020-11-11
US17/095,182 US11228796B2 (en) 2020-01-07 2020-11-11 Pattern addressing for session-based dash operations
PCT/US2021/012060 WO2021141847A1 (en) 2020-01-07 2021-01-04 Pattern addressing for session-based dash operations

Publications (2)

Publication Number Publication Date
JP2022526162A JP2022526162A (ja) 2022-05-23
JP7190589B2 true JP7190589B2 (ja) 2022-12-15

Family

ID=76654727

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021557410A Active JP7190589B2 (ja) 2020-01-07 2021-01-04 セッションベースdash動作のためのパターン指定

Country Status (6)

Country Link
US (2) US11228796B2 (ja)
EP (1) EP4088417A4 (ja)
JP (1) JP7190589B2 (ja)
KR (1) KR102635891B1 (ja)
CN (3) CN114208107B (ja)
WO (1) WO2021141847A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11228796B2 (en) * 2020-01-07 2022-01-18 Tencent America LLC Pattern addressing for session-based dash operations

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130246643A1 (en) 2011-08-31 2013-09-19 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive http streaming
WO2015174298A1 (ja) 2014-05-16 2015-11-19 ソニー株式会社 受信装置、受信方法、送信装置、及び、送信方法
WO2016056412A1 (ja) 2014-10-10 2016-04-14 ソニー株式会社 受信装置、受信方法、送信装置、及び、送信方法
JP2018512771A (ja) 2015-03-04 2018-05-17 クアルコム,インコーポレイテッド Lctに基づくdashフォーマットを有するファイルフォーマットベースのストリーミング
JP2019523600A (ja) 2016-07-28 2019-08-22 クゥアルコム・インコーポレイテッドQualcomm Incorporated メディアストリーミングのためのセグメントチャンクの検索およびアクセス
JP2022525298A (ja) 2019-09-30 2022-05-12 テンセント・アメリカ・エルエルシー セッションのメディア・データを受信する方法、装置及びコンピュータ・プログラム
JP2022525740A (ja) 2019-09-30 2022-05-19 テンセント・アメリカ・エルエルシー セッションのメディアデータを受信するための方法、装置、およびプログラム
JP2022526004A (ja) 2020-01-06 2022-05-20 テンセント・アメリカ・エルエルシー Http上の動的アダプティブストリーミングのための方法、装置及びコンピュータプログラム
JP2022526807A (ja) 2020-01-06 2022-05-26 テンセント・アメリカ・エルエルシー メディアコンテンツのメディアデータを受信する方法、装置、およびコンピュータプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105706453B (zh) * 2013-10-30 2019-10-08 索尼公司 发送装置、发送方法、接收装置和接收方法
CN106464929B (zh) * 2014-05-21 2019-11-01 Lg电子株式会社 广播信号发送/接收方法和装置
EP3190764A4 (en) * 2014-09-03 2018-04-25 LG Electronics Inc. Broadcast signal transmission device, broadcast signal reception device, broadcast signal transmission method and broadcast signal reception method
US10129308B2 (en) * 2015-01-08 2018-11-13 Qualcomm Incorporated Session description information for over-the-air broadcast media data
GB2534136A (en) * 2015-01-12 2016-07-20 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US9641578B2 (en) * 2015-04-02 2017-05-02 Arris Enterprises, Inc. Minimizing unicast bandwidth in an adaptive bit rate system
WO2016199513A1 (ja) * 2015-06-09 2016-12-15 ソニー株式会社 受信装置、送信装置、およびデータ処理方法
RU2718118C2 (ru) * 2015-06-12 2020-03-30 Сони Корпорейшн Устройство для обработки информации и способ обработки информации
US11228796B2 (en) * 2020-01-07 2022-01-18 Tencent America LLC Pattern addressing for session-based dash operations

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130246643A1 (en) 2011-08-31 2013-09-19 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive http streaming
WO2015174298A1 (ja) 2014-05-16 2015-11-19 ソニー株式会社 受信装置、受信方法、送信装置、及び、送信方法
WO2016056412A1 (ja) 2014-10-10 2016-04-14 ソニー株式会社 受信装置、受信方法、送信装置、及び、送信方法
JP2018512771A (ja) 2015-03-04 2018-05-17 クアルコム,インコーポレイテッド Lctに基づくdashフォーマットを有するファイルフォーマットベースのストリーミング
JP2019523600A (ja) 2016-07-28 2019-08-22 クゥアルコム・インコーポレイテッドQualcomm Incorporated メディアストリーミングのためのセグメントチャンクの検索およびアクセス
JP2022525298A (ja) 2019-09-30 2022-05-12 テンセント・アメリカ・エルエルシー セッションのメディア・データを受信する方法、装置及びコンピュータ・プログラム
JP2022525740A (ja) 2019-09-30 2022-05-19 テンセント・アメリカ・エルエルシー セッションのメディアデータを受信するための方法、装置、およびプログラム
JP2022526004A (ja) 2020-01-06 2022-05-20 テンセント・アメリカ・エルエルシー Http上の動的アダプティブストリーミングのための方法、装置及びコンピュータプログラム
JP2022526807A (ja) 2020-01-06 2022-05-26 テンセント・アメリカ・エルエルシー メディアコンテンツのメディアデータを受信する方法、装置、およびコンピュータプログラム

Also Published As

Publication number Publication date
US20210211759A1 (en) 2021-07-08
CN117998125A (zh) 2024-05-07
KR20210139449A (ko) 2021-11-22
CN117376614A (zh) 2024-01-09
US20220038762A1 (en) 2022-02-03
WO2021141847A1 (en) 2021-07-15
JP2022526162A (ja) 2022-05-23
EP4088417A4 (en) 2024-02-21
EP4088417A1 (en) 2022-11-16
US11228796B2 (en) 2022-01-18
US11638056B2 (en) 2023-04-25
CN114208107A (zh) 2022-03-18
CN114208107B (zh) 2023-12-08
KR102635891B1 (ko) 2024-02-14

Similar Documents

Publication Publication Date Title
JP7176133B2 (ja) Http上の動的アダプティブストリーミングのための方法、装置及びコンピュータプログラム
JP7297086B2 (ja) セッションのメディアデータを受信するための方法、装置、およびプログラム
JP7182727B2 (ja) セッションのメディア・データを受信する方法、装置及びコンピュータ・プログラム
JP7177285B2 (ja) メディアデータを受信するための方法、装置、およびプログラム
JP7252373B2 (ja) メディアコンテンツのメディアデータを受信する方法、装置、およびコンピュータプログラム
CN115299022B (zh) 基于http的动态自适应流传输的方法和装置
JP7190589B2 (ja) セッションベースdash動作のためのパターン指定
JP7395766B2 (ja) Httpを介した動的適応ストリーミングのための方法および装置
CN115462063A (zh) 用于通过http的动态自适应流传输的方法和设备
CN118055275A (zh) 用于接收媒体内容的媒体数据的处理方法和装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221104

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: 20221115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221205

R150 Certificate of patent or registration of utility model

Ref document number: 7190589

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150