JP2022524073A - Httpによる動的適応ストリーミングのための方法及び装置 - Google Patents

Httpによる動的適応ストリーミングのための方法及び装置 Download PDF

Info

Publication number
JP2022524073A
JP2022524073A JP2021552982A JP2021552982A JP2022524073A JP 2022524073 A JP2022524073 A JP 2022524073A JP 2021552982 A JP2021552982 A JP 2021552982A JP 2021552982 A JP2021552982 A JP 2021552982A JP 2022524073 A JP2022524073 A JP 2022524073A
Authority
JP
Japan
Prior art keywords
event message
event
metadata
message box
media
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.)
Granted
Application number
JP2021552982A
Other languages
English (en)
Other versions
JP7246508B2 (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 JP2022524073A publication Critical patent/JP2022524073A/ja
Application granted granted Critical
Publication of JP7246508B2 publication Critical patent/JP7246508B2/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/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • H04L41/026Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using e-messaging for transporting management information, e.g. email, instant messaging or chat
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/0816Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
    • 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
    • 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/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • 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/75Media network packet handling
    • 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/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • 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
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43074Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of additional data with content streams on the same device, e.g. of EPG data or interactive icon with a TV program
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • 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/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • 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/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • 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/8547Content authoring involving timestamps for synchronizing content

Abstract

本開示の態様は、メディア・データを受信するための方法、装置、及び非一時的なコンピュータ読み取り可能な記憶媒体を提供する。1つの装置は、複数のメタデータ・サンプルを含む複数のセグメントのタイムド・メタデータ・トラックを受信する処理回路を含む。複数のセグメントの各々は複数のメタデータ・サンプルのうちの唯1つを含む。複数のメタデータ・サンプルの各々は1つ以上のイベント・メッセージ・ボックスを含む。タイムド・メタデータ・トラックに対してフラグメンテーション及びデフラグメンテーション・プロセスが実行される。処理回路は、各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間を決定する。処理回路は、各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間に基づいて、各々のイベント・メッセージ・ボックスに含まれるイベント情報を処理する。

Description

参照による援用
本願は2020年9月24日付で出願された米国特許出願第17/031,227号「HTTPによる動的適応ストリーミングのための方法及び装置」に対する優先権の利益を主張しており、同出願は2019年9月30日付で出願された米国仮出願第62/908,238号「埋め込まれたイベント・メッセージ・ボックスを伴うシングル・サンプル・スパース・タイムド・メタデータ・データDASHセグメント及びCMAFフラグメント」に対する優先権の利益を主張している。先の出願の開示全体は参照によりその全体が本願に組み込まれる。
技術分野
本開示はハイパーテキスト・トランスファ・プロトコルによる動的適応ストリーミング(DASH)のための方法及び装置に一般的に関連する実施形態を説明している。
ここに記載される背景の説明は、本開示の状況を一般的に提示するためのものである。目下の発明者の仕事は、その仕事がこの背景のセクションだけでなく、出願時における従来技術としての適格性を有しない可能性のある説明の態様にも及ぶ範囲内において、本開示に対する従来技術として明示的にも黙示的にも認められていない。
ハイパーテキスト・トランスファ・プロトコルによる動画エキスパート・グループ(MPEG)の動的適応ストリーミング(DASH)は、IPネットワークを介するマルチメディア・コンテンツをストリーミングするための規格を提供する。DASH規格は、メディア・セグメントでイベント・メッセージ・ボックスを搬送することを許容する。
本開示の態様は、メディア・データを受信する装置を提供する。1つの装置は、複数のメタデータ・サンプルを含む複数のセグメントのタイムド(又は時間指定された)メタデータ・トラック(timed metadata track)を受信する処理回路を含む。複数のセグメントの各々は複数のメタデータ・サンプルのうちの唯1つを含む。複数のメタデータ・サンプルの各々は1つ以上のイベント・メッセージ・ボックスを含む。処理回路は、各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間を決定する。処理回路は、各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間に基づいて、各々のイベント・メッセージ・ボックスに含まれるイベント情報を処理する。タイムド・メタデータ・トラックに対してフラグメンテーション及びデフラグメンテーション・プロセスが実行される。
実施形態では、各々のイベント・メッセージ・ボックスのタイムスケールは、タイムド・メタデータ・トラックのタイムスケールに等しい。
実施形態では、複数のメタデータ・サンプルの各々のプレゼンテーション時間及び継続時間は、各々のメタデータ・サンプルを含む複数のセグメントの1つの最先のプレゼンテーション時間及び継続時間に等しい。
実施形態では、複数のメタデータ・サンプルの各々のプレゼンテーション時間は、各々のメタデータ・サンプルに含まれるイベント・メッセージ・ボックスのプレゼンテーション時間値及びプレゼンテーション時間デルタ値のうちの1つに対するアンカーである。
実施形態では、各々のイベント・メッセージ・ボックスのスタート時間とアクティブ継続時間の合計は、タイムド・メタデータ・トラックの終了プレゼンテーション時間により制限される。
実施形態では、複数のセグメントの各々は、共通メディア・アプリケーション・フォーマット(CMAF)フラグメント及びハイパーテキスト・トランスファ・プロトコルによる動的適応ストリーミング(DASH)セグメントのうちの1つである。
実施形態では、複数のメタデータ・サンプルの1つに含まれる各々のイベント・メッセージ・ボックスは、異なるスキーム識別子を含む。
実施形態では、フラグメンテーション及びデフラグメンテーション・プロセスは、国際標準化機構(ISO)/国際電気標準会議(IEC)ベースのメディア・ファイル・フォーマット(ISOBMFF)のフラグメンテーション及びデフラグメンテーション・プロセスに基づいている。
本開示の態様はメディア・データを受信する方法を提供する。1つの方法では、複数のメタデータ・サンプルを含む複数のセグメントのタイムド・メタデータ・トラックが受信される。複数のセグメントの各々は複数のメタデータ・サンプルのうちの唯1つを含む。複数のメタデータ・サンプルの各々は1つ以上のイベント・メッセージ・ボックスを含む。各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間が決定される。各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間に基づいて、各々のイベント・メッセージ・ボックスに含まれるイベント情報が処理される。タイムド・メタデータ・トラックに対してフラグメンテーション及びデフラグメンテーション・プロセスが実行される。
本開示の態様はまた、命令を記憶する非一時的なコンピュータ読み取り可能な媒体も提供し、命令は、メディア・データを受信するためにコンピュータにより実行されると、メディア・データを受信するための方法のうちの任意の1つ又は組み合わせをコンピュータに実行させる。
開示される対象事項の更なる特徴、性質、及び種々の利点は、以下の詳細な説明及び添付の図面から更に明らかになるであろう。
本開示の実施形態によるハイパーテキスト・トランスファ・プロトコルによる例示的な動的適応ストリーミング(DASH)システムを示す。
本開示の実施形態による例示的なDASHクライアント・アーキテクチャを示す。
本開示の実施形態による例示的なインバンド・イベント・タイミング・モデルを示す。
本開示の実施形態によるコンテンツ・ストリームに含めることが可能なメディア・トラック及びタイムド・メタデータ・トラックの一例を示す。
幾つかの実施形態に従ったプロセス例を要約したフローチャートを示す。
実施形態によるコンピュータ・システムの概略図である。
I.ハイパーテキスト・トランスファ・プロトコルによる動的適応ストリーミング(DASH)及びメディア・プレゼンテーション記述(MPD)
ハイパーテキスト・トランスファ・プロトコルによる動的適応ストリーミング(DASH)は、ウェブ・サーバー、コンテンツ配信ネットワーク(CDN)、各種プロキシ及びキャッシュなどのハイパーテキスト・トランスファ・プロトコル(HTTP)インフラストラクチャを使用してメディア・コンテンツのストリーミングを可能にする適応ビットレート・ストリーミング技術である。DASHは、DASHサーバーからDASHクライアントへのオンデマンド及びライブ・ストリーミングの両方をサポートし、DASHクライアントがストリーミング・セッションを制御できるようにし、その結果、DASHサーバーは、大規模な配備において、ストリーム適応管理の追加的な負荷に対処することを要しない。また、DASHは、DASHクライアントが様々なDASHサーバーからストリーミングを選択できるようにし、従って、DASHクライアントの利益に関し、ネットワークの更なるロード・バランシングを達成することが可能である。DASHは、例えば、ネットワーク条件に適応するためにビットレートを変化させることによって、異なるメディア・トラック間の動的なスイッチングを提供する。
DASHでは、メディア・プレゼンテーション記述(MPD)ファイルは、DASHサーバーからメディア・セグメントをダウンロードすることにより、メディア・コンテンツを適応的にストリーミングするための情報をDASHクライアントに提供する。MPDファイルは、分割され、部分的に配信されて、セッションのスタート・アップ遅延を減らすことが可能である。MPDファイルはまた、ストリーミング・セッション中に更新されることも可能である。幾つかの例では、MPDファイルは、コンテンツ・アクセシビリティ機能、レーティング、及びカメラ視野の表現をサポートする。DASHはまた、マルチ・ビュー及びスケーラブルなコード化されたコンテンツの配信もサポートする。
MPDファイルは、1つ以上のピリオド(period)のシーケンスを含むことが可能である。1つ以上のピリオドのそれぞれは、MPDファイルにおけるピリオド要素によって定義することが可能である。MPDファイルは、MPDに対するavailableStartTime属性と各ピリオドに対するスタート(start)属性とを含むことが可能である。動的なタイプ(例えば、ライブ・サービスに使用されるもの)のメディア・プレゼンテーションの場合、ピリオドのスタート属性とMPD属性availableStartTimeの合計及びメディア・セグメントの継続時間は、ピリオドの利用可能時間を協定世界時(UTC)の形式で、特に対応するピリオドにおける各リプレゼンテーション(representation)の第1メディア・セグメントを示すことが可能である。静的なタイプ(例えば、オンデマンド・サービスに使用されるもの)のメディア・プレゼンテーションの場合、第1ピリオドのスタート属性は0であるとすることが可能である。その他の何らかのピリオドに関し、スタート属性は、第1ピリオドのスタート時間に対する、対応するピリオドのスタート時間の間の時間オフセットを指定することが可能である。各ピリオドは、次のピリオドのスタートまで、又は最後のピリオドの場合はメディア・プレゼンテーションの終了まで延長することが可能である。ピリオドのスタート時間は正確であり、過去のすべてのピリオドのメディアを再生した結果生じる実際のタイミングを反映することが可能である。
各ピリオドは、1つ以上のアダプテーション・セット(adaptations sets)を含むことが可能であり、アダプテーション・セットの各々は、同一のメディア・コンテンツに対する1つ以上のリプレゼンテーションを含むことが可能である。リプレゼンテーションは、オーディオ又はビデオ・データの多数の代替的な符号化されたバージョンのうちの1つであるとすることが可能である。リプレゼンテーションは、符号化するタイプによって、例えばビットレート、解像度、及び/又はビデオ・データやビットレートのコーデック、及び/又はオーディオ・データのコーデックによって、相違する可能性がある。リプレゼンテーションという用語は、マルチメディア・コンテンツの特定のピリオドに対応する符号化されたオーディオ又はビデオ・データのセクションであって特定の方法で符号化されたものを指すために使用することが可能である。
特定のピリオドのアダプテーション・セットは、MPDファイルのグループ(group)属性で示されたグループに割り当てることが可能である。同じグループ内のアダプテーション・セットは、一般に、互いに代替的であると考えられる。例えば、特定のピリオドのビデオ・データの各アダプテーション・セットは同じグループに割り当てることが可能であり、その結果、対応するピリオドのマルチメディア・コンテンツのビデオ・データを表示するために、任意のアダプテーション・セットを復号化のために選択することが可能である。1つのピリオド内のメディア・コンテンツは、もし存在するならば、グループ0からの1つのアダプテーション・セット、又は幾つかの例では、非ゼロの各グループからの多くとも1つのアダプテーション・セットの組み合わせのうちの何れかによって表現することが可能である。ピリオドの各リプレゼンテーションのタイミング・データは、ピリオドのスタート時間に対して表現されることが可能である。
リプレゼンテーションは1つ以上のセグメントを含むことが可能である。各リプレゼンテーションは初期化セグメントを含むことが可能であり、あるいはリプレゼンテーションの各セグメントは自己初期化することが可能である。存在する場合、初期化セグメントは、リプレゼンテーションにアクセスするための初期化情報を含むことが可能である。場合によっては、初期化セグメントはメディア・データを含まない。セグメントは、ユニフォーム・リソース・ロケータ(URL)、ユニフォーム・リソース・ネーム(URN)、又はユニフォーム・リソース識別子(URI)のような識別子によって一意に参照することが可能である。MPDファイルは各セグメントの識別子を提供することが可能である。幾つかの例では、MPDファイルは、URL、URN、又はURIによってアクセス可能なファイル内のセグメントのデータに対応することが可能なレンジ(range)属性の形式で、バイト範囲を提供することも可能である。
各リプレゼンテーションは、1つ以上のメディア・コンポーネントを含むことも可能であり、各メディア・コンポーネントは、オーディオ、ビデオ、又は(例えば、クローズド・キャプショニングなどの)タイムド・テキストのような、1つの個別的なメディア・タイプの符号化されたバージョンに対応することが可能である。メディア・コンポーネントは、1つのリプレゼンテーション内で連続したメディア・セグメントの境界を横切って、時間的に連続であるとすることが可能である。
幾つかの実施形態では、DASHクライアントはDASHサーバーからMPDファイルにアクセスし、ダウンロードすることが可能である。即ち、DASHクライアントは、ライブ・セッションを開始する際に使用するMPDファイルを取り出すことが可能である。MPDファイルに基づいて、そして選択された各リプレゼンテーションに対して、DASHクライアントは幾つかの決定を行うことが可能であり、決定は、サーバー上で利用可能な最新セグメントは何であるかを決定すること、次のセグメント及び可能性のある将来のセグメントのセグメント利用可能なスタート時間を決定すること、セグメントの再生をスタートさせる時点及びセグメント中のどのタイムラインからかを決定すること、及び新しいMPDファイルをいつ取得/獲得するかを決定することを含む。いったんサービスが再生されると、クライアントは、ライブ・サービスとそれ自身の再生との間のドリフトを追跡することが可能であり、これは検出されて補償されることを要する。
II.イベント・メッセージ・ボックス
国際標準化機構(ISO)/国際電気標準会議(IEC)23009-1のDASH規格は、メディア・セグメントとともにイベントを搬送するためのイベント・メッセージ・ボックスを導入した。ISO/IEC23000-19共通メディア・アプリケーション・フォーマット(CMAF)は、イベント・メッセージ・ボックスが各CMAFチャンクの先頭に含まれることを許容する。CMAFスパース・メタデータ・トラックの一部としてのイベント・メッセージの搬送が議論されている。しかしながら、そのようなトラックがISO/IEC14496-12ISO/IECベース・メディア・ファイル・フォーマット(ISOBMFF)トラックのフラグメンテーション/デフラグメンテーションの要件を満たすかどうかに関して問題が生じる。
本開示は、タイムド・メタデータ・トラックに含まれるイベント情報のような、イベント情報のシグナリング及び処理に関する実施形態を含む。イベント情報は、メディア・プレゼンテーションにおける時点又は期間に関連するメディア・タイムド・イベント(例えば、連続的なオーディオ及び/又はビデオ・プレゼンテーション)に対応することが可能である。例えば、イベント情報は、動的コンテンツの再配置、広告の挿入、オーディオ及び/又はビデオと並行する補足コンテンツの提示、ウェブページに変更を加えること、及びメディア・プレゼンテーションのメディア・タイムライン(例えば、オーディオ及び/又はビデオ・メディア・ストリーム)における特定の地点でトリガされたアプリケーション・コードを実行すること、のために使用することが可能である。更に、イベント情報は、異なる方法によって提供されることが可能である。
メディア・タイムド・イベントは、メディア・ストリームと同期するように意図される情報を搬送するために使用することが可能である。例えば、イベント情報は、プログラムやチャプタタイトル、又は地理的な位置情報のようなメディア・プレゼンテーションの内容を記述するメタデータ(又は、タイムド・メタデータ)を含むことが可能である。更に、イベント情報は、広告挿入キューのような、メディア・プレゼンテーション再生中の特定の時間に関連付けられたメディア・プレーヤに関する制御メッセージを含むことが可能である。
本開示の実施形態は、MPEG-DASHにおいて実施することが可能である。タイムド・メタデータ・トラックは、イベント情報を搬送する埋め込みイベント・メッセージ・ボックス(emsg)を含むことが可能である。タイムド・メタデータ・トラックは、上記のMPDイベント及びインバンド・イベントと同様な情報を搬送するために使用することが可能である。イベント情報は、他のトラックで提供される情報と時間同期したメタデータを含むことが可能である。このような同期化に起因して、タイムド・メタデータ・トラック内のメタデータは、不規則に又は不連続的に提供される可能性があり、そのようなタイムド・メタデータ・トラックは、スパース・タイムド・メタデータ・トラックと言及することが可能である。
タイムド・メタデータ・トラックがメタデータ・サンプルの一部としてイベント・メッセージ・ボックスを搬送する場合、各イベント・メッセージ・ボックスは、アンカーとしてイベント・メッセージ・ボックスを含む共通メディア・アプリケーション・フォーマット(CMAF)チャンク又はトラックのうちの最先のプレゼンテーション時間を使用する独自のタイミングを含むことが可能である。しかしながら、ISO/IECベースのメディア・ファイル・フォーマット(ISOBMFF)は、ISOBMFFトラックが何らかのフラグメンテーション及びデフラグメンテーション・プロセスを経て進行する場合に、データのタイミングが確保されることを要求する。埋め込まれたイベントを搬送するスパース・タイムド・メタデータ・トラックは、フラグメンテーション及びデフラグメンテーション・プロセスにおけるチャンク又はトラック境界の損失に起因して、この要件をサポートできない可能性がある。
本開示は、任意のフラグメンテーション及びデフラグメンテーション・プロセスをサポートし、従って有効なISOBMFFトラックとなる埋め込まれたイベントを搬送するスパース・タイムド・メタデータ・トラックのための方法を提示している。
図1は、本開示の実施形態による例示的なDASHシステム(100)を示す。DASHシステム(100)では、MPDファイルがDASHサーバー(101)(コンテンツ・サーバー)からDASHクライアント(102)へ送信される。DASHクライアント(102)は、MPDファイルに基づいてDASHサーバー(101)からメディア・セグメントを受信することが可能である。DASHクライアント(102)は、MPDファイルを更新するためにリクエストをDASHサーバー(101)に送信することが可能である。DASHサーバー(101)は、プライマリ・コンテンツ(例えば、メイン・プログラム)及び1つ以上のタイムド・メタデータ・トラックを含むコンテンツ・ストリームを提供することが可能である。
図2は、本開示の実施形態による例示的なDASHクライアント・アーキテクチャを示す。DASHクライアント(又はDASHプレーヤ)は、アプリケーション(212)と通信し、(i)MPDイベント、(ii)インバンド・イベント、及び(iii)タイムド・メタデータ・イベントを含む種々のタイプのイベントを処理するように構成することが可能である。
マニフェスト・パーサー(210)は、マニフェスト(例えば、MPD)を解析することが可能である。マニフェストは例えばDASHサーバー(101)によって提供することが可能である。マニフェスト・パーサー(210)は、MPDイベント、インバンド・イベント、及びタイムド・メタデータ・イベントに関する、タイムド・メタデータ・トラックに埋め込まれたイベント情報を抽出することが可能である。抽出されたイベント情報は、DASHロジック(211)(例えば、DASHプレーヤ制御、選択、及び発見的ロジック)に提供されることが可能である。DASHロジック(211)は、イベント情報に基づいて、マニフェストでシグナリングされたイベント・スキームを、アプリケーション(212)に通知することが可能である。
イベント情報は、異なるイベント・ストリームを区別するためのイベント・スキーム情報を含むことが可能である。アプリケーション(212)は、イベント・スキーム情報を使用して、関心のあるイベント・スキームに加入することが可能である。アプリケーション(212)は、更に、1つ以上のサブスクリプション・アプリケーション・プログラミング・インターフェース(API)を介して、加入したスキームの各々に対して所望のディスパッチ・モードを指定することが可能である。例えば、アプリケーション(212)は、関心のある1つ以上のイベント・スキーム及び任意の所望の対応するディスパッチ・モードを識別するサブスクリプション・リクエストを、DASHクライアントに送信することが可能である。
アプリケーション(212)が、1つ以上のタイムド・メタデータ・トラックの一部として配信される1つ以上のイベント・スキームに加入している場合、インバンド・イベント及び‘moof’パーサー(203)は、1つ以上のタイムド・メタデータ・トラックを、タイムド・メタデータ・トラック・パーサー(204)にストリーミングすることが可能である。例えば、インバンド・イベント及び‘moof’パーサー(203)は、DASHロジック(211)からの制御情報に基づいて、ムービー・フラグメント・ボックス(“moof”)を解析し、その後にタイムド・メタデータ・トラックを解析する。
タイムド・メタデータ・トラック・パーサー(204)は、タイムド・メタデータ・トラックに埋め込まれたイベント・メッセージを抽出することが可能である。抽出されたイベント・メッセージは、イベント及びタイミング・メタデータ・バッファ(206)に格納されることが可能である。シンクロナイザ/ディスパッチャ・モジュール(208)(例えば、イベント及びタイムド・メタデータ・シンクロナイザ及びディスパッチャ)は、加入済みイベントを、アプリケーション(212)に対してディスパッチ(又は送信)することが可能である。
MPDに記述されるMPDイベントは、マニフェスト・パーサー(210)によって解析され、イベント&タイムド・メタデータ・バッファ(206)に格納される。例えば、マニフェスト・パーサー(210)は、MPDの各イベント・ストリーム・エレメントを解析し、各イベント・ストリーム・エレメントに記述された各イベントを解析する。MPDでシグナリングされる各イベントに関し、プレゼンテーション時間及びイベント継続時間のようなイベント情報は、イベント&タイムド・メタデータ・バッファ(206)に、イベントと関連付けて格納することが可能である。
インバンド・イベント及び‘moof’パーサー(203)は、インバンド・イベント・メッセージを抽出するためにメディア・セグメントを解析することが可能である。このように識別されたインバンド・イベント並びに関連するプレゼンテーション時間及び継続時間は、イベント&タイムド・メタデータ・バッファ(206)に格納されることが可能である。
従って、イベント&タイムド・メタデータ・バッファ(206)は、MPDイベント、インバンド・イベント、及び/又はタイムド・メタデータ・イベントをそこに格納することが可能である。イベント&タイムド・メタデータ・バッファ(206)は、例えば、先入れ先出し(FIFO)バッファであるとすることが可能である。イベント&タイムド・メタデータ・バッファ(206)は、メディア・バッファ(207)と通信可能に管理されることが可能である。例えば、メディア・セグメントがメディア・バッファ(207)に存在する限り、そのメディア・セグメントに対応する任意のイベント又はタイムド・メタデータを、イベント&タイムド・メタデータ・バッファ(206)に格納することが可能である。
DASHアクセスAPI(202)は、HTTPプロトコル・スタック(201)を介して、メディア・コンテンツ及び様々なメタデータを含むコンテンツ・ストリーム(又はデータフロー)の取得と受信を管理することが可能である。DASHアクセスAPI(202)は、受信したコンテンツ・ストリームを、異なるデータフローに分離することが可能である。インバンド・イベント及び‘moof’パーサー(203)に提供されるデータフローは、メディア・セグメント、1つ以上のタイムド・メタデータ・トラック、及びメディア・セグメントに含まれるインバンド・イベント・シグナリングを含むことが可能である。実施形態では、マニフェスト・パーサー(210)に提供されるデータフローは、MPDを含むことが可能である。
DASHアクセスAPI(202)はマニフェストをマニフェスト・パーサー(210)へ転送することが可能である。イベントを記述する以外に、マニフェストはメディア・セグメントに関する情報を、DASHロジック(211)に提供することが可能であり、DASHロジック(211)は、アプリケーション(212)及びインバンド・イベント&‘moof’パーサー(203)と通信することが可能である。アプリケーション(212)は、DASHクライアントによって処理されるメディア・コンテンツに関連付けることが可能である。アプリケーション(212)、DASHロジック(211)、マニフェスト・パーサー(210)、及びDASHアクセスAPI(202)の間でやり取りされる制御/同期信号は、マニフェストで提供されるメディア・セグメントに関する情報に基づいて、HTTPスタック(201)からのメディア・セグメントの取得を制御することが可能である。
インバンド・イベントと‘moof’パーサー(203) は、メディア・データフローを、メディア・コンテンツ、タイムド・メタデータ・トラックのタイムド・メタデータ、及びメディア・セグメントにおける何らかのシグナリングされたインバンド・イベントに解析することが可能である。メディア・コンテンツを含むメディア・セグメントは、ファイル・フォーマット・パーサー(205)によって解析され、メディア・バッファ(207)に格納されることが可能である。
イベント&タイムド・メタデータ・バッファ(206)に格納されているイベントは、シンクロナイザ/ディスパッチャ(208)が、イベント/メタデータAPIを介して、アプリケーション(212)に関連する利用可能なイベント(又は関心のあるイベント)をアプリケーション(212)に伝えることを可能にすることができる。アプリケーション(212)は、利用可能なイベント(例えば、MPDイベント、インバンド・イベント、又はタイムド・メタデータ・イベント)を処理し、シンクロナイザ/ディスパッチャ(208)に通知することによって、特定のイベント又はタイムド・メタデータに加入するように構成されることが可能である。アプリケーション(212)には関係しないがDASHクライアント自体には関係する、イベント&タイムド・メタデータ・バッファ(206)に格納されたイベントは、シンクロナイザ/ディスパッチャ(208)によってDASHロジック(211)へ更なる処理のために転送されることが可能である。
特定のイベントに加入するアプリケーション(212)に応答して、シンクロナイザ/ディスパッチャ(208)は、アプリケーション(212)が加入しているイベント・スキームに対応するイベント・インスタンス(又はタイムド・メタデータ・サンプル)を、アプリケーション(212)に伝えることが可能である。イベント・インスタンスは、加入リクエストによって指定されるディスパッチ・モード(例えば、特定のイベント・スキームに対するもの)又はデフォルトのディスパッチ・モードに従って、伝達されることが可能である。例えば、オン-受信ディスパッチ・モードでは、イベント・インスタンスは、イベント&タイムド・メタデータ・バッファ(206)での受信の際に、アプリケーション(212)へ送信されることが可能である。一方、オン-スタート・ディスパッチ・モードでは、イベント・インスタンスは、例えばメディア・デコーダ(209)からのタイミング信号に同期して、それらの関連するプレゼンテーション時間でアプリケーション(212)に送信されることが可能である。
DASHクライアント・アーキテクチャにおいて、太いデータフロー・ラインはメディア・データフローを示し、細いデータフロー・ラインはイベント及びタイムド・メタデータ・データフローを示し、破線のデータフロー・ラインは制御及び同期を示すことに留意すべきである。更に、同じ処理モデルをCMAFイベントに使用することが可能である。
図3は、本開示の実施形態によるイベント・メッセージ・ボックスの例示的なタイミング・モデルを示す。タイミング・モデルにおいて、各イベント・メッセージ・ボックスは、メディア・タイムラインにおける3つのタイミング・パラメータ:(i)イベント・メッセージ・ボックスを含むセグメントのうち最先のプレゼンテーション時間であるイベント到着時間(AT)、(ii)イベントがアクティブになるメディア(MPD)タイムライン内の時点であるイベント・プレゼンテーション/スタート時間(ST)、及び(iii)イベントがアクティブである期間におけるイベント継続時間(DU)によって記述することが可能である。
メディア・セグメントの先頭に、イベント・メッセージ・ボックスを挿入することが可能である。従って、イベント・メッセージ・ボックスを搬送するメディア・セグメントのうち最先のプレゼンテーション時間は、メディア・タイムラインにおけるイベント・メッセージ・ボックスの位置と見なすことが可能である。DASHクライアントは、イベント・メッセージ・ボックスのATの前又はその時点でメディア・セグメントを取得及び解析することが可能である。
イベント・メッセージ・ボックスのSTは、トラック内のイベント・メッセージ・ボックスを搬送するメディア・セグメント(例えば、DASHセグメント又はCMAFブロック)の位置からのオフセットを有する可能性がある。STのアンカーは、イベント・メッセージ・ボックスのバージョンに応じて異なる可能性がある。バージョン0のイベント・メッセージ・ボックスの場合、アンカーは、イベント・メッセージ・ボックスを搬送するCMAFフラグメント/DASHセグメントのうち最先のプレゼンテーション時間であるとすることが可能である。バージョン1のイベント・メッセージ・ボックスの場合、アンカーは、イベント・メッセージ・ボックスを搬送するCMAFトラック/DASHピリオドのうちの最先のプレゼンテーション時間であるとすることが可能である。
ISO/IEC23000-19によれば、イベント・メッセージ・ボックスのタイムスケールは、CMAFトラックのMediaHeaderBoxのタイムスケールに等しいとすることが可能である。イベント・メッセージ・ボックスは、CMAFチャンク、CMAFフラグメント、又はCMAFセグメントの先頭に挿入することが可能である。CMAFフラグメントにおけるイベント・メッセージ・ボックス・バージョン0のアンカーは、フラグメントの最先のプレゼンテーション時間である。更に、ISO/IEC23009-1によれば、イベント・メッセージ・ボックスは、セグメントの最初の‘moof’ボックスの前に置くことが可能であるし、又は何らかのメディア・データ・ボックス(‘mdat’)と‘moof’ボックスとの間に配置することも可能である。後者の場合、同一のid値を有する等価な‘emsg’が、何らかのセグメントの最初の‘moof’ボックスの前に存在すべきである。
III.フラグメンテーション/デフラグメンテーション・プロセス
ISOBMFFのフラグメンテーション/デフラグメンテーション・プロセスは、フラグメントの任意のサイズでISOBMFFトラックをフラグメント化及びデフラグメント化することが可能である。何れのプロセスにおいても、結果として生じる非フラグメント化又はフラグメント化されたトラックは、有効なISOBMFFトラックであるはずである。この場合、新しいトラックに含まれるすべてのイベント・メッセージ・ボックスは、正しいタイミングを維持しなければならない。
開示の態様によれば、メタデータ・サンプルの単位で、メタデータ・トラックに関してフラグメンテーション/デフラグメンテーション・プロセスを実行することが可能である。従って、フラグメンテーション/デフラグメンテーション・プロセスの間で、単一メタデータ・サンプルの正しいタイミングを維持することが可能である。しかしながら、複数のメタデータ・サンプルを含むセグメントの場合、セグメントの正確なタイミングが、フラグメンテーション/デフラグメンテーション・プロセスの間に、維持されない可能性がある。更に、セグメントがバージョン0のイベント・メッセージ・ボックスを含み、セグメントの正しいタイミングがフラグメンテーション/デフラグメンテーション・プロセスで維持されない場合、イベント・メッセージ・ボックスの正しいタイミングは維持されない可能性があり、なぜなら、バージョン0のイベント・メッセージ・ボックスのSTのアンカーが、セグメントの最先のプレゼンテーション時間であるからである。
任意のフラグメンテーション及びデフラグメンテーションの下でCMAFフラグメンテーション/DASHセグメントの残存性(survivability)は以下のようにして解析することが可能である。
DASHセグメント/CMAFフラグメントがバージョン0のイベント・メッセージ・ボックスを含む場合、フラグメンテーション/デフラグメンテーション・プロセスは失敗する可能性があり、なぜならイベント・メッセージ・ボックスのアンカーは、DASHセグメント/CMAFフラグメントの最先のプレゼンテーション時間であり、DASH/CMAFメディア・トラックのフラグメンテーション/デフラグメンテーション・プロセスの間に失われる可能性があるからである。
DASHセグメント/CMAFフラグメントがバージョン1のイベント・メッセージ・ボックスを含む場合、フラグメンテーション/デフラグメンテーション・プロセスはパスすることが可能であり、なぜならイベント・メッセージ・ボックスのアンカーは、DASH/CMAFメディア・トラックの最先のプレゼンテーション時間であり、DASH/CMAFメディア・トラックのフラグメンテーション/デフラグメンテーション・プロセス中に保存されているからである。
表1は、フラグメンテーション/デフラグメンテーション・プロセスに対するDASH及びCMAFトラックのステータスをまとめたものである。
表1
Figure 2022524073000002
図4は、本開示の実施形態によるコンテンツ・ストリームに含めることが可能なメディア・トラック及びタイムド・メタデータ・トラックの一例を示す。メタデータ・トラックは、イベント・メッセージ・ボックスを含むことが可能である。イベント・メッセージ・ボックスは、メディア・プレゼンテーション時間に関連する一般的なイベントのシグナリングを提供するために使用することができる。幾つかの実施形態では、DASHクライアントが、MPDで定義されていないスキームでイベント・メッセージ・ボックスを検出した場合、DASHクライアントは、イベント・メッセージ・ボックスを無視する。
イベント・メッセージ・ボックスは、メッセージ・スキーム識別情報(例えば、scheme_id_uri)、イベント・メッセージ・ボックスに含まれるイベントのオプション値、タイミング情報、及びイベント・データを含むことが可能である。タイミング情報は、(例えば、セグメント又はメタデータ・サンプルの開始時間のような)参照プレゼンテーション時間からのイベントのメディア・プレゼンテーション時間デルタ、イベントのメディア・プレゼンテーション時間、及び(例えば、メディア・プレゼンテーション時間における)イベント継続時間のような、他の時間情報に対するタイムスケール(例えば、1秒あたりのティック数)を示すことが可能である。
メタデータ・トラックは、メタデータ・トラックに含まれるメタデータ・サンプルの一部として、イベント・メッセージ・ボックスを搬送することが可能である。更に、メタデータ・サンプルは、1つ以上のイベント・メッセージ・ボックスを含むことが可能である。各イベント・メッセージ・ボックスは、各イベント・メッセージ・ボックスのイベント・スキームであって、スキームURI id及びオプションの値によって定義されるイベント・スキームに属することが可能である。複数のスキームからのイベント・インスタンスは1つ以上のメタデータ・サンプルに含まれることが可能であるので、DASHクライアントがスキームを発見するためには、イベント・スキームがDASHマニフェストで識別されることを必要とする。
DASHは、MPDのイベント・スキームを記述するために使用されることが可能な2つの要素を含む。2つの要素は、MPDイベントのイベント・ストリーム要素(例えば、EventStream)とインバンド・イベントのインバンド・イベント・ストリーム要素(例えば、InbandEventStream)である。どちらのイベント・スキームも、同じ構成を使用することが可能である。
IV.シングル・サンプル・スパース・タイムド・メタデータ
開示の態様によれば、埋め込まれたイベント・メッセージ・ボックスを含むメタデータ・セグメント/フラグメントは、単一サンプルのDASHセグメント/CMAFフラグメント又は複数サンプルのDASHセグメント/CMAFフラグメントであるとすることが可能である。単一サンプルのDASHセグメント/CMAFフラグメントは、唯1つのメタデータ・サンプルを含むことが可能であり、メタデータ・サンプルの継続時間は、DASHセグメント/CMAFフラグメントの継続時間に等しい。複数サンプルのDASHセグメント/CMAFフラグメントは、複数のメタデータ・サンプルを含むことが可能である。
単一サンプルのDASHセグメント/CMAFフラグメントがバージョン0のイベント・メッセージ・ボックスを含む場合、フラグメンテーション/デフラグメンテーション・プロセスはパスすることが可能である。セグメント/フラグメントの最先のプレゼンテーション時間は、セグメント/フラグメントに含まれる唯一のメタデータ・サンプルのプレゼンテーション時間と同じであるので、イベント・メッセージ・ボックスのアンカーが、イベント・メッセージ・ボックスを含むメタデータ・サンプルのプレゼンテーション時間であると考えられる場合、イベント・メッセージ・ボックスのタイミングは、フラグメンテーション/デフラグメンテーションの間、確保されることが可能である。
単一サンプルのDASHセグメント/CMAFフラグメントがバージョン1のイベント・メッセージ・ボックスを含む場合、トラックの最先のプレゼンテーション時間はイベント・メッセージ・ボックスのアンカーであるので、フラグメンテーション/デフラグメンテーション・プロセスはパスすることが可能である。
複数サンプルのDASHセグメント/CMAFフラグメントがバージョン0のイベント・メッセージ・ボックスを含む場合、イベント・メッセージ・ボックスのアンカーはセグメント/フラグメントの最先のプレゼンテーション時間であり、フラグメント/デフラグメンテーション・プロセスの間に失われる可能性があるので、フラグメンテーション/デフラグメンテーション・プロセスは失敗する可能性がある。
複数サンプルのDASHセグメント/CMAFフラグメントがバージョン1のイベント・メッセージ・ボックスを含む場合、トラックの最先のプレゼンテーション時間はイベント・メッセージ・ボックスのアンカーであるので、フラグメンテーション/デフラグメンテーションはパスすることが可能である。
表2は、フラグメンテーション/デフラグメンテーション・プロセスに関して埋め込まれたイベント・メッセージ・ボックスを伴う単一サンプル及び複数サンプルのメタデータ・セグメント/フラグメントのステータスをまとめたものである。
表2
Figure 2022524073000003
開示の態様によれば、ISOBMFFフラグメンテーション/デフラグメンテーション・プロセスを満足するために、CMAFスパース・メタデータ・トラックに対して以下の制約を適用することが可能である:(i)各CMAFフラグメント/DASHセグメントは、唯1つのメタデータ・サンプルのみを含み(又は1つのメタデータ・サンプルに制限され)、メタデータ・サンプルの継続時間はフラグメント/セグメントの継続時間であること;(ii)CMAFフラグメント/DASHセグメントの最先のプレゼンテーション時間は、メタデータ・サンプルのプレゼンテーション時間であること;(iii)フラグメント化されていないトラックにおいて、バージョン0の各イベント・メッセージ・ボックスは、各イベント・メッセージ・ボックスのプレゼンテーション時間オフセット・パラメータ(例えば、presentation_time_delta)のアンカーとして、それぞれのイベント・メッセージ・ボックスを含むメタデータ・サンプルのプレゼンテーション時間を使用することが可能であること;(iv)フラグメント化されていないトラックにおいて、バージョン1の各イベント・メッセージ・ボックスは、各々イベント・メッセージ・ボックスのプレゼンテーション時間パラメータ(例えば、presentation_time)のアンカーとして、トラックの最先のプレゼンテーション時間を使用することが可能であること;(v)全てのケース(例えば、DASH又はCMAF、フラグメント化された、又はフラグメント化されていないケース)において、(例えば、バージョン0又はバージョン1の)各イベント・メッセージ・ボックスのタイムスケールは、トラックのタイムスケールに等しいとすることが可能であること;及び(vi)イベント・メッセージ・ボックスの終了時間(例えば、イベント・スタート時間(プラス)イベント継続時間)は、たとえイベント継続時間の値が、イベント・メッセージ・ボックスの終了時間はトラックの終了時間を超えて長引くことを通知していたとしても、トラックの終了(又は最後の)プレゼンテーション時間を超えて長引かないこと。
制約(i)及び(ii)は、バージョン0のイベント・メッセージ・ボックスのタイミングを変更することなく、トラックのフラグメンテーション/デフラグメンテーションを可能にし、なぜならイベント・メッセージ・ボックスを搬送するメタデータ・サンプルのプレゼンテーション時間は、任意のフラグメンテーション/デフラグメンテーション・プロセスの間に変わらないからである。
制約(iii)と(iv)は、フラグメント化されていないトラックに対する制約であり、フラグメント化された/セグメント化された単一サンプル・スパース・メタデータ・トラックとフラグメント化されていないトラックとの間の関係を維持することが可能である。
制約(v)は、イベントのタイミングがトラック・サンプル・タイミングに整列することを保証することが可能であり、その結果、ファイル・フォーマット・パーサー(205)とメディア・デコーダ(209)が整数演算を使用する場合に、分数ドリフトが存在しないようになる。
制約(vi)は、イベント継続時間を最大トラック継続時間に制限することが可能であり、従って、ファイル・フォーマット・パーサー(205)におけるオペレーションを単純化することが可能であり、なぜなら特に、アプリケーション・イベントが、必ずしもトラック継続時間を有しないアプリケーション(212)に渡されなければならないからである。従って、各イベント・メッセージ・ボックスの継続時間が、イベント・メッセージ・ボックスがトラックの前又は終わりで終了するように設定されている場合、ファイル・フォーマット・パーサー(205)は、イベントをアプリケーション(212)に渡す前にイベント継続時間がトラック継続時間を超える場合に、イベント継続時間を打ち切る必要はない。
単一サンプル・スパース・タイムド・メタデータ・トラックの幾つかの利点は、以下のように列挙することが可能である。各フラグメント/セグメントは1つの(同期)メタデータ・サンプルしか含まないので、単一サンプル・スパース・タイムド・メタデータ・トラックの構造はシンプルである。各メタデータ・サンプルは、様々なスキーム/サブ・スキームを使用する1つ以上のイベント・メッセージ・ボックスを含むことが可能である。フラグメンテーション/デフラグメンテーション・プロセスが単一サンプル・フラグメント/セグメントの制約を保持している場合、フラグメント化されたトラックは、フラグメンテーション/デフラグメンテーション・プロセスをパスすることが可能である。フラグメント化されていないトラックにおけるイベント・メッセージ・ボックスのアンカーの制約は、シンプルであり、(状態を)維持することが容易である。イベント・メッセージ・ボックスのプロパティは、メディア・トラックから個々のトラックを使用して配信されるように保つことができるので、配信は何らかの特定のメディア・トラックに依存しない。
開示の態様によれば、各セグメント/フラグメントが唯1つのメタデータ・サンプルを含むスパース・タイムド・メタデータ・トラックを生成することが可能である。メタデータ・サンプルは、1つ以上のイベント・メッセージ・ボックスを含むことが可能である。各イベント・メッセージ・ボックスは、メッセージ・データ・ペイロードを搬送する関連するサブ・スキーム識別子に対して異なるスキーム識別子及び異なる値を含むことが可能である。イベント・メッセージ・ボックスのタイムスケールは、トラックのタイムスケールに等しい。メタデータ・サンプルのプレゼンテーション時間と継続時間は、メタデータ・サンプルを含むセグメント/フラグメントの最先のプレゼンテーション時間と継続時間に等しい。デフラグメンテーションの場合、イベント・メッセージ・ボックスのプレゼンテーション時間(例えば、presentation_time)及び/又はプレゼンテーション時間オフセット(presentation_time_delta)のアンカーは、イベント・メッセージ・ボックスを含むメタデータ・サンプルのプレゼンテーション時間である。
V.フローチャート
図5は、本開示の実施形態によるプロセス(500)を要約したフローチャートを示す。様々な実施形態において、プロセス(500)は、DASHクライアント(102)における処理回路のような処理回路によって実行される。幾つかの実施形態では、プロセス(500)は、ソフトウェア命令で実現され、従って処理回路がソフトウェア命令を実行すると、処理回路はプロセス(500)を実行する。プロセス(500)は(S510)から始まり、プロセス(500)は、複数のメタデータ・サンプルを含む複数のセグメントのタイムド・メタデータ・トラックを受信する。複数のセグメントの各々は、複数のメタデータ・サンプルのうちの1つのみを含むことが可能である。複数のメタデータ・サンプルの各々は、1つ以上のイベント・メッセージ・ボックスを含む。次いで、プロセス(500)はステップ(S520)に進む。
ステップ(S520)において、プロセス(500)は、各イベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間を決定する。次いで、プロセス(500)はステップ(S530)に進む。
ステップ(S530)において、プロセス(500)は、各イベント・メッセージ・ボックスのスタート時間とアクティブ継続時間に基づいて、各イベント・メッセージ・ボックスに含まれるイベント情報を処理する。次いで、プロセス(500)は終了する。
実施形態において、各イベント・メッセージ・ボックスのタイムスケールは、タイムド・メタデータ・トラックのタイムスケールに等しい。
実施形態において、複数のメタデータ・サンプルの各々のプレゼンテーション時間及び継続時間は、各々のメタデータ・サンプルを含む複数のセグメントのうちの1つの最先のプレゼンテーション時間及び継続時間に等しく、フラグメンテーション及びデフラグメンテーション・プロセスは、タイムド・メタデータ・トラックにおいて実行される。
実施形態において、複数のメタデータ・サンプルの各々のプレゼンテーション時間は、各々のメタデータ・サンプルに含まれるイベント・メッセージ・ボックスのプレゼンテーション時間値及びプレゼンテーション時間デルタ値のうちの1つに対するアンカーである。
実施形態において、各々のイベント・メッセージ・ボックスのスタート時間とアクティブ継続時間の合計は、タイムド・メタデータ・トラックの終了プレゼンテーション時間によって制限される。
実施形態において、複数のセグメントの各々は、CMAFフラグメント及びDASHセグメントのうちの1つである。
実施形態において、複数のメタデータ・サンプルのうちの1つに含まれる各イベント・メッセージ・ボックスは、異なるスキーム識別子を含む。
実施形態において、フラグメンテーション及びデフラグメンテーション・プロセスは、ISO/IEC ISOBMFFフラグメンテーション及びデフラグメンテーション・プロセスに基づいている。
VI.コンピュータ・システム
上述した技術は、コンピュータ読み取り可能な命令を用いるコンピュータ・ソフトウェアであって、1つ以上のコンピュータ読み取り可能な媒体に物理的に記憶されるものとして実装することが可能である。例えば、図6は、開示される対象事項の特定の実施形態を実施するのに適したコンピュータ・システム(900)を示す。
コンピュータ・ソフトウェアは、直接的に又は解釈、マイクロコード実行等を介して、1つ以上のコンピュータ中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)等によって実行されることが可能な命令を含むコードを生成するために、アセンブリ、コンパイル、リンク等のメカニズムの影響を受けることが可能な、任意の適切なマシン・コード又はコンピュータ言語を使用してコーディングされることが可能である。
命令は、例えば、パーソナル・コンピュータ、タブレット・コンピュータ、サーバー、スマートフォン、ゲーミング・デバイス、モノのインターネット(IoT)デバイス等を含む、種々の種類のコンピュータ又はその構成要素において実行されることが可能である。
コンピュータ・システム(600)に関する図6に示される構成要素は、本質的に例示的なものであり、本開示の実施形態を実現するコンピュータ・ソフトウェアの用途又は機能性の範囲に関する如何なる限定も示唆するようには意図されていない。また、構成要素の構成は、コンピュータ・システム(600)の例示的な実施形態に示される構成要素の任意の1つ又は組み合わせに関する何らかの従属性又は要件を有するものとして解釈されるべきではない
コンピュータ・システム(600)は、特定のヒューマン・インターフェース入力デバイスを含んでもよい。このようなヒューマン・インターフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データ・グローブの動き)、オーディオ入力(例えば、声、拍手)、視覚入力(例えば、ジェスチャ)、嗅覚入力(図示せず)を介して、1人以上の人間ユーザーによる入力に応答することができる。また、ヒューマン・インターフェース・デバイスは、オーディオ(例えば、会話、音楽、周囲の音)、画像(例えば、スキャンされた画像、静止画像カメラから得られる写真画像)、ビデオ(例えば、2次元ビデオ、立体ビデオを含む3次元ビデオ)のような、人間による意識的入力に必ずしも直接的に関係しない特定のメディアを捕捉するために使用することも可能である。
入力ヒューマン・インターフェース・デバイスは、キーボード(601)、マウス(602)、トラックパッド(603)、タッチ・スクリーン(610)、データ・グローブ(図示せず)、ジョイスティック(605)、マイクロホン(606)、スキャナ(607)、カメラ(608)のうちの1つ以上を(各々1つしか描いていないが)含んでもよい。
コンピュータ・システム(600)は、特定のヒューマン・インターフェース出力デバイスを含むことも可能である。このようなヒューマン・インターフェース出力デバイスは、例えば、触覚出力、音、光、及び匂い/味を通じて、1人以上の人間ユーザーの感覚を刺激することができる。このようなヒューマン・インターフェース出力デバイスは、触覚出力デバイス(例えば、タッチ・スクリーン(610)、データ・グローブ(図示せず)、ジョイスティック(605)による触覚フィードバックであるが、入力デバイスとして機能しない触覚フィードバック・デバイスであるとすることも可能である)、オーディオ出力デバイス(例えば、スピーカー(609)、ヘッドフォン(図示せず))、視覚的出力デバイス(CRTスクリーン、LCDスクリーン、プラズマ・スクリーン、OLEDスクリーンを含むスクリーン(610)であって、各々はタッチ・スクリーン入力機能を備えているか又は備えておらず、各々は触覚フィードバック能力を備えているか又は備えておらず、それらの内の一部は、ステレオ投影出力のような手段を介して、2次元視覚出力又は3次元以上の次元の出力を出力することが可能であるもの;仮想現実眼鏡(図示せず)、ホログラフィック・ディスプレイ及びスモーク・タンク(図示せず))、及びプリンタ(図示せず)を含むことができる。これらの視覚的な出力デバイス(スクリーン(610)など)は、グラフィックス・アダプタ(650)を介してシステム・バス(648)に接続することが可能である。
コンピュータ・システム(600)は、CD/DVD又は類似の媒体(621)を有するCD/DVD ROM/RW(620)を含む光媒体、サム・ドライブ(922)、取り外し可能なハード・ドライブ又はソリッド・ステート・ドライブ(623)、テープ及びフロッピー・ディスク(図示せず)のようなレガシー磁気媒体、セキュリティ・ドングル(図示せず)のような特殊化されたROM/ASIC/PLDベースのデバイスなどのような、人間がアクセスできる記憶装置及びそれらの関連媒体を含むことも可能である。
当業者は、本開示の対象事項に関連して使用される用語「コンピュータ読み取り可能な媒体」は、伝送媒体、搬送波、又は他の一時的な信号を包含しないことも理解するはずである。
コンピュータ・システム(600)は、1つ以上の通信ネットワーク(655)に対するネットワーク・インターフェース(654)を含むことも可能である。1つ以上の通信ネットワーク(655)は、例えば、無線、有線、光であるとすることが可能である。1つ以上の通信ネットワーク(655)は、更に、ローカル、ワイド・エリア、メトロポリタン、車両及びインダストリアル、リアルタイム、遅延耐性などであるとすることが可能である。1つ以上の通信ネットワーク(655)の例は、イーサーネット、無線LAN、セルラー・ネットワーク(GSM、3G、4G、5G、LTEなどを含む)、TV有線又は無線ワイド・エリア・デジタル・ネットワーク(ケーブルTV、衛星TV、地上放送TVを含む)、CANBusを含む車両及びインダストリアル等を含む。特定のネットワークは、一般に、特定の汎用データ・ポート又は周辺バス(649)に接続される外部ネットワーク・インターフェース・アダプタ(例えば、コンピュータ・システム(600)のUSBポート)を必要とし;他のネットワークは、一般に、後述するようなシステム・バスへの接続によって、コンピュータ・システム(600)のコアに組み込まれる(例えば、イーサーネット・インターフェースはPCコンピュータ・システムに組み込まれ、セルラー・ネットワーク・インターフェースはスマートフォン・コンピュータ・システムに組み込まれる)。これらの任意のネットワークを使用して、コンピュータ・システム(600)は、他のエンティティと通信することができる。このような通信は、片-指向性、受信専用(例えば、放送TV)、片-指向性送信専用(例えば、特定のCANbusデバイスに対するCANbus)、又は、双-指向性、例えばローカル又はワイド・エリア・デジタル・ネットワークを使用する他のコンピュータ・システムに対するものであるとすることが可能である。特定のプロトコル及びプロトコル・スタックは、上述のように、それらのネットワーク及びネットワーク・インターフェースの各々で使用されることが可能である。
前述のヒューマン・インターフェース・デバイス、人間がアクセス可能な記憶装置、及びネットワーク・インターフェースは、コンピュータ・システム(600)のコア(640)に取り付けることが可能である。
コア(640)は、1つ以上の中央処理ユニット(CPU)(641)、グラフィックス処理ユニット(GPU)(642)、フィールド・プログラマブル・ゲート・エリア(FPGA)(943)の形式における特殊なプログラマブル処理ユニット、特定のタスクのためのハードウェア・アクセラレータ(644)などを含むことが可能である。これらのデバイスは、リード・オンリ・メモリ(ROM)(645)、ランダム・アクセス・メモリ(RAM)(646)、内部大容量ストレージ、例えば内部のユーザー・アクセス不能なハード・ドライブ、SSD、及び類似のもの(647)と共に、システム・バス(648)を介して接続されてもよい。幾つかのコンピュータ・システムでは、システム・バス(648)は、追加のCPU、GPUなどによる拡張を可能にするために、1つ以上の物理プラグの形式でアクセス可能であるとすることが可能である。周辺デバイスは、コアのシステム・バス(648)に直接的に或いは周辺バス(949)を介して取り付けることが可能である。周辺バスのアーキテクチャは、PCI、USB等を含む。
CPU(641)、GPU(642)、FPGA(643)、及びアクセラレータ(644)は、組み合わされて、上述のコンピュータ・コードを構築することが可能な特定の命令を実行することが可能である。そのコンピュータ・コードは、ROM(645)又はRAM(646)に記憶することが可能である。一時的なデータはRAM(646)に記憶することも可能である一方、永続的なデータは、例えば内部大容量ストレージ(647)に記憶することが可能である。1つ以上のCPU(641)、GPU(642)、大容量ストレージ(647)、ROM(645)、RAM(646)などと密接に関連付けることが可能なキャッシュ・メモリを使用することによって、任意のメモリ・デバイスに対する高速な記憶及び検索を可能にすることができる。
コンピュータ読み取り可能な媒体は、様々なコンピュータ実装動作を実行するためのコンピュータ・コードをそこに含むことが可能である。媒体及びコンピュータ・コードは、本開示の目的のために特別に設計及び構築されたものであるとすることが可能であり、或いはそれらは、コンピュータ・ソフトウェア分野の当業者に周知で利用可能な種類のものであるとすることが可能である。
限定ではなく一例として、アーキテクチャ(600)、具体的にはコア(640)を有するコンピュータ・システムは、1つ以上の有形のコンピュータ読み取り可能な媒体に具現化されたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータ等を含む)に由来する機能を提供することができる。そのようなコンピュータ読み取り可能な媒体は、コア内部大容量ストレージ(647)又はROM(645)のような非一時的な性質のコア(640)の特定のストレージと同様に、上述したようなユーザー・アクセス可能な大容量ストレージに関連する媒体であるとすることが可能である。本開示の様々な実施形態を実装するソフトウェアは、そのようなデバイスに記憶され、コア(640)によって実行されることが可能である。コンピュータ読み取り可能な媒体は、特定のニーズに応じて、1つ以上のメモリ・デバイス又はチップを含むことが可能である。ソフトウェアは、コア(640)、特にその中のプロセッサ(CPU、GPU、FPGAなどを含む)が、RAM(646)に記憶されたデータ構造を定め、そのようなデータ構造をソフトウェアによって定められたプロセスに従って修正することを含む、本願で説明される特定のプロセス又は特定のプロセスの特定の部分を実行することを引き起こすことが可能である。更に又は代替として、コンピュータ・システムは、回路(例えば、アクセラレータ(644))内に配線されたロジック又はその他の方法で組み込まれたものに由来する機能を提供することが可能であり、回路は、本願で説明される特定のプロセス又は特定のプロセスの特定の部分を実行するために、ソフトウェアの代わりに又はソフトウェアと共に動作することが可能である。ソフトウェアに対する言及は、ロジックを含むことが可能であり、必要に応じてその逆も可能である。コンピュータ読み取り可能な媒体に対する参照は、実行用のソフトウェアを記憶する回路(例えば、集積回路(IC))、実行用のロジックを具現化する回路、又は適切な場合にはそれら両方を含むことが可能である。本開示は、ハードウェア及びソフトウェアの任意の適切な組み合わせを包含する。
本開示は、幾つかの例示的な非限定的な実施例を説明しているが、本開示の範囲内に該当する変更、置換、及び種々の代替的な均等物が存在する。従って、本願で明示的には図示も説明もされていないが、本開示の原理を具現化し、従って本願の精神及び範囲内にある多くのシステム及び方法を、当業者は案出することが可能であろうということが、認められるであろう
(付記1)
メディア・データを受信する方法であって、
複数のメタデータ・サンプルを含む複数のセグメントのタイムド・メタデータ・トラックを受信するステップであって、前記複数のセグメントの各々は前記複数のメタデータ・サンプルのうちの唯1つを含み、前記複数のメタデータ・サンプルの各々は1つ以上のイベント・メッセージ・ボックスを含む、ステップと、
各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間を決定するステップと、
前記各々のイベント・メッセージ・ボックスの前記スタート時間及び前記アクティブ継続時間に基づいて、各々のイベント・メッセージ・ボックスに含まれるイベント情報を処理するステップと
を含み、前記タイムド・メタデータ・トラックに対してフラグメンテーション及びデフラグメンテーション・プロセスが実行される、方法。
(付記2)
各々のイベント・メッセージ・ボックスのタイムスケールは、前記タイムド・メタデータ・トラックのタイムスケールに等しい、付記1に記載の方法。
(付記3)
前記複数のメタデータ・サンプルの各々のプレゼンテーション時間及び継続時間は、前記各々のメタデータ・サンプルを含む前記複数のセグメントの1つの最先のプレゼンテーション時間及び継続時間に等しい、付記1に記載の方法。
(付記4)
前記複数のメタデータ・サンプルの各々の前記プレゼンテーション時間は、前記各々のメタデータ・サンプルに含まれるイベント・メッセージ・ボックスのプレゼンテーション時間値及びプレゼンテーション時間デルタ値のうちの1つに対するアンカーである、付記3に記載の方法。
(付記5)
各々のイベント・メッセージ・ボックスの前記スタート時間と前記アクティブ継続時間の合計は、前記タイムド・メタデータ・トラックの終了プレゼンテーション時間により制限される、付記1に記載の方法。
(付記6)
前記複数のセグメントの各々は、共通メディア・アプリケーション・フォーマット(CMAF)フラグメント及びハイパーテキスト・トランスファ・プロトコルによる動的適応ストリーミング(DASH)セグメントのうちの1つである、付記1に記載の方法。
(付記7)
前記複数のメタデータ・サンプルの1つに含まれる各々のイベント・メッセージ・ボックスは、異なるスキーム識別子を含む、付記1に記載の方法。
(付記8)
前記フラグメンテーション及びデフラグメンテーション・プロセスは、国際標準化機構(ISO)/国際電気標準会議(IEC)ベースのメディア・ファイル・フォーマット(ISOBMFF)のフラグメンテーション及びデフラグメンテーション・プロセスに基づいている、付記1に記載の方法。
(付記9)
メディア・データを受信する装置であって、前記装置は処理回路を含み、
前記処理回路は、複数のメタデータ・サンプルを含む複数のセグメントのタイムド・メタデータ・トラックを受信するように構成され、前記複数のセグメントの各々は前記複数のメタデータ・サンプルのうちの唯1つを含み、前記複数のメタデータ・サンプルの各々は1つ以上のイベント・メッセージ・ボックスを含み、
前記処理回路は、各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間を決定するように構成され、
前記処理回路は、前記各々のイベント・メッセージ・ボックスの前記スタート時間及び前記アクティブ継続時間に基づいて、各々のイベント・メッセージ・ボックスに含まれるイベント情報を処理するように構成され、
前記タイムド・メタデータ・トラックに対してフラグメンテーション及びデフラグメンテーション・プロセスが実行される、装置。
(付記10)
各々のイベント・メッセージ・ボックスのタイムスケールは、前記タイムド・メタデータ・トラックのタイムスケールに等しい、付記9に記載の装置。
(付記11)
前記複数のメタデータ・サンプルの各々のプレゼンテーション時間及び継続時間は、前記各々のメタデータ・サンプルを含む前記複数のセグメントの1つの最先のプレゼンテーション時間及び継続時間に等しい、付記9に記載の装置。
(付記12)
前記複数のメタデータ・サンプルの各々の前記プレゼンテーション時間は、前記各々のメタデータ・サンプルに含まれるイベント・メッセージ・ボックスのプレゼンテーション時間値及びプレゼンテーション時間デルタ値のうちの1つに対するアンカーである、付記11に記載の装置。
(付記13)
各々のイベント・メッセージ・ボックスの前記スタート時間と前記アクティブ継続時間の合計は、前記タイムド・メタデータ・トラックの終了プレゼンテーション時間により制限される、付記9に記載の装置。
(付記14)
前記複数のセグメントの各々は、共通メディア・アプリケーション・フォーマット(CMAF)フラグメント及びハイパーテキスト・トランスファ・プロトコルによる動的適応ストリーミング(DASH)セグメントのうちの1つである、付記9に記載の装置。
(付記15)
前記複数のメタデータ・サンプルの1つに含まれる各々のイベント・メッセージ・ボックスは、異なるスキーム識別子を含む、付記9に記載の装置。
(付記16)
前記フラグメンテーション及びデフラグメンテーション・プロセスは、国際標準化機構(ISO)/国際電気標準会議(IEC)ベースのメディア・ファイル・フォーマット(ISOBMFF)のフラグメンテーション及びデフラグメンテーション・プロセスに基づいている、付記9に記載の装置。
(付記17)
命令を記憶する非一時的なコンピュータ読み取り可能な記憶媒体であって、前記命令は、メディア・データを受信するためにコンピュータにより実行されると、前記コンピュータに、
複数のメタデータ・サンプルを含む複数のセグメントのタイムド・メタデータ・トラックを受信するステップであって、前記複数のセグメントの各々は前記複数のメタデータ・サンプルのうちの唯1つを含み、前記複数のメタデータ・サンプルの各々は1つ以上のイベント・メッセージ・ボックスを含む、ステップと、
各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間を決定するステップと、
前記各々のイベント・メッセージ・ボックスの前記スタート時間及び前記アクティブ継続時間に基づいて、各々のイベント・メッセージ・ボックスに含まれるイベント情報を処理するステップと
を行わせ、前記タイムド・メタデータ・トラックに対してフラグメンテーション及びデフラグメンテーション・プロセスが実行される、非一時的なコンピュータ読み取り可能な記憶媒体。
(付記18)
各々のイベント・メッセージ・ボックスのタイムスケールは、前記タイムド・メタデータ・トラックのタイムスケールに等しい、付記17に記載の非一時的なコンピュータ読み取り可能な記憶媒体。
(付記19)
前記複数のメタデータ・サンプルの各々のプレゼンテーション時間及び継続時間は、前記各々のメタデータ・サンプルを含む前記複数のセグメントの1つの最先のプレゼンテーション時間及び継続時間に等しい、付記17に記載の非一時的なコンピュータ読み取り可能な記憶媒体。
(付記20)
前記複数のメタデータ・サンプルの各々の前記プレゼンテーション時間は、前記各々のメタデータ・サンプルに含まれるイベント・メッセージ・ボックスのプレゼンテーション時間値及びプレゼンテーション時間デルタ値のうちの1つに対するアンカーである、付記19に記載の非一時的なコンピュータ読み取り可能な記憶媒体。

Claims (10)

  1. メディア・データを受信する方法であって、
    複数のメタデータ・サンプルを含む複数のセグメントのタイムド・メタデータ・トラックを受信するステップであって、前記複数のセグメントの各々は前記複数のメタデータ・サンプルのうちの唯1つを含み、前記複数のメタデータ・サンプルの各々は1つ以上のイベント・メッセージ・ボックスを含む、ステップと、
    各々のイベント・メッセージ・ボックスのスタート時間及びアクティブ継続時間を決定するステップと、
    前記各々のイベント・メッセージ・ボックスの前記スタート時間及び前記アクティブ継続時間に基づいて、各々のイベント・メッセージ・ボックスに含まれるイベント情報を処理するステップと
    を含み、前記タイムド・メタデータ・トラックに対してフラグメンテーション及びデフラグメンテーション・プロセスが実行される、方法。
  2. 各々のイベント・メッセージ・ボックスのタイムスケールは、前記タイムド・メタデータ・トラックのタイムスケールに等しい、請求項1に記載の方法。
  3. 前記複数のメタデータ・サンプルの各々のプレゼンテーション時間及び継続時間は、前記各々のメタデータ・サンプルを含む前記複数のセグメントの1つの最先のプレゼンテーション時間及び継続時間に等しい、請求項1又は2に記載の方法。
  4. 前記複数のメタデータ・サンプルの各々の前記プレゼンテーション時間は、前記各々のメタデータ・サンプルに含まれるイベント・メッセージ・ボックスのプレゼンテーション時間値及びプレゼンテーション時間デルタ値のうちの1つに対するアンカーである、請求項3に記載の方法。
  5. 各々のイベント・メッセージ・ボックスの前記スタート時間と前記アクティブ継続時間の合計は、前記タイムド・メタデータ・トラックの終了プレゼンテーション時間により制限される、請求項1-4のうちの何れか1項に記載の方法。
  6. 前記複数のセグメントの各々は、共通メディア・アプリケーション・フォーマット(CMAF)フラグメント及びハイパーテキスト・トランスファ・プロトコルによる動的適応ストリーミング(DASH)セグメントのうちの1つである、請求項1-5のうちの何れか1項に記載の方法。
  7. 前記複数のメタデータ・サンプルの1つに含まれる各々のイベント・メッセージ・ボックスは、異なるスキーム識別子を含む、請求項1-6のうちの何れか1項に記載の方法。
  8. 前記フラグメンテーション及びデフラグメンテーション・プロセスは、国際標準化機構(ISO)/国際電気標準会議(IEC)ベースのメディア・ファイル・フォーマット(ISOBMFF)のフラグメンテーション及びデフラグメンテーション・プロセスに基づいている、請求項1-7のうちの何れか1項に記載の方法。
  9. メディア・データを受信する装置であって、請求項1-8のうちの何れか1項に記載の方法を実行する処理回路を含む、装置。
  10. 請求項1-9のうちの何れか1項に記載の方法をコンピュータに実行させるコンピュータ・プログラム。
JP2021552982A 2019-09-30 2020-09-28 Httpによる動的適応ストリーミングのための方法及び装置 Active JP7246508B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962908238P 2019-09-30 2019-09-30
US62/908,238 2019-09-30
US17/031,227 2020-09-24
US17/031,227 US11303688B2 (en) 2019-09-30 2020-09-24 Methods and apparatuses for dynamic adaptive streaming over HTTP
PCT/US2020/053031 WO2021067171A1 (en) 2019-09-30 2020-09-28 Methods and apparatuses for dynamic adaptive streaming over http

Publications (2)

Publication Number Publication Date
JP2022524073A true JP2022524073A (ja) 2022-04-27
JP7246508B2 JP7246508B2 (ja) 2023-03-27

Family

ID=75162287

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021552982A Active JP7246508B2 (ja) 2019-09-30 2020-09-28 Httpによる動的適応ストリーミングのための方法及び装置

Country Status (6)

Country Link
US (2) US11303688B2 (ja)
EP (1) EP4038860A4 (ja)
JP (1) JP7246508B2 (ja)
KR (1) KR102501184B1 (ja)
CN (2) CN113661692B (ja)
WO (1) WO2021067171A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11303688B2 (en) * 2019-09-30 2022-04-12 Tencent America LLC Methods and apparatuses for dynamic adaptive streaming over HTTP
US11838341B2 (en) 2021-04-19 2023-12-05 Tencent America LLC Signaling schemes in events message tracks
US11588870B2 (en) 2021-04-21 2023-02-21 Tencent America LLC W3C media extensions for processing DASH and CMAF inband events along with media using process@append and process@play mode
US11750678B2 (en) * 2021-05-12 2023-09-05 Tencent America LLC Manifest based CMAF content preparation template for 5G networks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016522622A (ja) * 2013-07-19 2016-07-28 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 動的適応型ハイパーテキスト転送プロトコルストリーミングにおけるメタデータ情報のシグナリングおよび搬送
WO2017122554A1 (ja) * 2016-01-15 2017-07-20 ソニー株式会社 受信装置、送信装置、及び、データ処理方法
JP2019519981A (ja) * 2016-05-19 2019-07-11 クアルコム,インコーポレイテッド 画像中の最上位関心領域

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9986009B2 (en) * 2010-10-06 2018-05-29 Electronics And Telecommunications Research Institute Apparatus and method for providing streaming content
KR101633769B1 (ko) * 2012-04-05 2016-06-27 후아웨이 테크놀러지 컴퍼니 리미티드 Iso 베이스 미디어 파일 형식에 기초한 적응형 스트리밍을 위한 안전한 비동기 이벤트 통지 시스템 및 방법
US9722852B2 (en) * 2013-05-24 2017-08-01 Cisco Technology, Inc. On-demand encapsulating of timed metadata in a network environment
JP2015023575A (ja) * 2013-07-19 2015-02-02 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置及び受信装置
WO2016060410A1 (ko) * 2014-10-14 2016-04-21 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
WO2016140477A1 (ko) * 2015-03-01 2016-09-09 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
US10454985B2 (en) 2015-03-04 2019-10-22 Qualcomm Incorporated File format based streaming with dash formats based on LCT
CN106034262B (zh) * 2015-03-13 2021-01-22 中兴通讯股份有限公司 自适应流媒体处理方法及装置
CN107534793B (zh) * 2015-04-30 2021-08-03 索尼公司 接收装置、传输装置以及数据处理方法
WO2016204815A1 (en) 2015-06-16 2016-12-22 Intel IP Corporation Adaptive video streaming using dynamic radio access network information
CN110214448A (zh) * 2017-01-31 2019-09-06 索尼公司 信息处理装置和方法
US11095907B2 (en) * 2017-03-27 2021-08-17 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US10887645B2 (en) * 2017-07-13 2021-01-05 Qualcomm Incorporated Processing media data using file tracks for web content
US11310540B2 (en) * 2017-11-10 2022-04-19 Qualcomm Incorporated Interfaces between dash aware application and dash client for service interactivity support
US11321516B2 (en) * 2018-01-19 2022-05-03 Qualcomm Incorporated Processing dynamic web content of an ISO BMFF web resource track
US10938872B2 (en) 2018-03-12 2021-03-02 Qualcomm Incorporated Processing interactivity events for streaming media data
US11303688B2 (en) * 2019-09-30 2022-04-12 Tencent America LLC Methods and apparatuses for dynamic adaptive streaming over HTTP
US10979784B1 (en) * 2019-12-02 2021-04-13 CodeShop, B.V. Track format for carriage of event messages

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016522622A (ja) * 2013-07-19 2016-07-28 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 動的適応型ハイパーテキスト転送プロトコルストリーミングにおけるメタデータ情報のシグナリングおよび搬送
WO2017122554A1 (ja) * 2016-01-15 2017-07-20 ソニー株式会社 受信装置、送信装置、及び、データ処理方法
JP2019519981A (ja) * 2016-05-19 2019-07-11 クアルコム,インコーポレイテッド 画像中の最上位関心領域

Also Published As

Publication number Publication date
EP4038860A4 (en) 2023-08-02
US20210099506A1 (en) 2021-04-01
KR102501184B1 (ko) 2023-02-21
JP7246508B2 (ja) 2023-03-27
CN113661692A (zh) 2021-11-16
CN116346794A (zh) 2023-06-27
WO2021067171A1 (en) 2021-04-08
US11303688B2 (en) 2022-04-12
KR20210118944A (ko) 2021-10-01
CN113661692B (zh) 2023-04-18
EP4038860A1 (en) 2022-08-10
US20220191262A1 (en) 2022-06-16

Similar Documents

Publication Publication Date Title
JP7246508B2 (ja) Httpによる動的適応ストリーミングのための方法及び装置
JP7177285B2 (ja) メディアデータを受信するための方法、装置、およびプログラム
CN113748659B (zh) 接收会话的媒体数据的方法、装置和非易失性计算机可读介质
JP7392171B2 (ja) メディア・ストリーミング方法及び装置
JP7252373B2 (ja) メディアコンテンツのメディアデータを受信する方法、装置、およびコンピュータプログラム
CN115299022B (zh) 基于http的动态自适应流传输的方法和装置
KR20220129622A (ko) Http를 통한 동적 적응 스트리밍을 위한 방법들 및 장치들
JP7395766B2 (ja) Httpを介した動的適応ストリーミングのための方法および装置
JP7387209B2 (ja) Http上の動的適応ストリーミングのための方法および装置
CN113364728B (zh) 媒体内容接收方法、装置、存储介质和计算机设备
CN115581124A (zh) 用于处理dash和cmaf带内事件的扩展的w3c媒体扩展

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210907

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230314

R150 Certificate of patent or registration of utility model

Ref document number: 7246508

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150