JP2014175687A - 映像配信装置、映像配信方法及び映像配信プログラム - Google Patents
映像配信装置、映像配信方法及び映像配信プログラム Download PDFInfo
- Publication number
- JP2014175687A JP2014175687A JP2013043809A JP2013043809A JP2014175687A JP 2014175687 A JP2014175687 A JP 2014175687A JP 2013043809 A JP2013043809 A JP 2013043809A JP 2013043809 A JP2013043809 A JP 2013043809A JP 2014175687 A JP2014175687 A JP 2014175687A
- Authority
- JP
- Japan
- Prior art keywords
- file
- moving image
- storage
- video
- data
- 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.)
- Pending
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】低価格な大容量記憶装置を用いつつ、迅速な放送素材の送出を可能にする、低価格でありながら利便性の高い映像配信装置、映像配信方法及び映像配信プログラムを提供する。
【解決手段】第二ストレージ214のタイムラグを解消するために、第一ストレージ204に動画先頭ファイル302を格納しておき、コンソール106あるいはデコーダ104から読み出し指令が来たら、最初は第一ストレージ204から動画先頭ファイル302を読み出してデコーダ104に送出する。そして、先読みバッファ401に第二ストレージ214から読み出された動画ファイル301のデータが溜まったことを確認したら、切替スイッチ402を制御して、先読みバッファ401から動画ファイル301のデータを読み出してデコーダ104に送出する。
【選択図】図4
【解決手段】第二ストレージ214のタイムラグを解消するために、第一ストレージ204に動画先頭ファイル302を格納しておき、コンソール106あるいはデコーダ104から読み出し指令が来たら、最初は第一ストレージ204から動画先頭ファイル302を読み出してデコーダ104に送出する。そして、先読みバッファ401に第二ストレージ214から読み出された動画ファイル301のデータが溜まったことを確認したら、切替スイッチ402を制御して、先読みバッファ401から動画ファイル301のデータを読み出してデコーダ104に送出する。
【選択図】図4
Description
本発明は、映像配信装置、映像配信方法及び映像配信プログラムに関する。
テレビジョン放送業務を遂行する、テレビジョン放送局やインターネットテレビ配信機関等の放送局は、ビデオサーバシステムを用いて、予め記憶装置に記憶された番組やコマーシャル等の放送素材を放送する。かつて放送素材を記憶する記憶媒体は磁気テープが用いられていたが、技術の進歩に伴い、放送素材がアナログビデオ信号からデジタルデータに変遷したことに伴い、光ディスクや光磁気ディスク、そして固定磁気ディスク装置(以下「HDD」と略す。)へ変遷している。更に、迅速な放送素材の送出を目的として、近年大容量化及び低価格化が著しいフラッシュメモリも使用され始めている。
近年大容量化が著しいHDDは、フラグメンテーション等で所望のファイルを読み出すまでに要する時間がかかる、という問題を抱えている。また、HDDは経年劣化等に起因するクラッシュの危険性をはらんでいるので、業務用途では複数のHDDで構成されるディスクアレイ(以下「RAID」と略す。)を用いることが多いが、このRAIDもアクセス速度低下の一因になり得る。このように、ビデオサーバシステムにHDDを採用する場合、アクセス速度が放送素材を迅速に送出する目的に適わない場合がある。
なお、本発明に類似すると思われる技術が開示されている先行技術文献を、特許文献1に示す。特許文献1には、外部ストレージ装置に映像データを分割して配置することで、ビデオサーバにコピーし配信可能な状態にする待ち時間を削減する仕組みが記載されている。
特許文献1に開示されている技術は、所定の映像データを先頭から配信する要求に対して、迅速に配信可能な状態にするために、外部ストレージ装置からビデオサーバへ映像データをコピーする。しかし、この映像データのコピーはクリティカルな処理である。具体的には、外部ストレージ装置の映像データ読み出し性能、外部ストレージ装置からビデオサーバへの映像データ転送性能によって、配信可能となるまでの待ち時間が変動する。特に、外部ストレージにHDDを使用した場合、最悪のケースで10秒以上の遅延が発生する場合もある。
このような課題を解決するには、読み出し速度が早いフラッシュメモリを用いることが考えられるが、フラッシュメモリはHDDと比べるとまだ高価であり、記憶容量も少ない。また、HDDより書き込みの速度が遅い。
このような課題を解決するには、読み出し速度が早いフラッシュメモリを用いることが考えられるが、フラッシュメモリはHDDと比べるとまだ高価であり、記憶容量も少ない。また、HDDより書き込みの速度が遅い。
本発明は係る状況に鑑みてなされたものであり、低価格な大容量記憶装置を用いつつ、迅速な放送素材の送出を可能にする、利便性の高い映像配信装置、映像配信方法及び映像配信プログラムを提供することを目的とする。
上記課題を解決するために、本発明の映像配信装置は、動画ファイルの先頭部分よりなる動画先頭ファイルが格納される第一ストレージと、動画ファイルが格納される第二のストレージを備える。この第二のストレージは、第一ストレージより記憶容量が大きく、かつ第一ストレージよりファイル転送要求に対する応答速度が遅いものである。
また、本発明の映像配信装置は、動画ファイルと動画先頭ファイルの対応関係が記述されているインデックステーブルと、第二ストレージから送出される動画ファイルのデータを一時的に蓄積する先読みバッファとを有する。
本発明の映像配信装置が備える配信制御部は、上位装置から動画ファイルに対する再生指示を受けて、インデックステーブルから動画ファイルのファイル名と動画先頭ファイルのファイル名を取得する。そして、第一ストレージに対して動画先頭ファイルの送出を指示するとともに第二ストレージに対して動画ファイルの送出を指示する。更に、先読みバッファに動画ファイルのデータが蓄積されるまでは動画先頭ファイルをデコーダに出力し、先読みバッファに動画ファイルのデータが蓄積された後は先読みバッファのデータをデコーダに出力する。
また、本発明の映像配信装置は、動画ファイルと動画先頭ファイルの対応関係が記述されているインデックステーブルと、第二ストレージから送出される動画ファイルのデータを一時的に蓄積する先読みバッファとを有する。
本発明の映像配信装置が備える配信制御部は、上位装置から動画ファイルに対する再生指示を受けて、インデックステーブルから動画ファイルのファイル名と動画先頭ファイルのファイル名を取得する。そして、第一ストレージに対して動画先頭ファイルの送出を指示するとともに第二ストレージに対して動画ファイルの送出を指示する。更に、先読みバッファに動画ファイルのデータが蓄積されるまでは動画先頭ファイルをデコーダに出力し、先読みバッファに動画ファイルのデータが蓄積された後は先読みバッファのデータをデコーダに出力する。
本発明によれば、大容量記憶装置を用いつつ、迅速な放送素材の送出を可能にすることにより、低価格でありながら利便性の高い映像配信装置、映像配信方法及び映像配信プログラムを提供することができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
以下、図1、2を参照して、本発明の実施形態である、ビデオサーバシステム101について説明する。
図1は、本発明の実施形態であるビデオサーバシステム101の全体構成を示す模式図である。図2は、ビデオサーバとネットワークストレージのハードウェア構成を示すブロック図である。
ビデオサーバ102は、アクセス速度が高速な、半導体の不揮発性ストレージである第一ストレージ204(図2参照)を備える。
ビデオサーバ102に接続されているネットワークストレージ103は、第一ストレージ204よりアクセス速度が低速で大容量な不揮発性ストレージである第二ストレージ214(図2参照)を備える。
第二ストレージ214には動画ファイルをそのまま格納する。第一ストレージ204には、第二ストレージ214に格納される動画ファイルの、先頭から所定の再生時間に相当する分だけ切り出した、動画先頭ファイルを格納する。
図1は、本発明の実施形態であるビデオサーバシステム101の全体構成を示す模式図である。図2は、ビデオサーバとネットワークストレージのハードウェア構成を示すブロック図である。
ビデオサーバ102は、アクセス速度が高速な、半導体の不揮発性ストレージである第一ストレージ204(図2参照)を備える。
ビデオサーバ102に接続されているネットワークストレージ103は、第一ストレージ204よりアクセス速度が低速で大容量な不揮発性ストレージである第二ストレージ214(図2参照)を備える。
第二ストレージ214には動画ファイルをそのまま格納する。第一ストレージ204には、第二ストレージ214に格納される動画ファイルの、先頭から所定の再生時間に相当する分だけ切り出した、動画先頭ファイルを格納する。
ビデオサーバ102は、上位装置から動画コンテンツの再生指示を受けると、先ず、該当する動画ファイルと、動画先頭ファイルを特定する。そして、第一ストレージ204から動画先頭ファイルを読み出して、デコーダへ送出する。これとともに、ネットワークストレージ103に対しても動画ファイルの再生指示を発行する。ネットワークストレージ103は第二ストレージ214から動画ファイルを読み出し、ビデオサーバ102に送出する。ビデオサーバ102は動画ファイルを受信すると、一旦先読みバッファに蓄積する。そして、先読みバッファに所定のデータ量が蓄積されたら、ビデオサーバ102はデコーダに送出するデータを、動画先頭ファイルから先読みバッファ内の動画ファイルに切り替える。こうして、再生指示の発行からファイルの読み出しに時間がかかる第二ストレージ214の速度を補いつつ、高価な第一ストレージの容量を必要最小限に抑えることができる。
本実施形態のビデオサーバシステム101は、動画像データを配信する際、二通りの動作を実施できる。この二通りの動作をそれぞれ、第一の実施形態と第二の実施形態で説明する。第一の実施形態と第二の実施形態は、ハードウェアの構成が共通し、ソフトウェアの機能と動作が異なる。また、第三の実施形態では動画像データをビデオサーバシステムに格納する手順を説明する。
[ビデオサーバシステム101の全体構成]
図1に示し、上述したように、ビデオサーバシステム101は、映像データを送出するビデオサーバ102と、ビデオサーバ102に映像データを供給するネットワークストレージ103を備える。更に、ビデオサーバシステム101は、映像データを映像信号へデコードする複数のデコーダ104a〜104nと、映像信号を選択的に送信設備に送出するスイッチャ105と、ビデオサーバ102とスイッチャ105を制御するコンソール106を備える。
デコーダ104は、第一デコーダ104a、第二デコーダ104b…第nデコーダ104nで示すように複数のデコーダ104a〜104nを有し、これら複数のデコーダ104a〜104nがビデオサーバ102とスイッチャ105との間に設けられている。
図1に示し、上述したように、ビデオサーバシステム101は、映像データを送出するビデオサーバ102と、ビデオサーバ102に映像データを供給するネットワークストレージ103を備える。更に、ビデオサーバシステム101は、映像データを映像信号へデコードする複数のデコーダ104a〜104nと、映像信号を選択的に送信設備に送出するスイッチャ105と、ビデオサーバ102とスイッチャ105を制御するコンソール106を備える。
デコーダ104は、第一デコーダ104a、第二デコーダ104b…第nデコーダ104nで示すように複数のデコーダ104a〜104nを有し、これら複数のデコーダ104a〜104nがビデオサーバ102とスイッチャ105との間に設けられている。
一方、無圧縮の動画像データあるいはアナログの動画像信号は、第一エンコーダ107a、第二エンコーダ107b…第nエンコーダ107nに示すように、複数のエンコーダ107によって所定のエンコード処理や圧縮処理を施された動画像データに変換される。そして、この変換された動画像データがビデオサーバ102に供給される。また、エンコーダ107を介することなく、予めエンコード処理及び圧縮処理された動画像データが直接、ビデオサーバ102に供給されることもある。
デコーダ104a〜104nとスイッチャ105との間はシリアルデジタルインタフェース(Serial Digital Interface: SDI)で接続されている。それ以外の、コンソール106とビデオサーバ102、コンソール106とスイッチャ105、ビデオサーバ102とネットワークストレージ103、ビデオサーバ102と複数のデコーダ104a〜104nとの間は、ネットワークで接続されている。
スイッチャ105の出力信号、すなわちデジタル映像信号は図示しない送信設備に送られる。送信設備はデジタル映像信号に所定のエンコード処理を施して、テレビジョン放送帯の電波として出力する。但し、送信設備は対象となる媒体に応じて変化する。もし、放送局がインターネットテレビ局であれば、ストリーム動画のエンコード処理を施して、インターネットに接続される放送用ストリームサーバへ出力する。本実施形態では、放送設備は発明の主たる構成要素ではないので、詳細な図示と説明を省略する。
スイッチャ105の出力信号、すなわちデジタル映像信号は図示しない送信設備に送られる。送信設備はデジタル映像信号に所定のエンコード処理を施して、テレビジョン放送帯の電波として出力する。但し、送信設備は対象となる媒体に応じて変化する。もし、放送局がインターネットテレビ局であれば、ストリーム動画のエンコード処理を施して、インターネットに接続される放送用ストリームサーバへ出力する。本実施形態では、放送設備は発明の主たる構成要素ではないので、詳細な図示と説明を省略する。
[ビデオサーバ102とネットワークストレージ103のハードウェア構成]
また、図2に示すように、ビデオサーバ102とネットワークストレージ103は、いずれも周知のコンピュータシステムである。コンピュータシステムはパーソナルコンピュータを用いてもよい。
ビデオサーバ102は、CPU201、ROM202、RAM203、第一ストレージ204と第一NIC205が、バス206に接続されている。なお、ビデオサーバ102にパーソナルコンピュータを用いる場合、表示部207及び操作部208を伴うが、表示部207及び操作部208は必ずしも必要とはされない。
ネットワークストレージ103もビデオサーバ102と同様に、CPU211、ROM212、RAM213、第二ストレージ214と第二NIC215が、バス216に接続されている。なお、ネットワークストレージ103にパーソナルコンピュータを用いる場合、表示部217及び操作部218が伴うが、この表示部217及び操作部218も同様に必ずしも必要とはされない。
第一NIC205と第二NIC215はネットワーク219に接続されている。なお、第一NIC205にはこの他にもデコーダ104、コンソール106やエンコーダ107とも接続されているが、図2では図示を省略している。
また、図2に示すように、ビデオサーバ102とネットワークストレージ103は、いずれも周知のコンピュータシステムである。コンピュータシステムはパーソナルコンピュータを用いてもよい。
ビデオサーバ102は、CPU201、ROM202、RAM203、第一ストレージ204と第一NIC205が、バス206に接続されている。なお、ビデオサーバ102にパーソナルコンピュータを用いる場合、表示部207及び操作部208を伴うが、表示部207及び操作部208は必ずしも必要とはされない。
ネットワークストレージ103もビデオサーバ102と同様に、CPU211、ROM212、RAM213、第二ストレージ214と第二NIC215が、バス216に接続されている。なお、ネットワークストレージ103にパーソナルコンピュータを用いる場合、表示部217及び操作部218が伴うが、この表示部217及び操作部218も同様に必ずしも必要とはされない。
第一NIC205と第二NIC215はネットワーク219に接続されている。なお、第一NIC205にはこの他にもデコーダ104、コンソール106やエンコーダ107とも接続されているが、図2では図示を省略している。
第一ストレージ204はフラッシュメモリ等を用いたSSD(solid state drive)等の高速な不揮発性記憶装置である。記憶媒体に形成される物理的変化を直接的に電気信号に相互変換する、情報の記録及び再生に機械部品を用いない、静的記憶装置がこれに該当する。
第二ストレージ214はHDD等の、第一ストレージ204より低速で大容量の不揮発性記憶装置である。記憶媒体に形成される物理的変化を、記憶媒体と相対的な移動を行うピックアップを通じて検出し、あるいは形成することで、情報の記録及び再生を行う、情報の記録及び再生に機械部品を必要とする、動的記憶装置がこれに該当する。
第二ストレージ214はHDD等の、第一ストレージ204より低速で大容量の不揮発性記憶装置である。記憶媒体に形成される物理的変化を、記憶媒体と相対的な移動を行うピックアップを通じて検出し、あるいは形成することで、情報の記録及び再生を行う、情報の記録及び再生に機械部品を必要とする、動的記憶装置がこれに該当する。
第一ストレージ204には、一般的なネットワークOSと、コンピュータをビデオサーバ102として機能させるためのアプリケーションプログラムが記憶されている。ビデオサーバ102はネットワークOSと当該アプリケーションプログラムがコンピュータ上で稼働することによって成り立つ。
第二ストレージ214には、一般的なネットワークOSと、コンピュータをネットワークストレージ103として機能させるためのアプリケーションプログラムが記憶されている。ネットワークストレージ103はネットワークOSと当該アプリケーションプログラムがコンピュータ上で稼働することによって成り立つ。
第二ストレージ214には、一般的なネットワークOSと、コンピュータをネットワークストレージ103として機能させるためのアプリケーションプログラムが記憶されている。ネットワークストレージ103はネットワークOSと当該アプリケーションプログラムがコンピュータ上で稼働することによって成り立つ。
[動画ファイルと動画先頭ファイルの構成]
図3A及びBは、第一ストレージ204と第二ストレージ214に記憶されている動画ファイルの一例を模式的に示す図である。
図3Aは、第二ストレージ214に記憶されている動画ファイル301である。横方向は時間軸を表す。
図3Bは、第一ストレージ204に記憶されている動画先頭ファイル302である。すなわち、動画先頭ファイル302は、動画ファイル301の先頭から所定時間、例えば15秒程度までの映像データに該当する部分だけが切り出されたファイルである。
図3A及びBは、第一ストレージ204と第二ストレージ214に記憶されている動画ファイルの一例を模式的に示す図である。
図3Aは、第二ストレージ214に記憶されている動画ファイル301である。横方向は時間軸を表す。
図3Bは、第一ストレージ204に記憶されている動画先頭ファイル302である。すなわち、動画先頭ファイル302は、動画ファイル301の先頭から所定時間、例えば15秒程度までの映像データに該当する部分だけが切り出されたファイルである。
[第一の実施形態:ビデオサーバ102とネットワークストレージ103のソフトウェア構成]
図4は、本発明の第一の実施形態に係る、ビデオサーバ102とネットワークストレージ103の、ソフトウェアの機能を示すブロック図である。なお、図4中、第二ストレージ214はネットワークストレージ103がビデオサーバ102に対して提供するソフトウェアの機能でもある。
第一ストレージ204には、動画先頭ファイル302が格納されている。
第二ストレージ214には、動画ファイル301が格納されている。
第二ストレージ214には、リングバッファを構成する先読みバッファ401が接続されている。そして、その先には切替スイッチ402が接続されている。
切替スイッチ402は第一ストレージ204と先読みバッファ401に接続され、第一ストレージ204と先読みバッファ401の何れかから出力される動画データをデコーダ104に送出する。
図4は、本発明の第一の実施形態に係る、ビデオサーバ102とネットワークストレージ103の、ソフトウェアの機能を示すブロック図である。なお、図4中、第二ストレージ214はネットワークストレージ103がビデオサーバ102に対して提供するソフトウェアの機能でもある。
第一ストレージ204には、動画先頭ファイル302が格納されている。
第二ストレージ214には、動画ファイル301が格納されている。
第二ストレージ214には、リングバッファを構成する先読みバッファ401が接続されている。そして、その先には切替スイッチ402が接続されている。
切替スイッチ402は第一ストレージ204と先読みバッファ401に接続され、第一ストレージ204と先読みバッファ401の何れかから出力される動画データをデコーダ104に送出する。
配信制御部403は、第一ストレージ204と、第二ストレージ214と、先読みバッファ401と、切替スイッチ402を制御する。
第一バイトカウンタ404は、第一ストレージ204から切替スイッチ402へ読み出される動画先頭ファイル302の、バイト数を計数するカウンタである。計数したバイト数の情報は配信制御部403に与えられる。
第二バイトカウンタ405は、第二ストレージ214から先読みバッファ401へ読み出される動画ファイル301の、バイト数を計数するカウンタである。計数したバイト数の情報は配信制御部403に与えられる。
第一バイトカウンタ404は、第一ストレージ204から切替スイッチ402へ読み出される動画先頭ファイル302の、バイト数を計数するカウンタである。計数したバイト数の情報は配信制御部403に与えられる。
第二バイトカウンタ405は、第二ストレージ214から先読みバッファ401へ読み出される動画ファイル301の、バイト数を計数するカウンタである。計数したバイト数の情報は配信制御部403に与えられる。
図5は、インデックステーブル406のフィールド構成を示す図である。
第一ストレージ204に形成されるインデックステーブル406は、コンテンツ名フィールドと、動画ファイル名フィールドと、動画先頭ファイル名フィールドよりなる。
コンテンツ名フィールドには、動画ファイル301のコンテンツを示す名称(コンテンツ名)が格納される。
動画ファイル名フィールドには、第二ストレージ214に格納されている動画ファイル301のファイル名が格納される。
動画先頭ファイル名フィールドには、第一ストレージ204に格納されている動画先頭ファイル302のファイル名が格納される。
このようにインデックステーブル406は、第一ストレージ204に格納されている動画先頭ファイル302と、第二ストレージ214に格納されている動画ファイル301との関係を記述するテーブルである。
第一ストレージ204に形成されるインデックステーブル406は、コンテンツ名フィールドと、動画ファイル名フィールドと、動画先頭ファイル名フィールドよりなる。
コンテンツ名フィールドには、動画ファイル301のコンテンツを示す名称(コンテンツ名)が格納される。
動画ファイル名フィールドには、第二ストレージ214に格納されている動画ファイル301のファイル名が格納される。
動画先頭ファイル名フィールドには、第一ストレージ204に格納されている動画先頭ファイル302のファイル名が格納される。
このようにインデックステーブル406は、第一ストレージ204に格納されている動画先頭ファイル302と、第二ストレージ214に格納されている動画ファイル301との関係を記述するテーブルである。
図4に戻って、ブロック図の説明を続ける。
配信制御部403は、上位装置であるコンソール106あるいはデコーダ104からコンテンツ名の再生指示を受け取ると、インデックステーブル406を参照して、第一ストレージ204に格納されている動画先頭ファイル302のファイル名と、第二ストレージ214に格納されている動画ファイル301のファイル名を特定する。そして、切替スイッチ402を第一ストレージ204側に設定して、第一ストレージ204と第二ストレージ214にそれぞれ読み出し指令を発行する。
そして配信制御部403は、先読みバッファ401に所望のデータが蓄積されたことを検出したら、切替スイッチ402を先読みバッファ401側に設定するとともに、先読みバッファ401の読み出し位置を適切なアドレスに指定する。すると、切替スイッチ402は先読みバッファ401に格納されている動画ファイル301の途中部分から読み出したデータを送出する。
配信制御部403は、上位装置であるコンソール106あるいはデコーダ104からコンテンツ名の再生指示を受け取ると、インデックステーブル406を参照して、第一ストレージ204に格納されている動画先頭ファイル302のファイル名と、第二ストレージ214に格納されている動画ファイル301のファイル名を特定する。そして、切替スイッチ402を第一ストレージ204側に設定して、第一ストレージ204と第二ストレージ214にそれぞれ読み出し指令を発行する。
そして配信制御部403は、先読みバッファ401に所望のデータが蓄積されたことを検出したら、切替スイッチ402を先読みバッファ401側に設定するとともに、先読みバッファ401の読み出し位置を適切なアドレスに指定する。すると、切替スイッチ402は先読みバッファ401に格納されている動画ファイル301の途中部分から読み出したデータを送出する。
第一ストレージ204はSSD等の静的記憶装置なので、RAM203と略同等のレスポンスにて、瞬時に動画先頭ファイル302の読み出しが始まる。しかし、第二ストレージ214はHDD等の動的記憶装置なので、読み出し指令を発行してから動画ファイル301の読み出しが始まるまでに遅れ(タイムラグ)が生じる。その代わり、第二ストレージ214のデータ転送速度は、デコーダ104が必要とするデータ転送速度を十分上回る。したがって、一旦動画ファイル301の読み出しが開始されれば、動画ファイル301の読み出し自体は滞り無く遂行される。
すなわち、問題となっている点は第二ストレージ214の読み出し指令発行時点から指定されたファイルが読み出されるまでにかかるタイムラグである。
すなわち、問題となっている点は第二ストレージ214の読み出し指令発行時点から指定されたファイルが読み出されるまでにかかるタイムラグである。
本実施形態のビデオサーバ102は、このタイムラグを解消するために、第一ストレージ204に動画先頭ファイル302を格納しておき、コンソール106あるいはデコーダ104から読み出し指令が来たら、最初は第一ストレージ204から動画先頭ファイル302を読み出してデコーダ104に送出する。そして、先読みバッファ401に第二ストレージ214から読み出された動画ファイル301のデータが溜まったことを確認したら、切替スイッチ402を制御して、先読みバッファ401から動画ファイル301のデータを読み出してデコーダ104に送出する。この時、先読みバッファ401の読み出し位置は既にデコーダ104に送出した動画先頭ファイル302のデータと重複してはいけない。そこで、配信制御部403は第一バイトカウンタ404でデコーダ104に送出したデータ量を監視して、切替スイッチ402を先読みバッファ401に切り替えた際、第一バイトカウンタ404のカウント値の分だけ読み飛ばす処理を行う。
[第一の実施形態:動作]
図6は、本発明の第一の実施形態に係る、ビデオサーバ102による動画データ配信処理の動作の流れを示すフローチャートである。
コンソール106あるいはデコーダ104から再生するコンテンツ名の指示を受けると(S601)、配信制御部403は最初にインデックステーブル406を参照して、第一ストレージ204に格納されている動画先頭ファイル302のファイル名と、第二ストレージ214に格納されている動画ファイル301のファイル名を特定する(S602)。そして、切替スイッチ402を第一ストレージ204側に設定する(S603)。
図6は、本発明の第一の実施形態に係る、ビデオサーバ102による動画データ配信処理の動作の流れを示すフローチャートである。
コンソール106あるいはデコーダ104から再生するコンテンツ名の指示を受けると(S601)、配信制御部403は最初にインデックステーブル406を参照して、第一ストレージ204に格納されている動画先頭ファイル302のファイル名と、第二ストレージ214に格納されている動画ファイル301のファイル名を特定する(S602)。そして、切替スイッチ402を第一ストレージ204側に設定する(S603)。
次に、配信制御部403は第一ストレージ204に動画先頭ファイル302のファイル名を指定した読み出し指令を発行する(S604)。そして、配信制御部403は第一バイトカウンタ404及び第二バイトカウンタ405を起動して、第一ストレージ204から送出される動画先頭ファイル302のデータ量を計数する(S605)。更に、配信制御部403は第二ストレージ214に動画ファイル301のファイル名を指定した読み出し指令を発行する(S606)。
なお、ステップS604、S605及びS606は略同時に実行するので、この順番は前後してもよい。
なお、ステップS604、S605及びS606は略同時に実行するので、この順番は前後してもよい。
次に、配信制御部403は先読みバッファ401の状態をチェックする。第一ストレージ204から動画先頭ファイル302が読み出された時点から、第二ストレージ214のタイムラグを経過した後、先読みバッファ401には第二ストレージ214から読み出された動画ファイル301のデータが蓄積される。そこで配信制御部403は、先読みバッファ401に蓄積されている、デコーダ104へ送出すべきデータのデータ量が、デコーダ104が要求する最小限のデータ量に達するまで監視する(S607のNO)。具体的には、第二バイトカウンタ405のカウント値から第一バイトカウンタ404のカウント値を減算した値が、デコーダ104が要求する最小限のデータ量に達したか否かを判定する。
先読みバッファ401に蓄積されている、デコーダ104へ送出すべきデータのデータ量が、デコーダ104が要求する最小限のデータ量に達したら(S607のYES)、配信制御部403は切替スイッチ402を先読みバッファ401側に設定する(S608)。そして、先読みバッファ401内に蓄積されているデータを読み出して、切替スイッチ402を通じてデコーダ104へ出力する(S609)。続いて、配信制御部403は動画ファイル301の終端に至るまでデータの読み出し動作を継続し(S610のNO)、先読みバッファ401から読み出すデータが動画ファイル301の終端に至ったら(S610のYES)、一連の動作を終了する(S611)。
先読みバッファ401に蓄積されている、デコーダ104へ送出すべきデータのデータ量が、デコーダ104が要求する最小限のデータ量に達したら(S607のYES)、配信制御部403は切替スイッチ402を先読みバッファ401側に設定する(S608)。そして、先読みバッファ401内に蓄積されているデータを読み出して、切替スイッチ402を通じてデコーダ104へ出力する(S609)。続いて、配信制御部403は動画ファイル301の終端に至るまでデータの読み出し動作を継続し(S610のNO)、先読みバッファ401から読み出すデータが動画ファイル301の終端に至ったら(S610のYES)、一連の動作を終了する(S611)。
図7A及びBは、動画ファイル301及び動画先頭ファイル302と先読みバッファ401の関係及び状態を示す模式図である。
図7Aは、先読みバッファ401に動画ファイル301から読み出されたデータの蓄積が開始された直後の状態を示す模式図である。
図7Bは、先読みバッファ401に動画ファイル301から読み出されたデータの蓄積が図7Aの状態よりも進行して、所定時間が経過した状態を示す模式図である。
図7Aは、先読みバッファ401に動画ファイル301から読み出されたデータの蓄積が開始された直後の状態を示す模式図である。
図7Bは、先読みバッファ401に動画ファイル301から読み出されたデータの蓄積が図7Aの状態よりも進行して、所定時間が経過した状態を示す模式図である。
図7Aにおいて、動画先頭ファイル302はその先頭位置から位置P701までが読み出されて、デコーダ104に送出される。位置P701は第一バイトカウンタ404のカウント値と対応している。
一方、先読みバッファ401には動画ファイル301の先頭位置から位置P702までが読み出されて、先読みバッファ401内に蓄積される。位置P702は第二バイトカウンタ405のカウント値と対応している。
図7Aに示すように、位置P702が示すデータ量は、位置P701が示すデータ量より少ない。そして、位置P702まで蓄積されているデータは、既に動画先頭ファイル302から読み出されたデータである。つまり、第二バイトカウンタ405のカウント値(P702相当)から第一バイトカウンタ404のカウント値(P701相当)を減算すると、負の値になってしまう。このため、この時点で切替スイッチ402を先読みバッファ401側に切り替えても、本来読み出すべき位置P701以降のデータが先読みバッファ401に蓄積されていないので、動画ファイル301のデータを正しく送出できない。
したがって、図7Aの時点では切替スイッチ402を先読みバッファ401側に切り替えてはならず、先読みバッファ401に更なるデータの蓄積を待つ必要がある。
一方、先読みバッファ401には動画ファイル301の先頭位置から位置P702までが読み出されて、先読みバッファ401内に蓄積される。位置P702は第二バイトカウンタ405のカウント値と対応している。
図7Aに示すように、位置P702が示すデータ量は、位置P701が示すデータ量より少ない。そして、位置P702まで蓄積されているデータは、既に動画先頭ファイル302から読み出されたデータである。つまり、第二バイトカウンタ405のカウント値(P702相当)から第一バイトカウンタ404のカウント値(P701相当)を減算すると、負の値になってしまう。このため、この時点で切替スイッチ402を先読みバッファ401側に切り替えても、本来読み出すべき位置P701以降のデータが先読みバッファ401に蓄積されていないので、動画ファイル301のデータを正しく送出できない。
したがって、図7Aの時点では切替スイッチ402を先読みバッファ401側に切り替えてはならず、先読みバッファ401に更なるデータの蓄積を待つ必要がある。
図7Bにおいて、動画先頭ファイル302はその先頭位置から位置P703までが読み出されて、デコーダ104に送出されている。位置P703は第一バイトカウンタ404のカウント値と対応している。
一方、先読みバッファ401には動画ファイル301の先頭位置から位置P704までが読み飛ばされ、位置P704から位置P706までが読み出されて、先読みバッファ401内に蓄積されている。そして、位置P704から位置P705までのデータは既に動画先頭ファイル302から読み出されたデータと重複している。位置P706は第二バイトカウンタ405のカウント値と対応している。
図7Bに示すように、位置P704から位置P706までに蓄積されているデータのうち、位置P705から位置P706までに蓄積されているデータは、未だ動画先頭ファイル302から読み出されていないデータである。つまり、第二バイトカウンタ405のカウント値(P706相当)から第一バイトカウンタ404のカウント値(P703相当)を減算すると、正の値になる。したがって、この時点で切替スイッチ402を先読みバッファ401側に切り替えて、先読みバッファ401の位置P705から読み出すことで、動画先頭ファイル302から読み出していたデータと、先読みバッファ401内のデータとをシームレスに結合して、動画ファイル301のデータを正しく送出できる。
なお、配信制御部403は、先読みバッファ401に格納されている有効なデータの先頭位置である位置P704を管理する必要がある。
一方、先読みバッファ401には動画ファイル301の先頭位置から位置P704までが読み飛ばされ、位置P704から位置P706までが読み出されて、先読みバッファ401内に蓄積されている。そして、位置P704から位置P705までのデータは既に動画先頭ファイル302から読み出されたデータと重複している。位置P706は第二バイトカウンタ405のカウント値と対応している。
図7Bに示すように、位置P704から位置P706までに蓄積されているデータのうち、位置P705から位置P706までに蓄積されているデータは、未だ動画先頭ファイル302から読み出されていないデータである。つまり、第二バイトカウンタ405のカウント値(P706相当)から第一バイトカウンタ404のカウント値(P703相当)を減算すると、正の値になる。したがって、この時点で切替スイッチ402を先読みバッファ401側に切り替えて、先読みバッファ401の位置P705から読み出すことで、動画先頭ファイル302から読み出していたデータと、先読みバッファ401内のデータとをシームレスに結合して、動画ファイル301のデータを正しく送出できる。
なお、配信制御部403は、先読みバッファ401に格納されている有効なデータの先頭位置である位置P704を管理する必要がある。
図7A及び図7Bに示すように、先読みバッファ401が最低限備える必要がある記憶容量は、動画先頭ファイル302のデータ量と比較して必ずしも大きくする必要はない。切替スイッチ402に後続するデコーダ104が必要とする最低限のデータ量に、若干のマージン(余裕)を上乗せする程度の記憶容量があればよい。
以上説明した実施形態において、第二ストレージ214と先読みバッファ401との間、また切替スイッチ402とデコーダ104との間におけるデータ転送は、周知のフロー制御にて所定のブロック単位で行われる。例えば、先読みバッファ401にデータを記憶する際には、所定のブロックに相当する空き容量が確保できた時点で、第二ストレージ214に対して所定のブロックのデータ転送を要求する。
[第二の実施形態:ビデオサーバ102とネットワークストレージ103のソフトウェア構成]
次に、先に説明したフロー制御を活用することで、データ転送処理を簡略化する手法について説明する。
図8は、本発明の第二の実施形態に係る、ビデオサーバ102とネットワークストレージ103の、ソフトウェアの機能を示すブロック図である。
図8の、図4に示すブロック図との相違点は、第二バイトカウンタ405がない点である。
次に、先に説明したフロー制御を活用することで、データ転送処理を簡略化する手法について説明する。
図8は、本発明の第二の実施形態に係る、ビデオサーバ102とネットワークストレージ103の、ソフトウェアの機能を示すブロック図である。
図8の、図4に示すブロック図との相違点は、第二バイトカウンタ405がない点である。
図9は、本発明の第二の実施形態に係る、ビデオサーバ102による動画データ配信処理の動作の流れを示すフローチャートである。
図9のフローチャートのステップS901は、図6のフローチャートのステップS601に、ステップS902は、ステップS602に、ステップS903は、ステップS603に、以下同様に最後のステップS911は、ステップS611に、それぞれ一対一に対応する。
図9に示すフローチャートの、図6のフローチャートとの相違点を、以下に列挙する。
・ステップS905において起動するバイトカウンタが第一バイトカウンタ404だけであること。
・ステップS906において、動画ファイル301の、動画先頭ファイル302に相当する部分を飛ばした後の位置から読み出す、読み出し指令を発行すること。
・ステップS907において、配信制御部803は動画先頭ファイル302を全部読みだしたか否かをチェックすること。
・ステップS909において、配信制御部803は先読みバッファ401内のデータを先頭から読み出すこと。
図9のフローチャートのステップS901は、図6のフローチャートのステップS601に、ステップS902は、ステップS602に、ステップS903は、ステップS603に、以下同様に最後のステップS911は、ステップS611に、それぞれ一対一に対応する。
図9に示すフローチャートの、図6のフローチャートとの相違点を、以下に列挙する。
・ステップS905において起動するバイトカウンタが第一バイトカウンタ404だけであること。
・ステップS906において、動画ファイル301の、動画先頭ファイル302に相当する部分を飛ばした後の位置から読み出す、読み出し指令を発行すること。
・ステップS907において、配信制御部803は動画先頭ファイル302を全部読みだしたか否かをチェックすること。
・ステップS909において、配信制御部803は先読みバッファ401内のデータを先頭から読み出すこと。
図10は、動画ファイル301及び動画先頭ファイル302と先読みバッファ401の関係を示す模式図である。
先読みバッファ401には、動画ファイル301のうち、動画先頭ファイル302に相当する部分を飛ばした後の位置P901から、先読みバッファ401の記憶容量に相当する位置P902までのデータを記憶しておく。フロー制御が有効に作用しているので、先読みバッファ401に対する読み出しが行われて、先読みバッファ401に空き容量が生じるまでは、動画ファイル301からデータの読み出しは一時停止される。
このように、動画先頭ファイル302を全て第一ストレージ204から読み出すように処理を行うことで、第二バイトカウンタ405を省略できる。
また、第一バイトカウンタ404は動画先頭ファイル302の読み出しを完遂したか否かをチェックするためだけに存在することとなる。
先読みバッファ401には、動画ファイル301のうち、動画先頭ファイル302に相当する部分を飛ばした後の位置P901から、先読みバッファ401の記憶容量に相当する位置P902までのデータを記憶しておく。フロー制御が有効に作用しているので、先読みバッファ401に対する読み出しが行われて、先読みバッファ401に空き容量が生じるまでは、動画ファイル301からデータの読み出しは一時停止される。
このように、動画先頭ファイル302を全て第一ストレージ204から読み出すように処理を行うことで、第二バイトカウンタ405を省略できる。
また、第一バイトカウンタ404は動画先頭ファイル302の読み出しを完遂したか否かをチェックするためだけに存在することとなる。
[第三の実施形態:ビデオサーバ102とネットワークストレージ103のソフトウェア構成]
第一の実施形態と第二の実施形態では、動画像データをデコーダ104へ送出する処理について説明した。
これより説明する第三の実施形態では、動画像データをデコーダ104へ送出するために必要な、動画ファイル301と動画先頭ファイル302を作成し、そしてインデックステーブル406を更新する処理について説明する。
図11は、本発明の第三の実施形態に係る、ビデオサーバ102とネットワークストレージ103の、ソフトウェアの機能を示すブロック図である。
無圧縮の動画像データあるいはアナログの動画像信号は、エンコーダ107によって所定のエンコード処理や圧縮処理を施された動画像データに変換されて、蓄積制御部1103に供給される。また、予めエンコード処理及び圧縮処理された動画像データが直接、蓄積制御部1103に供給されることもある。
蓄積制御部1103は、エンコーダ107や種々の動画像データ提供元から受信した動画像データを、一旦第二ストレージ214に動画ファイル301として蓄積する。
次に、蓄積制御部1103は、第二ストレージ214内に形成した動画ファイル301の先頭部分を読み出して、第一ストレージ204に動画先頭ファイル302として蓄積する。
最後に蓄積制御部1103は、コンソール106を通じて操作者によるコンテンツ名の入力を受けて、インデックステーブル406に新たなレコードを作成し、動画ファイル301のファイル名と、動画先頭ファイル302のファイル名と、コンテンツ名を新たなレコードに登録する。
第一の実施形態と第二の実施形態では、動画像データをデコーダ104へ送出する処理について説明した。
これより説明する第三の実施形態では、動画像データをデコーダ104へ送出するために必要な、動画ファイル301と動画先頭ファイル302を作成し、そしてインデックステーブル406を更新する処理について説明する。
図11は、本発明の第三の実施形態に係る、ビデオサーバ102とネットワークストレージ103の、ソフトウェアの機能を示すブロック図である。
無圧縮の動画像データあるいはアナログの動画像信号は、エンコーダ107によって所定のエンコード処理や圧縮処理を施された動画像データに変換されて、蓄積制御部1103に供給される。また、予めエンコード処理及び圧縮処理された動画像データが直接、蓄積制御部1103に供給されることもある。
蓄積制御部1103は、エンコーダ107や種々の動画像データ提供元から受信した動画像データを、一旦第二ストレージ214に動画ファイル301として蓄積する。
次に、蓄積制御部1103は、第二ストレージ214内に形成した動画ファイル301の先頭部分を読み出して、第一ストレージ204に動画先頭ファイル302として蓄積する。
最後に蓄積制御部1103は、コンソール106を通じて操作者によるコンテンツ名の入力を受けて、インデックステーブル406に新たなレコードを作成し、動画ファイル301のファイル名と、動画先頭ファイル302のファイル名と、コンテンツ名を新たなレコードに登録する。
以上説明した第一、第二及び第三の実施形態には、以下に記す応用例が可能である。
(1)第二ストレージ214はネットワークストレージ103として構成したが、ビデオサーバ102に内蔵してもよい。この場合、ネットワークストレージ103は不要になり、ビデオサーバ102のバス206には第一ストレージ204と第二ストレージ214が接続されることとなる。そしてこの場合、ビデオサーバ102は単体で映像配信装置を構成する。
また、デコーダ104やスイッチャ105をビデオサーバ102に内蔵させることもできる。
(1)第二ストレージ214はネットワークストレージ103として構成したが、ビデオサーバ102に内蔵してもよい。この場合、ネットワークストレージ103は不要になり、ビデオサーバ102のバス206には第一ストレージ204と第二ストレージ214が接続されることとなる。そしてこの場合、ビデオサーバ102は単体で映像配信装置を構成する。
また、デコーダ104やスイッチャ105をビデオサーバ102に内蔵させることもできる。
(2)コマーシャルや静止画テロップ等、極めて再生時間が短いコンテンツの場合、動画ファイル301を持たず、動画先頭ファイル302だけで構成する場合もある。この場合、インデックステーブル406の該当するレコードの動画ファイル名フィールドは空(NULL)となる。このようなコンテンツを扱うと、コンテンツの実体を表す名称として「動画先頭ファイル」という名称は正確ではなくなる。すなわち、第一ストレージに格納される、本実施形態に直接的に関係するファイルは、長時間の動画ファイルの先頭部分である動画先頭ファイルと、短時間の動画ファイルと、静止画像ファイルと、インデックステーブル406である。
(3)インデックステーブル406を格納する場所は、必ずしも第一ストレージ204である必要はない。RAM等にキャッシュできる程度の情報量であれば、第二ストレージに置いてもよい。
本実施形態では、ビデオサーバシステム101を開示した。
第一ストレージ204はSSD等の静的記憶装置なので、RAM203と略同等のレスポンスにて、瞬時に動画先頭ファイル302の読み出しが始まる。しかし、第二ストレージ214はHDD等の動的記憶装置なので、読み出し指令を発行してから動画ファイル301の読み出しが始まるまでにタイムラグが生じる。そこで、第二ストレージ214のタイムラグを解消するために、第一ストレージ204に動画先頭ファイル302を格納しておき、コンソール106あるいはデコーダ104から読み出し指令が来たら、最初は第一ストレージ204から動画先頭ファイル302を読み出してデコーダ104に送出する。そして、先読みバッファ401に第二ストレージ214から読み出された動画ファイル301のデータが溜まったことを確認したら、切替スイッチ402を制御して、先読みバッファ401から動画ファイル301のデータを読み出してデコーダ104に送出する。
こうすることで、低価格で大容量なHDD等の第二ストレージ214を利用しつつ、第二ストレージ214のタイムラグを第一ストレージ204の良好なレスポンスで補い、使い勝手と低価格を両立したビデオサーバシステム101を実現できる。
第一ストレージ204はSSD等の静的記憶装置なので、RAM203と略同等のレスポンスにて、瞬時に動画先頭ファイル302の読み出しが始まる。しかし、第二ストレージ214はHDD等の動的記憶装置なので、読み出し指令を発行してから動画ファイル301の読み出しが始まるまでにタイムラグが生じる。そこで、第二ストレージ214のタイムラグを解消するために、第一ストレージ204に動画先頭ファイル302を格納しておき、コンソール106あるいはデコーダ104から読み出し指令が来たら、最初は第一ストレージ204から動画先頭ファイル302を読み出してデコーダ104に送出する。そして、先読みバッファ401に第二ストレージ214から読み出された動画ファイル301のデータが溜まったことを確認したら、切替スイッチ402を制御して、先読みバッファ401から動画ファイル301のデータを読み出してデコーダ104に送出する。
こうすることで、低価格で大容量なHDD等の第二ストレージ214を利用しつつ、第二ストレージ214のタイムラグを第一ストレージ204の良好なレスポンスで補い、使い勝手と低価格を両立したビデオサーバシステム101を実現できる。
以上、本発明の実施形態例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含む。
例えば、上記した実施形態例は本発明をわかりやすく説明するために装置及びシステムの構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることは可能であり、更にはある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることも可能である。
また、上記の各構成、機能、処理部等は、それらの一部又は全部を、例えば集積回路で設計するなどによりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行するためのソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の揮発性あるいは不揮発性のストレージ、または、ICカード、光ディスク等の記録媒体に保持することができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
例えば、上記した実施形態例は本発明をわかりやすく説明するために装置及びシステムの構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることは可能であり、更にはある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることも可能である。
また、上記の各構成、機能、処理部等は、それらの一部又は全部を、例えば集積回路で設計するなどによりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行するためのソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の揮発性あるいは不揮発性のストレージ、または、ICカード、光ディスク等の記録媒体に保持することができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
101…ビデオサーバシステム、102…ビデオサーバ、103…ネットワークストレージ、104…デコーダ、105…スイッチャ、106…コンソール、107…エンコーダ、204…第一ストレージ、214…第二ストレージ、301…動画ファイル、302…動画先頭ファイル、401…先読みバッファ、402…切替スイッチ、403…配信制御部、404…第一バイトカウンタ、405…第二バイトカウンタ、406…インデックステーブル、803…配信制御部、1103…蓄積制御部
Claims (6)
- 動画ファイルの先頭部分よりなる動画先頭ファイルが格納される第一ストレージと、
前記動画ファイルが格納され、前記第一ストレージより記憶容量が大きく、かつ前記第一ストレージよりファイル転送要求に対する応答速度が遅い第二ストレージと、
前記動画ファイルと前記動画先頭ファイルの対応関係が記述されているインデックステーブルと、
前記第二ストレージから送出される前記動画ファイルのデータを一時的に蓄積する先読みバッファと、
上位装置から前記動画ファイルに対する再生指示を受けて、前記インデックステーブルから前記動画ファイルのファイル名と前記動画先頭ファイルのファイル名を取得し、前記第一ストレージに対して前記動画先頭ファイルの送出を指示するとともに、前記第二ストレージに対して前記動画ファイルの送出を指示し、前記先読みバッファに前記動画ファイルのデータが蓄積されるまでは前記動画先頭ファイルをデコーダに出力し、前記先読みバッファに前記動画ファイルのデータが蓄積された後は前記先読みバッファの前記データをデコーダに出力する、配信制御部と、
を具備する映像配信装置。 - 更に、
前記第一ストレージから送出される前記動画先頭ファイルのデータ量を計数する第一バイトカウンタと
を具備し、
前記配信制御部は、前記第一バイトカウンタが計数する前記データ量に対応するオフセット位置以降のデータを前記先読みバッファから読み出す、
請求項1に記載の映像配信装置。 - 更に、
前記第二ストレージから送出される前記動画ファイルのデータ量を計数する第二バイトカウンタと
を具備し、
前記配信制御部は、前記第一バイトカウンタが前記動画先頭ファイルの先頭位置から計数した前記データ量に対応する位置以降のデータが前記先読みバッファに蓄積されたことを前記第二バイトカウンタが計数した前記データ量に基づいて検出したら、前記第一バイトカウンタが計数する前記データ量に対応する位置以降のデータを前記先読みバッファから読み出す、
請求項2に記載の映像配信装置。 - 前記配信制御部は、前記第一ストレージに対して前記動画先頭ファイルの送出を指示するとともに、前記第二ストレージに対して前記動画ファイルの、前記動画先頭ファイルと重複しない部分の先頭位置以降の送出を指示し、前記第一バイトカウンタが計数する前記データ量が前記動画先頭ファイルのデータ量と一致した時に、前記先読みバッファからデータを読み出す、
請求項2に記載の映像配信装置。 - 上位装置から動画ファイルに対する再生指示を受けて、前記動画ファイルと、前記動画ファイルの先頭部分よりなる動画先頭ファイルとの対応関係が記述されているインデックステーブルを参照して、前記再生指示に該当する前記動画ファイルと前記動画先頭ファイルを特定するステップと、
前記動画先頭ファイルが格納されている第一ストレージに対して前記動画先頭ファイルの送出を指示するとともに、前記動画ファイルが格納されている第二ストレージに対して前記動画ファイルの送出を指示するステップと、
前記動画先頭ファイルのデータをデコーダに送出するとともに、前記動画ファイルのデータを先読みバッファに蓄積するステップと、
前記先読みバッファに蓄積されたデータを前記動画先頭ファイルのデータに代えて前記デコーダに送出するステップと、
を含む映像配信方法。 - 上位装置から動画ファイルに対する再生指示を受けて、前記動画ファイルと、前記動画ファイルの先頭部分よりなる動画先頭ファイルとの対応関係が記述されているインデックステーブルを参照して、前記再生指示に該当する前記動画ファイルと前記動画先頭ファイルを特定する手順と、
前記動画先頭ファイルが格納されている第一ストレージに対して前記動画先頭ファイルの送出を指示するとともに、前記動画ファイルが格納されている第二ストレージに対して前記動画ファイルの送出を指示する手順と、
前記動画先頭ファイルのデータをデコーダに送出するとともに、前記動画ファイルのデータを先読みバッファに蓄積する手順と、
前記先読みバッファに蓄積されたデータを前記動画先頭ファイルのデータに代えて前記デコーダに送出する手順と、
をコンピュータに実行させる、映像配信プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013043809A JP2014175687A (ja) | 2013-03-06 | 2013-03-06 | 映像配信装置、映像配信方法及び映像配信プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013043809A JP2014175687A (ja) | 2013-03-06 | 2013-03-06 | 映像配信装置、映像配信方法及び映像配信プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014175687A true JP2014175687A (ja) | 2014-09-22 |
Family
ID=51696559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013043809A Pending JP2014175687A (ja) | 2013-03-06 | 2013-03-06 | 映像配信装置、映像配信方法及び映像配信プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014175687A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017069708A (ja) * | 2015-09-29 | 2017-04-06 | 富士通株式会社 | 動画像再生装置、動画像配信サーバ、動画像再生方法、動画像配信方法、動画像再生プログラム、及び動画像配信プログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH089335A (ja) * | 1994-06-21 | 1996-01-12 | Sony Corp | 多チャンネル映像再生装置 |
JP2000115715A (ja) * | 1998-09-30 | 2000-04-21 | Telecommunication Advancement Organization Of Japan | 映像音声情報提供システム |
JP2007257718A (ja) * | 2006-03-22 | 2007-10-04 | Mitsubishi Electric Corp | 映像情報処理装置 |
-
2013
- 2013-03-06 JP JP2013043809A patent/JP2014175687A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH089335A (ja) * | 1994-06-21 | 1996-01-12 | Sony Corp | 多チャンネル映像再生装置 |
JP2000115715A (ja) * | 1998-09-30 | 2000-04-21 | Telecommunication Advancement Organization Of Japan | 映像音声情報提供システム |
JP2007257718A (ja) * | 2006-03-22 | 2007-10-04 | Mitsubishi Electric Corp | 映像情報処理装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017069708A (ja) * | 2015-09-29 | 2017-04-06 | 富士通株式会社 | 動画像再生装置、動画像配信サーバ、動画像再生方法、動画像配信方法、動画像再生プログラム、及び動画像配信プログラム |
US10631060B2 (en) | 2015-09-29 | 2020-04-21 | Run.Edge Limited | Video image reproduction device, video image distribution server, method of reproducing video image and method of distributing video image |
US10631058B2 (en) | 2015-09-29 | 2020-04-21 | Run.Edge Limited | Video image reproduction device, video image distribution server, method of reproducing video image and method of distributing video image |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20100319044A1 (en) | Efficient Distribution of Remote Storage Data | |
EP1887575B1 (en) | Digital video recorder having hierarchical memories and method for implementing hierarchical memories | |
CN100389610C (zh) | 重放设备 | |
EP1239674A2 (en) | Method and apparatus for recording broadcast data | |
JP4127969B2 (ja) | Mpegストリームの早送り早巻き戻しアルゴリズム | |
JP2009205719A (ja) | データをテープ媒体に書き込む装置及び方法 | |
JP5472947B2 (ja) | ビデオサーバ装置及びそのリビルド処理制御方法 | |
US6415095B1 (en) | Data recording/playback apparatus, data editing apparatus and data recording method | |
JP4265019B2 (ja) | データ蓄積装置および方法、ならびに、データ送出装置および方法 | |
US7924456B1 (en) | Data distribution and buffering | |
US8416658B2 (en) | Recording apparatus and recording method for data and file system information | |
JP2001111937A (ja) | データ記録・再生装置、映像データの記録・再生方法、ディスクドライブユニットおよびデータ記録・再生装置の制御ユニット | |
JP2014175687A (ja) | 映像配信装置、映像配信方法及び映像配信プログラム | |
JP5230083B2 (ja) | Avデコーダ中のメモリアクセスを管理するための方法および装置 | |
US20040250039A1 (en) | System and method for using swappable storage for high data content multi-source data storage | |
JP4253913B2 (ja) | 編集装置、データ記録再生装置及び編集素材記録方法 | |
US7451281B2 (en) | System and method for using swappable storage for storing program data | |
JP2011175717A (ja) | コンテンツ記録処理システム | |
JP3747904B2 (ja) | Avサーバーに蓄積されたavデータの参照システム及び方法 | |
JP4269403B2 (ja) | データ記録再生装置及びタイムスロットの使用方法 | |
Mori et al. | Playback techniques for a video-on-demand system using an optical mass storage system | |
JP4174906B2 (ja) | 記録再生装置及び信号入力方法 | |
JP2000149425A (ja) | ディスク装置及び受信装置 | |
JP2009267828A (ja) | 映像再生装置 | |
JP2007504589A (ja) | ビデオ信号及び少なくとも1つの付加的な情報信号を担持する記録担体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150109 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160105 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160809 |