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

Reception device, buffer management method, and program Download PDF

Info

Publication number
JP6397341B2
JP6397341B2 JP2015011388A JP2015011388A JP6397341B2 JP 6397341 B2 JP6397341 B2 JP 6397341B2 JP 2015011388 A JP2015011388 A JP 2015011388A JP 2015011388 A JP2015011388 A JP 2015011388A JP 6397341 B2 JP6397341 B2 JP 6397341B2
Authority
JP
Japan
Prior art keywords
segment
playback
buffer
range
redundant
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
JP2015011388A
Other languages
Japanese (ja)
Other versions
JP2016136676A (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 JP2015011388A priority Critical patent/JP6397341B2/en
Publication of JP2016136676A publication Critical patent/JP2016136676A/en
Application granted granted Critical
Publication of JP6397341B2 publication Critical patent/JP6397341B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

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 in consideration of the screen size of the receiving device and the state of the network bandwidth of the transmission path from the manifest file, and joins and plays back the video content. (For example, refer nonpatent literature 1).

図6にアダプティブストリーミングの一例を示す。図6では、映像が複数品質でエンコードされ、それぞれの品質毎に数秒単位に分割されたセグメントが生成されている。この例では、エンコーダは映像を低品質のセグメント1〜4、中品質のセグメント1’〜4’、及び高品質のセグメント1”〜4”に分割している。マニフェストファイルには、セグメントのURLや、それぞれの品質毎のビットレートや画像サイズなどの属性情報が登録される。セグメント及びマニフェストファイルはWebサーバに供給される。   FIG. 6 shows an example of adaptive streaming. In FIG. 6, a 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.

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

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

一般にストリーミングを視聴する際には、ネットワークの混雑状況に応じて受信帯域が常に変動することから、バッファ容量の許す限り現在の再生時刻よりも数秒から数十秒先のデータまで受信してバッファに挿入しておくことにより、視聴の安定性を向上することができる。   In general, when viewing streaming, the reception bandwidth always fluctuates depending on the network congestion, so data that is several seconds to several tens of seconds ahead of the current playback time is received and buffered as far as the buffer capacity allows. By inserting it, the viewing stability can be improved.

コンテンツの視聴においては、コンテンツの最初から最後まで通して視聴する場合もあるが、視聴中にコンテンツの任意の位置を指定して再生を行うシーク再生をする場合もありうる。しかしながら、シーク再生をしようとする場合、バッファ容量の最大値近くまで未再生のセグメントが残っていると、指定した位置(時刻)のセグメントを受信してもバッファに挿入することができず、再生を開始できない可能性があった。   In viewing the content, the content may be viewed from the beginning to the end, but seek playback may be performed in which playback is performed by designating an arbitrary position of the content during viewing. However, when seeking playback, if unreplayed segments remain close to the maximum buffer capacity, even if a segment at the specified position (time) is received, it cannot be inserted into the buffer and playback is performed. Could not start.

図9にシーク動作時に再生を開始できない例を示す。図9では、バッファは3個分のセグメントを挿入可能な容量を確保しているとする。現在の再生時刻は15であり、バッファには15秒〜30秒のセグメントが挿入されている。この状態で、時刻5の位置へのシークを行ったとする。このとき、15秒から30秒のセグメントは未再生の状態でバッファに残されている。この状態で時刻5のセグメントを取得しても、バッファに3個分のセグメントが残り続けているため、バッファに挿入することができない。したがって、シーク再生を始めることができない状況に陥っている。   FIG. 9 shows an example in which playback cannot be started during a seek operation. In FIG. 9, it is assumed that the buffer has a capacity for inserting three segments. The current playback time is 15, and a segment of 15 to 30 seconds is inserted in the buffer. Assume that seeking to the position at time 5 is performed in this state. At this time, the segment of 15 seconds to 30 seconds is left in the buffer in an unreproduced state. Even if the segment at time 5 is acquired in this state, since three segments remain in the buffer, they cannot be inserted into the buffer. Therefore, it is in a situation where seek regeneration cannot be started.

MSEでは、非特許文献3に示すバージョン以降においては、removeメソッドというAPIが追加され、任意の範囲を指定してバッファのセグメントを消去することが可能である。   In MSE, after the version shown in Non-Patent Document 3, an API called remove method is added, and it is possible to delete a segment of a buffer by specifying an arbitrary range.

また、特許文献1には、データをバッファに溜める際に、バッファ容量が一杯だった場合に、再生済みデータの中から古いデータを優先的に消去することや、再生済みデータがバッファに残っていない場合は、任意の位置指定前にバッファに残っているデータの中から新しいデータを優先的に消去する技術が開示されている。   Further, in Patent Document 1, when data is stored in a buffer, if the buffer capacity is full, old data is preferentially erased from reproduced data, or reproduced data remains in the buffer. In the case where there is no data, a technique is disclosed in which new data is preferentially erased from data remaining in the buffer before any position is designated.

特開2013−16920号公報JP 2013-16920 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年1月6日検索]、インターネットURL:http://www.w3.org/TR/media-source/W3C, “Media Source Extensions W3C Candidate Recommendation 17 July 2014”, [Search January 6, 2015], Internet URL: http://www.w3.org/TR/media-source/ W3C、“Media Source Extensions W3C Editor's Draft 25 February 2013”、[2015年1月6日検索]、インターネット<URL:https://dvcs.w3.org/hg/html-media/raw-file/668a1c82fb88/media-source/media-source.html>W3C, “Media Source Extensions W3C Editor's Draft 25 February 2013”, [Search January 6, 2015], Internet <URL: https://dvcs.w3.org/hg/html-media/raw-file/668a1c82fb88/ media-source / media-source.html>

しかしながら、非特許文献3に示すバージョンよりも前のバージョンが実装された受信装置が既に数多く存在しており、それらの受信装置ではremoveメソッドを用いてバッファのセグメントを消去することができなかった。   However, there are already a large number of receiving apparatuses in which a version prior to the version shown in Non-Patent Document 3 is installed, and these receiving apparatuses cannot delete the segment of the buffer using the remove method.

また、特許文献1に開示された技術によれば、ストリーミング再生でユーザが任意の位置を指定して再生を行うときに生じていた待ち時間に、見かけ上シームレスな切替えを行うことができるが、MSEを用いる場合はバッファからデータを消去する方法は実装依存となっており、この技術を必ずしも適用できるとは限らなかった。   Further, according to the technique disclosed in Patent Document 1, it is possible to perform apparently seamless switching during the waiting time that has occurred when the user designates an arbitrary position in streaming reproduction and performs reproduction. When MSE is used, the method for erasing data from the buffer is implementation-dependent, and this technique cannot always be applied.

かかる事情に鑑みてなされた本発明の目的は、ストリーミング再生においてシーク動作を安定に行うことを可能とする受信装置、バッファ管理方法、及びプログラムを提供することにある。   An object of the present invention made in view of such circumstances is to provide a receiving apparatus, a buffer management method, and a program capable of stably performing a seek operation in streaming reproduction.

上記課題を解決するため、本発明に係る受信装置は、複数のセグメントから構成されるコンテンツをセグメント毎に受信してストリーミング再生を行う受信装置であって、再生開始時刻及び再生継続時間の情報に対応付けてセグメントを保存するバッファと、シーク再生命令を受信した時に、前記バッファにおいてセグメントが挿入されている範囲を示すバッファ済みセグメント範囲のうち、シーク再生命令により指定された再生時刻である新規再生時刻を含まない範囲である冗長セグメント範囲の情報を取得するバッファ制御部と、前記冗長セグメント範囲を含む範囲のセグメントであって、前記冗長セグメント範囲に保存されたデータよりもサイズの小さいダミーデータをエンコードしたセグメントである極小セグメントを生成する極小セグメント生成部と、前記バッファからセグメントを読み出してデコードする再生部と、を備え、前記バッファ制御部は、前記冗長セグメント範囲を前記極小セグメントで上書きすることにより、前記バッファの空き容量を確保することを特徴とする。   In order to solve the above-described problem, a receiving apparatus according to the present invention is a receiving apparatus that receives content composed of a plurality of segments for each segment and performs streaming reproduction, and includes information on a reproduction start time and a reproduction duration time. Corresponding buffer for storing segments, and new playback at the playback time specified by the seek playback command in the buffered segment range indicating the range in which the segment is inserted in the buffer when the seek playback command is received A buffer control unit that acquires information on a redundant segment range that does not include time, and a dummy data that is a segment that includes the redundant segment range and that is smaller in size than the data stored in the redundant segment range. Minimal that produces a minimal segment that is an encoded segment A segment generation unit and a playback unit that reads and decodes a segment from the buffer, and the buffer control unit secures a free space in the buffer by overwriting the redundant segment range with the minimal segment. It is characterized by.

さらに、前記受信装置において、前記極小セグメント生成部は、黒画像をエンコードして前記極小セグメントを生成することを特徴とする。   Further, in the receiving device, the minimum segment generation unit encodes a black image to generate the minimum segment.

さらに、前記受信装置において、前記極小セグメント生成部は、予め記憶されたテンプレートセグメントを連結することにより前記極小セグメントを生成することを特徴とする。   Furthermore, in the receiving apparatus, the minimum segment generation unit generates the minimum segment by connecting template segments stored in advance.

また、上記課題を解決するため、本発明に係るバッファ管理方法は、複数のセグメントから構成されるコンテンツをセグメント毎に受信してストリーミング再生を行う受信装置におけるバッファ管理方法であって、再生開始時刻及び再生継続時間の情報に対応付けてセグメントをバッファに保存するステップと、シーク再生命令を受信した時に、前記バッファにおいてセグメントが挿入されている範囲を示すバッファ済みセグメント範囲のうち、シーク再生命令により指定された再生時刻である新規再生時刻を含まない範囲である冗長セグメント範囲の情報を取得するステップと、前記冗長セグメント範囲を含む範囲のセグメントであって、前記冗長セグメント範囲に保存されたデータよりもサイズの小さいダミーデータをエンコードしたセグメントである極小セグメントを生成するステップと、前記冗長セグメント範囲を前記極小セグメントで上書きすることにより、前記バッファの空き容量を確保するステップと、前記バッファからセグメントを読み出してデコードするステップと、を含むことを特徴とする。   In order to solve the above-described problem, a buffer management method according to the present invention is a buffer management method in a receiving apparatus that performs streaming playback by receiving content composed of a plurality of segments for each segment, and includes a playback start time And storing the segment in the buffer in association with the information of the playback duration, and when receiving the seek playback command, in the buffered segment range indicating the range in which the segment is inserted in the buffer, by the seek playback command A step of obtaining information of a redundant segment range that is a range not including a new playback time that is a specified playback time, and a segment of a range including the redundant segment range, the data being stored in the redundant segment range Are also encoded with small dummy data. Generating a minimal segment that is a segment, overwriting the redundant segment range with the minimal segment, ensuring free space in the buffer, and reading and decoding the segment from the buffer. It is characterized by that.

また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを、上記受信装置として機能させることを特徴とする。   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, when performing streaming reproduction, a stable seek operation can be performed without a function of designating and deleting an arbitrary segment from the buffer.

本発明の一実施形態に係る受信装置の構成例を示す図である。It is a figure which shows the structural example of the receiver which concerns on one Embodiment of this invention. MPD(Media Presentation Description)の一例を示す図である。It is a figure which shows an example of MPD (Media Presentation Description). 本発明の一実施形態に係る受信装置におけるテンプレートセグメントの一例を示す図である。It is a figure which shows an example of the template segment in the receiver which concerns on one Embodiment of this invention. 本発明の一実施形態に係る受信装置のバッファ管理方法を示すフローチャートである。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 the example which overwrite-inserts the minimum segment in a buffer in the receiver which concerns on one Embodiment of this 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. 従来のMSEのバッファモデルにおいて、シーク動作時に再生を開始できない例を示す図である。It is a figure which shows the example which cannot start reproduction | regeneration at the time of a seek operation | movement in the buffer model of the conventional MSE.

以下、本発明の一実施形態について、図面を参照して詳細に説明する。以下に説明する本実施形態では一例として、マニフェストファイルを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.

図1は、本発明の一実施形態に係る受信装置の構成例を示す図である。受信装置1と配信サーバ2はインターネットを介して接続される。受信装置1は、配信サーバ2から複数のセグメントにより構成されるコンテンツをセグメント毎に受信し、ストリーミング再生を行う。   FIG. 1 is a diagram illustrating a configuration example of a receiving apparatus according to an embodiment of the present invention. The receiving device 1 and the distribution server 2 are connected via the Internet. The receiving device 1 receives content composed of a plurality of segments from the distribution server 2 for each segment, and performs streaming playback.

配信サーバ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と、再生制御部17と、再生制御ユーザI/F18と、表示部19とを備える。   In the example of FIG. 1, the reception device 1 includes a communication I / F 10, a manifest reception unit 11, a segment request unit 12, a buffer 13, a buffer control unit 14, a minimal segment generation unit 15, and a reproduction unit 16. A playback control unit 17, a playback control user I / F 18, and a display unit 19.

マニフェスト受信部11は、配信サーバ2から通信I/F10を介して所望のコンテンツのマニフェストファイル(MPD)を受信し、マニフェストファイルをもとに再生時刻とセグメントのURLとを対応付けたセグメントURLリストを生成し、セグメントリクエスト部12に出力する。   The manifest receiving unit 11 receives a manifest file (MPD) of a desired content from the distribution server 2 via the communication I / F 10, and a segment URL list in which a reproduction time and a segment URL are associated with each other based on the manifest file. Is output to the segment request unit 12.

図2にMPDの一例を示す。MPDはPeriod,AdaptationSet,Representationの順に階層構造となっている。Periodは番組を時間方向に一つ又は複数に区切った一区画を示している。図2の例では開始時刻が0であり、時間が3分間であることを示している。Periodは一つ又は複数(図2の例では一つ)のAdaptationSetから構成される。AdaptationSetはメディアのコンポーネント(映像、音声、テキスト等)の情報を示しており、同じメディアでパラメータ(ビットレートや画面サイズ、音声のチャンネル数など)の異なる複数(図2の例では一つ)のコンポーネントを含むことができる。AdaptationSetに含まれるそれぞれのメディアのコンポーネントの情報はRepresentationで示される。Representationは一つ又は複数のセグメントで構成される。   FIG. 2 shows an example of MPD. MPD has a hierarchical structure in the order of Period, AdaptationSet, and Representation. Period indicates a section obtained by dividing the program into one or more in the time direction. In the example of FIG. 2, the start time is 0 and the time is 3 minutes. Period is composed of one or a plurality (one in the example of FIG. 2) AdaptationSet. AdaptationSet shows information on media components (video, audio, text, etc.), and multiple parameters (bit rate, screen size, number of audio channels, etc.) with the same media (one in the example of Fig. 2) Components can be included. Information of each media component included in the AdaptationSet is indicated by Representation. Representation is composed of one or a plurality of segments.

ある再生時刻におけるセグメントのURLは、MPDの情報から求めることができる。図6に示すMPDを例に説明する。2行目のstartの値から、Periodの開始時刻は0である。4行目のtimescaleの値から、AdaptationSetのタイムスケール(1秒間の目盛数)は、90000である。6行目のdurationの値から、セグメントの継続時間は、450000である。6行目のstartNumberの値から、セグメントの開始番号は1である。以上から、ある再生時刻t(秒)に対するセグメント番号Numberは以下の式(1)で算出できる。なお、少数以下を切り捨てとする。
Number = (t - start)× timescale/duration + startNumber (1)
The URL of a segment at a certain playback time can be obtained from MPD information. The MPD shown in FIG. 6 will be described as an example. From the start value on the second line, the period start time is zero. From the timescale value in the fourth row, the time scale of the AdaptationSet (the 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 Number for a certain reproduction time t (second) can be calculated by the following equation (1). The numbers below the decimal are 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.

再び図1に戻り、セグメントリクエスト部12は、バッファ制御部14から取得対象のセグメントの再生時刻情報を入力し、該入力した再生時刻情報に対応するセグメントのURLをセグメントURLリストから抽出し、該抽出したセグメントのURLを含むセグメントリクエストを配信サーバ2に要求し、該要求に対応するセグメントを受信する。   Returning to FIG. 1 again, the segment request unit 12 inputs the reproduction time information of the segment to be acquired from the buffer control unit 14, extracts the URL of the segment corresponding to the input reproduction time information from the segment URL list, The distribution server 2 is requested to send a segment request including the extracted segment URL, and the segment corresponding to the request is received.

バッファ13は、バッファ制御部14からセグメントを入力し、セグメントの再生開始時刻及び再生継続時間を対応付けてセグメントを保存し、現在の保存中の全セグメントの再生時刻及び再生継続時間の情報をバッファ制御部14に出力する。また、再生部16から要求された再生時刻のセグメントを順次再生部16に出力する。   The buffer 13 receives a segment from the buffer control unit 14, stores the segment in association with the playback start time and playback duration of the segment, and buffers the playback time and playback duration information of all currently stored segments. Output to the control unit 14. Further, the playback time segments requested from the playback unit 16 are sequentially output to the playback unit 16.

再生制御ユーザI/F18は、ユーザの操作によって再生を制御する機能である。再生開始・停止ボタンを用意するとともに、コンテンツの開始時刻及び終了時刻を表示し、さらに再生制御部17から入力する再生時刻情報をもとに、現在の再生位置をグラフィカルに表示してもよい。例えば、再生画面の下部にコンテンツの開始時刻を左端、終了時刻を右端とする横長の棒状で表示し、それと重なるようにつまみ状の操作部分を配置し、つまみ上の操作部分を再生が進むにつれて左端から右端に移動させることによって、ユーザは再生時間全体のうち今どの部分を再生しているのかを一目で把握することができる。   The reproduction control user I / F 18 is a function for controlling reproduction by a user operation. A playback start / stop button may be prepared, the start time and end time of the content may be displayed, and the current playback position may be graphically displayed based on the playback time information input from the playback control unit 17. 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.

また、このつまみをマウス等のユーザ操作によって動かすことにより、任意の再生位置を指定できるようにしてもよい。ユーザ操作によって、再生開始命令、停止命令、シーク再生命令、及び新規再生時刻情報を再生制御部17に出力する。   Further, an arbitrary reproduction position may be designated by moving this knob by a user operation such as a mouse. By a user operation, a playback start command, a stop command, a seek playback command, and new playback time information are output to the playback control unit 17.

再生制御部17は、現在の再生状態(再生中、停止中)及び再生部16から入力される再生時刻情報を再生制御ユーザI/F18に出力する。また、再生制御ユーザI/F18から再生開始命令、停止命令が入力されると、再生部16に再生開始・停止を指示する。また、再生制御ユーザI/F18からシーク再生(再生位置変更)命令が入力されると、変更後の再生時刻を示す情報である新規再生時刻情報をバッファ制御部14に出力し、バッファ制御部14からバッファ規定値を超えたことを示す通知が入力されると、再生部16に新規再生時刻情報を出力するとともに、再生開始を指示する。   The playback control unit 17 outputs the current playback state (playing or stopped) and playback time information input from the playback unit 16 to the playback control user I / F 18. When a playback start command and a stop command are input from the playback control user I / F 18, the playback unit 16 is instructed to start and stop playback. When a seek playback (playback position change) command is input from the playback control user I / F 18, new playback time information that is information indicating the playback time after the change is output to the buffer control unit 14, and the buffer control unit 14 When a notification indicating that the buffer specified value has been exceeded is input from, new playback time information is output to the playback unit 16 and playback start is instructed.

再生部16は、再生制御部17から再生開始命令及び新規再生時刻情報を入力したら、当該新規再生時刻情報が示す再生開始時刻のセグメントを順次バッファ13から読み出しし、該読み出したセグメントをセグメントのメディアの形式(映像、音声、テキスト等)に従ってデコードして表示部19に出力するとともに、再生とともに更新される再生時刻の情報である再生時刻情報を再生制御部17に出力する。再生制御部17から停止命令を入力した場合は、再生を停止する。   When the playback unit 16 receives the playback start command and the new playback time information from the playback control unit 17, the playback unit 16 sequentially reads out the segment of the playback start time indicated by the new playback time information from the buffer 13, and reads the read segment into the segment media. Are decoded and output to the display unit 19, and reproduction time information that is information of a reproduction time updated along with reproduction is output to the reproduction control unit 17. When a stop command is input from the playback control unit 17, playback is stopped.

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

バッファ制御部14は、再生制御部17から新規再生時刻情報が入力されると、バッファ13においてセグメントが挿入されている範囲を示すバッファ済みセグメント範囲のうち、新規再生時刻を含まない範囲である冗長セグメント範囲の情報を取得する。冗長セグメント範囲の情報とは、冗長セグメント範囲の開始時刻を示す上書き開始時刻、及び冗長セグメント範囲の継続時間を示す上書き継続時間である。   When the new playback time information is input from the playback control unit 17, the buffer control unit 14 is a redundant segment that does not include the new playback time in the buffered segment range indicating the range in which the segment is inserted in the buffer 13. Get segment range information. The redundant segment range information is an overwrite start time indicating the start time of the redundant segment range, and an overwrite duration time indicating the duration of the redundant segment range.

極小セグメント生成部15は、冗長セグメント範囲を含む範囲のセグメントであって、冗長セグメント範囲に保存されたデータよりもサイズの小さいダミーデータをエンコードしたセグメントである極小セグメントを生成し、バッファ制御部14に出力する。つまり、バッファ制御部14から上書き開始時刻情報及び上書き継続時間情報を入力すると、該入力した上書き開始時刻情報(又はそれよりも少し前)から始まり、上書き継続時間情報よりも長い極小セグメントを生成する。ダミーデータはサイズの小さいデータであれば特に限定されるものではないが、例えば黒画像とすることができる。   The minimum segment generation unit 15 generates a minimum segment that is a segment in a range including the redundant segment range, and is a segment in which dummy data having a size smaller than the data stored in the redundant segment range is encoded, and the buffer control unit 14 Output to. That is, when the overwrite start time information and the overwrite duration time information are input from the buffer control unit 14, a minimum segment that starts from the input overwrite start time information (or slightly before) and is longer than the overwrite duration information is generated. . The dummy data is not particularly limited as long as the data is small in size, but can be a black image, for example.

極小セグメント生成部15は、極小セグメントを予め記憶されたテンプレートセグメントを連結することにより生成してもよい。ここでテンプレートセグメントとは、データサイズが小さいダミーのメディアデータをエンコードして予めセグメント化したものである。テンプレートセグメントは、受信装置1に記憶しておくこともできるし、コンテンツ再生開始時に、例えば配信サーバ2から取得するようにしてもよい。極小セグメントは、上書き開始時刻情報及び上書き継続時間情報をもとにテンプレートセグメントのパラメータを差し替えたデータとすることで生成される。   The minimum segment generation unit 15 may generate a minimum segment by connecting template segments stored in advance. Here, the template segment is obtained by encoding dummy media data having a small data size and segmenting it in advance. The template segment may be stored in the receiving device 1 or may be acquired from the distribution server 2 at the start of content reproduction, for example. The minimal segment is generated by replacing the template segment parameters with the overwrite start time information and the overwrite duration information.

ここで、図3を参照して、テンプレートセグメントの一例を説明する。図3は、テンプレートセグメントを、ISOBMFF(ISO/IEC14496−12)形式とした場合の一例である。なお、一つのセグメントにMovie Fragmentを複数含むことも可能であるが、本例では一つとする。   Here, an example of the template segment will be described with reference to FIG. FIG. 3 shows an example when the template 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とした場合、再生開始時刻10、再生継続時間5秒のセグメントのearliest_presentation_time=baseMediaDecodeTime=timescale×10=900000となる。また、subsegment_duration=timescale×5=450000となる。   Some parameters related to the present invention will be described. The timescale included in sidx represents the time scale. earliest_presentation_time indicates the reproduction time of the first moving image 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 decoding time of the Movie Fragment. For example, when timescale = 90000, the segment of playback start time 10 and playback duration 5 seconds is earliest_presentation_time = baseMediaDecodeTime = timescale × 10 = 900,000. Also, subsegment_duration = timescale × 5 = 450,000.

つまり、上書き開始時刻15、上書き継続時間5秒の極小セグメントを生成するには、earliest_presentation_timeを1350000に修正すればよい。なお、再生継続時間を修正しようとすると、mdat内部の情報まで修正範囲が及ぶことから処理負荷が大きくなる。そのため、テンプレートセグメントを再生継続時間が上書き継続時間を上回るまで複数連結することで、再生継続時間を修正せずに、所望の極小セグメントを生成することができる。例えば、再生継続時間がそれぞれ1秒,2秒,5秒のテンプレートセグメントを用意しておき、上書き継続時間の長さに応じて適宜組み合わせることもできる。   That is, earliest_presentation_time may be corrected to 1350000 in order to generate a minimal segment with an overwrite start time of 15 and an overwrite duration of 5 seconds. If the playback duration is to be corrected, the correction range extends to the information in mdat, and the processing load increases. Therefore, by connecting a plurality of template segments until the reproduction duration exceeds the overwrite duration, a desired minimum segment can be generated without correcting the reproduction duration. For example, template segments having playback durations of 1 second, 2 seconds, and 5 seconds, respectively, may be prepared and appropriately combined according to the length of the overwrite duration time.

(バッファ管理方法)
次に、本発明における受信装置1のシーク動作時のバッファ管理方法について説明する。
(Buffer management method)
Next, a buffer management method during the seek operation of the receiving apparatus 1 according to the present invention will be described.

図4は、本発明の一実施形態に係るバッファ管理方法を示すフローチャートである。本フローチャートは、既にマニフェストファイルを取得しており、セグメントURLリストも作成済みの状態から開始するものとする。また、ネットワークの混雑状況に応じて受信帯域が常に変動することを見越して、再生開始時刻を起点として、予め設定したバッファ規定値(例えば5秒)以上のセグメントがバッファ13に挿入されてから再生を開始するものとする。   FIG. 4 is a flowchart illustrating a buffer management method according to an embodiment of the present invention. This flowchart starts from a state in which a manifest file has already been acquired and a segment URL list has been created. In addition, in anticipation that the reception band constantly fluctuates according to the network congestion situation, playback starts after a segment with a buffer specified value (for example, 5 seconds) or more set in advance starting from the playback start time is inserted into the buffer 13. Shall begin.

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

まず、再生制御ユーザI/F18からシーク操作が実行され、シーク再生命令を受信したら(ステップS001)、再生制御部17は、シーク再生命令から新規再生時刻情報を抽出しバッファ制御部14に出力する(ステップS002)。   First, when a seek operation is executed from the playback control user I / F 18 and a seek playback command is received (step S001), the playback control unit 17 extracts new playback time information from the seek playback command and outputs it to the buffer control unit 14. (Step S002).

次に、バッファ制御部14は、バッファ13内に新規再生時刻から予め設定したバッファ規定値以上の範囲のセグメントが存在するか否かを確認する(ステップS003)。ステップS003がYESの場合はバッファ13に保存されたデータをそのまま再生可能であるため、再生制御部17において再生を開始する(ステップS013)。一方、ステップS003がNOの場合は、データを取得する必要があるため、バッファ13に1セグメント分の空き容量が存在するか否かを確認する(ステップS004)。   Next, the buffer control unit 14 confirms whether or not there is a segment in the buffer 13 in a range that is equal to or greater than a preset buffer value from the new playback time (step S003). If step S003 is YES, the data stored in the buffer 13 can be reproduced as it is, and the reproduction control unit 17 starts reproduction (step S013). On the other hand, when step S003 is NO, since it is necessary to acquire data, it is confirmed whether or not there is free space for one segment in the buffer 13 (step S004).

バッファ13に1セグメント分の空き容量が存在しない場合は(ステップS004−NO)、バッファ13内に新規再生時刻を含まないバッファ済みセグメント範囲である冗長セグメント範囲が存在するか否かを確認する(ステップS005)。バッファ13内に冗長セグメント範囲が存在する場合は(ステップS005−YES)、冗長セグメント範囲を抽出し、冗長セグメント範囲の最小値を上書き開始時刻、冗長セグメント範囲の長さを上書き継続時間として極小セグメント生成部15に出力し、極小セグメント生成部15は該入力した上書き開始時刻及び上書き継続時間をもとに極小セグメントを生成し、バッファ制御部14に出力する(ステップS006)。バッファ制御部14は入力された極小セグメントをバッファ13に挿入して冗長セグメント範囲を上書きし(ステップS007)、ステップS004に戻る。   If there is no free space for one segment in the buffer 13 (step S004-NO), it is confirmed whether or not there is a redundant segment range that is a buffered segment range that does not include the new playback time in the buffer 13 ( Step S005). When the redundant segment range exists in the buffer 13 (step S005-YES), the redundant segment range is extracted, the minimum value of the redundant segment range is set as the overwrite start time, and the length of the redundant segment range is set as the overwrite duration time. The minimum segment generation unit 15 generates a minimum segment based on the input overwrite start time and overwrite overwrite time, and outputs the minimum segment to the buffer control unit 14 (step S006). The buffer control unit 14 inserts the input minimum segment into the buffer 13 to overwrite the redundant segment range (step S007), and returns to step S004.

図5は、極小セグメントをバッファ13に上書き挿入する例を示す図である。図5に示すように、例えばバッファ13に開始時刻15から開始時刻30までの15秒間のセグメントが保存されており、新規再生時刻が5であった場合、バッファ13に保存されたセグメントは無駄(冗長)なセグメントと考えることができる。よって、この場合は開始時刻15から30を冗長セグメント範囲とし、この冗長セグメント範囲に、生成した極小セグメントを上書きする。この図では極小セグメントのデータ容量が小さいことを示すために、極小セグメントの面積を擬似的に小さく表示している。このようにしてデータ量の小さい極小セグメントを上書きすることにより、空き容量を確保することができる。   FIG. 5 is a diagram illustrating an example in which a minimal segment is overwritten and inserted into the buffer 13. As shown in FIG. 5, for example, when a segment for 15 seconds from start time 15 to start time 30 is stored in the buffer 13 and the new reproduction time is 5, the segment stored in the buffer 13 is wasted ( It can be considered as a redundant segment. Therefore, in this case, the start time 15 to 30 is set as the redundant segment range, and the generated minimal segment is overwritten on the redundant segment range. In this figure, in order to show that the data capacity of the minimal segment is small, the area of the minimal segment is displayed in a pseudo-small manner. In this way, a free space can be secured by overwriting a minimal segment with a small amount of data.

次に、ステップS005に戻り、バッファ13内に冗長セグメント範囲が存在しない場合は(ステップS005−NO)、バッファ13から再生済みセグメントが消去されるまで待機し(ステップS008)、ステップS004に戻る。   Next, returning to step S005, if there is no redundant segment range in the buffer 13 (step S005-NO), the process waits until the regenerated segment is erased from the buffer 13 (step S008), and returns to step S004.

ステップS004に戻り、バッファ13に1セグメント分の空き容量が存在する場合は(ステップS004−YES)、セグメントリクエスト部12は以下の動作を行う。バッファ13内に新規再生時刻を含むセグメントが存在しない場合には、新規再生時刻を含むセグメントのURLが、セグメントURLリストに存在するか否かを確認する(ステップS009)。また、バッファ13内に新規再生時刻を含むセグメントが存在する場合には、新規再生時刻を含むバッファ済みセグメント範囲の最大値を含むセグメントに続くセグメント(すなわち、新規再生時刻を含むバッファ済みセグメントに続くセグメント)のURLが、セグメントURLリストに存在するか否かを確認する(ステップS009)。該セグメントのURLがセグメントURLリストに存在する場合は(ステップS009−YES)、セグメントURLリストから当該セグメントのURLを抽出する。セグメントリクエスト部12は、該抽出したセグメントのURLを含むセグメント要求を配信サーバ2に送信し、該要求に対応するセグメントを受信しバッファ制御部14に出力する(ステップS010)。バッファ制御部14は該受信したセグメントをバッファ13に挿入する(ステップS011)。   Returning to step S004, if there is free space for one segment in the buffer 13 (step S004-YES), the segment request unit 12 performs the following operation. If there is no segment including the new playback time in the buffer 13, it is confirmed whether or not the segment URL including the new playback time is present in the segment URL list (step S009). If there is a segment including the new playback time in the buffer 13, the segment following the segment including the maximum value of the buffered segment range including the new playback time (that is, following the buffered segment including the new playback time). It is confirmed whether or not the (segment) URL exists in the segment URL list (step S009). When the URL of the segment exists in the segment URL list (step S009-YES), the URL of the segment is extracted from the segment URL list. The segment request unit 12 transmits a segment request including the extracted URL of the segment to the distribution server 2, receives the segment corresponding to the request, and outputs it to the buffer control unit 14 (step S010). The buffer control unit 14 inserts the received segment into the buffer 13 (step S011).

ステップS009がNOの場合は、何もせずにステップS012に移行する。ステップS012では再生制御部17において現在再生中か否かを確認し、再生が開始されていない場合は(ステップS012−NO)、ステップS003に戻る。一方、再生が開始されている場合は(ステップS012−YES)、バッファ13の最後に到達したか、再生制御ユーザI/F18において停止ボタンが押されたか否かを確認し、いずれも満たさない場合は(ステップS014−NO)、ステップS004に戻る。いずれかを満たした場合は(ステップS014−YES)、再生を停止し、処理を終了する。   If step S009 is NO, nothing is done and the process proceeds to step S012. In step S012, the playback control unit 17 confirms whether playback is currently being performed. If playback has not started (step S012-NO), the process returns to step S003. On the other hand, if playback has started (step S012-YES), it is confirmed whether the end of the buffer 13 has been reached or whether the stop button has been pressed in the playback control user I / F 18, and none of them is satisfied. (Step S014-NO), it returns to step S004. If either one is satisfied (step S014-YES), the reproduction is stopped and the process is terminated.

以上により、バッファ13内にセグメントを挿入するのに必要な空き容量が不足している場合にも、新規再生時刻を含まないバッファ済みセグメント範囲である冗長セグメント範囲を極小セグメントで上書きすることにより、迅速に空き容量を確保することが可能となり、シーク操作後の再生開始までの時間を短縮して安定した再生が可能となる。   As described above, even when the free space necessary for inserting the segment in the buffer 13 is insufficient, the redundant segment range which is a buffered segment range not including the new reproduction time is overwritten with the minimal segment, Free space can be secured quickly, and stable playback can be achieved by shortening the time until the start of playback after a seek operation.

一例をあげると、8Mbpsで再生継続時間が5秒のセグメントが5MBであるのに対し、黒画像をエンコードした5秒の極小セグメントが約7KBであることから、冗長セグメント範囲を極小セグメントで上書きすることにより、5MB(4.993MB)近くの空き容量を確保することが可能となる。   As an example, a segment with a playback duration of 5 seconds at 8 Mbps is 5 MB, whereas a 5 second minimum segment that encodes a black image is about 7 KB, so the redundant segment range is overwritten with the minimum segment. Thus, it is possible to secure a free space near 5 MB (4.993 MB).

上述したように、受信装置1は、シーク再生命令を受信した時に、冗長セグメント範囲を極小セグメントで上書きすることにより、バッファ13の空き容量を確保することができる。かくして、受信装置1は、バッファ13から任意のセグメントを指定して消去する機能が無くても、安定してシーク動作を行うことが可能となる。   As described above, the receiving device 1 can secure the free space of the buffer 13 by overwriting the redundant segment range with the minimal segment when receiving the seek reproduction command. Thus, the receiving apparatus 1 can stably perform a seek operation without the function of designating and erasing an arbitrary segment from the buffer 13.

なお、上述した受信装置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 and steps described in the embodiments can be combined into one, or one constituent block and steps can be divided.

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

Claims (5)

複数のセグメントから構成されるコンテンツをセグメント毎に受信してストリーミング再生を行う受信装置であって、
再生開始時刻及び再生継続時間の情報に対応付けてセグメントを保存するバッファと、
シーク再生命令を受信した時に、前記バッファにおいてセグメントが挿入されている範囲を示すバッファ済みセグメント範囲のうち、シーク再生命令により指定された再生時刻である新規再生時刻を含まない範囲である冗長セグメント範囲の情報を取得するバッファ制御部と、
前記冗長セグメント範囲を含む範囲のセグメントであって、前記冗長セグメント範囲に保存されたデータよりもサイズの小さいダミーデータをエンコードしたセグメントである極小セグメントを生成する極小セグメント生成部と、
前記バッファからセグメントを読み出してデコードする再生部と、を備え、
前記バッファ制御部は、前記冗長セグメント範囲を前記極小セグメントで上書きすることにより、前記バッファの空き容量を確保することを特徴とする受信装置。
A receiving device that receives content composed of a plurality of segments and performs streaming playback for each segment,
A buffer for storing a segment in association with information of a playback start time and a playback duration;
Redundant segment range that does not include the new playback time that is the playback time specified by the seek playback command in the buffered segment range that indicates the range in which the segment is inserted in the buffer when the seek playback command is received A buffer control unit for acquiring the information of
A minimum segment generation unit that generates a minimum segment that is a segment of a range including the redundant segment range and that is a segment obtained by encoding dummy data that is smaller in size than data stored in the redundant segment range;
A playback unit that reads and decodes the segment from the buffer,
The receiving apparatus according to claim 1, wherein the buffer control unit secures a free capacity of the buffer by overwriting the redundant segment range with the minimal segment.
前記極小セグメント生成部は、黒画像をエンコードして前記極小セグメントを生成することを特徴とする、請求項1に記載の受信装置。   The receiving apparatus according to claim 1, wherein the minimum segment generation unit generates the minimum segment by encoding a black image. 前記極小セグメント生成部は、予め記憶されたテンプレートセグメントを連結することにより前記極小セグメントを生成することを特徴とする、請求項1又は2に記載の受信装置。   The receiving apparatus according to claim 1, wherein the minimal segment generation unit generates the minimal segment by connecting template segments stored in advance. 複数のセグメントから構成されるコンテンツをセグメント毎に受信してストリーミング再生を行う受信装置におけるバッファ管理方法であって、
再生開始時刻及び再生継続時間の情報に対応付けてセグメントをバッファに保存するステップと、
シーク再生命令を受信した時に、前記バッファにおいてセグメントが挿入されている範囲を示すバッファ済みセグメント範囲のうち、シーク再生命令により指定された再生時刻である新規再生時刻を含まない範囲である冗長セグメント範囲の情報を取得するステップと、
前記冗長セグメント範囲を含む範囲のセグメントであって、前記冗長セグメント範囲に保存されたデータよりもサイズの小さいダミーデータをエンコードしたセグメントである極小セグメントを生成するステップと、
前記冗長セグメント範囲を前記極小セグメントで上書きすることにより、前記バッファの空き容量を確保するステップと、
前記バッファからセグメントを読み出してデコードするステップと、
を含むことを特徴とするバッファ管理方法。
A buffer management method in a receiving apparatus that receives content composed of a plurality of segments and performs streaming reproduction for each segment,
Storing the segment in a buffer in association with the information of the playback start time and playback duration;
Redundant segment range that does not include the new playback time that is the playback time specified by the seek playback command in the buffered segment range that indicates the range in which the segment is inserted in the buffer when the seek playback command is received Obtaining the information of
Generating a minimal segment that is a segment of a range that includes the redundant segment range and that is encoded with dummy data that is smaller in size than the data stored in the redundant segment range;
Securing free space in the buffer by overwriting the redundant segment range with the minimal segment;
Reading and decoding segments from the buffer;
A buffer management method comprising:
コンピュータを、請求項1から3のいずれか一項に記載の受信装置として機能させるためのプログラム。   The program for functioning a computer as a receiver as described in any one of Claim 1 to 3.
JP2015011388A 2015-01-23 2015-01-23 Reception device, buffer management method, and program Active JP6397341B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015011388A JP6397341B2 (en) 2015-01-23 2015-01-23 Reception device, buffer management method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015011388A JP6397341B2 (en) 2015-01-23 2015-01-23 Reception device, buffer management method, and program

Publications (2)

Publication Number Publication Date
JP2016136676A JP2016136676A (en) 2016-07-28
JP6397341B2 true JP6397341B2 (en) 2018-09-26

Family

ID=56512692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015011388A Active JP6397341B2 (en) 2015-01-23 2015-01-23 Reception device, buffer management method, and program

Country Status (1)

Country Link
JP (1) JP6397341B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6730149B2 (en) * 2016-09-14 2020-07-29 株式会社東芝 Broadcast content confirmation system, method, terminal, and program
KR102130429B1 (en) * 2016-11-07 2020-07-07 한화테크윈 주식회사 Method and device for decoding multimedia file
JP7458848B2 (en) 2020-03-24 2024-04-01 日本放送協会 User terminal and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5106671B1 (en) * 2011-09-30 2012-12-26 株式会社東芝 Electronic device and reproduction control method
JP5552650B2 (en) * 2012-09-04 2014-07-16 株式会社東芝 Electronic device and reproduction control method

Also Published As

Publication number Publication date
JP2016136676A (en) 2016-07-28

Similar Documents

Publication Publication Date Title
US20230269409A1 (en) Advanced trick-play modes for streaming video
JP6648223B2 (en) Method and apparatus for streaming media content to a client device
US12075124B2 (en) Systems and methods for real-time adaptive bitrate transcoding and transmission of transcoded media
US9639246B2 (en) Seamless playback of composite media
KR102195414B1 (en) Adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
WO2013008867A1 (en) Transmission device, method for controlling transmission device, control program, and recording medium
US8904457B2 (en) Archiving a live media presentation
US12058192B2 (en) Segment ladder transitioning in adaptive streaming
WO2014145011A2 (en) Method and apparatus for streaming video
JP2009027598A (en) Video distribution server and video distribution method
JP6609468B2 (en) Receiving device, reproduction time control method, and program
JP6397341B2 (en) Reception device, buffer management method, and program
JP6535273B2 (en) Receiving device, segment acquisition method, and program
JP6258168B2 (en) Distribution device, playback device, and distribution system
JP6626696B2 (en) Receiving device, manifest updating method, and program
JP6294527B2 (en) Transmission device, transmission method, reproduction device, and reproduction method
US20190387271A1 (en) Image processing apparatus, image processing method, and program
JP6581884B2 (en) Reception device, buffer management method, and program
JP7324012B2 (en) Receiving device and program
JP2015510727A (en) Method and system for providing file data for media files
JP2022133163A (en) Content generation device, reception device, and program
KR20220159964A (en) Systems, methods, and apparatus for managing storage of media objects
JP2012248955A (en) Content edition system, content edition method, content edition program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180725

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180831

R150 Certificate of patent or registration of utility model

Ref document number: 6397341

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250