JP7641766B2 - Content generating device, receiving device, and program - Google Patents
Content generating device, receiving device, and program Download PDFInfo
- Publication number
- JP7641766B2 JP7641766B2 JP2021032098A JP2021032098A JP7641766B2 JP 7641766 B2 JP7641766 B2 JP 7641766B2 JP 2021032098 A JP2021032098 A JP 2021032098A JP 2021032098 A JP2021032098 A JP 2021032098A JP 7641766 B2 JP7641766 B2 JP 7641766B2
- Authority
- JP
- Japan
- Prior art keywords
- segment
- media
- initialization
- segments
- content
- 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Description
本発明は、コンテンツ生成装置、受信装置、及びプログラムに関する。 The present invention relates to a content generating device, a receiving device, and a program.
昨今のインターネットにおけるストリーミング動画配信では、汎用的なWebサーバによりHTTPプロトコルを用いてストリーミング配信する方式が主流となっている。このようなHTTPプロトコルによるストリーミング配信方式(アダプティブストリーミング)の一例としては、国際標準規格のMPEG-DASH(ISO/IEC23009-1)がある。 The mainstream streaming video distribution on the Internet these days is a method of streaming video using a general-purpose web server over the HTTP protocol. One example of such a streaming distribution method (adaptive streaming) using the HTTP protocol is the international standard MPEG-DASH (ISO/IEC23009-1).
MPEG-DASHでは、Webサーバに、初期化セグメント、メディアセグメント、及びそれらのURLや動画コンテンツの属性を記述したマニフェストファイルを用意する。メディアセグメントは、動画コンテンツを一つ又は複数の品質(画面サイズやビットレート等のパラメータ)でエンコードしたストリームをそれぞれ数秒から数十秒程度のファイルに分割したセグメントである。初期化セグメントは、符号化や暗号化等に関する生成パラメータ等、セグメントの提示に必要なメタデータを含む。受信装置は、マニフェストファイルから当該受信装置の画面サイズや伝送路のネットワーク帯域の状態等を考慮して、適時品質を選択して次々とセグメントを受信し、1本の動画コンテンツにつなぎ合わせて再生する(例えば、非特許文献1参照)。 In MPEG-DASH, a web server is provided with initialization segments, media segments, and a manifest file that describes their URLs and the attributes of the video content. Media segments are segments in which a stream of video content encoded at one or more qualities (parameters such as screen size and bit rate) is divided into files of several to several tens of seconds each. Initialization segments contain metadata required for presenting the segments, such as generation parameters related to encoding and encryption. A receiving device selects the appropriate quality from the manifest file, taking into account the screen size of the receiving device and the state of the network bandwidth of the transmission path, receives the segments one after the other, and connects them together into a single video content for playback (for example, see Non-Patent Document 1).
動画のストリーミングサービスの提供方法として、上記の品質切り替えに加え、マルチビュー映像・多言語音声配信や、放送のように編成に従った番組配信等が考えられる。MPEG-DASHにおいては、このようなサービスを可能とするマニフェストの記述方法が定義されている。 In addition to the quality switching mentioned above, other possible methods for providing video streaming services include multi-view video and multilingual audio distribution, and broadcast-like program distribution according to schedule. MPEG-DASH defines a method for writing manifests that will enable such services.
図7にMPEG-DASHのMPD(Media Presentation Description)形式のマニフェストファイルの概念図を示す。MPD形式ではPeriod,AdaptationSet,Representationの順に階層構造となっている。Periodはコンテンツを時間方向に区切った一区画を示しており、図7の例では、それぞれのメディア尺(duration)が300秒のPeriodが連結されていることを示している。Periodは1つ又は複数のAdaptationSetから構成される。 Figure 7 shows a conceptual diagram of a manifest file in the MPD (Media Presentation Description) format for MPEG-DASH. The MPD format has a hierarchical structure in the order of Period, AdaptationSet, and Representation. A Period indicates a section into which content is divided in the time direction, and the example in Figure 7 shows that Periods, each of which has a media duration of 300 seconds, are linked together. A Period is made up of one or more AdaptationSets.
AdaptationSetはメディアコンポーネント(映像、音声、テキスト等)の情報を示しており、同じメディア形式で表現(別角度の映像、別言語の音声等)の異なる複数のコンポーネントを含むことができる。図7の例では映像(mimeType=video/mp4)が2つ、音声(mimeType=audio/mp4)が1つである。AdaptationSetに含まれるそれぞれのメディアコンポーネントの情報はRepresentationで示される。 An AdaptationSet indicates information about media components (video, audio, text, etc.) and can contain multiple components with different expressions in the same media format (video from different angles, audio in different languages, etc.). In the example in Figure 7, there are two videos (mimeType=video/mp4) and one audio (mimeType=audio/mp4). Information about each media component included in an AdaptationSet is indicated by a Representation.
Representationには、メディア要素を構成する実データであるセグメント(Initialization Segment,Media Segment)の情報が記述されている。Initialization Segmentは初期化セグメントを示し、Media Segmentはメディアセグメントを示している。図7の例では、メディアセグメントのファイル名は、セグメント長(duration=5s)ごとにシーケンス番号($Number$)がインクリメントされたものとなる。 Information about segments (Initialization Segment, Media Segment) which are the actual data that make up a media element is described in the Representation. Initialization Segment indicates an initialization segment, and Media Segment indicates a media segment. In the example in Figure 7, the file name of the media segment has a sequence number ($Number$) that is incremented for each segment length (duration = 5s).
このようなマニフェストファイルとすることで、Periodにおいて選択されたメディアコンポーネント(AdaptationSet)を形成するセグメント(初期化セグメント及びメディアセグメント)を順次受信することが可能となるほか、メディアコンポーネントを選択し直すことにより別のメディアコンポーネントを形成するセグメントの受信に切り替え、別映像を表示することが可能となる。 By using such a manifest file, it is possible to sequentially receive the segments (initialization segments and media segments) that form the media component (AdaptationSet) selected in the Period, and by reselecting the media component, it is possible to switch to receiving a segment that forms a different media component and display a different video.
また、非特許文献2には、一つのAdaptationSetに含まれる全Representationの生成パラメータを含む共通の初期化セグメントを用意することで、AdaptationSet内では最初に共通の初期化セグメントを挿入するのみで、Representationの切り替え時に毎回初期化セグメントを挿入することなくアダプティブストリーミングを実現する手法が開示されている。
Non-Patent
また、特許文献1には、ビットレートの異なるストリームへの切り替え前後のピクチャを参照画像として生成したストリームにより切り替え後のストリームの一部を置換して配信ストリームを生成することにより、ストリームの切り替え前後の画質の変化を抑制する手法が開示されている。
図8は、受信装置におけるバッファの概念を示す図である。受信装置は、生成パラメータの異なるストリーム(Representation)に切り替える際には、図8に示すように、切り替え先のRepresentationに属するメディアセグメントをバッファに挿入する直前に、切り替え先のRepresentationの初期化セグメントを挿入する。これにより、後続するメディアセグメントの生成パラメータを適切にバッファの後段のデコーダに通知することができるため、シームレスなアダプティブストリーミングを実現することができる。なお、図8において、各品質のメディアセグメントはそれぞれ3つのブロックで構成されているが、1つのブロックが1つのRepresentationに対応している。 Figure 8 shows the concept of a buffer in a receiving device. When switching to a stream (representation) with different generation parameters, the receiving device inserts an initialization segment of the destination representation immediately before inserting a media segment belonging to the destination representation into the buffer, as shown in Figure 8. This allows the generation parameters of the subsequent media segment to be properly notified to the decoder downstream of the buffer, thereby realizing seamless adaptive streaming. Note that in Figure 8, each media segment of each quality level is composed of three blocks, with one block corresponding to one representation.
しかし、MPEG-DASHの規格では、図7に示したように、一つのRepresentation内には一つの初期化セグメントの情報しか記述できなかった。そのため、受信装置が一つのRepresentationを再生している最中に、該Representationに記述された初期化セグメントの生成パラメータが変更された場合には、受信装置はその内容と変更タイミングを認識することができなかった。 However, in the MPEG-DASH standard, as shown in Figure 7, only one initialization segment's information could be described in one Representation. Therefore, if the generation parameters of the initialization segment described in a Representation were changed while the receiving device was playing that Representation, the receiving device was unable to recognize the contents and timing of the change.
また、非特許文献2に記載の技術を用いても、Representationの再生途中における生成パラメータの変更を受信装置が認識することはできない。また、特許文献1に記載の技術は、解像度や暗号鍵の変更といった生成パラメータの変更に必ずしも適用できる技術ではない。
Even if the technology described in Non-Patent
かかる事情に鑑みてなされた本発明の目的は、受信装置において、ストリーミングコンテンツ再生中の生成パラメータの変更を認識できるようにすることにより、安定したストリーミングを継続することが可能なコンテンツ生成装置、受信装置、及びプログラムを提供することにある。 In light of these circumstances, the object of the present invention is to provide a content generation device, a receiving device, and a program that enable stable continuous streaming by allowing the receiving device to recognize changes in generation parameters during playback of streaming content.
上記課題を解決するため、一実施形態に係るコンテンツ生成装置は、動画コンテンツのセグメント及びマニフェストファイルを生成するコンテンツ生成装置であって、動画コンテンツのセグメントを生成するために使用される生成パラメータに従って、メディアセグメントを生成するメディアセグメント生成部と、前記生成パラメータの変更に合わせて、メディアセグメントをデコードするために必要な情報を含む新たな初期化セグメントを生成する初期化セグメント生成部と、前記メディアセグメントごとに対応する前記初期化セグメントを示すセグメント対応関係情報を含むマニフェストファイルを生成するマニフェスト生成部と、前記メディアセグメント、前記初期化セグメント、及び前記マニフェストファイルを送信するコンテンツ送信部と、を備える。 In order to solve the above problem, a content generation device according to one embodiment is a content generation device that generates segments of video content and a manifest file, and includes: a media segment generation unit that generates media segments according to generation parameters used to generate the segments of video content; an initialization segment generation unit that generates new initialization segments including information required to decode the media segments in accordance with changes to the generation parameters; a manifest generation unit that generates a manifest file including segment correspondence information indicating the corresponding initialization segment for each of the media segments; and a content transmission unit that transmits the media segments, the initialization segments, and the manifest file.
さらに、一実施形態において、前記セグメント対応関係情報は、メディアセグメントのファイル名と、該メディアセグメントに対応する初期化セグメントのファイル名とを特定するための情報であってもよい。 Furthermore, in one embodiment, the segment correspondence information may be information for identifying a file name of a media segment and a file name of an initialization segment that corresponds to the media segment.
さらに、一実施形態において、前記マニフェスト生成部は、MPD(Media Presentation Description)形式に準拠したマニフェストファイルに前記セグメント対応関係情報を追加することにより、1つのRepresentation内に複数の初期化セグメントの情報が記述されたマニフェストファイルを生成してもよい。 Furthermore, in one embodiment, the manifest generation unit may generate a manifest file in which information on multiple initialization segments is described within one representation by adding the segment correspondence relationship information to a manifest file conforming to the MPD (Media Presentation Description) format.
また、上記課題を解決するため、一実施形態に係る受信装置は、動画コンテンツの初期化セグメント、メディアセグメント、及びマニフェストファイルを受信する受信装置であって、メディアセグメントごとに対応する初期化セグメントを示すセグメント対応関係情報が記述されたマニフェストファイルを取得し、メディアセグメントの再生時刻と、初期化セグメント及びメディアセグメントのURLとを対応付けたセグメントURLリストを生成するマニフェスト取得部と、メディアセグメントの再生とともに更新される再生時刻、及び前記セグメントURLリストに基づいて、前記メディアセグメントのURL、及び該メディアセグメントに対応する前記初期化セグメントのURLを抽出するバッファ制御部と、前記メディアセグメントの前記URLに基づいて前記メディアセグメントを取得し、前記初期化セグメントの前記URLに基づいて前記初期化セグメントを取得するセグメント取得部と、を備える。 In order to solve the above problem, a receiving device according to one embodiment is a receiving device that receives an initialization segment, a media segment, and a manifest file of video content, and includes a manifest acquisition unit that acquires a manifest file in which segment correspondence information indicating a corresponding initialization segment for each media segment is described, and generates a segment URL list that associates the playback time of the media segment with the URL of the initialization segment and the URL of the media segment, a buffer control unit that extracts the URL of the media segment and the URL of the initialization segment corresponding to the media segment based on the playback time that is updated as the media segment is played and the segment URL list, and a segment acquisition unit that acquires the media segment based on the URL of the media segment, and acquires the initialization segment based on the URL of the initialization segment.
また、上記課題を解決するため、一実施形態に係るプログラムは、コンピュータを、上記コンテンツ生成装置として機能させる。 To solve the above problem, a program according to one embodiment causes a computer to function as the above content generation device.
また、上記課題を解決するため、一実施形態に係るプログラムは、コンピュータを、上記受信装置として機能させる。 To solve the above problem, a program according to one embodiment causes a computer to function as the receiving device.
本発明によれば、受信装置において、ストリーミングコンテンツ再生中の生成パラメータの変更を認識して継続的に再生することが可能となる。そのため、配信中のストリームの生成パラメータを、ネットワークの帯域変動やサービス事業者の運用要件に合わせて動的に変更することが可能となる。 According to the present invention, a receiving device can recognize changes in generation parameters during playback of streaming content and play the content continuously. This makes it possible to dynamically change the generation parameters of a stream being distributed in accordance with fluctuations in network bandwidth and the operational requirements of the service provider.
以下、本発明の一実施形態について、図面を参照して詳細に説明する。以下に説明する実施形態では一例として、マニフェストファイルをMPEG-DASH(ISO/IEC23009-1)のMPD形式とする。 One embodiment of the present invention will be described in detail below with reference to the drawings. In the embodiment described below, as an example, the manifest file is in MPD format of MPEG-DASH (ISO/IEC23009-1).
図1に、本発明の一実施形態に係る受信装置及びコンテンツ生成装置を備えるコンテンツ配信システムの概略を示す。コンテンツ配信システムは、複数のセグメントとマニフェストファイルにより構成される動画コンテンツを、セグメントごとに配信するシステムである。インターネットを介して、受信装置1と配信サーバ3とが接続される。コンテンツ生成装置2と配信サーバ3とは、専用のローカルネットワークで接続されてもよいし、インターネットを介して接続されてもよい。
Figure 1 shows an overview of a content distribution system including a receiving device and a content generating device according to one embodiment of the present invention. The content distribution system is a system that distributes video content composed of multiple segments and a manifest file on a segment-by-segment basis. The
受信装置1は、配信サーバ3から動画コンテンツのセグメント(初期化セグメント及びメディアセグメント)、及びマニフェストファイルを受信し、ストリーミング再生を行う。
The
コンテンツ生成装置2は、動画コンテンツのセグメント及びマニフェストファイルを生成し、配信サーバ3に供給する。
The
配信サーバ3は、受信装置1によって指定されたURLのマニフェストファイル及びセグメントを受信装置1に配信するサーバであり、例えば一般的なWebサーバとすることができる。
The
(コンテンツ生成装置)
次に、コンテンツ生成装置2の詳細について説明する。図2は、コンテンツ生成装置2の構成例を示すブロック図である。図2に示すコンテンツ生成装置2は、素材映像出力部21と、生成パラメータ変更部22と、メディアセグメント生成部23と、初期化セグメント生成部24と、マニフェスト生成部25と、コンテンツ送信部26と、通信I/F27と、を備える。
(Content generation device)
Next, details of the
素材映像出力部21は、外部から入力された素材映像又は予め蓄積された素材映像から、生成対象のコンテンツをメディアセグメント生成部23に出力する。
The raw
生成パラメータ変更部22は、生成パラメータを設定又は変更し、生成パラメータをメディアセグメント生成部23及び初期化セグメント生成部24に出力する。生成パラメータとは、動画コンテンツのセグメントを生成するために使用されるパラメータであり、メディアの符号化パラメータ(解像度、ビットレート等)や、コンテンツ保護のための暗号化パラメータ等である。生成パラメータは、入力インターフェースを介してユーザにより設定又は変更されてもよい。また、生成パラメータ変更部22は、生成パラメータが変更されるタイミングを示すパラメータ変更トリガを初期化セグメント生成部24に出力する。
The generation
メディアセグメント生成部23は、生成パラメータに従ってメディアセグメントを生成する。メディアセグメント生成部23は、エンコード部231と、セグメント化部232と、を備える。
The media
エンコード部231は、素材映像出力部21から入力した素材映像信号を、生成パラメータ変更部22から入力した生成パラメータに従って、既存の符号化方式により符号化したり、既存の暗号化方式により暗号化したりする。既存の符号化方式は、例えばH.264|MPEG-4 AVC(Advanced Video Coding)、H.265|MPEG-H HEVC(High Efficiency Video Coding)等である。既存の暗号化方式は、例えばAES(Advanced Encryption Standard)方式等である。そして、エンコード部231は、符号化ストリームをセグメント化部232に出力する。なお、音声についても、映像と同様に処理することが可能である。
The
セグメント化部232は、エンコード部231から入力した符号化ストリームを、例えばISO-BMFF(ISO-Base Media File Format)形式でセグメント化して、メディアの情報を含むメディアセグメントを生成する。そして、セグメント化部232は、生成したメディアセグメントをマニフェスト生成部25に出力する。
The
初期化セグメント生成部24は、生成パラメータ変更部22から生成パラメータ及びパラメータ変更トリガを入力する。そして、初期化セグメント生成部24は、生成パラメータの変更に合わせて、メディアセグメントをデコードするために必要な情報を含む新たな初期化セグメントを生成する。例えば、初期化セグメント生成部24は、ISO-BMFF(ISO-Base Media File Format)形式でセグメント化して、生成パラメータを含む初期化セグメントを生成する。そして、初期化セグメント生成部24は、生成した初期化セグメントをマニフェスト生成部25に出力する。
The initialization
マニフェスト生成部25は、セグメント化部232からメディアセグメントを入力し、初期化セグメント生成部24から初期化セグメントを入力する。そして、マニフェスト生成部25は、セグメント対応関係情報を含むマニフェストファイルを生成する。セグメント対応関係情報とは、メディアセグメントごとに対応する初期化セグメントを示す情報である。マニフェスト生成部25は、例えば、従来のMPEG-DASHのMPD形式に準拠したマニフェストファイルに、セグメント対応関係情報を追加する。そして、マニフェスト生成部25は、初期化セグメント、メディアセグメント、及びマニフェストファイルをコンテンツ送信部26に出力する。マニフェストファイルの生成は、セグメントを入力するたびに順次更新する方法で行われてもよいし、全てのセグメントを入力してから行われてもよい。
The
コンテンツ送信部26は、マニフェスト生成部25から入力した初期化セグメント、メディアセグメント、及びマニフェストファイルを、通信I/F27を介して配信サーバ3に送信する。
The
ここで、コンテンツ生成装置2によって生成されたコンテンツの具体例を、図3を参照して説明する。図3は、セグメント対応関係情報を追加したMPD形式のマニフェストファイルの一例(抜粋)を示しており、ここではセグメント対応関係情報を、メディアセグメントのファイル名と、該メディアセグメントに対応する初期化セグメントのファイル名とを特定するための情報としている。
Here, a specific example of content generated by the
図3は、コンテンツ尺が32秒、セグメント長が2秒であり、エンコード開始から8秒ごとに生成パラメータが変更された場合のマニフェストファイルを示している。この例では、コンテンツ尺情報(duration)が32秒のPeriodが一つ存在し、Periodにはメディアの形式が映像(mimeType=”video/mp4”)のAdaptationSetが1つ存在し、AdaptationSetにはRepresentationが一つ存在している。 Figure 3 shows a manifest file where the content duration is 32 seconds, the segment length is 2 seconds, and the generation parameters are changed every 8 seconds from the start of encoding. In this example, there is one Period with content duration information (duration) of 32 seconds, the Period has one AdaptationSet whose media format is video (mimeType="video/mp4"), and the AdaptationSet has one Representation.
ここで、ある再生時刻を含むメディアセグメント及び該メディアセグメントに対応する初期化セグメントのファイル名を特定する方法について説明する。 Here, we explain how to identify a media segment that contains a certain playback time and the file name of the initialization segment that corresponds to that media segment.
図3の2行目のstartの値は、Periodの開始時刻が0であることを示す。図3の4行目のtimescaleの値は、AdaptationSetのタイムスケール(1秒間の目盛り数)が1000であることを示す。 The start value on the second line of Figure 3 indicates that the start time of the Period is 0. The timescale value on the fourth line of Figure 3 indicates that the timescale (number of ticks per second) of the AdaptationSet is 1000.
図3の13行目のmediaの値は、メディアセグメントのファイル名の基準値がs1_$Time$.mp4であることを示し、$Time$をメディアセグメントのタイムスタンプ値で置き換えた値がファイル名となる。また、initializationの値は、初期化セグメントのファイル名の基準値がs1_init_$Index$.mp4であることを示し、$Index$を初期化セグメントの識別子で置き換えた値がファイル名となる。
The value of media on
また、図3の5行目~10行目に示すSegmentTimelineは、それぞれのセグメントの再生開始時刻、セグメント長、及び対応する初期化セグメントの識別子の関係性を示している。S内のtは再生開始時刻、dはセグメント長、iは初期化セグメントの識別子、rはi、dが同じセグメントの継続回数を示している。つまり、6行目のSは開始時刻が0(t=0)でセグメント長が2秒(d/timescale)、初期化セグメントのインデックスが0であり、同じi、dが3セグメント継続することを示している。よって、セグメントのファイル名は、開始時刻が0秒、2秒、4秒、6秒のメディアセグメントがs1_0.mp4、s1_2000.mp4、s1_4000.mp4、s1_6000.mp4となり、これらに対応する初期化セグメントのファイル名が、s1_init_0.mp4となる。また、図5の7行目からは、開始時刻が8秒、10秒、12秒、14秒のメディアセグメントがs1_8000.mp4、s1_10000.mp4、s1_12000.mp4、s1_14000.mp4となり、これらに対応する初期化セグメントがs1_init_1.mp4であることがわかる。このようにして、ある再生時刻を含むメディアセグメントのファイル名と、該メディアセグメントに対応する初期化セグメントのファイル名とを特定することが可能となる。
In addition, the SegmentTimeline shown on lines 5 to 10 of Figure 3 indicates the relationship between the playback start time of each segment, the segment length, and the identifier of the corresponding initialization segment. In S, t indicates the playback start time, d indicates the segment length, i indicates the identifier of the initialization segment, and r indicates the number of times that the same segments with i and d continue. In other words, S on
図3の例では、5行目~10行目及び13行目が、セグメント対応関係情報である。ここで、iは従来の規格では定義されていない識別子であり、$Index$は従来の規格では定義されていない変数である。このように、マニフェスト生成部25は、MPD形式に準拠したマニフェストファイルにセグメント対応関係情報を追加することにより、1つのRepresentation内に複数の初期化セグメントの情報が記述されたマニフェストファイルを生成することが可能となる。図3の例では、id=1のRepresentationに対して、i=0~3の4つの初期化セグメントの情報が記述されている。
In the example of FIG. 3, lines 5 to 10 and
(コンテンツの生成方法)
次に、本発明のコンテンツの生成方法について図4のフローチャートを参照して説明する。
(How content is generated)
Next, a content generating method according to the present invention will be described with reference to the flow chart of FIG.
ステップS001では、生成パラメータ変更部22により、エンコード開始前であれば生成パラメータの初期設定があるか否かを確認し、エンコードを開始していれば生成パラメータの変更があるか否かを確認する。生成パラメータの初期設定又は変更がある場合には(ステップS001-YES)、処理をステップS002に進め、生成パラメータの初期設定及び変更がない場合には(ステップS001-NO)、処理をステップS004に進める。
In step S001, the generation
ステップS002では、生成パラメータ変更部22により、設定又は変更された生成パラメータを新規生成パラメータとして設定する。
In step S002, the generation
ステップS003では、初期化セグメント生成部24により、新規生成パラメータによる初期化セグメントを生成する。
In step S003, the initialization
ステップS004では、エンコード部231により、前回設定した設定済みパラメータを用いてエンコードを継続する。
In step S004, the
ステップS005では、セグメント化部232により、所定の間隔でセグメント化したメディアセグメントを生成する。
In step S005, the
ステップS006では、マニフェスト生成部25により、生成パラメータごとの初期化セグメントと、各生成パラメータによって生成されたメディアセグメントとを対応付ける。
In step S006, the
ステップS007では、マニフェスト生成部25により、マニフェストファイルを更新する。そして、コンテンツ送信部26及び通信I/F27により、初期化セグメント、メディアセグメント、及びマニフェストファイルを送信する。
In step S007, the
ステップS008では、エンコードがコンテンツの最後に到達したか、又はエンコード終了が指示されたか否かを確認する。エンコードがコンテンツの最後に到達するか、エンコード終了指示があった場合には(ステップS008-YES)、処理を終了する。エンコードがコンテンツの最後に到達しておらず、エンコード終了指示がない場合には(ステップS008-NO)、処理を継続する。 In step S008, it is confirmed whether the encoding has reached the end of the content or whether an instruction to end the encoding has been given. If the encoding has reached the end of the content or an instruction to end the encoding has been given (step S008-YES), the processing ends. If the encoding has not reached the end of the content and there has been no instruction to end the encoding (step S008-NO), the processing continues.
なお、上述したコンテンツ生成装置2として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、コンテンツ生成装置2の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのプロセッサによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。
A computer can be suitably used to function as the above-mentioned
(受信装置)
次に、受信装置1の詳細について説明する。図5は、受信装置1の構成例を示すブロック図である。図5に示す受信装置1は、通信I/F10と、マニフェスト取得部11と、セグメントリスト記憶部12と、セグメント取得部13と、バッファ14と、バッファ制御部15と、再生制御部16と、再生制御ユーザI/F17と、再生部18と、表示部19と、を備える。
(Receiving device)
Next, details of the receiving
マニフェスト取得部11は、配信サーバ3から所望の番組のマニフェストファイルを通信I/F10を介して受信する。そして、マニフェスト取得部11は、セグメント対応関係情報が記述されたマニフェストファイルを解析し、メディアセグメントの再生時刻と、初期化セグメント及びメディアセグメントのURLとを対応付けたセグメントURLリストを生成し、セグメントURLリストをセグメントリスト記憶部12に記憶する。
The
セグメント取得部13は、バッファ制御部15から取得対象のセグメントのURLを入力し、該入力したセグメントのURLを含むリクエストを通信I/F10を介して配信サーバ3に要求する。そして、セグメント取得部13は、該リクエストへのレスポンスとして、配信サーバ3から通信I/F10を介してセグメントを受信し、バッファ制御部15に出力する。
The
バッファ14は、バッファ制御部15からセグメントを入力し、メディアセグメントを、初期化セグメント、並びにメディアセグメントの再生開始時刻及び再生継続時間(セグメント長)と対応付けて保存する。そして、バッファ14は、現在の保存中の全メディアセグメントのセグメント再生時刻及び再生継続時間の情報を、バッファ制御部15に出力する。また、バッファ14は、再生部18から要求された再生時刻のセグメントを順次再生部18に出力する。
The
再生制御部16は、現在の再生状態(再生中、停止中)、及び再生部18から入力した現在再生時刻情報を再生制御ユーザI/F17に出力する。また、再生制御部16は、再生制御ユーザI/F17から再生開始、停止の命令を入力すると、再生部18に再生開始・停止を指示する。
The
再生制御ユーザI/F17は、ユーザの操作によって再生を制御する機能である。再生開始・停止ボタンや所望の再生時刻へのシーク操作を可能とするボタン等を備え、コンテンツの開始、終了時刻、及び再生制御部16から入力された再生時刻情報をもとに、現在の再生時刻をグラフィカルに表示してもよい。例えば、再生画面の下部にコンテンツの開始時刻を左端、終了時刻を右端とする横長の棒状で表示し、それと重なるようにつまみ状の操作部分を配置し、つまみ状の操作部分を再生が進むにつれて左端から右端に移動させることによって、再生時間全体のうち今どの部分を再生しているのかを一目で把握することができるようにすることができる。また、つまみ状の操作部分を変更することによって、所望の再生時刻へのシーク操作を行うようにしてもよい。
The playback control user I/
再生部18は、再生制御部16から再生開始時刻を含む再生命令を入力すると、再生開始時刻に基づいてメディアセグメントを順次バッファ14から入力し、メディアセグメントを、該メディアセグメントに対応する初期化セグメントが示すパラメータを用いてデコードし、表示部19に出力する。また、再生部18は、メディアセグメントの再生とともに更新される再生時刻の情報である再生時刻情報を再生制御部16に出力する。また、再生部18は、再生制御部16から停止命令を入力した場合には、再生を停止する。
When the
表示部19は、再生部18から入力したデコード済みのメディアデータをそのメディアの形式に従って表示する。
The
バッファ制御部15は、再生制御部16から入力した再生時刻情報及びセグメントURLリストから、取得対象のセグメントのURLを決定(抽出)し、セグメント取得部13に出力する。また、バッファ制御部15は、セグメント取得部13から入力したセグメントをバッファ14に出力する。
The
(セグメント取得制御方法)
次に、受信装置1のセグメント取得制御方法について、図6のフローチャートを参照して説明する。図6に示すフローチャートは、既にマニフェスト取得部11により、配信サーバ3からマニフェストファイルを取得しており、セグメントURLリストも作成済みの状態から開始するものとする。また、バッファ14は、MPDに記載のPeriodの開始時刻から終了時刻までの範囲を持っており、セグメントを再生開始時刻と再生継続時刻の情報と対応つけて保存しているものとする。また、バッファ14にコンテンツのセグメントが挿入されている範囲をバッファ済みセグメント範囲と称する。
(Segment Acquisition Control Method)
Next, a segment acquisition control method of the receiving
ステップS101では、再生制御ユーザI/F17においていずれかの再生開始が実行されたら、再生制御部16により、再生開始時刻を現在再生時刻としてバッファ制御部15に出力する。
In step S101, when any playback start is executed in the playback control user I/
ステップS102では、バッファ制御部15により、現在再生時刻がバッファ済みセグメント範囲内であるか否かを判定する。バッファ済みセグメント範囲内であれば(ステップS102-YES)、処理をステップS103に進め、バッファ済みセグメント範囲内でなければ(ステップS102-NO)、処理をステップS104に進める。
In step S102, the
ステップS103では、バッファ制御部15により、セグメントURLリストから、バッファ済みセグメント範囲に続くメディアセグメントのURL、及び該メディアセグメントに対応する初期化セグメントのURLを抽出する。
In step S103, the
ステップS104では、バッファ制御部15により、セグメントURLリストから、現在開始時刻を含むメディアセグメントのURL、及び該メディアセグメントに対応する初期化セグメントのURLを抽出する。
In step S104, the
ステップS105では、バッファ制御部15により、該抽出した初期化セグメントのURLが前回取得したメディアセグメントのURLと異なるか否か判定する。異なる場合は(ステップS105-YES)、処理をステップS106に進め、一致する場合は(ステップS105-NO)、処理をステップS108に進める。
In step S105, the
ステップS106では、セグメント取得部13により、該抽出した初期化セグメントのURLを含むセグメント要求を配信サーバ3に送信し、該要求に対応する初期化セグメントを受信する。
In step S106, the
ステップS107では、バッファ制御部15により、該受信した初期化セグメントをバッファ14に挿入する。
In step S107, the
ステップS108では、セグメント取得部13により、ステップS103又はステップS104で抽出したメディアセグメントのURLを含むセグメント要求を配信サーバ3に送信し、該要求に対応するメディアセグメントを受信する。
In step S108, the
ステップS109では、バッファ制御部15により、該受信したメディアセグメントをバッファ14に挿入する。
In step S109, the
ステップS110では、セグメントURLリストの最後に到達したか、又は停止ボタンが押されたか否かを確認する。セグメントURLリストの最後に到達するか、停止ボタンが押された場合には(ステップS110-YES)、処理を終了する。セグメントURLリストの最後に達しておらず、停止ボタンが押されていない場合には(ステップS110-NO)、処理をステップS1111に進める。 In step S110, it is confirmed whether the end of the segment URL list has been reached or the stop button has been pressed. If the end of the segment URL list has been reached or the stop button has been pressed (step S110-YES), the process ends. If the end of the segment URL list has not been reached and the stop button has not been pressed (step S110-NO), the process proceeds to step S1111.
ステップS111では、再生部18により、再生を継続し、現在再生時刻を更新し、処理をステップS102に戻す。
In step S111, the
なお、上述した受信装置1として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、受信装置1の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのプロセッサによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。
A computer can be suitably used to function as the receiving
上述したように、コンテンツ生成装置2又はコンテンツ生成装置2として機能させるためのプログラムは、生成パラメータの変更に合わせて新たな初期化セグメントを生成し、セグメント対応関係情報を含むマニフェストファイルを生成する。そして、受信装置1又は受信装置1として機能させるためのプログラムは、セグメント対応関係情報が記述されたマニフェストファイルを取得することにより、ストリーミングコンテンツ再生中の生成パラメータの変更を認識することができ、安定したストリーミングを継続することができるようになる。
As described above, the
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態に記載の構成ブロック又は処理ステップについて、複数を1つに組み合わせたり、1つを複数に分割したりすることが可能である。 The above-described embodiments have been described as representative examples, but it will be apparent to those skilled in the art that many modifications and substitutions can be made within the spirit and scope of the present invention. Therefore, the present invention should not be interpreted as being limited by the above-described embodiments, and various modifications and changes are possible without departing from the scope of the claims. For example, it is possible to combine multiple component blocks or processing steps described in the embodiments into one, or to divide one into multiple steps.
1 受信装置
2 コンテンツ生成装置
3 配信サーバ
10 通信I/F
11 マニフェスト取得部
12 セグメントリスト記憶部
13 セグメント取得部
14 バッファ
15 バッファ制御部
16 再生制御部
17 再生制御ユーザI/F
18 再生部
19 表示部
21 素材映像出力部
22 生成パラメータ変更部
23 メディアセグメント生成部
24 初期化セグメント生成部
25 マニフェスト生成部
26 コンテンツ送信部
27 通信I/F
231 エンコード部
232 セグメント化部
REFERENCE SIGNS LIST 11: Manifest acquisition unit 12: Segment list storage unit 13: Segment acquisition unit 14: Buffer 15: Buffer control unit 16: Playback control unit 17: Playback control user I/F
18
231
Claims (6)
動画コンテンツのセグメントを生成するために使用される生成パラメータに従って、メディアセグメントを生成するメディアセグメント生成部と、
前記生成パラメータの変更に合わせて、メディアセグメントをデコードするために必要な情報を含む新たな初期化セグメントを生成する初期化セグメント生成部と、
前記メディアセグメントごとに対応する前記初期化セグメントを示すセグメント対応関係情報を含むマニフェストファイルを生成するマニフェスト生成部と、
前記メディアセグメント、前記初期化セグメント、及び前記マニフェストファイルを送信するコンテンツ送信部と、
を備えるコンテンツ生成装置。 A content generation device that generates video content segments and a manifest file, comprising:
a media segment generator for generating media segments in accordance with generation parameters used to generate segments of the video content;
an initialization segment generating unit that generates a new initialization segment including information necessary for decoding the media segment in accordance with the change in the generation parameter;
a manifest generation unit that generates a manifest file including segment correspondence relationship information indicating the corresponding initialization segment for each of the media segments;
a content transmitter that transmits the media segments, the initialization segment, and the manifest file;
A content generating device comprising:
メディアセグメントごとに対応する初期化セグメントを示すセグメント対応関係情報が記述されたマニフェストファイルを取得し、メディアセグメントの再生時刻と、初期化セグメント及びメディアセグメントのURLとを対応付けたセグメントURLリストを生成するマニフェスト取得部と、
メディアセグメントの再生とともに更新される再生時刻、及び前記セグメントURLリストに基づいて、前記メディアセグメントのURL、及び該メディアセグメントに対応する前記初期化セグメントのURLを抽出するバッファ制御部と、
前記メディアセグメントの前記URLに基づいて前記メディアセグメントを取得し、前記初期化セグメントの前記URLに基づいて前記初期化セグメントを取得するセグメント取得部と、
を備えることを特徴とする、受信装置。 A receiving device for receiving an initialization segment, a media segment, and a manifest file of video content, the receiving device comprising:
a manifest acquisition unit that acquires a manifest file in which segment correspondence information indicating a corresponding initialization segment for each media segment is described, and generates a segment URL list in which the playback times of the media segments are associated with the URLs of the initialization segments and the media segments;
a buffer control unit that extracts a URL of the media segment and a URL of the initialization segment corresponding to the media segment based on a playback time that is updated with playback of the media segment and the segment URL list;
a segment acquisition unit that acquires the media segment based on the URL of the media segment and acquires the initialization segment based on the URL of the initialization segment;
A receiving device comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021032098A JP7641766B2 (en) | 2021-03-01 | 2021-03-01 | Content generating device, receiving device, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021032098A JP7641766B2 (en) | 2021-03-01 | 2021-03-01 | Content generating device, receiving device, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2022133163A JP2022133163A (en) | 2022-09-13 |
| JP7641766B2 true JP7641766B2 (en) | 2025-03-07 |
Family
ID=83229536
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021032098A Active JP7641766B2 (en) | 2021-03-01 | 2021-03-01 | Content generating device, receiving device, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7641766B2 (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2016527810A (en) | 2013-07-23 | 2016-09-08 | キヤノン株式会社 | Method, apparatus, and computer program for encapsulating partitioned timed media data using subtrack function |
| WO2017138387A1 (en) | 2016-02-12 | 2017-08-17 | ソニー株式会社 | Information processing device and information processing method |
| JP2019114926A (en) | 2017-12-22 | 2019-07-11 | キヤノン株式会社 | Video processing apparatus, video processing method, and program |
-
2021
- 2021-03-01 JP JP2021032098A patent/JP7641766B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2016527810A (en) | 2013-07-23 | 2016-09-08 | キヤノン株式会社 | Method, apparatus, and computer program for encapsulating partitioned timed media data using subtrack function |
| WO2017138387A1 (en) | 2016-02-12 | 2017-08-17 | ソニー株式会社 | Information processing device and information processing method |
| JP2019114926A (en) | 2017-12-22 | 2019-07-11 | キヤノン株式会社 | Video processing apparatus, video processing method, and program |
Non-Patent Citations (1)
| Title |
|---|
| 平林 光浩,ウェブ連動のメディア技術,映像情報メディア学会誌,日本,一般社団法人映像情報メディア学会,2013年02月01日,第67巻,第2号,p.109-115 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2022133163A (en) | 2022-09-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20210263981A1 (en) | Playlists for real-time or near real-time streaming | |
| US8280863B2 (en) | Real-time or near real-time streaming with compressed playlists | |
| CA2748548C (en) | Real-time or near real-time streaming | |
| US8639832B2 (en) | Variant streams for real-time or near real-time streaming to provide failover protection | |
| CN109792546B (en) | Method for transmitting video content from server to client device | |
| JP5147278B2 (en) | Video distribution apparatus and key frame distribution method | |
| JP2023517485A (en) | Identifying Elements in Groups for Dynamic Element Replacement | |
| KR20170141677A (en) | Receiving device, transmitting device and data processing method | |
| JP6609468B2 (en) | Receiving device, reproduction time control method, and program | |
| JP6535273B2 (en) | Receiving device, segment acquisition method, and program | |
| JP6397341B2 (en) | Reception device, buffer management method, and program | |
| JP7641766B2 (en) | Content generating device, receiving device, and program | |
| KR102533674B1 (en) | Receiving device, sending device and data processing method | |
| JP6626696B2 (en) | Receiving device, manifest updating method, and program | |
| JP7324012B2 (en) | Receiving device and program | |
| EP2978225B1 (en) | Method for obtaining in real time a user selected multimedia content part | |
| JP6581884B2 (en) | Reception device, buffer management method, and program | |
| AU2013202695A1 (en) | Real-time or near real-time streaming |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240201 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20250121 |
|
| 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: 20250128 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250225 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7641766 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |