JP6581884B2 - Reception device, buffer management method, and program - Google Patents

Reception device, buffer management method, and program Download PDF

Info

Publication number
JP6581884B2
JP6581884B2 JP2015227891A JP2015227891A JP6581884B2 JP 6581884 B2 JP6581884 B2 JP 6581884B2 JP 2015227891 A JP2015227891 A JP 2015227891A JP 2015227891 A JP2015227891 A JP 2015227891A JP 6581884 B2 JP6581884 B2 JP 6581884B2
Authority
JP
Japan
Prior art keywords
segment
buffer
content
filler
playback
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015227891A
Other languages
Japanese (ja)
Other versions
JP2017098704A (en
Inventor
敏 西村
敏 西村
松村 欣司
欣司 松村
藤沢 寛
寛 藤沢
山本 正男
正男 山本
遠藤 洋介
洋介 遠藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
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 Japan Broadcasting Corp filed Critical Japan Broadcasting Corp
Priority to JP2015227891A priority Critical patent/JP6581884B2/en
Publication of JP2017098704A publication Critical patent/JP2017098704A/en
Application granted granted Critical
Publication of JP6581884B2 publication Critical patent/JP6581884B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数のセグメントから構成されるコンテンツをセグメントごとに受信してストリーミング再生を行う受信装置、該受信装置のバッファ管理方法、及び該受信装置として機能させるためのプログラムに関する。   The present invention relates to a receiving apparatus that receives content composed of a plurality of segments for each segment and performs streaming reproduction, a buffer management method for the receiving apparatus, and a program for causing the receiving apparatus to function.

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

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

図5にアダプティブストリーミングの一例を示す。図5では、映像が複数品質でエンコードされ、それぞれの品質ごとに数秒単位に分割されたセグメントが生成されている。この例では、エンコーダは映像を低品質のセグメント1〜4、中品質のセグメント1’〜4’、及び高品質のセグメント1”〜4”に分割している。マニフェストファイルには、セグメントのURLや、それぞれの品質ごとのビットレートや画像サイズ等の属性情報が登録される。セグメント及びマニフェストファイルはWebサーバに供給される。   FIG. 5 shows an example of adaptive streaming. In FIG. 5, the video is encoded with a plurality of qualities, and segments divided into units of several seconds are 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 URL of the segment and attribute information such as the bit rate and 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 segment configuration from the manifest file (step A), and determines the quality in units of segments based on the screen size of the receiving device and the status of the network receiving bandwidth. Is received by the HTTP protocol (step B). Subsequently, the received segments are connected in order according to the manifest file and reproduced (step C). Thus, by repeating the processes of steps B and C, a series of contents can be received and played back.

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

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

MSEを用いることにより、ビデオ要素はソースとしてバッファを参照することが可能となる。そのバッファへはJavascriptによって受信したセグメントを挿入することができるようになることから、多様なアダプティブストリーミングの視聴がHTML5のビデオ要素とJavascriptにより実現可能となる。   By using MSE, video elements can refer to 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 video element of HTML5 and Javascript.

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

また、図7に示すように、既にセグメントが挿入されている範囲に再生時刻が重なる別のセグメントを挿入して上書きすることも可能である。図7では、図6に示した例に、新しいセグメントとして、セグメント開始時刻が12秒かつ再生継続時間が10秒のセグメントを挿入した例を示している。その結果、12秒から22秒の範囲が新しいセグメントに差し替わるとともに、バッファリング範囲も0〜10秒、12〜22秒に更新されている。   In addition, as shown in FIG. 7, it is possible to insert another segment whose playback time overlaps the range where the segment has already been inserted and overwrite it. FIG. 7 shows an example in which a segment having a segment start time of 12 seconds and a playback duration of 10 seconds is inserted as a new segment in the example shown in FIG. As a result, the range of 12 to 22 seconds is replaced with a new segment, and the buffering range is also updated to 0 to 10 seconds and 12 to 22 seconds.

動画のストリーミングサービスの提供方法として、一つの番組の途中にCM等の動画クリップを挿入することや、放送のように編成に従って番組を次々と提供すること等、時系列に連結されたコンテンツを切り替えながら視聴するサービス形態が考えられる。MPEG−DASHにおいては、このようなサービスを可能とするマニフェストファイルの記述方法が定義されている。   As a method of providing a streaming service for moving images, the switching of content linked in time series, such as inserting video clips such as CMs in the middle of one program, or providing programs one after another according to the organization like broadcasting, etc. However, a service form for viewing is conceivable. In MPEG-DASH, a manifest file description method that enables such a service is defined.

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

AdaptationSetはメディアのコンポーネント(映像、音声、テキスト等)の情報を示しており、同じメディアでパラメータ(ビットレートや画面サイズ、音声のチャンネル数等)の異なる複数のコンポーネントを含むことができる。AdaptationSetに含まれるそれぞれのメディアのコンポーネントの情報はRepresentationで示される。Representationは一つ又は複数のセグメントで構成される。   AdaptationSet indicates information on media components (video, audio, text, etc.), and can include a plurality of components with different parameters (bit rate, screen size, audio channel number, etc.) on the same media. Information of each media component included in the AdaptationSet is indicated by Representation. Representation is composed of one or a plurality of segments.

このようなマニフェストファイルとすることで、再生時刻に従って、時系列に連結されたコンテンツを形成するセグメント(図8のInitialization Segment,Media Segment)を順次受信することが可能となる。   By using such a manifest file, it becomes possible to sequentially receive segments (Initialization Segment, Media Segment in FIG. 8) that form content connected in time series in accordance with the playback time.

また、ストリーミング再生におけるコンテンツの切り替えに関しては、バッファ量が不足した場合に、再生コンテンツの区切りが良い時点において、再生するコンテンツを切り替えることができる情報処理装置、及び情報処理方法が知られている(例えば、特許文献1参照)。   Regarding content switching in streaming playback, an information processing apparatus and an information processing method are known that can switch content to be played back when the playback content is good when the buffer amount is insufficient ( For example, see Patent Document 1).

特開2011−77597号公報JP 2011-77597 A

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

しかしながら、上述した時系列に連結されたコンテンツを再生しようとすると、コンテンツが異なるエンコーダにより生成されていた場合等に、Periodのdurationの値よりもコンテンツを構成する全セグメントの時間尺がわずかに短くなることがある。すると、コンテンツの切り替え時(Periodの変わり目)にバッファ内に時間的な隙間が生じてしまう。   However, when trying to play back the content linked in time series as described above, if the content is generated by a different encoder, the time length of all segments constituting the content is slightly shorter than the duration value of Period. May be. Then, a time gap is generated in the buffer at the time of content switching (change of Period).

図9にバッファ内に時間的な隙間が生じる例を示す。図9では切り替え前のPeriodをPeriod#1、切り替え後のPeriodをPeriod#2としており、Period#1のdurationパラメータが300秒、Period#1の全セグメントの合計の時間尺が299.9秒の例を示している。この場合、Period#1とPeriod#2の連結部分においてバッファに0.1秒の隙間が生じてしまう。このような場合に、Periodの変わり目で再生が停止してしまうおそれがあった。   FIG. 9 shows an example in which a time gap is generated in the buffer. In FIG. 9, the period before switching is Period # 1, the period after switching is Period # 2, the duration parameter of Period # 1 is 300 seconds, and the total time length of all the segments of Period # 1 is 299.9 seconds. An example is shown. In this case, a gap of 0.1 second is generated in the buffer at the connection portion of Period # 1 and Period # 2. In such a case, there was a risk that playback would stop at the transition of Period.

また、特許文献1には、ストリーミング再生におけるコンテンツの切り替えに関して、バッファ量が不足した場合に、再生コンテンツの区切りが良い時点において、再生するコンテンツを切り替えることが記載されているが、上記課題のようなバッファの細部の状況については触れておらず、課題の解決に必ずしも利用できる手法ではなかった。   Also, Patent Document 1 describes switching content to be played back at a time when the playback content is good when the buffer amount is insufficient with regard to switching content in streaming playback. It did not mention the details of the details of the buffer, and it was not always a technique that could be used to solve the problem.

かかる事情に鑑みてなされた本発明の目的は、時系列に連結されたコンテンツから構成される番組をストリーミング再生する際に、コンテンツの切り替えをスムーズに行うことができる受信装置、バッファ管理方法、及びプログラムを提供することにある。   An object of the present invention made in view of such circumstances is a receiving apparatus, a buffer management method, and a buffer management method capable of smoothly switching contents when streaming a program composed of contents linked in time series. To provide a program.

上記課題を解決するため、本発明に係る受信装置は、複数のセグメントから構成されるコンテンツが時系列に連結されて構成される番組を、セグメントごとに受信してストリーミング再生を行う受信装置であって、セグメントを取得するセグメント取得部と、前記セグメントを、セグメント開始時刻及び再生継続時間を対応付けて保存するバッファと、前記バッファに保存されたコンテンツを構成する全セグメントの時間尺が、前記コンテンツの尺を示すメタ情報から得られるコンテンツ尺よりも短い場合に、再生継続時間が前記コンテンツ尺及び前記全セグメントの時間尺の差分以上のフィラーセグメントを生成するフィラーセグメント生成部と、前記フィラーセグメントを前記コンテンツの最後のセグメントに続けて前記バッファに挿入するバッファ制御部と、を備えることを特徴とする。   In order to solve the above problems, a receiving apparatus according to the present invention is a receiving apparatus that receives a program composed of a plurality of segments connected in time series and performs streaming playback for each segment. A segment acquisition unit for acquiring a segment, a buffer for storing the segment in association with a segment start time and a playback continuation time, and a time scale for all the segments constituting the content stored in the buffer. A filler segment generation unit that generates a filler segment that is equal to or greater than the difference between the content scale and the time scale of all the segments when the content length obtained from the meta information indicating the scale is shorter than the content scale, and the filler segment Insert into the buffer following the last segment of the content A buffer control unit that, characterized in that it comprises a.

さらに、本発明に係る受信装置は、前記フィラーセグメント生成部は、前記バッファに挿入されたセグメントのメディア形式が映像の場合には、前記フィラーセグメントを白画像又は黒画像をエンコードしたセグメントとすることを特徴とする。   Furthermore, in the receiving apparatus according to the present invention, the filler segment generation unit, when the media format of the segment inserted in the buffer is video, sets the filler segment as a segment encoding a white image or a black image. It is characterized by.

さらに、本発明に係る受信装置は、前記フィラーセグメント生成部は、前記バッファに挿入されたセグメントのメディア形式が音声の場合には、前記フィラーセグメントを、無音をエンコードしたセグメントとすることを特徴とする。   Furthermore, the receiving device according to the present invention is characterized in that, when the media format of the segment inserted in the buffer is voice, the filler segment generation unit sets the filler segment as a segment encoding silence. To do.

さらに、本発明に係る受信装置は、前記フィラーセグメント生成部は、予め用意されたテンプレートセグメントを連結することにより前記フィラーセグメントを生成することを特徴とする。   Furthermore, the receiving apparatus according to the present invention is characterized in that the filler segment generation unit generates the filler segment by connecting template segments prepared in advance.

また、上記課題を解決するため、本発明に係るバッファ管理方法は、複数のセグメントから構成されるコンテンツが時系列に連結されて構成される番組をセグメントごとに受信してストリーミング再生を行う受信装置におけるバッファ管理方法であって、セグメントを取得するステップと、前記セグメントを、セグメント開始時刻及び再生継続時間を対応付けてバッファに保存するステップと、前記バッファに保存されたコンテンツを構成する全セグメントの時間尺が、前記コンテンツの尺を示すメタ情報であるコンテンツ尺よりも短い場合に、再生継続時間が前記コンテンツ尺及び前記全セグメントの時間尺の差分以上のフィラーセグメントを生成するステップと、前記フィラーセグメントを前記コンテンツの最後のセグメントに続けて前記バッファに挿入するステップと、を含むことを特徴とする。
In order to solve the above-described problem, the buffer management method according to the present invention is a receiving apparatus that receives a program composed of a plurality of segments connected in time series for each segment and performs streaming playback. A buffer management method according to claim 1, wherein a step of acquiring a segment, a step of storing the segment in a buffer in association with a segment start time and a playback duration, and a step of storing all segments constituting the content stored in the buffer When the time scale is shorter than the content scale which is meta information indicating the content scale, a step of generating a filler segment whose playback duration is equal to or greater than the difference between the content scale and the time scale of all the segments; and the filler A segment before the last segment of the content Characterized in that it comprises the steps of inserting into the buffer, the.

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

本発明によれば、セグメント開始時刻と再生継続時間の情報に対応つけてセグメントを管理するバッファを用いて時系列に連結されたコンテンツから構成される番組のストリーミング再生を行う受信装置において、マニフェストにおいて設定された個々のコンテンツのコンテンツ尺よりも、コンテンツを構成する全セグメントの時間尺の方が短い場合でも、コンテンツ切り替えがスムーズに行えることにより安定した視聴が可能となる。   According to the present invention, in a receiving apparatus that performs streaming playback of a program composed of contents linked in time series using a buffer that manages segments in association with information on segment start time and playback duration, Even when the time scales of all the segments constituting the content are shorter than the content scales of the set individual contents, the content can be switched smoothly, thereby enabling stable viewing.

本発明の一実施形態に係る受信装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the receiver which concerns on one Embodiment of this invention. 本発明の一実施形態に係る受信装置が取得するマニフェストファイルの一例を示す図である。It is a figure which shows an example of the manifest file which the receiver which concerns on one Embodiment of this invention acquires. 本発明の一実施形態に係る受信装置が生成するフィラーセグメントの一例を示す図である。It is a figure which shows an example of the filler segment which the receiver which concerns on one Embodiment of this invention produces | generates. 本発明の一実施形態に係る受信装置のバッファ管理方法を示すフローチャートである。4 is a flowchart illustrating a buffer management method of a receiving apparatus 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. 従来のMSEのバッファモデルにおいて、セグメントをバッファに上書き挿入する例を示す図である。It is a figure which shows the example which overwrite-inserts a segment in a buffer in 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)形式とし、セグメントをISOBMFF(ISO/IEC14496−12)形式とする。また、再生時刻のうち、セグメントの先頭に該当する時刻を「セグメント開始時刻」と称する。   Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. In this embodiment described below, as an example, the manifest file is in the MPEG-DASH (ISO / IEC 239-1) MPD (Media Presentation Description) format, and the segment is in the ISOBMFF (ISO / IEC 14496-12) format. Further, the time corresponding to the head of the segment among the reproduction times is referred to as “segment start time”.

図2にマニフェストファイルの一例(抜粋)を示す。図2の例ではコンテンツ尺(duration)が3分のPeriodが二つ連結されており、それぞれのPeriodには、AdaptationSetが一つずつ存在し、さらにそれぞれのAdaptationSetにはRepresentationが一つずつ存在している。   FIG. 2 shows an example (extract) of a manifest file. In the example of FIG. 2, two periods with a content duration of 3 minutes are connected, and each Period has one AdaptationSet, and each AdaptationSet has one Representation. ing.

ある再生時刻におけるセグメントのURLは、マニフェストファイルの情報から求めることができる。図2の例をもとに説明する。2行目のstartの値から、Periodの開始時刻は0である。4行目のtimescaleの値から、AdaptationSetのタイムスケール(1秒間の目盛数)は、90000である。6行目のdurationの値から、セグメントの継続時間は、450000である。6行目のstartNumberの値から、セグメントの開始番号は1である。以上から、ある再生時刻t(秒)に対するセグメント番号は以下の式(1)で算出できる。なお、少数以下は切り捨てる。
Number=(t-start)×timescale/duration+startNumber (1)
The URL of the segment at a certain playback time can be obtained from information in the manifest file. A description will be given based on the example of FIG. From the start value on the second line, the period start time is zero. From the timescale value in the fourth row, the adaptationSet timescale (number of scales per second) is 90000. From the duration value in the sixth row, the duration of the segment is 450,000. From the value of startNumber on the sixth line, the segment start number is 1. From the above, the segment number for a certain reproduction time t (second) can be calculated by the following equation (1). The number below the decimal is rounded down.
Number = (t-start) x timescale / duration + startNumber (1)

次に、6行目のmediaの値から、セグメントのURLのテンプレート“content_v_$Number$.mp4”を取得し、$Number$を先に算出したNumber値に差し替えることにより、セグメントのURLを取得することができる。   Next, the segment URL template “content_v_ $ Number $ .mp4” is acquired from the media value on the sixth line, and the segment URL is acquired by replacing $ Number $ with the previously calculated Number value. be able to.

なお、上記例は図2の一つ目のPeriodを元に説明したが、二つ目のPeriodについても同様に算出できる。また、本実施形態ではMPDファイル全体により再生される情報を「番組」と称し、個々のPeriodにより再生される情報を「コンテンツ」と称する。すなわち、番組はコンテンツが時系列に連結されて構成されたものである。   Although the above example has been described based on the first period of FIG. 2, the second period can be calculated in the same manner. In the present embodiment, information reproduced by the entire MPD file is referred to as “program”, and information reproduced by each period is referred to as “content”. That is, the program is configured by linking contents in time series.

(受信装置の構成)
次に、本発明の一実施形態に係る受信装置の構成例について、図1を参照して説明する。
(Receiver configuration)
Next, a configuration example of a receiving apparatus according to an embodiment of the present invention will be described with reference to FIG.

受信装置1は、インターネットを介して配信サーバ2と接続され、配信サーバ2から複数のセグメントにより構成されるコンテンツをセグメントごとに受信し、ストリーミング再生を行う。   The receiving device 1 is connected to the distribution server 2 via the Internet, receives content composed of a plurality of segments from the distribution server 2 for each segment, and performs streaming reproduction.

配信サーバ2は、受信装置1によって指定されたURLのマニフェストファイルやセグメントを配信するサーバであり、例えば一般的なWebサーバとすることができる。   The distribution server 2 is a server that distributes the manifest file or segment of the URL specified by the receiving device 1, and can be a general Web server, for example.

図1に示す受信装置1は、通信I/F10と、マニフェスト取得部11と、セグメント取得部12と、フィラーセグメント生成部13と、バッファ14と、バッファ制御部15と、再生制御部16と、再生制御ユーザI/F17と、再生部18と、表示部19とを備える。   1 includes a communication I / F 10, a manifest acquisition unit 11, a segment acquisition unit 12, a filler segment generation unit 13, a buffer 14, a buffer control unit 15, a reproduction control unit 16, A playback control user I / F 17, a playback unit 18, and a display unit 19 are provided.

再生制御ユーザI/F17は、ユーザの操作によって、再生命令及び停止命令を再生制御部16に出力する。再生命令には再生開始時刻を示す再生開始時刻情報が含まれる。   The reproduction control user I / F 17 outputs a reproduction command and a stop command to the reproduction control unit 16 by a user operation. The reproduction command includes reproduction start time information indicating the reproduction start time.

再生制御ユーザI/F17は、再生開始・停止ボタンを用意するとともに、コンテンツの開始、終了時刻、及び再生制御部16から入力された現在再生時刻情報をもとに、現在の再生時刻(再生位置)をグラフィカルに表示してもよい。例えば、再生画面の下部にコンテンツの開始時刻を左端、終了時刻を右端とする横長の棒状で表示し、それと重なるようにつまみ状の操作部分を配置し、つまみ上の操作部分を再生が進むにつれて左端から右端に移動させることによって、ユーザは再生時間全体のうち今どの部分を再生しているのかを一目で把握することができる。また、このつまみをマウス等のユーザ操作によって動かすことにより、任意の再生時刻を指定できるようにしてもよい。   The playback control user I / F 17 prepares a playback start / stop button, and based on the start and end times of content and the current playback time information input from the playback control unit 16, the current playback time (playback position). ) May be displayed graphically. For example, at the bottom of the playback screen, the content start time is displayed as a horizontally long bar with the left end and end time at the right end, and a knob-shaped operation part is placed so as to overlap with it. By moving from the left end to the right end, the user can grasp at a glance which part of the entire reproduction time is being reproduced. Further, an arbitrary reproduction time may be designated by moving this knob by a user operation such as a mouse.

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

また、再生制御部16は、再生制御ユーザI/F17から再生命令を入力すると、再生命令から再生開始時刻を抽出し、再生開始時刻情報をバッファ制御部15に出力する。そして、再生制御部16は、バッファ制御部15からバッファ規定値(例えば5秒)を超えたことを示す通知を入力したら、再生部18に再生開始時刻情報を出力するとともに、再生開始を指示する。   In addition, when a playback command is input from the playback control user I / F 17, the playback control unit 16 extracts a playback start time from the playback command and outputs playback start time information to the buffer control unit 15. Then, when the notification indicating that the buffer specified value (for example, 5 seconds) has been exceeded is input from the buffer control unit 15, the playback control unit 16 outputs the playback start time information to the playback unit 18 and instructs the playback start. .

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

マニフェスト取得部11は、アプリケーション起動時又は番組選択時に、配信サーバ2から所望の番組のマニフェストファイル(MPDファイル)を通信I/F10を介して取得する。そして、マニフェストファイルをもとにセグメント開始時刻及びセグメントのURLを対応付けたセグメントURLリストを生成し、セグメント取得部12及びバッファ制御部15に出力する。   The manifest acquisition unit 11 acquires a manifest file (MPD file) of a desired program from the distribution server 2 via the communication I / F 10 when an application is started or a program is selected. Then, a segment URL list in which the segment start time and the URL of the segment are associated with each other is generated based on the manifest file, and is output to the segment acquisition unit 12 and the buffer control unit 15.

バッファ制御部15は、再生制御部16から入力された再生開始時刻情報、及びバッファ14から入力されたバッファリング範囲(バッファ済みセグメント範囲)情報に基づき、取得対象のセグメントのセグメント開始時刻を決定する。そして、マニフェスト取得部11から入力されたセグメントURLリストから、セグメント開始時刻に対応付けられたセグメントのURLを抽出し、セグメント取得部12に出力する。また、バッファ制御部15は、セグメント取得部12からセグメントが入力されると、該セグメントをバッファ14に挿入する。   The buffer control unit 15 determines the segment start time of the acquisition target segment based on the reproduction start time information input from the reproduction control unit 16 and the buffering range (buffered segment range) information input from the buffer 14. . Then, the URL of the segment associated with the segment start time is extracted from the segment URL list input from the manifest acquisition unit 11 and output to the segment acquisition unit 12. Further, when a segment is input from the segment acquisition unit 12, the buffer control unit 15 inserts the segment into the buffer 14.

セグメント取得部12は、バッファ制御部15から入力された取得対象のセグメントのURLに基づいて対応するセグメントを取得し、バッファ制御部15に出力する。具体的には、セグメントのURLを含むセグメント要求(リクエスト)を生成して通信I/F10を介して配信サーバ2に送信し、配信サーバ2から通信I/F10を介して該要求に対するレスポンスとして対応するセグメントを取得する。なお、セグメント取得部12は、バッファ制御部15からセグメント開始時刻を入力し、セグメント取得部12がセグメントURLリストからセグメント開始時刻に対応付けられたセグメントのURLを抽出するようにしてもよい。   The segment acquisition unit 12 acquires a corresponding segment based on the URL of the acquisition target segment input from the buffer control unit 15 and outputs the acquired segment to the buffer control unit 15. Specifically, a segment request (request) including the segment URL is generated and transmitted to the distribution server 2 via the communication I / F 10, and the distribution server 2 responds as a response to the request via the communication I / F 10. Get the segment to perform. The segment acquisition unit 12 may input the segment start time from the buffer control unit 15, and the segment acquisition unit 12 may extract the URL of the segment associated with the segment start time from the segment URL list.

バッファ14は、バッファ制御部15からセグメントを入力し、該セグメントを、セグメント開始時刻及び再生継続時間を対応付けて保存する。   The buffer 14 receives a segment from the buffer control unit 15 and stores the segment in association with the segment start time and the reproduction duration time.

また、バッファ14は、バッファリング範囲情報をバッファ制御部15に出力する。ここで、バッファリング範囲情報とは、バッファ14にコンテンツのセグメントが挿入されている範囲を示す情報のことであり、例えば現在の保存中の全セグメントのセグメント開始時刻及び再生継続時間の情報とする。   Further, the buffer 14 outputs the buffering range information to the buffer control unit 15. Here, the buffering range information is information indicating the range in which the content segment is inserted in the buffer 14, and is, for example, information on the segment start time and playback duration of all currently stored segments. .

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

再生部18は、再生制御部16から停止命令を入力した場合には、再生を停止する。   The playback unit 18 stops playback when a stop command is input from the playback control unit 16.

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

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

以下に、フィラーセグメントの生成について説明する。   Below, the production | generation of a filler segment is demonstrated.

バッファ制御部15は、バッファ14に挿入したセグメントが現在再生中のピリオド(Period)の最後のセグメントであった場合には、全セグメントの時間尺(バッファリング範囲の最大値)と、ピリオドの終了時刻を比較する。ここで、ピリオドの終了時刻は、ピリオドの開始時刻(start)にコンテンツ尺を加算した時刻である。コンテンツ尺は、コンテンツの尺を示すメタ情報(duration)から得られる。ピリオドの開始時刻を0とすると、ピリオドの終了時刻とコンテンツ尺は同一である。   When the segment inserted into the buffer 14 is the last segment of the currently playing period (Period), the buffer control unit 15 sets the time length of all segments (maximum value of the buffering range) and the end of the period. Compare time. Here, the end time of the period is a time obtained by adding the content scale to the start time (start) of the period. The content scale is obtained from meta information (duration) indicating the scale of the content. If the period start time is 0, the period end time and the content scale are the same.

バッファ制御部15は、バッファ14に保存されたコンテンツを構成するバッファリング範囲の最大値がピリオドの終了時刻より小さい場合、すなわち全セグメントの時間尺がコンテンツ尺よりも短い場合には、バッファリング範囲の最大値を挿入開始時刻、ピリオド終了時刻とバッファリング範囲の最大値との差分を隙間時間と決定し、挿入開始時刻及び隙間時間を示すフィラー情報をフィラーセグメント生成部13に出力する。また、バッファ制御部15は、フィラーセグメント生成部13からフィラーセグメントが入力されると、該フィラーセグメントをコンテンツの最後のセグメントに続けてバッファ14に挿入する。   When the maximum value of the buffering range constituting the content stored in the buffer 14 is smaller than the end time of the period, that is, when the time scale of all the segments is shorter than the content scale, the buffer control unit 15 And the difference between the period end time and the maximum value of the buffering range is determined as a gap time, and filler information indicating the insertion start time and the gap time is output to the filler segment generation unit 13. In addition, when a filler segment is input from the filler segment generation unit 13, the buffer control unit 15 inserts the filler segment into the buffer 14 following the last segment of the content.

フィラーセグメント生成部13は、バッファ制御部15からフィラー情報を入力すると、挿入開始時刻から始まり再生継続時間が隙間時間以上のフィラーセグメントを生成し、バッファ制御部15に出力する。ここで、フィラーセグメントは、例えば、セグメントのメディア形式が映像の場合には白画像又は黒画像をエンコードしたデータとする。セグメントのメディア形式が音声の場合には無音をエンコードしたデータとする。フィラーセグメントの再生継続時間が隙間時間以上であれば、次のピリオドのセグメントをフィラーセグメントに上書きすることで、ピリオドの変わり目における隙間をなくし、ピリオドの変わり目で再生が停止することを防止することができる。   When the filler information is input from the buffer control unit 15, the filler segment generation unit 13 generates a filler segment that starts from the insertion start time and has a reproduction duration of the gap time or more, and outputs the filler segment to the buffer control unit 15. Here, the filler segment is, for example, data obtained by encoding a white image or a black image when the media format of the segment is video. When the media format of the segment is audio, silence is encoded data. If the playback duration of the filler segment is greater than or equal to the gap time, it is possible to eliminate the gap at the transition of the period by overwriting the segment of the next period on the filler segment and prevent playback from stopping at the transition of the period. it can.

また、フィラーセグメント生成部13は、データサイズが小さいメディアデータを予めセグメント化してテンプレートとして用意しておき、フィラー情報をもとに、テンプレートのパラメータを差し替えたデータとすることができる。フィラーセグメントのテンプレートは、受信装置1に記憶しておくこともできるし、コンテンツ再生開始時に、例えば配信サーバ2から取得するようにしてもよい。   In addition, the filler segment generation unit 13 can segment media data having a small data size in advance and prepare it as a template, and use the data obtained by replacing the template parameters based on the filler information. The template of the filler segment can be stored in the receiving device 1, or may be acquired from the distribution server 2, for example, at the start of content reproduction.

図3を参照して、フィラーセグメントの一例を説明する。図3は、フィラーセグメントを、ISOBMFF(ISO/IEC14496−12)形式とした場合の一例である。なお、一つのセグメントにMovie Fragmentを複数含むことも可能であるが、本例では一つとする。   An example of the filler segment will be described with reference to FIG. FIG. 3 shows an example in which the filler segment is in ISOBMFF (ISO / IEC 14496-12) format. Note that a plurality of Movie Fragments can be included in one segment, but in this example, only one is included.

本発明に関連する一部のパラメータについて説明する。sidxに含まれるtimescaleはタイムスケールを表している。earliest_presentation_timeは、このセグメントの最初のMovie Fragmentの最初のメディアデータの再生時刻を示している。subsegment_durationは、このMovie Fragmentごとの再生継続時間を示している。また、Movie Fragment内の、moof/traf/tfdtに含まれるbaseMediaDecodeTimeは、当該Movie Fragmentの再生継続時間を示している。例えば、timescale=90000とした場合、再生開始時刻t、再生継続時間d秒のセグメントは、
earliest_presentation_time=90000×t
subsegment_duration = baseMediaDecodeTime=90000×d
となる。
Some parameters related to the present invention will be described. The timescale included in sidx represents the time scale. earliest_presentation_time indicates the playback time of the first media data of the first Movie Fragment of this segment. subsegment_duration indicates the playback duration for each Movie Fragment. Also, baseMediaDecodeTime included in moof / traf / tfdt in the Movie Fragment indicates the playback duration of the Movie Fragment. For example, when timescale = 90000, the segment with the playback start time t and playback duration d seconds is
earliest_presentation_time = 90000 × t
subsegment_duration = baseMediaDecodeTime = 90000 × d
It becomes.

つまり、挿入開始時刻15秒、再生継続時間0.5秒のフィラーセグメントを生成するには、earliest_presentation_timeを1350000に、baseMediaDecodeTimeを45000に修正すればよい。なお、再生継続時間を修正しようとすると、mdat内部の情報まで修正範囲が及ぶことから処理負荷が大きくなる。そのため、テンプレートセグメントを予め用意しておき、テンプレートセグメントを再生継続時間が隙間時間を上回るまで複数連結することで、再生継続時間を修正せずに、所望のフィラーセグメントを生成することができる。   That is, in order to generate a filler segment with an insertion start time of 15 seconds and a playback duration of 0.5 seconds, earliest_presentation_time may be corrected to 1350000 and baseMediaDecodeTime to 45000. If the playback duration is to be corrected, the correction range extends to the information in mdat, and the processing load increases. Therefore, by preparing a template segment in advance and connecting a plurality of template segments until the reproduction duration exceeds the gap time, a desired filler segment can be generated without correcting the reproduction duration.

(再生開始時のバッファ管理方法)
次に、受信装置1の再生開始時のバッファ管理方法について、図4に示すフローチャートを参照して説明する。
(Buffer management method at the start of playback)
Next, a buffer management method at the start of reproduction of the receiving apparatus 1 will be described with reference to the flowchart shown in FIG.

図4に示すフローチャートは、既にマニフェストファイルを取得しており、セグメントURLリストも作成済みの状態から開始するものとする。また、受信装置1は、ネットワークの混雑状況に応じて受信帯域が常に変動することを見越して、再生開始時刻を起点として予め設定したバッファ規定値(例えば5秒)以上のセグメントがバッファ14に挿入されてから再生を開始するものとする。   The flowchart shown in FIG. 4 starts from a state in which a manifest file has already been acquired and a segment URL list has been created. In addition, the receiving apparatus 1 inserts a segment having a buffer specified value (for example, 5 seconds) or more set in advance into the buffer 14 with the reproduction start time as a starting point in anticipation that the reception band constantly fluctuates according to the network congestion situation. It is assumed that the playback starts after being done.

まず、再生制御ユーザI/F17において再生開始操作が実行されると(ステップS001)、再生制御部16は、新規に再生を開始する場合には番組の冒頭の再生開始時刻(0秒)を、一時停止等の操作の後に再生を再開した場合には一時停止操作がなされた時点の再生開始時刻を再生開始時刻情報として抽出し、バッファ制御部15に出力する(ステップS002)。   First, when a playback start operation is executed in the playback control user I / F 17 (step S001), the playback control unit 16 sets the playback start time (0 second) at the beginning of the program when starting a new playback. When reproduction is resumed after an operation such as pause, the reproduction start time at the time when the pause operation is performed is extracted as reproduction start time information and output to the buffer control unit 15 (step S002).

次に、バッファ制御部15は、バッファ14内に再生開始時刻情報から予め設定したバッファ規定値以上の範囲のセグメントが存在するか否かを確認する(ステップS003)。該セグメントが存在しない場合には(ステップS003−NO)、ステップS004に進み、該セグメントが存在する場合には(ステップS003−YES)、再生を開始し(ステップS012)、その後ステップS004に進む。   Next, the buffer control unit 15 checks whether or not there is a segment in the buffer 14 in a range that is equal to or greater than a preset buffer specified value from the reproduction start time information (step S003). If the segment does not exist (step S003-NO), the process proceeds to step S004. If the segment exists (step S003-YES), reproduction starts (step S012), and then the process proceeds to step S004.

ステップS004では、バッファ制御部15は再生時刻を含むバッファリング範囲の最後のセグメントに続くセグメントのURLが、セグメントURLリストに存在するか否かを確認する。該セグメントのURLが存在する場合には(ステップS004−YES)、バッファ制御部15はセグメントURLリストから該セグメントのURLを抽出し、セグメント取得部12に出力する(ステップS005)。続いて、セグメント取得部12は、抽出されたセグメントのURLを含むセグメント要求を配信サーバ2に送信し、該要求に対応するセグメントを受信し、バッファ制御部15に出力する(ステップS005)。バッファ制御部15は、ステップS005にて受信したセグメントをバッファ14に挿入する(ステップS006)。   In step S004, the buffer control unit 15 confirms whether or not the URL of the segment following the last segment in the buffering range including the reproduction time exists in the segment URL list. If the URL of the segment exists (YES in step S004), the buffer control unit 15 extracts the URL of the segment from the segment URL list and outputs it to the segment acquisition unit 12 (step S005). Subsequently, the segment acquisition unit 12 transmits a segment request including the extracted segment URL to the distribution server 2, receives the segment corresponding to the request, and outputs the segment to the buffer control unit 15 (step S005). The buffer control unit 15 inserts the segment received in step S005 into the buffer 14 (step S006).

次に、バッファ制御部15はバッファ14に挿入したセグメントが現在再生中のピリオド(Period)の最後のセグメントであるか否かを確認する(ステップS007)。ピリオドの最後のセグメントである場合には(ステップS007−YES)、バッファリング範囲の最大値と、ピリオドの終了時刻とを比較する(ステップS008)。   Next, the buffer control unit 15 confirms whether or not the segment inserted into the buffer 14 is the last segment of the currently playing period (Period) (step S007). If it is the last segment of the period (step S007-YES), the maximum value of the buffering range is compared with the end time of the period (step S008).

バッファリング範囲の最大値がピリオドの終了時刻より小さい場合には(ステップS008−YES)、フィラーセグメント生成部13は、バッファリング範囲の最大値を挿入開始時刻、ピリオド終了時刻とバッファリング範囲の最大値との差分以上を再生継続時間としてフィラーセグメントを生成してバッファ制御部15に出力し、バッファ制御部15は該フィラーセグメントをバッファ14に挿入する(ステップS009)。   When the maximum value of the buffering range is smaller than the end time of the period (step S008-YES), the filler segment generation unit 13 sets the maximum value of the buffering range to the insertion start time, the period end time, and the maximum of the buffering range. A filler segment is generated with the difference from the value equal to or greater than the playback duration as a playback duration, and is output to the buffer control unit 15. The buffer control unit 15 inserts the filler segment into the buffer 14 (step S009).

ステップS004,S007,S008においてNOであった場合には、現在再生中か否かを確認する(ステップS010)。再生中でない場合には(ステップS010−NO)、ステップS003に戻る。再生中である場合には(ステップS010−YES)、バッファ14の最後に到達したか、又は再生制御ユーザI/F17において停止ボタンが押されたかを確認する(ステップS011)。いずれかの条件を満たした場合には(ステップS011−YES)、処理を終了する。また、ステップS010がNOであった場合にはステップS003に戻り、ステップS011がNOの場合にはステップS004に戻る。   If NO in steps S004, S007, and S008, it is confirmed whether or not playback is currently being performed (step S010). If it is not being reproduced (step S010-NO), the process returns to step S003. If playback is in progress (YES in step S010), it is confirmed whether the end of the buffer 14 has been reached or whether the stop button has been pressed in the playback control user I / F 17 (step S011). If any condition is satisfied (step S011-YES), the process is terminated. If step S010 is NO, the process returns to step S003. If step S011 is NO, the process returns to step S004.

以上により、再生中のピリオドのコンテンツ尺よりもピリオドを構成する全セグメントの時間尺の方が短い場合には、再生継続時間がピリオドのコンテンツ尺及び全セグメントの時間尺の差分以上のフィラーセグメントを生成し、ピリオドの最終セグメント(コンテンツの最後のセグメント)に続けてバッファ14に挿入することにより、ピリオド(コンテンツ)間のバッファ14の隙間を埋めることができるため、ピリオド(コンテンツ)の切り替えがスムーズとなり安定した視聴が可能となる。   As described above, when the time scale of all the segments constituting the period is shorter than the content scale of the period being played back, a filler segment having a duration longer than the difference between the content scale of the period and the time scale of all segments is selected. By generating and inserting the last segment of the period (the last segment of the content) into the buffer 14, the gap of the buffer 14 between the periods (contents) can be filled, so that the switching of the periods (contents) is smooth Thus, stable viewing is possible.

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

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

1 受信装置
2 配信サーバ
10 通信I/F
11 マニフェスト取得部
12 セグメント取得部
13 フィラーセグメント生成部
14 バッファ
15 バッファ制御部
16 再生制御部
17 再生制御ユーザI/F
18 再生部
19 表示部
1 Receiving Device 2 Distribution Server 10 Communication I / F
DESCRIPTION OF SYMBOLS 11 Manifest acquisition part 12 Segment acquisition part 13 Filler segment production | generation part 14 Buffer 15 Buffer control part 16 Playback control part 17 Playback control user I / F
18 Playback section 19 Display section

Claims (6)

複数のセグメントから構成されるコンテンツが時系列に連結されて構成される番組を、セグメントごとに受信してストリーミング再生を行う受信装置であって、
セグメントを取得するセグメント取得部と、
前記セグメントを、セグメント開始時刻及び再生継続時間を対応付けて保存するバッファと、
前記バッファに保存されたコンテンツを構成する全セグメントの時間尺が、前記コンテンツの尺を示すメタ情報から得られるコンテンツ尺よりも短い場合に、再生継続時間が前記コンテンツ尺及び前記全セグメントの時間尺の差分以上のフィラーセグメントを生成するフィラーセグメント生成部と、
前記フィラーセグメントを前記コンテンツの最後のセグメントに続けて前記バッファに挿入するバッファ制御部と、
を備えることを特徴とする受信装置。
A receiving apparatus that receives a program configured by linking time-series content composed of a plurality of segments and performs streaming playback for each segment,
A segment acquisition unit for acquiring segments;
A buffer for storing the segment in association with a segment start time and a playback duration;
When the time scale of all the segments constituting the content stored in the buffer is shorter than the content scale obtained from the meta information indicating the content scale, the playback duration is the time scale of the content scale and all the segments. A filler segment generator that generates a filler segment greater than or equal to
A buffer controller that inserts the filler segment into the buffer following the last segment of the content;
A receiving apparatus comprising:
前記フィラーセグメント生成部は、前記バッファに挿入されたセグメントのメディア形式が映像の場合には、前記フィラーセグメントを白画像又は黒画像をエンコードしたセグメントとすることを特徴とする、請求項1に記載の受信装置。   2. The filler segment generation unit according to claim 1, wherein when the media format of the segment inserted into the buffer is video, the filler segment is a segment obtained by encoding a white image or a black image. Receiver. 前記フィラーセグメント生成部は、前記バッファに挿入されたセグメントのメディア形式が音声の場合には、前記フィラーセグメントを、無音をエンコードしたセグメントとすることを特徴とする、請求項1に記載の受信装置。   2. The receiving apparatus according to claim 1, wherein, when the media format of the segment inserted into the buffer is voice, the filler segment generation unit sets the filler segment as a segment in which silence is encoded. . 前記フィラーセグメント生成部は、予め用意されたテンプレートセグメントを連結することにより前記フィラーセグメントを生成することを特徴とする、請求項1から3のいずれか一項に記載の受信装置。   The receiving device according to any one of claims 1 to 3, wherein the filler segment generation unit generates the filler segment by connecting template segments prepared in advance. 複数のセグメントから構成されるコンテンツが時系列に連結されて構成される番組をセグメントごとに受信してストリーミング再生を行う受信装置におけるバッファ管理方法であって、
セグメントを取得するステップと、
前記セグメントを、セグメント開始時刻及び再生継続時間を対応付けてバッファに保存するステップと、
前記バッファに保存されたコンテンツを構成する全セグメントの時間尺が、前記コンテンツの尺を示すメタ情報であるコンテンツ尺よりも短い場合に、再生継続時間が前記コンテンツ尺及び前記全セグメントの時間尺の差分以上のフィラーセグメントを生成するステップと、
前記フィラーセグメントを前記コンテンツの最後のセグメントに続けて前記バッファに挿入するステップと、
を含むことを特徴とするバッファ管理方法。
A buffer management method in a receiving device that receives a program configured by linking time-series content composed of a plurality of segments and performs streaming playback,
Obtaining a segment;
Storing the segment in a buffer in association with the segment start time and playback duration;
When the time scale of all segments constituting the content stored in the buffer is shorter than the content scale that is meta information indicating the scale of the content, the playback duration time of the content scale and the time scale of all the segments is set. Generating filler segments greater than or equal to the difference;
Inserting the filler segment into the buffer following the last segment of the content;
A buffer management method comprising:
コンピュータを、請求項1から4のいずれか一項に記載の受信装置として機能させるためのプログラム。   The program for functioning a computer as a receiver as described in any one of Claim 1 to 4.
JP2015227891A 2015-11-20 2015-11-20 Reception device, buffer management method, and program Active JP6581884B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015227891A JP6581884B2 (en) 2015-11-20 2015-11-20 Reception device, buffer management method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015227891A JP6581884B2 (en) 2015-11-20 2015-11-20 Reception device, buffer management method, and program

Publications (2)

Publication Number Publication Date
JP2017098704A JP2017098704A (en) 2017-06-01
JP6581884B2 true JP6581884B2 (en) 2019-09-25

Family

ID=58818227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015227891A Active JP6581884B2 (en) 2015-11-20 2015-11-20 Reception device, buffer management method, and program

Country Status (1)

Country Link
JP (1) JP6581884B2 (en)

Also Published As

Publication number Publication date
JP2017098704A (en) 2017-06-01

Similar Documents

Publication Publication Date Title
US11418834B2 (en) Synchronizing internet (“over the top”) video streams for simultaneous feedback
US11516542B2 (en) Systems and methods for real-time adaptive bitrate transcoding and transmission of transcoded media
KR101748198B1 (en) Synchronizing multiple over the top streaming clients
EP2526671B1 (en) Methods and arrangements for http media stream distribution
CN102812674A (en) Adaptive Streaming Method And Apparatus
US11489899B1 (en) Segment ladder transitioning in adaptive streaming
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
JP6626696B2 (en) Receiving device, manifest updating method, and program
JP6581884B2 (en) Reception device, buffer management method, and program
JP7324012B2 (en) Receiving device and program
US20210168472A1 (en) Audio visual time base correction in adaptive bit rate applications
US11856242B1 (en) Synchronization of content during live video stream
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: 20181001

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190530

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190902

R150 Certificate of patent or registration of utility model

Ref document number: 6581884

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250