JP7324012B2 - 受信装置、及びプログラム - Google Patents

受信装置、及びプログラム Download PDF

Info

Publication number
JP7324012B2
JP7324012B2 JP2019020980A JP2019020980A JP7324012B2 JP 7324012 B2 JP7324012 B2 JP 7324012B2 JP 2019020980 A JP2019020980 A JP 2019020980A JP 2019020980 A JP2019020980 A JP 2019020980A JP 7324012 B2 JP7324012 B2 JP 7324012B2
Authority
JP
Japan
Prior art keywords
segment
segments
playback
stream
seconds
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
JP2019020980A
Other languages
English (en)
Other versions
JP2020129734A (ja
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 JP2019020980A priority Critical patent/JP7324012B2/ja
Publication of JP2020129734A publication Critical patent/JP2020129734A/ja
Application granted granted Critical
Publication of JP7324012B2 publication Critical patent/JP7324012B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、受信装置、及びプログラムに関する。
昨今のインターネットにおけるストリーミング動画配信では、専用のサーバと専用のプロトコルによるストリーミング配信方式から、汎用的なWebサーバによりHTTPプロトコルを用いてストリーミング配信する方式への移行が進んでおり、多くのデバイス向けの配信において主流となっている。このようなHTTPプロトコルによるストリーミング配信方式(アダプティブストリーミング)としては、ITベンダによる独自技術が普及している他、これらストリーミング方式の統一を意図した国際標準規格であるMPEG-DASH(ISO/IEC23009-1)が策定された。
いずれの技術も基本的なコンセプトは同様であり、Webサーバには動画コンテンツを1つ又は複数の品質(画面サイズやビットレート)で符号化した符号化ストリームをそれぞれ数秒から数十秒程度のファイルに分割したもの(セグメント)と、それらの動画コンテンツの属性及びURLを記述したマニフェストファイルを用意する。受信装置はマニフェストファイルから当該受信装置の画面サイズや伝送路のネットワーク帯域の状態等を考慮して、適時品質を選択して次々とセグメントを受信し、1本の動画コンテンツにつなぎ合わせて再生するものである(例えば、非特許文献1参照)。
図7にアダプティブストリーミングの一例を示す。図7では、映像が複数品質でエンコードされ、それぞれの品質ごとに数秒単位に分割されたセグメントが生成されている。この例では、エンコーダは映像を低品質のセグメント1~4、中品質のセグメント1’~4’、及び高品質のセグメント1”~4”に分割している。マニフェストファイルには、セグメントのURLや、それぞれの品質ごとのビットレートや画像サイズなどの属性情報が登録される。セグメント及びマニフェストファイルはWebサーバに供給される。
受信装置は、Webサーバからマニフェストファイルを受信し、マニフェストファイルからビットレートやセグメントの構成を把握し(ステップA)、受信装置の画面サイズやネットワークの受信帯域の状況をもとにセグメント単位で品質を選択し、HTTPプロトコルにより受信する(ステップB)。続いて、受信したセグメントをマニフェストファイルに従って順番通りにつなぎ合わせて再生する(ステップC)。このようにステップB,Cの処理を繰り返すことにより、一連のコンテンツを受信し再生を継続することができる。
受信装置においては、多くのデバイスで普及が進むHTML5ブラウザを利用することにより、マルチデバイス(PC、テレビ受信機、タブレット装置等)に対応可能な視聴環境を構築することができる。
しかし、従来HTML5ブラウザで動画を再生するための機能であるビデオ要素(videoタグ)では、ソースとしてメディアファイルを参照することしかできなかったため、このようなアダプティブストリーミングの視聴を実現するためには、別途ブラウザプラグインのインストールが必要だった。そのため、どのブラウザでも共通で利用できる視聴環境を構築することが困難だった。このような状況から、HTML5ブラウザのビデオ要素及びJavaScript(登録商標)によってアダプティブストリーミングの視聴を実現するための機能として、Webで利用される技術の標準化を進める国際的な非営利団体であるW3Cにおいて、MSE(Media Source Extensions)の規格化が進んでいる(例えば、非特許文献2参照)。
MSEを用いることにより、ビデオ要素はソースとしてバッファを参照することが可能となる。そのバッファへはJavaScriptによって受信したセグメントを挿入することができるようになることから、多様なアダプティブストリーミングの視聴がHTML5のビデオ要素とJavaScriptにより実現可能となる。
ここで、図8を参照してMSEのバッファモデルについて説明する。図8はMSEのバッファモデルの一例を示す図である。バッファ(SourceBuffer)は、セグメント開始時刻と再生継続時間に対応付けてセグメントを管理する。図8では、斜線の入ったブロックがセグメントを示しており、セグメント単位の再生開始時刻であるセグメント開始時刻が0秒かつ再生継続時間が5秒、セグメント開始時刻が5秒かつ再生継続時間が5秒、及びセグメント開始時刻が15秒かつ再生継続時間が5秒の3つのセグメントがバッファに挿入されている。この時、バッファのバッファリング範囲(buffered属性)は0~10秒、15~20秒となる。
動画のストリーミングサービスの提供方法として、先に述べたアダプティブストリーミングに加え、マルチビュー映像・多言語音声配信や、放送のように編成に従った番組配信などが考えられる。MPEG-DASHにおいては、このようなサービスを可能とするマニフェストファイルの記述方法が定義されている。
図9にMPEG-DASHのMPD(Media Presentation Description)形式のマニフェストファイルの概念図を示す。MPD形式ではPeriod,AdaptationSet,Representationの順に階層構造となっている。Periodはマニフェストファイルを時間方向に区切った一区画を示しており、図9の例では、それぞれのコンテンツ尺(duration)が300秒のPeriodが連結されていることを示している。Periodは1つ以上のAdaptationSetから構成される。
AdaptationSetはメディアコンポーネント(映像、音声、テキスト等)の情報を示しており、同じメディア形式で表現(別角度の映像や、別言語の音声など)の異なる複数のコンポーネントを含むことができる。図9の例では映像(mimeType=video/mp4)が2つ、音声(mimeType=audio/mp4)が1つである。AdaptationSetに含まれるそれぞれのメディアコンポーネントの情報はRepresentationで示される。
Representationには、メディア要素を構成する実データであるセグメント(Initialization Segment,Media Segment)の情報が記述されている。Initialization Segmentは符号化パラメータ等の初期化情報で、Media Segmentがセグメントである。図9の例では、セグメント長(duration=5s)ごとにシーケンス番号($Number$)がインクリメントされたファイル名となる。
このようなマニフェストファイルとすることで、Periodにおいて選択されたメディアコンポーネント(AdaptationSet)を形成するセグメント(図9のInitialization Segment,Media Segment)を順次受信することが可能となるほか、メディアコンポーネントを選択し直すことにより別のメディアコンポーネントを形成するセグメントの受信に切り替え、別映像を表示することが可能となる。
特開2018-098569号公報
"次世代動画配信技術「MPEG-DASH」技術概要と標準化・関連技術動向",映像情報メディア学会誌,Vol.67, No.2, 2013, p.109-115 W3C、"Media Source Extensions W3C Candidate Recommendation 17 November 2016"、[2018年12月28日検索]、インターネット<URL:http://www.w3.org/TR/media-source/>
ここで、一般にストリーミング視聴においては、ネットワークの混雑状況に応じて受信帯域が常に変動することから、再生開始時やシーク操作により所望のシーン(以下、「新規再生時刻」と称する。)にスキップした際には、新規再生時刻よりも数秒程度先のデータまでを受信してバッファに挿入してから再生することにより、視聴安定性を向上させる。一方で、この再生開始に必要なデータ量(バッファ規定値)を受信するまでの時間(バッファリング遅延)が長いと再生開始が遅れ、ユーザの体感品質の低下につながる。この時、新規再生時刻とセグメント長の関係によっては、無駄なデータを受信することによってバッファリング遅延が増加するという課題があった。
図10は、上記課題を説明する図である。この例では、図9に基づいて、セグメント長を5秒とする。バッファ規定値を10秒とした場合において、図10(a)は、シーク操作による新規再生時刻が110秒の場合のバッファ状態を表しており、図10(b)はシーク操作による新規再生時刻が114秒の場合のバッファ状態を表している。図10(a)では110秒~115秒、115秒~120秒の2つのセグメントを受信することでバッファ規定値に達する。一方で、図10(b)では、110秒~115秒、115秒~120秒、120秒~125秒の3つのセグメントを受信しないとバッファ規定値に達しない。図10(b)の110秒~114秒のデータは再生に使用されず、このような無駄なデータを含むため、データの受信に時間がかかりバッファリング遅延が増加してしまっている。
無駄なデータ受信を削減する方法としては、セグメント長を例えば1秒程度に短くすることが考えられるが、その分セグメントのリクエスト回数が増加するため、配信サーバ及び受信装置の負荷が大きくなるという課題があった。
また、特許文献1には、シェーピングが行われないコンテンツデータを配信する第1の配信サーバと、シェーピングが行われるコンテンツデータを配信する第2の配信サーバとを有するコンテンツ配信システムにおいて、バッファ規定値分のデータを受信するまでは第1の配信サーバから高速にデータを受信することで、シーク操作後の再生開始を高速化する手法が開示されている。
しかし、特許文献1に開示された技術は、配信事業者が提供するCDN(Content Delivery Network)サービスを利用してコンテンツ配信を行う場合に、コンテンツ事業者が必ずしも適用できるものではなかった。
かかる事情に鑑みてなされた本発明の目的は、ストリーミング再生中におけるシーク操作時のバッファリング遅延を低減させることが可能な受信装置、及びプログラムを提供することにある。
記課題を解決するため、本発明に係る受信装置は、符号化ストリームを異なるタイミングでセグメントに分割した複数のセグメント化ストリームに関するマニフェストファイル、及びセグメントを配信サーバから受信する受信装置であって、前記マニフェストファイルには、セグメント化ストリームを識別するストリーム識別子と、セグメントの再生時刻及びURLとが記述されており、受信した前記マニフェストファイルを解析し、前記ストリーム識別子ごとに前記セグメントの再生時刻及びURLを対応付けたセグメントURLリストを生成するマニフェスト取得部と、シーク操作が実行された場合に、シーク後の再生時刻である新規再生時刻を抽出する再生制御部と、シーク操作が実行された場合に、前記新規再生時刻に基づき、再生を開始するまでにバッファに保存する必要があるセグメントの数が最小となるセグメント化ストリームに対応する前記セグメントURLリストを決定し、該セグメントURLリストから取得対象のセグメントのURLを抽出するバッファ制御部と、前記バッファ制御部により決定された前記セグメントのURLに基づいて、配信サーバからセグメントを取得するセグメント取得部と、を備えることを特徴とする。
また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを、上記受信装置として機能させることを特徴とする。
本発明によれば、ストリーミング再生中におけるシーク操作時に、再生開始までに必要なデータをバッファに溜めるまでに取得するセグメント数を削減することが可能となる。したがって、再生開始までの待ち時間を短縮することが可能となる。さらに、無駄なセグメントを取得する機会が減るため、ネットワークの利用効率も向上し、安定した視聴が可能となる。
本発明の一実施形態に係る受信装置及びコンテンツ生成装置を備えるコンテンツ配信システムの概略を示す図である。 本発明の一実施形態に係るコンテンツ生成装置の構成例を示すブロック図である。 本発明の一実施形態に係るコンテンツ生成装置によって生成されるセグメントの具体例を示す図である。 本発明の一実施形態に係るコンテンツ生成装置によって生成されるMPD形式のマニフェストファイルの一例を示す図である。 本発明の一実施形態に係る受信装置の構成例を示すブロック図である。 本発明の一実施形態に係る受信装置のシーク操作時のセグメント取得制御方法を示すフローチャートである。 従来のアダプティブストリーミングの一例を示す図である。 従来のMSEのバッファモデルの一例を示す図である。 従来のマニフェストファイルの概念を示す図である。 従来の課題を説明する図である。
以下、本発明の一実施形態について、図面を参照して詳細に説明する。以下に説明する本実施形態では一例として、マニフェストファイルをMPEG-DASH(ISO/IEC23009-1)のMPD(Media Presentation Description)形式とする。
図1に、本発明の一実施形態に係る受信装置及びコンテンツ生成装置を備えるコンテンツ配信システムの概略を示す。インターネットを介して、受信装置1と配信サーバ3とが接続される。コンテンツ生成装置2と配信サーバ3とは、専用のローカルネットワークで接続されてもよいし、インターネットを介して接続されてもよい。
受信装置1は、配信サーバ3から動画コンテンツのセグメント及びマニフェストファイルを受信し、ストリーミング再生を行う。
コンテンツ生成装置2は、動画コンテンツのセグメント及びマニフェストファイルを生成し、配信サーバ3に供給する。
配信サーバ3は、マニフェストファイル及びセグメントを受信装置1に配信するサーバであり、例えば一般的なWebサーバとすることができる。
(コンテンツ生成装置)
次に、コンテンツ生成装置2の詳細について説明する。図2は、コンテンツ生成装置2の構成例を示すブロック図である。図2に示すコンテンツ生成装置2は、素材映像出力部21と、エンコード部22と、セグメント化タイミング制御部23と、セグメント化ストリーム生成部24と、マニフェスト生成部25と、コンテンツ送信部26と、通信I/F27とを備える。セグメント化ストリーム生成部24は、n(n≧2)個のセグメント化部24-1~24-nを備える。
素材映像出力部21は、外部から入力された素材映像や予め蓄積された素材映像から、生成対象のコンテンツをエンコード部22に出力する。
エンコード部22は、素材映像出力部21から入力された素材映像信号を、例えば、H.264|MPEG-4 AVC(Advanced Video Coding)、H.265|MPEG-H HEVC(High Efficiency Video Coding)といった既存の符号化方式により符号化する。そして、エンコード部22は、符号化ストリームをセグメント化ストリーム生成部24の各セグメント化部24-1~24-nに出力する。
セグメント化タイミング制御部23は、セグメント化ストリーム生成部24の各セグメント化部24-1~24-nに、それぞれのセグメントの開始位置及びセグメント長を示すセグメント化タイミング情報を出力する。ここで、各セグメント化部24-1~24-nに出力するセグメント化タイミング情報はそれぞれ異なるものとする。そのため、セグメントの区切りのタイミングはそれぞれ異なるものとなる。
セグメント化部24-1~24-nはそれぞれ、エンコード部22から入力された符号化ストリームを、セグメント化タイミング制御部23から入力されたセグメント化タイミング情報に従って、例えばISO-BMFF(ISO-Base Media File Format)形式でセグメント化してセグメントのストリームであるセグメント化ストリームを生成する。すなわち、セグメント化ストリーム生成部24は、エンコード部22から入力された符号化ストリームを異なるタイミングでセグメントに分割した、複数のセグメント化ストリームを生成する。そして、セグメント化部24-1~24-nは、それぞれセグメント化ストリームをマニフェスト生成部25に出力する。
マニフェスト生成部25は、複数のセグメント化部24から入力されたセグメントを入力し、例えばMPEG-DASHのMPD形式の1つのマニフェストファイルを生成する。マニフェストファイルは、少なくとも、セグメント化ストリームを識別するストリーム識別子と、セグメントの再生時刻及びURLとを記述する。そして、マニフェスト生成部25は、マニフェストファイル及びセグメントをコンテンツ送信部26に出力する。マニフェストファイルの生成は、セグメントを入力するたびに順次更新する方法で行われてもよいし、全てのセグメントを入力してから行われてもよい。
コンテンツ送信部26は、マニフェスト生成部25から入力されたマニフェストファイル及びセグメントを通信I/F27を介して配信サーバ3に送信する。
ここで、本発明によるコンテンツ生成装置2によって生成されたコンテンツの具体例を図3及び図4を参照して説明する。図3は、セグメント化部24によって生成されるセグメントの具体例を示す図である。図3ではエンコード部22により生成された、コンテンツ尺が30秒の符号化ストリームを、3つのセグメント化部24(セグメント化部24-1、セグメント化部24-2、及びセグメント化部24-3)によりセグメント化し、セグメント化ストリーム1、セグメント化ストリーム2、及びセグメント化ストリーム3が生成される例である。
セグメント化ストリーム1は、最初からセグメント長を3秒としてセグメント化されたストリームである。セグメント化ストリーム2は、0秒~1秒のセグメント長を1秒とし、1秒~28秒までをセグメント長を3秒とし、28秒~30秒のセグメント長を2秒としてセグメント化されたストリームである。セグメント化ストリーム3は、0~2秒のセグメント長を2秒とし、2秒~29秒のセグメント長を3秒とし、29秒~30秒のセグメント長を1秒としてセグメント化されたストリームである。
図4は、図3のセグメント化ストリーム1、セグメント化ストリーム2、セグメント化ストリーム3をもとに生成したMPD形式のマニフェストファイルの一例(抜粋)を示す図である。図4に示す例では、コンテンツ尺情報(duration)が30秒のPeriodが1つ存在し、Periodにはメディアの形式が同一(mimeType=”video/mp4”)のAdaptationSetが3つ存在(id=”Mod3_0”、id=”Mod3_1”、id=”Mod3_2”)し、さらにそれぞれのAdaptationSetにはRepresentationが1つずつ存在している。以降、AdaptationSetのidを「ストリーム識別子」と称する。
ここで、ある再生時刻を含むセグメントのファイル名を特定する方法について説明する。図4の2行目のstartの値から、Periodの開始時刻は0である。図4の10行目のtimescaleの値から、id=”Mod3_1”のAdaptationSetのタイムスケール(1秒間の目盛り数)は1000である。図4の10行目のstartNumberの値から、セグメントの開始番号は1である。図4の10行目のmediaの値から、セグメントのファイル名の基準値はs2_$Number$.mp4であり、$Number$をセグメントのシーケンス番号で置き換えた値がファイル名となる。
また、11行目~15行目に示すSegmentTimelineは、図3に示したセグメント化ストリーム2の各セグメントの再生開始時刻とセグメント長の関係性を示している。S内のtは再生開始時刻、dはセグメント長、rは同じdの継続回数を示す。つまり、12行目のSは開始時刻が0(t=0)でセグメント長が1秒(d/timescale)を示している。13行目のSは開始時刻が1秒(t/timescale)でセグメント長が3秒であり、且つそのセグメントに同じセグメント長のセグメントが8つ続くことを示している。14行目のSは開始時刻が28秒でセグメント長が2秒のセグメントを表している。この情報によってセグメント番号はインクリメントされる。これに従うと、例えば再生時刻8秒を含むセグメントのシーケンス番号は4となり、そのファイル名は”s2_4.mp4”となる。このようにして、ある再生時刻を含むセグメントのファイル名を特定することが可能となる。
なお、上述したコンテンツ生成装置2として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、コンテンツ生成装置2の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。
(受信装置)
次に、受信装置1の詳細について説明する。図5は、受信装置1の構成例を示すブロック図である。図5に示す受信装置1は、通信I/F10と、マニフェスト取得部11と、セグメントリスト記憶部12と、セグメント取得部13と、バッファ14と、バッファ制御部15と、再生制御部16と、再生制御ユーザI/F17と、再生部18と、表示部19とを備える。
マニフェスト取得部11は、配信サーバ3から所望の番組のマニフェストファイルを通信I/F10を介して受信する。そして、マニフェスト取得部11は、受信したマニフェストファイルを解析し、ストリーム識別子ごとに、セグメントの再生時刻及びURLを対応付けたセグメントURLリストを生成し、セグメントリスト記憶部12に記憶する。
セグメント取得部13は、バッファ制御部15から取得対象のセグメントのURLを入力し、該入力したセグメントのURLを含むリクエストを通信I/F10を介して配信サーバ3に要求する。そして、セグメント取得部13は、該リクエストへのレスポンスとして、配信サーバ3から通信I/F10を介してセグメントを受信し、バッファ制御部15に出力する。
バッファ14は、バッファ制御部15から入力されたセグメントを、セグメントの再生開始時刻及び再生継続時間(セグメント長)を対応付けて保存する。そして、バッファ14は、現在の保存中の全セグメントのセグメント再生時刻及び再生継続時間の情報を、バッファ制御部15に出力する。
また、バッファ14は、再生部18から要求された再生時刻のセグメントを順次再生部18に出力する。
再生制御部16は、再生制御ユーザI/F17から再生開始、停止の命令を入力すると、再生部18に再生開始・停止を指示する。
また、再生制御部16は、再生制御ユーザI/F17から新規再生時刻へのシーク命令を入力すると、バッファ制御部15に新規再生時刻情報を出力し、バッファ制御部15からバッファ規定値を超えたことを示す通知を入力したら、再生部18に新規再生時刻への再生時刻変更を指示する。バッファ規定値は、受信装置1で任意の値を設定してもよいし、マニフェストファイルに記述された設定値(例えば、図4に示したminBufferTimeの値)を利用してもよい。
また、再生制御部16は、現在の再生状態(再生中、停止中)、及び再生部18から入力された再生時刻情報を、バッファ制御部15及び再生制御ユーザI/F17に出力する。
再生制御ユーザI/F17は、ユーザの操作によって再生を制御する機能である。再生開始・停止ボタンや所望の再生時刻へのシーク操作を可能とするボタンなどを備え、コンテンツの開始、終了時刻、及び再生制御部16から入力された再生時刻情報をもとに、現在の再生時刻をグラフィカルに表示してもよい。例えば、再生画面の下部にコンテンツの開始時刻を左端、終了時刻を右端とする横長の棒状で表示し、それと重なるようにつまみ状の操作部分を配置し、つまみ状の操作部分を再生が進むにつれて左端から右端に移動させることによって、再生時間全体のうち今どの部分を再生しているのかを一目で把握することができるようにすることができる。また、つまみ状の操作部分を変更することによって、所望の再生時刻へのシーク操作を行うようにしてもよい。
再生部18は、再生制御部16から再生開始時刻を含む再生命令を入力すると、再生開始時刻に基づいてセグメントを順次バッファから入力し、入力したセグメントをセグメントのメディア形式(映像、音声、テキスト等)に従ってデコードし、表示部19に出力するとともに、再生とともに更新される再生時刻の情報である再生時刻情報を再生制御部16に出力する。
また、再生部18は、再生制御部16から停止命令を入力した場合には、再生を停止する。
表示部19は、再生部18から入力されたデコード済みのメディアデータをそのメディアの形式に従って表示する。
バッファ制御部15は、再生制御部16から入力された再生時刻情報、及び取得対象のセグメント化ストリームを表す取得対象ストリーム識別子に対応するセグメントURLリストから取得対象のセグメントのURLを決定し、セグメント取得部13に出力する。また、バッファ制御部15は、セグメント取得部13からセグメントが入力されると、該セグメントをバッファ14に出力する。
バッファ制御部15は、再生制御部16から新規再生時刻情報を入力した場合には、新規再生時刻に基づき、再生を開始するまでにバッファ14に保存する必要があるセグメントの数が最小となるセグメント化ストリームのストリーム識別子をセグメントリスト記憶部12から取得対象ストリーム識別子として抽出する。すなわち、バッファ制御部15は、取得対象ストリーム識別子に対応するセグメントURLリストを決定する。そして、バッファ制御部15は、該セグメントURLリストから取得対象のセグメントのURLを抽出し、セグメント取得部13に出力する。シーク操作時の制御の詳細については、下記で説明する。
なお、上述した受信装置1として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、受信装置1の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。
(シーク操作時のセグメント取得制御方法)
次に、受信装置1のシーク操作時のセグメント取得制御方法について、図6のフローチャートを参照して説明する。図6に示すフローチャートは、既にマニフェスト取得部11により、配信サーバ3からマニフェストファイルを取得し、ストリーム識別子ごとにセグメントの再生時刻及びURLを対応付けたセグメントURLリストも作成済みの状態から開始するものとする。また、ネットワークの混雑状況に応じて受信帯域が常に変動することを見越して、新規再生時刻を起点として、予め設定したバッファ規定値(例えば3秒)以上のセグメントがバッファ14に挿入されてから再生を開始するものとする。
また、バッファ14は、MPDに記載のPeriodの開始時刻から終了時刻までの範囲を持っており、セグメントを再生開始時刻と再生継続時刻の情報と対応付けて保存しているものとする。また、バッファ14にコンテンツのセグメントが挿入されている範囲をバッファ済みセグメント範囲と称する。
まず、再生制御ユーザI/F17によりシーク操作が実行されたら(ステップS001)、再生制御部16は、シーク後の再生時刻である新規再生時刻を抽出し(ステップS002)、バッファ制御部15に出力する。
続いて、バッファ制御部15は、現在取得対象となっているセグメント化ストリームを表す取得対象ストリーム識別子をリセットし(ステップS003)、バッファ14内に新規再生時刻から予め設定したバッファ規定値以上の範囲までに対応するセグメントが存在するか否かを確認する。
バッファ14内に上記セグメントが存在しない場合には(ステップS004-NO)、バッファ制御部15は、再生を開始するまでにバッファ14に保存する必要があるセグメントの数(バッファ規定値に達するまでに取得が必要なセグメントの数)が最小となるセグメント化ストリームのストリーム識別子を抽出し、取得対象ストリーム識別子に設定する(ステップS005)。なお、バッファ済みセグメント範囲に新規再生時刻に対応するセグメントが含まれる場合には、バッファ済みセグメント範囲の最後からバッファ規定値に達するまでに取得が必要なセグメント数が最小となるセグメント化ストリームのストリーム識別子を抽出する(ステップS005)。
例えば、上述した図3の例において5秒の位置にシークした場合、バッファ規定値(3秒)以上にするためには、セグメント化ストリーム1及びセグメント化ストリーム2では2つのセグメントを取得する必要があるが、セグメント化ストリーム3では1つのセグメントを取得するだけでよい。そのため、取得対象ストリーム識別子は、セグメント化ストリーム3のストリーム識別子となる。
続いて、バッファ制御部15は、セグメントリスト記憶部12に記憶された、取得対象ストリーム識別子に対応するセグメントURLリストから、新規再生時刻に対応するセグメントのURLを抽出(決定)する(ステップS006)。なお、バッファ済みセグメント範囲に新規再生時刻に対応するセグメントが含まれる場合には、バッファ制御部15は、新規再生時刻を含むバッファ済みセグメント範囲の最後のセグメントに続くセグメントのURLを、取得対象ストリーム識別子に対応するセグメントURLリストから抽出する。
続いて、セグメント取得部13は、抽出したセグメントのURLを含むリクエスト(セグメント要求)を配信サーバ3に送信し、該リクエストに対するレスポンスとして配信サーバ3からセグメントを取得する(ステップS007)。そして、セグメント取得部13は、該受信したセグメントをバッファ14に挿入する(ステップS008)。
再生時刻がコンテンツの終了時刻に到達しておらず、且つ再生制御ユーザI/F17にて停止ボタンが押されていない場合(ステップS009-NO)には、ステップS004に戻る。一方、再生時刻がコンテンツの終了時刻に到達したか、又は再生制御ユーザI/F17にて停止ボタンが押された場合(ステップS009-YES)には、処理を終了する。
ステップS004においてYESである場合には、現在の再生時刻を新規再生時刻に変更し(ステップS010)、該再生時刻から再生を開始して(ステップS011)、処理を終了する。
以上により、ストリーミング再生中におけるシーク操作時に、再生開始までに必要なデータがバッファ14に溜まるまでに取得するセグメント数を削減することが可能となる。よって、再生開始までの待ち時間(バッファリング遅延)を短縮することが可能となるとともに、無駄なセグメントを取得する機会が減るためネットワークの利用効率も向上し、安定した視聴が可能となる。
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態に記載の構成ブロック又は処理ステップについて、複数を1つに組み合わせたり、1つを複数に分割したりすることが可能である。
1 受信装置
2 コンテンツ生成装置
3 配信サーバ
10 通信I/F
11 マニフェスト取得部
12 セグメントリスト記憶部
13 セグメント取得部
14 バッファ
15 バッファ制御部
16 再生制御部
17 再生制御ユーザI/F
18 再生部
19 表示部
21 素材映像出力部
22 エンコード部
23 セグメント化タイミング制御部
24 セグメント化ストリーム生成部
24-1~24-n セグメント化部
25 マニフェスト生成部
26 コンテンツ送信部
27 通信I/F

Claims (2)

  1. 符号化ストリームを異なるタイミングでセグメントに分割した複数のセグメント化ストリームに関するマニフェストファイル、及びセグメントを配信サーバから受信する受信装置であって、
    前記マニフェストファイルには、セグメント化ストリームを識別するストリーム識別子と、セグメントの再生時刻及びURLとが記述されており、
    受信した前記マニフェストファイルを解析し、前記ストリーム識別子ごとに前記セグメントの再生時刻及びURLを対応付けたセグメントURLリストを生成するマニフェスト取得部と、
    シーク操作が実行された場合に、シーク後の再生時刻である新規再生時刻を抽出する再生制御部と、
    シーク操作が実行された場合に、前記新規再生時刻に基づき、再生を開始するまでにバッファに保存する必要があるセグメントの数が最小となるセグメント化ストリームに対応する前記セグメントURLリストを決定し、該セグメントURLリストから取得対象のセグメントのURLを抽出するバッファ制御部と、
    前記バッファ制御部により決定された前記セグメントのURLに基づいて、配信サーバからセグメントを取得するセグメント取得部と、
    を備えることを特徴とする、受信装置。
  2. コンピュータを、請求項に記載の受信装置として機能させるためのプログラム。
JP2019020980A 2019-02-07 2019-02-07 受信装置、及びプログラム Active JP7324012B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019020980A JP7324012B2 (ja) 2019-02-07 2019-02-07 受信装置、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019020980A JP7324012B2 (ja) 2019-02-07 2019-02-07 受信装置、及びプログラム

Publications (2)

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

Family

ID=72174937

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019020980A Active JP7324012B2 (ja) 2019-02-07 2019-02-07 受信装置、及びプログラム

Country Status (1)

Country Link
JP (1) JP7324012B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003209823A (ja) 2002-01-16 2003-07-25 Matsushita Electric Ind Co Ltd ストリーム送受信システムおよびストリーム送受信方法
JP2009284282A (ja) 2008-05-23 2009-12-03 Sony Corp コンテンツサーバ、情報処理装置、ネットワーク機器、コンテンツ配信方法、情報処理方法およびコンテンツ配信システム
JP2014534684A (ja) 2011-10-05 2014-12-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated コーディングされたマルチメディアデータのネットワークストリーミング中の表現の切り替え
JP2018182447A (ja) 2017-04-07 2018-11-15 キヤノン株式会社 映像配信装置、映像配信方法及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003209823A (ja) 2002-01-16 2003-07-25 Matsushita Electric Ind Co Ltd ストリーム送受信システムおよびストリーム送受信方法
JP2009284282A (ja) 2008-05-23 2009-12-03 Sony Corp コンテンツサーバ、情報処理装置、ネットワーク機器、コンテンツ配信方法、情報処理方法およびコンテンツ配信システム
JP2014534684A (ja) 2011-10-05 2014-12-18 クゥアルコム・インコーポレイテッドQualcomm Incorporated コーディングされたマルチメディアデータのネットワークストリーミング中の表現の切り替え
JP2018182447A (ja) 2017-04-07 2018-11-15 キヤノン株式会社 映像配信装置、映像配信方法及びプログラム

Also Published As

Publication number Publication date
JP2020129734A (ja) 2020-08-27

Similar Documents

Publication Publication Date Title
JP6177843B2 (ja) 部分化を利用した適応的なストリーミング方法及びその装置
KR101837687B1 (ko) 콘텐트의 품질을 결정하는 복수의 인자에 기초한 적응적인 스트리밍 방법 및 장치
US9756364B2 (en) Streaming method and apparatus operating by inserting other content into main content
US9197689B2 (en) Method and apparatus for adaptively streaming content including plurality of chapters
US20110125918A1 (en) Adaptive streaming method and apparatus
WO2013008867A1 (ja) 送信装置、送信装置の制御方法、制御プログラム、及び記録媒体
EP2665262A1 (en) Playback device, method of controlling playback device, production device, method of controlling production device, recording medium, data structure, control program, and recording medium whereon said program has been recorded
CN109792546B (zh) 从服务器向客户端设备传送视频内容的方法
US11647252B2 (en) Identification of elements in a group for dynamic element replacement
US20230403317A1 (en) Segment ladder transitioning in adaptive streaming
US11765421B2 (en) Client based storage of remote element resolutions
CN113329267A (zh) 一种视频播放方法、装置、终端设备及存储介质
JP6609468B2 (ja) 受信装置、再生時刻制御方法、及びプログラム
US20230164398A1 (en) Video stream control
JP6535273B2 (ja) 受信装置、セグメント取得方法、及びプログラム
JP6397341B2 (ja) 受信装置、バッファ管理方法、及びプログラム
JP7324012B2 (ja) 受信装置、及びプログラム
EP2810446B1 (en) Methods and systems for providing file data for a media file
KR20110129064A (ko) 콘텐트 가상 세그멘테이션 방법과, 이를 이용한 스트리밍 서비스 제공 방법 및 시스템
JP6581884B2 (ja) 受信装置、バッファ管理方法、及びプログラム
JP2022133163A (ja) コンテンツ生成装置、受信装置、及びプログラム
JP2024040912A (ja) 情報処理装置、受信装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230323

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230704

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230728

R150 Certificate of patent or registration of utility model

Ref document number: 7324012

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150