JP2020129734A - Content generation device, reception device, and program - Google Patents

Content generation device, reception device, and program Download PDF

Info

Publication number
JP2020129734A
JP2020129734A JP2019020980A JP2019020980A JP2020129734A JP 2020129734 A JP2020129734 A JP 2020129734A JP 2019020980 A JP2019020980 A JP 2019020980A JP 2019020980 A JP2019020980 A JP 2019020980A JP 2020129734 A JP2020129734 A JP 2020129734A
Authority
JP
Japan
Prior art keywords
segment
stream
reproduction
segmented
unit
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
JP2019020980A
Other languages
Japanese (ja)
Other versions
JP7324012B2 (en
Inventor
敏 西村
Satoshi Nishimura
敏 西村
大貴 福留
Daiki Fukudome
大貴 福留
山本 正男
Masao Yamamoto
正男 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Japan Broadcasting Corp
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 Nippon Hoso Kyokai NHK, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP2019020980A priority Critical patent/JP7324012B2/en
Publication of JP2020129734A publication Critical patent/JP2020129734A/en
Application granted granted Critical
Publication of JP7324012B2 publication Critical patent/JP7324012B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

To reduce the buffering delay in a seek operation during streaming reproduction.SOLUTION: A content generation device 2 includes a segmented stream generation unit 24 that generates a plurality of segmented streams by dividing an encoded stream of a video content into segments at different timings, a manifest generation unit 25 that generates a manifest file in which a stream identifier that identifies the segmented streams and a reproduction time and the URL of the segment are described, and a content transmission unit 26 that supplies the manifest file and the segment to a distribution server.SELECTED DRAWING: Figure 2

Description

本発明は、コンテンツ生成装置、受信装置、及びプログラムに関する。 The present invention relates to a content generation device, a reception device, and a program.

昨今のインターネットにおけるストリーミング動画配信では、専用のサーバと専用のプロトコルによるストリーミング配信方式から、汎用的なWebサーバによりHTTPプロトコルを用いてストリーミング配信する方式への移行が進んでおり、多くのデバイス向けの配信において主流となっている。このようなHTTPプロトコルによるストリーミング配信方式(アダプティブストリーミング)としては、ITベンダによる独自技術が普及している他、これらストリーミング方式の統一を意図した国際標準規格であるMPEG−DASH(ISO/IEC23009−1)が策定された。 In streaming video distribution on the Internet these days, there is a transition from a streaming distribution method using a dedicated server and a dedicated protocol to a method using a general-purpose Web server to perform streaming distribution using the HTTP protocol. It has become the mainstream in distribution. As such a streaming delivery method (adaptive streaming) based on the HTTP protocol, an original technology by an IT vendor is widespread, and MPEG-DASH (ISO/IEC23009-1) which is an international standard intended to unify these streaming methods. ) Was formulated.

いずれの技術も基本的なコンセプトは同様であり、Webサーバには動画コンテンツを1つ又は複数の品質(画面サイズやビットレート)で符号化した符号化ストリームをそれぞれ数秒から数十秒程度のファイルに分割したもの(セグメント)と、それらの動画コンテンツの属性及びURLを記述したマニフェストファイルを用意する。受信装置はマニフェストファイルから当該受信装置の画面サイズや伝送路のネットワーク帯域の状態等を考慮して、適時品質を選択して次々とセグメントを受信し、1本の動画コンテンツにつなぎ合わせて再生するものである(例えば、非特許文献1参照)。 The basic concept of both technologies is the same, and the web server stores files of several to several tens of seconds each of which is an encoded stream obtained by encoding moving image content with one or more qualities (screen size and bit rate). A manifest file that describes the attributes and URLs of those moving image contents is prepared. The receiving device selects the timely quality from the manifest file in consideration of the screen size of the receiving device, the state of the network bandwidth of the transmission path, and the like, receives the segments one after another, and connects them to one moving image content to reproduce. (See, for example, Non-Patent Document 1).

図7にアダプティブストリーミングの一例を示す。図7では、映像が複数品質でエンコードされ、それぞれの品質ごとに数秒単位に分割されたセグメントが生成されている。この例では、エンコーダは映像を低品質のセグメント1〜4、中品質のセグメント1’〜4’、及び高品質のセグメント1”〜4”に分割している。マニフェストファイルには、セグメントのURLや、それぞれの品質ごとのビットレートや画像サイズなどの属性情報が登録される。セグメント及びマニフェストファイルはWebサーバに供給される。 FIG. 7 shows an example of adaptive streaming. In FIG. 7, an image is encoded with a plurality of qualities, and a segment divided into seconds is generated for each quality. In this example, the encoder splits the video into low quality segments 1-4, medium quality segments 1'-4', and high quality segments 1"-4". In the manifest file, the URLs of the segments and the attribute information such as the bit rate and the image size for each quality are registered. The segment and manifest file are supplied to the web server.

受信装置は、Webサーバからマニフェストファイルを受信し、マニフェストファイルからビットレートやセグメントの構成を把握し(ステップA)、受信装置の画面サイズやネットワークの受信帯域の状況をもとにセグメント単位で品質を選択し、HTTPプロトコルにより受信する(ステップB)。続いて、受信したセグメントをマニフェストファイルに従って順番通りにつなぎ合わせて再生する(ステップC)。このようにステップB,Cの処理を繰り返すことにより、一連のコンテンツを受信し再生を継続することができる。 The receiving device receives the manifest file from the Web server, grasps the bit rate and the configuration of the segment from the manifest file (step A), and based on the screen size of the receiving device and the status of the network reception bandwidth, the quality is segmented. Is selected and received by the HTTP protocol (step B). Then, the received segments are connected and reproduced in order according to the manifest file (step C). By repeating the processing of steps B and C in this manner, a series of contents can be received and the reproduction can be continued.

受信装置においては、多くのデバイスで普及が進むHTML5ブラウザを利用することにより、マルチデバイス(PC、テレビ受信機、タブレット装置等)に対応可能な視聴環境を構築することができる。 In the receiving device, an HTML5 browser, which has been widely used in many devices, can be used to construct a viewing environment compatible with multiple devices (PC, TV receiver, tablet device, etc.).

しかし、従来HTML5ブラウザで動画を再生するための機能であるビデオ要素(videoタグ)では、ソースとしてメディアファイルを参照することしかできなかったため、このようなアダプティブストリーミングの視聴を実現するためには、別途ブラウザプラグインのインストールが必要だった。そのため、どのブラウザでも共通で利用できる視聴環境を構築することが困難だった。このような状況から、HTML5ブラウザのビデオ要素及びJavaScript(登録商標)によってアダプティブストリーミングの視聴を実現するための機能として、Webで利用される技術の標準化を進める国際的な非営利団体であるW3Cにおいて、MSE(Media Source Extensions)の規格化が進んでいる(例えば、非特許文献2参照)。 However, in the past, the video element (video tag), which is a function for playing a moving image in the HTML5 browser, could only refer to a media file as a source. Therefore, in order to realize such adaptive streaming viewing, A separate browser plugin had to be installed. Therefore, it was difficult to build a viewing environment that can be shared by all browsers. Under such circumstances, W3C, an international non-profit organization that is promoting the standardization of technologies used on the Web, has been developed as a function for realizing the viewing of adaptive streaming using HTML5 browser video elements and JavaScript (registered trademark). , MSE (Media Source Extensions) are being standardized (see Non-Patent Document 2, for example).

MSEを用いることにより、ビデオ要素はソースとしてバッファを参照することが可能となる。そのバッファへはJavaScriptによって受信したセグメントを挿入することができるようになることから、多様なアダプティブストリーミングの視聴がHTML5のビデオ要素とJavaScriptにより実現可能となる。 The use of MSE allows a video element to reference a buffer as a source. Since the segment received by JavaScript can be inserted into the buffer, various adaptive streaming viewing can be realized by the HTML5 video element and JavaScript.

ここで、図8を参照してMSEのバッファモデルについて説明する。図8はMSEのバッファモデルの一例を示す図である。バッファ(SourceBuffer)は、セグメント開始時刻と再生継続時間に対応付けてセグメントを管理する。図8では、斜線の入ったブロックがセグメントを示しており、セグメント単位の再生開始時刻であるセグメント開始時刻が0秒かつ再生継続時間が5秒、セグメント開始時刻が5秒かつ再生継続時間が5秒、及びセグメント開始時刻が15秒かつ再生継続時間が5秒の3つのセグメントがバッファに挿入されている。この時、バッファのバッファリング範囲(buffered属性)は0〜10秒、15〜20秒となる。 Here, the buffer model of the MSE will be described with reference to FIG. FIG. 8 is a diagram showing an example of the MSE buffer model. The buffer (SourceBuffer) manages the segment in association with the segment start time and the playback duration. In FIG. 8, blocks with diagonal lines indicate segments. The segment start time, which is the playback start time of each segment, is 0 seconds and the playback duration is 5 seconds, and the segment start time is 5 seconds and the playback duration is 5 seconds. Seconds, and three segments having a segment start time of 15 seconds and a reproduction duration of 5 seconds are inserted in the buffer. At this time, the buffering range (buffered attribute) of the buffer is 0 to 10 seconds and 15 to 20 seconds.

動画のストリーミングサービスの提供方法として、先に述べたアダプティブストリーミングに加え、マルチビュー映像・多言語音声配信や、放送のように編成に従った番組配信などが考えられる。MPEG−DASHにおいては、このようなサービスを可能とするマニフェストファイルの記述方法が定義されている。 As a method of providing a streaming service for moving images, in addition to the adaptive streaming described above, multi-view video/multilingual audio distribution, program distribution according to organization such as broadcasting, and the like can be considered. In MPEG-DASH, a description method of a manifest file that enables such a service is defined.

図9にMPEG−DASHのMPD(Media Presentation Description)形式のマニフェストファイルの概念図を示す。MPD形式ではPeriod,AdaptationSet,Representationの順に階層構造となっている。Periodはマニフェストファイルを時間方向に区切った一区画を示しており、図9の例では、それぞれのコンテンツ尺(duration)が300秒のPeriodが連結されていることを示している。Periodは1つ以上のAdaptationSetから構成される。 FIG. 9 shows a conceptual diagram of a manifest file in MPD (Media Presentation Description) format of MPEG-DASH. The MPD format has a hierarchical structure in the order of Period, AdaptationSet, and Representation. Period indicates one section obtained by dividing the manifest file in the time direction, and in the example of FIG. 9, it is shown that Periods having a content length (duration) of 300 seconds are connected. Period is composed of one or more AdaptationSets.

AdaptationSetはメディアコンポーネント(映像、音声、テキスト等)の情報を示しており、同じメディア形式で表現(別角度の映像や、別言語の音声など)の異なる複数のコンポーネントを含むことができる。図9の例では映像(mimeType=video/mp4)が2つ、音声(mimeType=audio/mp4)が1つである。AdaptationSetに含まれるそれぞれのメディアコンポーネントの情報はRepresentationで示される。 The AdaptationSet indicates information of media components (video, audio, text, etc.), and can include a plurality of components different in expression (video of another angle, audio of another language, etc.) in the same media format. In the example of FIG. 9, there are two videos (mimeType=video/mp4) and one audio (mimeType=audio/mp4). Information of each media component included in the Adaptation Set is indicated by Representation.

Representationには、メディア要素を構成する実データであるセグメント(Initialization Segment,Media Segment)の情報が記述されている。Initialization Segmentは符号化パラメータ等の初期化情報で、Media Segmentがセグメントである。図9の例では、セグメント長(duration=5s)ごとにシーケンス番号($Number$)がインクリメントされたファイル名となる。 In the Representation, information on segments (Initialization Segment, Media Segment) that are the actual data that configures the media element is described. Initialization Segment is initialization information such as encoding parameters, and Media Segment is a segment. In the example of FIG. 9, the file name has the sequence number ($Number$) incremented for each segment length (duration=5s).

このようなマニフェストファイルとすることで、Periodにおいて選択されたメディアコンポーネント(AdaptationSet)を形成するセグメント(図9のInitialization Segment,Media Segment)を順次受信することが可能となるほか、メディアコンポーネントを選択し直すことにより別のメディアコンポーネントを形成するセグメントの受信に切り替え、別映像を表示することが可能となる。 With such a manifest file, the segments (Initialization Segment, Media Segment in FIG. 9) forming the media component (AdaptationSet) selected in Period can be sequentially received, and the media component can be selected. By fixing it, it becomes possible to switch to reception of a segment forming another media component and display another video.

特開2018−098569号公報JP, 2008-098569, A

“次世代動画配信技術「MPEG−DASH」技術概要と標準化・関連技術動向”,映像情報メディア学会誌,Vol.67, No.2, 2013, p.109-115"Next-Generation Video Delivery Technology "MPEG-DASH" Technology Outline and Standardization/Related Technology Trends", Journal of Image Information Media, Vol.67, No.2, 2013, p.109-115 W3C、“Media Source Extensions W3C Candidate Recommendation 17 November 2016”、[2018年12月28日検索]、インターネット<URL:http://www.w3.org/TR/media-source/>W3C, “Media Source Extensions W3C Candidate Recommendation 17 November 2016”, [December 28, 2018 search], Internet <URL:http://www.w3.org/TR/media-source/>

ここで、一般にストリーミング視聴においては、ネットワークの混雑状況に応じて受信帯域が常に変動することから、再生開始時やシーク操作により所望のシーン(以下、「新規再生時刻」と称する。)にスキップした際には、新規再生時刻よりも数秒程度先のデータまでを受信してバッファに挿入してから再生することにより、視聴安定性を向上させる。一方で、この再生開始に必要なデータ量(バッファ規定値)を受信するまでの時間(バッファリング遅延)が長いと再生開始が遅れ、ユーザの体感品質の低下につながる。この時、新規再生時刻とセグメント長の関係によっては、無駄なデータを受信することによってバッファリング遅延が増加するという課題があった。 Here, generally, in streaming viewing, the reception band constantly fluctuates according to the congestion state of the network, and therefore a desired scene (hereinafter referred to as “new reproduction time”) is skipped at the start of reproduction or a seek operation. At this time, the viewing stability is improved by receiving data up to several seconds ahead of the new playback time, inserting it into the buffer, and playing it back. On the other hand, if the time (buffering delay) until the data amount (buffer specified value) necessary for starting the reproduction is received is long, the start of the reproduction is delayed and the user's quality of experience is deteriorated. At this time, depending on the relationship between the new reproduction time and the segment length, there is a problem that the buffering delay increases due to the reception of useless data.

図10は、上記課題を説明する図である。この例では、図9に基づいて、セグメント長を5秒とする。バッファ規定値を10秒とした場合において、図10(a)は、シーク操作による新規再生時刻が110秒の場合のバッファ状態を表しており、図10(b)はシーク操作による新規再生時刻が114秒の場合のバッファ状態を表している。図10(a)では110秒〜115秒、115秒〜120秒の2つのセグメントを受信することでバッファ規定値に達する。一方で、図10(b)では、110秒〜115秒、115秒〜120秒、120秒〜125秒の3つのセグメントを受信しないとバッファ規定値に達しない。図10(b)の110秒〜114秒のデータは再生に使用されず、このような無駄なデータを含むため、データの受信に時間がかかりバッファリング遅延が増加してしまっている。 FIG. 10: is a figure explaining the said subject. In this example, the segment length is set to 5 seconds based on FIG. 10A shows the buffer state when the new playback time by the seek operation is 110 seconds, and FIG. 10B shows the new playback time by the seek operation. The buffer state is shown for 114 seconds. In FIG. 10A, the buffer specified value is reached by receiving two segments of 110 seconds to 115 seconds and 115 seconds to 120 seconds. On the other hand, in FIG. 10B, the buffer prescribed value is not reached unless three segments of 110 seconds to 115 seconds, 115 seconds to 120 seconds, and 120 seconds to 125 seconds are received. The data of 110 seconds to 114 seconds in FIG. 10B is not used for reproduction and includes such useless data, so that it takes time to receive the data and the buffering delay increases.

無駄なデータ受信を削減する方法としては、セグメント長を例えば1秒程度に短くすることが考えられるが、その分セグメントのリクエスト回数が増加するため、配信サーバ及び受信装置の負荷が大きくなるという課題があった。 As a method for reducing useless data reception, it is conceivable to shorten the segment length to, for example, about 1 second, but the number of requests for the segment increases correspondingly, so that the load on the distribution server and the receiving device increases. was there.

また、特許文献1には、シェーピングが行われないコンテンツデータを配信する第1の配信サーバと、シェーピングが行われるコンテンツデータを配信する第2の配信サーバとを有するコンテンツ配信システムにおいて、バッファ規定値分のデータを受信するまでは第1の配信サーバから高速にデータを受信することで、シーク操作後の再生開始を高速化する手法が開示されている。 Further, in Patent Document 1, in a content distribution system having a first distribution server that distributes content data that is not shaped and a second distribution server that distributes content data that is shaped, a buffer prescribed value A method is disclosed in which data is received at high speed from the first distribution server until the minute data is received to speed up the reproduction start after the seek operation.

しかし、特許文献1に開示された技術は、配信事業者が提供するCDN(Content Delivery Network)サービスを利用してコンテンツ配信を行う場合に、コンテンツ事業者が必ずしも適用できるものではなかった。 However, the technology disclosed in Patent Document 1 is not necessarily applicable to content providers when performing content delivery using a CDN (Content Delivery Network) service provided by the delivery providers.

かかる事情に鑑みてなされた本発明の目的は、ストリーミング再生中におけるシーク操作時のバッファリング遅延を低減させることが可能なコンテンツ生成装置、受信装置、及びプログラムを提供することにある。 An object of the present invention made in view of such circumstances is to provide a content generation device, a reception device, and a program capable of reducing a buffering delay at the time of a seek operation during streaming reproduction.

上記課題を解決するため、本発明に係るコンテンツ生成装置は、動画コンテンツのセグメント及びマニフェストファイルを生成するコンテンツ生成装置であって、動画コンテンツの符号化ストリームを異なるタイミングでセグメントに分割した、複数のセグメント化ストリームを生成するセグメント化ストリーム生成部と、前記複数のセグメント化ストリームについて、セグメント化ストリームを識別するストリーム識別子と、セグメントの再生時刻及びURLとを記述したマニフェストファイルを生成するマニフェスト生成部と、 前記マニフェストファイル及び前記セグメントを配信サーバに供給するコンテンツ送信部と、を備えることを特徴とする。 In order to solve the above problems, a content generation device according to the present invention is a content generation device that generates a segment of a video content and a manifest file, and divides an encoded stream of the video content into segments at different timings. A segmented stream generation unit that generates a segmented stream, a manifest generation unit that generates a manifest file that describes, for each of the plurality of segmented streams, a stream identifier that identifies the segmented stream, a segment playback time, and a URL. A content transmission unit that supplies the manifest file and the segment to a distribution server.

また、上記課題を解決するため、本発明に係る受信装置は、符号化ストリームを異なるタイミングでセグメントに分割した複数のセグメント化ストリームに関するマニフェストファイル、及びセグメントを配信サーバから受信する受信装置であって、前記マニフェストファイルには、セグメント化ストリームを識別するストリーム識別子と、セグメントの再生時刻及びURLとが記述されており、受信した前記マニフェストファイルを解析し、前記ストリーム識別子ごとに前記セグメントの再生時刻及びURLを対応付けたセグメントURLリストを生成するマニフェスト取得部と、シーク操作が実行された場合に、シーク後の再生時刻である新規再生時刻を抽出する再生制御部と、シーク操作が実行された場合に、前記新規再生時刻に基づき、再生を開始するまでにバッファに保存する必要があるセグメントの数が最小となるセグメント化ストリームに対応する前記セグメントURLリストを決定し、該セグメントURLリストから取得対象のセグメントのURLを抽出するバッファ制御部と、前記バッファ制御部により決定された前記セグメントのURLに基づいて、配信サーバからセグメントを取得するセグメント取得部と、を備えることを特徴とする。 Further, in order to solve the above problems, a receiving device according to the present invention is a receiving device that receives a manifest file regarding a plurality of segmented streams obtained by dividing an encoded stream into segments at different timings, and a segment from a distribution server. In the manifest file, a stream identifier for identifying a segmented stream, a playback time of a segment, and a URL are described. The received manifest file is analyzed, and the playback time of the segment for each stream identifier and When a manifest acquisition unit that generates a segment URL list in which URLs are associated, a playback control unit that extracts a new playback time that is the playback time after a seek when a seek operation is performed, and a seek operation is performed Based on the new playback time, determine the segment URL list corresponding to the segmented stream that requires the minimum number of segments to be stored in the buffer before starting playback, and obtain the segment URL list from the segment URL list. A buffer control unit for extracting the URL of the segment and a segment acquisition unit for acquiring the segment from the distribution server based on the URL of the segment determined by the buffer control unit.

また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを、上記コンテンツ生成装置として機能させることを特徴とする。 In order to solve the above problems, the program according to the present invention causes a computer to function as the content generation device.

また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを、上記受信装置として機能させることを特徴とする。 In order to solve the above problems, the program according to the present invention causes a computer to function as the receiving device.

本発明によれば、ストリーミング再生中におけるシーク操作時に、再生開始までに必要なデータをバッファに溜めるまでに取得するセグメント数を削減することが可能となる。したがって、再生開始までの待ち時間を短縮することが可能となる。さらに、無駄なセグメントを取得する機会が減るため、ネットワークの利用効率も向上し、安定した視聴が可能となる。 According to the present invention, at the time of a seek operation during streaming reproduction, it is possible to reduce the number of segments to be acquired before the data necessary for reproduction start is stored in the buffer. Therefore, it is possible to shorten the waiting time until the start of reproduction. Further, since the chances of acquiring useless segments are reduced, the utilization efficiency of the network is improved and stable viewing is possible.

本発明の一実施形態に係る受信装置及びコンテンツ生成装置を備えるコンテンツ配信システムの概略を示す図である。It is a figure which shows the outline of the content distribution system provided with the receiver and content generator which concern on one Embodiment of this invention. 本発明の一実施形態に係るコンテンツ生成装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the content production|generation apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係るコンテンツ生成装置によって生成されるセグメントの具体例を示す図である。It is a figure which shows the specific example of the segment produced|generated by the content production apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係るコンテンツ生成装置によって生成されるMPD形式のマニフェストファイルの一例を示す図である。It is a figure which shows an example of the manifest file of MPD format produced|generated by the content production|generation apparatus which concerns on one Embodiment of this invention. 本発明の一実施形態に係る受信装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the receiver which concerns on one Embodiment of this invention. 本発明の一実施形態に係る受信装置のシーク操作時のセグメント取得制御方法を示すフローチャートである。9 is a flowchart showing a segment acquisition control method during a seek operation of the receiving device according to an embodiment of the present invention. 従来のアダプティブストリーミングの一例を示す図である。It is a figure which shows an example of the conventional adaptive streaming. 従来のMSEのバッファモデルの一例を示す図である。It is a figure which shows an example of the buffer model of the conventional MSE. 従来のマニフェストファイルの概念を示す図である。It is a figure which shows the concept of the conventional manifest file. 従来の課題を説明する図である。It is a figure explaining the conventional subject.

以下、本発明の一実施形態について、図面を参照して詳細に説明する。以下に説明する本実施形態では一例として、マニフェストファイルをMPEG−DASH(ISO/IEC23009−1)のMPD(Media Presentation Description)形式とする。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. In the present embodiment described below, as an example, the manifest file is in the MPD (Media Presentation Description) format of MPEG-DASH (ISO/IEC23009-1).

図1に、本発明の一実施形態に係る受信装置及びコンテンツ生成装置を備えるコンテンツ配信システムの概略を示す。インターネットを介して、受信装置1と配信サーバ3とが接続される。コンテンツ生成装置2と配信サーバ3とは、専用のローカルネットワークで接続されてもよいし、インターネットを介して接続されてもよい。 FIG. 1 shows an outline of a content distribution system including a receiving device and a content generating device according to an embodiment of the present invention. The receiving device 1 and the distribution server 3 are connected via the Internet. The content generation device 2 and the distribution server 3 may be connected via a dedicated local network or may be connected via the Internet.

受信装置1は、配信サーバ3から動画コンテンツのセグメント及びマニフェストファイルを受信し、ストリーミング再生を行う。 The receiving device 1 receives the segment of the moving image content and the manifest file from the distribution server 3 and performs streaming reproduction.

コンテンツ生成装置2は、動画コンテンツのセグメント及びマニフェストファイルを生成し、配信サーバ3に供給する。 The content generation device 2 generates a segment of the moving image content and a manifest file, and supplies the segment and the manifest file to the distribution server 3.

配信サーバ3は、マニフェストファイル及びセグメントを受信装置1に配信するサーバであり、例えば一般的なWebサーバとすることができる。 The distribution server 3 is a server that distributes the manifest file and the segment to the reception device 1, and can be, for example, a general Web server.

(コンテンツ生成装置)
次に、コンテンツ生成装置2の詳細について説明する。図2は、コンテンツ生成装置2の構成例を示すブロック図である。図2に示すコンテンツ生成装置2は、素材映像出力部21と、エンコード部22と、セグメント化タイミング制御部23と、セグメント化ストリーム生成部24と、マニフェスト生成部25と、コンテンツ送信部26と、通信I/F27とを備える。セグメント化ストリーム生成部24は、n(n≧2)個のセグメント化部24−1〜24−nを備える。
(Content generation device)
Next, details of the content generation device 2 will be described. FIG. 2 is a block diagram showing a configuration example of the content generation device 2. The content generation device 2 illustrated in FIG. 2 includes a material video output unit 21, an encoding unit 22, a segmentation timing control unit 23, a segmented stream generation unit 24, a manifest generation unit 25, a content transmission unit 26, and And a communication I/F 27. The segmented stream generation unit 24 includes n (n≧2) number of segmented units 24-1 to 24-n.

素材映像出力部21は、外部から入力された素材映像や予め蓄積された素材映像から、生成対象のコンテンツをエンコード部22に出力する。 The material video output unit 21 outputs the content to be generated to the encoding unit 22 from the material video input from the outside or the material video stored in advance.

エンコード部22は、素材映像出力部21から入力された素材映像信号を、例えば、H.264|MPEG−4 AVC(Advanced Video Coding)、H.265|MPEG−H HEVC(High Efficiency Video Coding)といった既存の符号化方式により符号化する。そして、エンコード部22は、符号化ストリームをセグメント化ストリーム生成部24の各セグメント化部24−1〜24−nに出力する。 The encoding unit 22 converts the material video signal input from the material video output unit 21 into the H.264 format, for example. H.264|MPEG-4 AVC (Advanced Video Coding), H.264. 265|MPEG-H It is encoded by an existing encoding method such as HEVC (High Efficiency Video Coding). Then, the encoding unit 22 outputs the encoded stream to each of the segmentation units 24-1 to 24-n of the segmented stream generation unit 24.

セグメント化タイミング制御部23は、セグメント化ストリーム生成部24の各セグメント化部24−1〜24−nに、それぞれのセグメントの開始位置及びセグメント長を示すセグメント化タイミング情報を出力する。ここで、各セグメント化部24−1〜24−nに出力するセグメント化タイミング情報はそれぞれ異なるものとする。そのため、セグメントの区切りのタイミングはそれぞれ異なるものとなる。 The segmentation timing control unit 23 outputs segmentation timing information indicating the start position and segment length of each segment to each of the segmentation units 24-1 to 24-n of the segmented stream generation unit 24. Here, it is assumed that the segmenting timing information output to each segmenting unit 24-1 to 24-n is different. Therefore, the timings of segment breaks are different.

セグメント化部24−1〜24−nはそれぞれ、エンコード部22から入力された符号化ストリームを、セグメント化タイミング制御部23から入力されたセグメント化タイミング情報に従って、例えばISO−BMFF(ISO-Base Media File Format)形式でセグメント化してセグメントのストリームであるセグメント化ストリームを生成する。すなわち、セグメント化ストリーム生成部24は、エンコード部22から入力された符号化ストリームを異なるタイミングでセグメントに分割した、複数のセグメント化ストリームを生成する。そして、セグメント化部24−1〜24−nは、それぞれセグメント化ストリームをマニフェスト生成部25に出力する。 Each of the segmenting units 24-1 to 24-n uses the encoded stream input from the encoding unit 22 according to the segmenting timing information input from the segmenting timing control unit 23, for example, ISO-BMFF (ISO-Base Media). Generate a segmented stream that is a stream of segments by segmenting in the File Format) format. That is, the segmented stream generation unit 24 divides the coded stream input from the encoding unit 22 into segments at different timings to generate a plurality of segmented streams. Then, the segmentation units 24-1 to 24-n output the segmented streams to the manifest generation unit 25, respectively.

マニフェスト生成部25は、複数のセグメント化部24から入力されたセグメントを入力し、例えばMPEG−DASHのMPD形式の1つのマニフェストファイルを生成する。マニフェストファイルは、少なくとも、セグメント化ストリームを識別するストリーム識別子と、セグメントの再生時刻及びURLとを記述する。そして、マニフェスト生成部25は、マニフェストファイル及びセグメントをコンテンツ送信部26に出力する。マニフェストファイルの生成は、セグメントを入力するたびに順次更新する方法で行われてもよいし、全てのセグメントを入力してから行われてもよい。 The manifest generation unit 25 inputs the segments input from the plurality of segmentation units 24 and generates one manifest file in the MPD format of MPEG-DASH, for example. The manifest file describes at least the stream identifier that identifies the segmented stream, the playback time of the segment, and the URL. Then, the manifest generation unit 25 outputs the manifest file and the segment to the content transmission unit 26. The manifest file may be generated by a method of sequentially updating each time a segment is input, or may be performed after inputting all the segments.

コンテンツ送信部26は、マニフェスト生成部25から入力されたマニフェストファイル及びセグメントを通信I/F27を介して配信サーバ3に送信する。 The content transmission unit 26 transmits the manifest file and the segment input from the manifest generation unit 25 to the distribution server 3 via the communication I/F 27.

ここで、本発明によるコンテンツ生成装置2によって生成されたコンテンツの具体例を図3及び図4を参照して説明する。図3は、セグメント化部24によって生成されるセグメントの具体例を示す図である。図3ではエンコード部22により生成された、コンテンツ尺が30秒の符号化ストリームを、3つのセグメント化部24(セグメント化部24−1、セグメント化部24−2、及びセグメント化部24−3)によりセグメント化し、セグメント化ストリーム1、セグメント化ストリーム2、及びセグメント化ストリーム3が生成される例である。 Here, a specific example of the content generated by the content generation device 2 according to the present invention will be described with reference to FIGS. 3 and 4. FIG. 3 is a diagram showing a specific example of the segments generated by the segmenting unit 24. In FIG. 3, the encoded stream having a content length of 30 seconds generated by the encoding unit 22 is divided into three segmenting units 24 (segmenting unit 24-1, segmenting unit 24-2, and segmenting unit 24-3). ), the segmented stream 1, the segmented stream 2, and the segmented stream 3 are generated.

セグメント化ストリーム1は、最初からセグメント長を3秒としてセグメント化されたストリームである。セグメント化ストリーム2は、0秒〜1秒のセグメント長を1秒とし、1秒〜28秒までをセグメント長を3秒とし、28秒〜30秒のセグメント長を2秒としてセグメント化されたストリームである。セグメント化ストリーム3は、0〜2秒のセグメント長を2秒とし、2秒〜29秒のセグメント長を3秒とし、29秒〜30秒のセグメント長を1秒としてセグメント化されたストリームである。 The segmented stream 1 is a stream segmented from the beginning with a segment length of 3 seconds. The segmented stream 2 has a segment length of 0 seconds to 1 second of 1 second, a segment length of 1 second to 28 seconds of 3 seconds, and a segment length of 28 seconds to 30 seconds of 2 seconds. Is. The segmented stream 3 is a stream segmented with a segment length of 0 to 2 seconds being 2 seconds, a segment length of 2 seconds to 29 seconds being 3 seconds, and a segment length of 29 seconds to 30 seconds being 1 second. ..

図4は、図3のセグメント化ストリーム1、セグメント化ストリーム2、セグメント化ストリーム3をもとに生成したMPD形式のマニフェストファイルの一例(抜粋)を示す図である。図4に示す例では、コンテンツ尺情報(duration)が30秒のPeriodが1つ存在し、Periodにはメディアの形式が同一(mimeType=”video/mp4”)のAdaptationSetが3つ存在(id=”Mod3_0”、id=”Mod3_1”、id=”Mod3_2”)し、さらにそれぞれのAdaptationSetにはRepresentationが1つずつ存在している。以降、AdaptationSetのidを「ストリーム識別子」と称する。 FIG. 4 is a diagram showing an example (excerpt) of an MPD format manifest file generated based on the segmented stream 1, the segmented stream 2, and the segmented stream 3 of FIG. 3. In the example shown in FIG. 4, there is one Period whose content length information (duration) is 30 seconds, and there are three AdaptationSets with the same media format (mimeType=“video/mp4”) in the Period (id= "Mod3_0", id="Mod3_1", id="Mod3_2"), and one Representation exists in each AdaptationSet. Hereinafter, the id of the AdaptationSet will be referred to as the “stream identifier”.

ここで、ある再生時刻を含むセグメントのファイル名を特定する方法について説明する。図4の2行目のstartの値から、Periodの開始時刻は0である。図4の10行目のtimescaleの値から、id=”Mod3_1”のAdaptationSetのタイムスケール(1秒間の目盛り数)は1000である。図4の10行目のstartNumberの値から、セグメントの開始番号は1である。図4の10行目のmediaの値から、セグメントのファイル名の基準値はs2_$Number$.mp4であり、$Number$をセグメントのシーケンス番号で置き換えた値がファイル名となる。 Here, a method of identifying the file name of the segment including a certain reproduction time will be described. From the start value in the second line of FIG. 4, the start time of Period is 0. From the timescale value on the 10th line in FIG. 4, the timescale (the number of scales per second) of the AdaptationSet with id=“Mod3_1” is 1000. From the value of startNumber on the 10th line in FIG. 4, the start number of the segment is 1. From the value of media on the 10th line in FIG. 4, the standard value of the segment file name is s2_$Number$.mp4, and the value obtained by replacing $Number$ with the sequence number of the segment becomes the file name.

また、11行目〜15行目に示すSegmentTimelineは、図3に示したセグメント化ストリーム2の各セグメントの再生開始時刻とセグメント長の関係性を示している。S内のtは再生開始時刻、dはセグメント長、rは同じdの継続回数を示す。つまり、12行目のSは開始時刻が0(t=0)でセグメント長が1秒(d/timescale)を示している。13行目のSは開始時刻が1秒(t/timescale)でセグメント長が3秒であり、且つそのセグメントに同じセグメント長のセグメントが8つ続くことを示している。14行目のSは開始時刻が28秒でセグメント長が2秒のセグメントを表している。この情報によってセグメント番号はインクリメントされる。これに従うと、例えば再生時刻8秒を含むセグメントのシーケンス番号は4となり、そのファイル名は”s2_4.mp4”となる。このようにして、ある再生時刻を含むセグメントのファイル名を特定することが可能となる。 Further, the Segment Timeline shown on the 11th to 15th lines indicates the relationship between the reproduction start time of each segment of the segmented stream 2 shown in FIG. 3 and the segment length. In S, t is the reproduction start time, d is the segment length, and r is the same number of times d is continued. That is, S in the 12th row indicates that the start time is 0 (t=0) and the segment length is 1 second (d/timescale). S in the 13th row indicates that the start time is 1 second (t/timescale), the segment length is 3 seconds, and that eight segments with the same segment length follow. S in the 14th line represents a segment having a start time of 28 seconds and a segment length of 2 seconds. The segment number is incremented by this information. According to this, for example, the sequence number of the segment including the reproduction time of 8 seconds is 4, and the file name thereof is "s2_4.mp4". In this way, it becomes possible to specify the file name of the segment including a certain reproduction time.

なお、上述したコンテンツ生成装置2として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、コンテンツ生成装置2の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。 It should be noted that a computer can be preferably used for causing the above-described content generation device 2 to function, and such a computer stores a program describing the processing content for realizing each function of the content generation device 2 in the storage unit of the computer. It can be realized by storing it in the computer and reading and executing this program by the CPU of the computer. Note that this program can be recorded in a computer-readable recording medium.

(受信装置)
次に、受信装置1の詳細について説明する。図5は、受信装置1の構成例を示すブロック図である。図5に示す受信装置1は、通信I/F10と、マニフェスト取得部11と、セグメントリスト記憶部12と、セグメント取得部13と、バッファ14と、バッファ制御部15と、再生制御部16と、再生制御ユーザI/F17と、再生部18と、表示部19とを備える。
(Receiver)
Next, details of the receiving device 1 will be described. FIG. 5 is a block diagram showing a configuration example of the receiving device 1. The reception device 1 illustrated in FIG. 5 includes a communication I/F 10, a manifest acquisition unit 11, a segment list storage unit 12, a segment acquisition unit 13, a buffer 14, a buffer control unit 15, a reproduction control unit 16, A reproduction control user I/F 17, a reproduction unit 18, and a display unit 19 are provided.

マニフェスト取得部11は、配信サーバ3から所望の番組のマニフェストファイルを通信I/F10を介して受信する。そして、マニフェスト取得部11は、受信したマニフェストファイルを解析し、ストリーム識別子ごとに、セグメントの再生時刻及びURLを対応付けたセグメントURLリストを生成し、セグメントリスト記憶部12に記憶する。 The manifest acquisition unit 11 receives a manifest file of a desired program from the distribution server 3 via the communication I/F 10. Then, the manifest acquisition unit 11 analyzes the received manifest file, generates a segment URL list that associates the segment reproduction time and the URL for each stream identifier, and stores the segment URL list in the segment list storage unit 12.

セグメント取得部13は、バッファ制御部15から取得対象のセグメントのURLを入力し、該入力したセグメントのURLを含むリクエストを通信I/F10を介して配信サーバ3に要求する。そして、セグメント取得部13は、該リクエストへのレスポンスとして、配信サーバ3から通信I/F10を介してセグメントを受信し、バッファ制御部15に出力する。 The segment acquisition unit 13 inputs the URL of the segment to be acquired from the buffer control unit 15, and requests the distribution server 3 via the communication I/F 10 for a request including the URL of the input segment. Then, the segment acquisition unit 13 receives the segment from the distribution server 3 via the communication I/F 10 as a response to the request, and outputs the segment to the buffer control unit 15.

バッファ14は、バッファ制御部15から入力されたセグメントを、セグメントの再生開始時刻及び再生継続時間(セグメント長)を対応付けて保存する。そして、バッファ14は、現在の保存中の全セグメントのセグメント再生時刻及び再生継続時間の情報を、バッファ制御部15に出力する。 The buffer 14 stores the segment input from the buffer control unit 15 in association with the segment reproduction start time and segment reproduction duration (segment length). Then, the buffer 14 outputs the information of the segment reproduction time and the reproduction continuation time of all the currently stored segments to the buffer control unit 15.

また、バッファ14は、再生部18から要求された再生時刻のセグメントを順次再生部18に出力する。 Further, the buffer 14 sequentially outputs the segments of the reproduction time requested by the reproducing unit 18 to the reproducing unit 18.

再生制御部16は、再生制御ユーザI/F17から再生開始、停止の命令を入力すると、再生部18に再生開始・停止を指示する。 When the reproduction control user I/F 17 inputs a reproduction start/stop command, the reproduction control unit 16 instructs the reproduction unit 18 to start/stop reproduction.

また、再生制御部16は、再生制御ユーザI/F17から新規再生時刻へのシーク命令を入力すると、バッファ制御部15に新規再生時刻情報を出力し、バッファ制御部15からバッファ規定値を超えたことを示す通知を入力したら、再生部18に新規再生時刻への再生時刻変更を指示する。バッファ規定値は、受信装置1で任意の値を設定してもよいし、マニフェストファイルに記述された設定値(例えば、図4に示したminBufferTimeの値)を利用してもよい。 Further, when the reproduction control user I/F 17 inputs a seek command to the new reproduction time, the reproduction control unit 16 outputs the new reproduction time information to the buffer control unit 15, and the buffer control unit 15 exceeds the buffer specified value. When the notification indicating that is input, the reproduction unit 18 is instructed to change the reproduction time to the new reproduction time. As the buffer stipulated value, an arbitrary value may be set in the receiving device 1, or a set value described in the manifest file (for example, the value of minBufferTime shown in FIG. 4) may be used.

また、再生制御部16は、現在の再生状態(再生中、停止中)、及び再生部18から入力された再生時刻情報を、バッファ制御部15及び再生制御ユーザI/F17に出力する。 Further, the reproduction control unit 16 outputs the current reproduction state (reproducing or stopped) and the reproduction time information input from the reproduction unit 18 to the buffer control unit 15 and the reproduction control user I/F 17.

再生制御ユーザI/F17は、ユーザの操作によって再生を制御する機能である。再生開始・停止ボタンや所望の再生時刻へのシーク操作を可能とするボタンなどを備え、コンテンツの開始、終了時刻、及び再生制御部16から入力された再生時刻情報をもとに、現在の再生時刻をグラフィカルに表示してもよい。例えば、再生画面の下部にコンテンツの開始時刻を左端、終了時刻を右端とする横長の棒状で表示し、それと重なるようにつまみ状の操作部分を配置し、つまみ状の操作部分を再生が進むにつれて左端から右端に移動させることによって、再生時間全体のうち今どの部分を再生しているのかを一目で把握することができるようにすることができる。また、つまみ状の操作部分を変更することによって、所望の再生時刻へのシーク操作を行うようにしてもよい。 The reproduction control user I/F 17 is a function of controlling reproduction by a user's operation. A playback start/stop button, a button that enables a seek operation to a desired playback time, and the like are provided. The time may be displayed graphically. For example, at the bottom of the playback screen, display the content as a horizontal bar with the left end as the left end and the end time as the right end, arrange the knob-shaped operation part so that it overlaps with it, and move the knob-shaped operation part as playback progresses. By moving from the left end to the right end, it is possible to grasp at a glance which part of the entire reproduction time is currently being reproduced. Further, the seek operation to a desired reproduction time may be performed by changing the knob-shaped operation portion.

再生部18は、再生制御部16から再生開始時刻を含む再生命令を入力すると、再生開始時刻に基づいてセグメントを順次バッファから入力し、入力したセグメントをセグメントのメディア形式(映像、音声、テキスト等)に従ってデコードし、表示部19に出力するとともに、再生とともに更新される再生時刻の情報である再生時刻情報を再生制御部16に出力する。 When the reproduction unit 18 inputs a reproduction command including the reproduction start time from the reproduction control unit 16, the reproduction unit 18 sequentially inputs the segments from the buffer based on the reproduction start time, and the input segment is a segment media format (video, audio, text, etc.). ), and outputs to the display unit 19, and also outputs reproduction time information, which is information of the reproduction time updated at the time of reproduction, to the reproduction control unit 16.

また、再生部18は、再生制御部16から停止命令を入力した場合には、再生を停止する。 In addition, when the reproduction unit 18 inputs a stop command from the reproduction control unit 16, the reproduction unit 18 stops the reproduction.

表示部19は、再生部18から入力されたデコード済みのメディアデータをそのメディアの形式に従って表示する。 The display unit 19 displays the decoded media data input from the reproduction unit 18 according to the format of the media.

バッファ制御部15は、再生制御部16から入力された再生時刻情報、及び取得対象のセグメント化ストリームを表す取得対象ストリーム識別子に対応するセグメントURLリストから取得対象のセグメントのURLを決定し、セグメント取得部13に出力する。また、バッファ制御部15は、セグメント取得部13からセグメントが入力されると、該セグメントをバッファ14に出力する。 The buffer control unit 15 determines the URL of the acquisition target segment from the reproduction time information input from the reproduction control unit 16 and the segment URL list corresponding to the acquisition target stream identifier representing the acquisition target segmented stream, and acquires the segment acquisition. It is output to the unit 13. Further, when the segment is input from the segment acquisition unit 13, the buffer control unit 15 outputs the segment to the buffer 14.

バッファ制御部15は、再生制御部16から新規再生時刻情報を入力した場合には、新規再生時刻に基づき、再生を開始するまでにバッファ14に保存する必要があるセグメントの数が最小となるセグメント化ストリームのストリーム識別子をセグメントリスト記憶部12から取得対象ストリーム識別子として抽出する。すなわち、バッファ制御部15は、取得対象ストリーム識別子に対応するセグメントURLリストを決定する。そして、バッファ制御部15は、該セグメントURLリストから取得対象のセグメントのURLを抽出し、セグメント取得部13に出力する。シーク操作時の制御の詳細については、下記で説明する。 When the new reproduction time information is input from the reproduction control unit 16, the buffer control unit 15 determines the minimum number of segments to be stored in the buffer 14 before starting reproduction based on the new reproduction time. The stream identifier of the encoded stream is extracted as the acquisition target stream identifier from the segment list storage unit 12. That is, the buffer control unit 15 determines the segment URL list corresponding to the acquisition target stream identifier. Then, the buffer control unit 15 extracts the URL of the acquisition target segment from the segment URL list and outputs it to the segment acquisition unit 13. Details of the control during the seek operation will be described below.

なお、上述した受信装置1として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、受信装置1の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。 It should be noted that a computer can be preferably used to function as the above-described receiving device 1, and such a computer stores a program describing the processing content for realizing each function of the receiving device 1 in the storage unit of the computer. Moreover, it can be realized by reading and executing this program by the CPU of the computer. Note that this program can be recorded in a computer-readable recording medium.

(シーク操作時のセグメント取得制御方法)
次に、受信装置1のシーク操作時のセグメント取得制御方法について、図6のフローチャートを参照して説明する。図6に示すフローチャートは、既にマニフェスト取得部11により、配信サーバ3からマニフェストファイルを取得し、ストリーム識別子ごとにセグメントの再生時刻及びURLを対応付けたセグメントURLリストも作成済みの状態から開始するものとする。また、ネットワークの混雑状況に応じて受信帯域が常に変動することを見越して、新規再生時刻を起点として、予め設定したバッファ規定値(例えば3秒)以上のセグメントがバッファ14に挿入されてから再生を開始するものとする。
(Segment acquisition control method during seek operation)
Next, a segment acquisition control method at the time of a seek operation of the receiving device 1 will be described with reference to the flowchart of FIG. The flowchart shown in FIG. 6 starts from a state in which the manifest acquisition unit 11 has already acquired a manifest file from the distribution server 3 and created a segment URL list in which segment playback times and URLs are associated with each stream identifier. And Also, in anticipation that the reception band will always fluctuate depending on the congestion status of the network, starting from the new reproduction time, a segment with a preset buffer specified value (for example, 3 seconds) or more is inserted into the buffer 14 and then reproduced. Shall be started.

また、バッファ14は、MPDに記載のPeriodの開始時刻から終了時刻までの範囲を持っており、セグメントを再生開始時刻と再生継続時刻の情報と対応付けて保存しているものとする。また、バッファ14にコンテンツのセグメントが挿入されている範囲をバッファ済みセグメント範囲と称する。 Further, the buffer 14 has a range from the start time to the end time of the Period described in the MPD, and stores the segment in association with the information of the reproduction start time and the reproduction continuation time. A range in which the content segment is inserted in the buffer 14 is referred to as a buffered segment range.

まず、再生制御ユーザI/F17によりシーク操作が実行されたら(ステップS001)、再生制御部16は、シーク後の再生時刻である新規再生時刻を抽出し(ステップS002)、バッファ制御部15に出力する。 First, when a seek operation is executed by the playback control user I/F 17 (step S001), the playback control unit 16 extracts a new playback time that is the playback time after the seek (step S002), and outputs it to the buffer control unit 15. To do.

続いて、バッファ制御部15は、現在取得対象となっているセグメント化ストリームを表す取得対象ストリーム識別子をリセットし(ステップS003)、バッファ14内に新規再生時刻から予め設定したバッファ規定値以上の範囲までに対応するセグメントが存在するか否かを確認する。 Subsequently, the buffer control unit 15 resets the acquisition target stream identifier representing the segmented stream that is currently the acquisition target (step S003), and the range from the new reproduction time in the buffer 14 to the preset buffer specified value or more. Check whether there is a corresponding segment up to.

バッファ14内に上記セグメントが存在しない場合には(ステップS004−NO)、バッファ制御部15は、再生を開始するまでにバッファ14に保存する必要があるセグメントの数(バッファ規定値に達するまでに取得が必要なセグメントの数)が最小となるセグメント化ストリームのストリーム識別子を抽出し、取得対象ストリーム識別子に設定する(ステップS005)。なお、バッファ済みセグメント範囲に新規再生時刻に対応するセグメントが含まれる場合には、バッファ済みセグメント範囲の最後からバッファ規定値に達するまでに取得が必要なセグメント数が最小となるセグメント化ストリームのストリーム識別子を抽出する(ステップS005)。 If the above segment does not exist in the buffer 14 (step S004-NO), the buffer control unit 15 determines the number of segments that need to be stored in the buffer 14 before starting reproduction (by the time when the buffer prescribed value is reached). The stream identifier of the segmented stream that minimizes the number of segments that need to be acquired) is extracted and set as the acquisition target stream identifier (step S005). If the buffered segment range includes a segment corresponding to the new playback time, the segmented stream that minimizes the number of segments that need to be acquired from the end of the buffered segment range to the buffer specified value The identifier is extracted (step S005).

例えば、上述した図3の例において5秒の位置にシークした場合、バッファ規定値(3秒)以上にするためには、セグメント化ストリーム1及びセグメント化ストリーム2では2つのセグメントを取得する必要があるが、セグメント化ストリーム3では1つのセグメントを取得するだけでよい。そのため、取得対象ストリーム識別子は、セグメント化ストリーム3のストリーム識別子となる。 For example, in the case of seeking at the position of 5 seconds in the example of FIG. 3 described above, it is necessary to acquire two segments in the segmented stream 1 and the segmented stream 2 in order to achieve the buffer specified value (3 seconds) or more. However, segmented stream 3 only needs to acquire one segment. Therefore, the acquisition target stream identifier is the stream identifier of the segmented stream 3.

続いて、バッファ制御部15は、セグメントリスト記憶部12に記憶された、取得対象ストリーム識別子に対応するセグメントURLリストから、新規再生時刻に対応するセグメントのURLを抽出(決定)する(ステップS006)。なお、バッファ済みセグメント範囲に新規再生時刻に対応するセグメントが含まれる場合には、バッファ制御部15は、新規再生時刻を含むバッファ済みセグメント範囲の最後のセグメントに続くセグメントのURLを、取得対象ストリーム識別子に対応するセグメントURLリストから抽出する。 Subsequently, the buffer control unit 15 extracts (determines) the URL of the segment corresponding to the new reproduction time from the segment URL list corresponding to the acquisition target stream identifier stored in the segment list storage unit 12 (step S006). .. If the buffered segment range includes a segment corresponding to the new playback time, the buffer control unit 15 determines the URL of the segment following the last segment of the buffered segment range including the new playback time as the acquisition target stream. Extract from the segment URL list corresponding to the identifier.

続いて、セグメント取得部13は、抽出したセグメントのURLを含むリクエスト(セグメント要求)を配信サーバ3に送信し、該リクエストに対するレスポンスとして配信サーバ3からセグメントを取得する(ステップS007)。そして、セグメント取得部13は、該受信したセグメントをバッファ14に挿入する(ステップS008)。 Subsequently, the segment acquisition unit 13 transmits a request (segment request) including the URL of the extracted segment to the distribution server 3, and acquires a segment from the distribution server 3 as a response to the request (step S007). Then, the segment acquisition unit 13 inserts the received segment into the buffer 14 (step S008).

再生時刻がコンテンツの終了時刻に到達しておらず、且つ再生制御ユーザI/F17にて停止ボタンが押されていない場合(ステップS009−NO)には、ステップS004に戻る。一方、再生時刻がコンテンツの終了時刻に到達したか、又は再生制御ユーザI/F17にて停止ボタンが押された場合(ステップS009−YES)には、処理を終了する。 When the reproduction time has not reached the end time of the content and the stop button is not pressed by the reproduction control user I/F 17 (step S009-NO), the process returns to step S004. On the other hand, when the reproduction time reaches the end time of the content or when the stop button is pressed in the reproduction control user I/F 17 (step S009-YES), the process ends.

ステップS004においてYESである場合には、現在の再生時刻を新規再生時刻に変更し(ステップS010)、該再生時刻から再生を開始して(ステップS011)、処理を終了する。 If YES in step S004, the current reproduction time is changed to the new reproduction time (step S010), reproduction is started from the reproduction time (step S011), and the process ends.

以上により、ストリーミング再生中におけるシーク操作時に、再生開始までに必要なデータがバッファ14に溜まるまでに取得するセグメント数を削減することが可能となる。よって、再生開始までの待ち時間(バッファリング遅延)を短縮することが可能となるとともに、無駄なセグメントを取得する機会が減るためネットワークの利用効率も向上し、安定した視聴が可能となる。 As described above, when performing a seek operation during streaming reproduction, it is possible to reduce the number of segments acquired until the data necessary for reproduction start is accumulated in the buffer 14. Therefore, it is possible to shorten the waiting time (buffering delay) until the reproduction is started, and the chances of acquiring useless segments are reduced, so that the utilization efficiency of the network is improved and stable viewing is possible.

上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態に記載の構成ブロック又は処理ステップについて、複数を1つに組み合わせたり、1つを複数に分割したりすることが可能である。 Although the above embodiments have been described as representative examples, 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 construed as being limited by the above-described embodiments, and various modifications and changes can be made without departing from the scope of the claims. For example, regarding the constituent blocks or processing steps described in the embodiments, it is possible to combine a plurality of them into one or divide one into a plurality.

1 受信装置
2 コンテンツ生成装置
3 配信サーバ
10 通信I/F
11 マニフェスト取得部
12 セグメントリスト記憶部
13 セグメント取得部
14 バッファ
15 バッファ制御部
16 再生制御部
17 再生制御ユーザI/F
18 再生部
19 表示部
21 素材映像出力部
22 エンコード部
23 セグメント化タイミング制御部
24 セグメント化ストリーム生成部
24−1〜24−n セグメント化部
25 マニフェスト生成部
26 コンテンツ送信部
27 通信I/F
1 Receiving Device 2 Content Generating Device 3 Distribution Server 10 Communication I/F
11 manifest acquisition unit 12 segment list storage unit 13 segment acquisition unit 14 buffer 15 buffer control unit 16 reproduction control unit 17 reproduction control user I/F
18 playback unit 19 display unit 21 material video output unit 22 encoding unit 23 segmentation timing control unit 24 segmented stream generation unit 24-1 to 24-n segmentation unit 25 manifest generation unit 26 content transmission unit 27 communication I/F

Claims (4)

動画コンテンツのセグメント及びマニフェストファイルを生成するコンテンツ生成装置であって、
動画コンテンツの符号化ストリームを異なるタイミングでセグメントに分割した、複数のセグメント化ストリームを生成するセグメント化ストリーム生成部と、
前記複数のセグメント化ストリームについて、セグメント化ストリームを識別するストリーム識別子と、セグメントの再生時刻及びURLとを記述したマニフェストファイルを生成するマニフェスト生成部と、
前記マニフェストファイル及び前記セグメントを配信サーバに供給するコンテンツ送信部と、
を備えることを特徴とするコンテンツ生成装置。
A content generation device for generating a segment of a video content and a manifest file,
A segmented stream generation unit that generates a plurality of segmented streams by dividing the encoded stream of the video content into segments at different timings,
A manifest generation unit that generates a manifest file that describes a stream identifier that identifies the segmented stream, a segment reproduction time, and a URL for the plurality of segmented streams,
A content transmission unit that supplies the manifest file and the segment to a distribution server;
A content generation device comprising:
符号化ストリームを異なるタイミングでセグメントに分割した複数のセグメント化ストリームに関するマニフェストファイル、及びセグメントを配信サーバから受信する受信装置であって、
前記マニフェストファイルには、セグメント化ストリームを識別するストリーム識別子と、セグメントの再生時刻及びURLとが記述されており、
受信した前記マニフェストファイルを解析し、前記ストリーム識別子ごとに前記セグメントの再生時刻及びURLを対応付けたセグメントURLリストを生成するマニフェスト取得部と、
シーク操作が実行された場合に、シーク後の再生時刻である新規再生時刻を抽出する再生制御部と、
シーク操作が実行された場合に、前記新規再生時刻に基づき、再生を開始するまでにバッファに保存する必要があるセグメントの数が最小となるセグメント化ストリームに対応する前記セグメントURLリストを決定し、該セグメントURLリストから取得対象のセグメントのURLを抽出するバッファ制御部と、
前記バッファ制御部により決定された前記セグメントのURLに基づいて、配信サーバからセグメントを取得するセグメント取得部と、
を備えることを特徴とする、受信装置。
A manifest file relating to a plurality of segmented streams obtained by dividing an encoded stream into segments at different timings, and a receiving device for receiving the segments from a distribution server,
In the manifest file, a stream identifier for identifying a segmented stream, a segment playback time and a URL are described.
A manifest acquisition unit that analyzes the received manifest file and generates a segment URL list that associates the playback time and URL of the segment for each stream identifier;
A playback control unit that extracts a new playback time, which is the playback time after the seek, when a seek operation is executed,
When a seek operation is performed, based on the new playback time, determine the segment URL list corresponding to the segmented stream that minimizes the number of segments that need to be stored in the buffer before playback starts, A buffer control unit that extracts the URL of the segment to be acquired from the segment URL list;
A segment acquisition unit that acquires a segment from a distribution server based on the URL of the segment determined by the buffer control unit;
A receiver, comprising:
コンピュータを、請求項1に記載のコンテンツ生成装置として機能させるためのプログラム。 A program for causing a computer to function as the content generation device according to claim 1. コンピュータを、請求項2に記載の受信装置として機能させるためのプログラム。
A program for causing a computer to function as the receiving device according to claim 2.
JP2019020980A 2019-02-07 2019-02-07 Receiving device and program Active JP7324012B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019020980A JP7324012B2 (en) 2019-02-07 2019-02-07 Receiving device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019020980A JP7324012B2 (en) 2019-02-07 2019-02-07 Receiving device and program

Publications (2)

Publication Number Publication Date
JP2020129734A true JP2020129734A (en) 2020-08-27
JP7324012B2 JP7324012B2 (en) 2023-08-09

Family

ID=72174937

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019020980A Active JP7324012B2 (en) 2019-02-07 2019-02-07 Receiving device and program

Country Status (1)

Country Link
JP (1) JP7324012B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003209823A (en) * 2002-01-16 2003-07-25 Matsushita Electric Ind Co Ltd Stream transmission/reception system, and stream transmission/reception method
JP2009284282A (en) * 2008-05-23 2009-12-03 Sony Corp Content server, information processing apparatus, network device, content distribution method, information processing method, and content distribution system
JP2014534684A (en) * 2011-10-05 2014-12-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated Switching the representation of coded multimedia data during network streaming
JP2018182447A (en) * 2017-04-07 2018-11-15 キヤノン株式会社 Video distribution apparatus, video distribution method, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003209823A (en) * 2002-01-16 2003-07-25 Matsushita Electric Ind Co Ltd Stream transmission/reception system, and stream transmission/reception method
JP2009284282A (en) * 2008-05-23 2009-12-03 Sony Corp Content server, information processing apparatus, network device, content distribution method, information processing method, and content distribution system
JP2014534684A (en) * 2011-10-05 2014-12-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated Switching the representation of coded multimedia data during network streaming
JP2018182447A (en) * 2017-04-07 2018-11-15 キヤノン株式会社 Video distribution apparatus, video distribution method, and program

Also Published As

Publication number Publication date
JP7324012B2 (en) 2023-08-09

Similar Documents

Publication Publication Date Title
US20210385540A1 (en) Systems and methods for real-time adaptive bitrate transcoding and transmission of transcoded media
WO2013008867A1 (en) Transmission device, method for controlling transmission device, control program, and recording medium
JP5147278B2 (en) Video distribution apparatus and key frame distribution method
US20120324058A1 (en) Playlists for real-time or near real-time streaming
US20110116772A1 (en) Method and apparatus for providing trick play service
CN102812674A (en) Adaptive Streaming Method And Apparatus
CN105052160A (en) Method and apparatus for streaming media content to client devices
CN109792546B (en) Method for transmitting video content from server to client device
US11647252B2 (en) Identification of elements in a group for dynamic element replacement
CN102812718A (en) Method and apparatus for adaptively streaming content including plurality of chapters
US11778013B2 (en) Segment ladder transitioning in adaptive streaming
JP7443544B2 (en) Client-based storage for remote factorization
KR20170141677A (en) Receiving device, transmitting device and data processing method
JP6609468B2 (en) Receiving device, reproduction time control method, and program
JP2004140488A (en) Multimedia contents editing apparatus and multimedia contents reproducing apparatus
US20190297370A1 (en) System and method for distributed control of segmented media
JP6535273B2 (en) Receiving device, segment acquisition method, and program
US20230164398A1 (en) Video stream control
JP6397341B2 (en) Reception device, buffer management 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
KR20110129064A (en) Content virtual segmentation method, and method and system for providing streaming service using the same
KR20170141676A (en) Receiving device, transmitting device and data processing method
JP2022133163A (en) Content generation device, reception device, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230323

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230728

R150 Certificate of patent or registration of utility model

Ref document number: 7324012

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150