JP5825279B2 - 端末装置及びプログラム - Google Patents

端末装置及びプログラム Download PDF

Info

Publication number
JP5825279B2
JP5825279B2 JP2013037494A JP2013037494A JP5825279B2 JP 5825279 B2 JP5825279 B2 JP 5825279B2 JP 2013037494 A JP2013037494 A JP 2013037494A JP 2013037494 A JP2013037494 A JP 2013037494A JP 5825279 B2 JP5825279 B2 JP 5825279B2
Authority
JP
Japan
Prior art keywords
moving image
image data
data
resolution
display range
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
JP2013037494A
Other languages
English (en)
Other versions
JP2014165839A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2013037494A priority Critical patent/JP5825279B2/ja
Priority to PCT/JP2014/054296 priority patent/WO2014132911A1/ja
Priority to EP14757155.8A priority patent/EP2963920A1/en
Publication of JP2014165839A publication Critical patent/JP2014165839A/ja
Priority to US14/835,855 priority patent/US20150373296A1/en
Application granted granted Critical
Publication of JP5825279B2 publication Critical patent/JP5825279B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2743Video hosting of uploaded data from client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera

Description

本発明は、動画を表示させる端末装置の技術分野に関する。
従来、インターネットを介してサーバにアップロードされた動画データを、端末装置からの配信要求に応じてストリーミング配信する動画投稿サイトが知られている。動画投稿サイトからストリーミング配信された動画データは、例えば、端末装置のブラウザのウインドウ画面に表示される。このとき、ウインドウ画面には、ストリーミング配信された動画データに関連する動画データ中の代表となる静止画が表示される場合がある。この静止画により、ストリーミング配信された動画データに関連する動画データを端末装置のユーザに推奨することができる。
一方、特許文献1には、動画データの特定のシーンを他のユーザに推奨するために、ユーザが動画データの再生位置などを示す編集データを他のユーザへメールで配信するシステムが開示されている。これにより、編集データを作成したユーザは、迅速に他のユーザに動画データ中の特定のシーンを見せることができる。
特開2009−124516号公報
ところで、例えばパノラマ動画などの動画に対して疑似的なカメラワークがユーザにより行われる場合がある。疑似的なカメラワークでは、例えば、仮想的なカメラの向きや視界の広さなどを操作部から指示することで、動画を構成する複数の画像フレームにおける表示範囲が指定される。近年、疑似的なカメラワークを示すカメラワークデータをサーバにアップロードして他のユーザに提供したいというニーズがある。この場合、例えば端末装置で表示中の動画に対して他のユーザにより行われた疑似的なカメラワークを端末装置のユーザに推奨することが想定される。しかしながら、疑似的なカメラワークは、動画を構成する複数の画像フレームにおける時系列的な表示範囲の動きに特徴がある。そのため、従来のように静止画によって、疑似的なカメラワークの特徴をユーザに分かり易く伝えることは困難である。また、疑似的なカメラワークの特徴は、特許文献1に開示された技術を適用した場合であっても、ユーザに分かり易く伝えることは困難である。
本発明は、以上の点に鑑みてなされたものであり、他のユーザにより行われた疑似的なカメラワークの特徴を端末装置のユーザに、より分かり易く伝えることが可能な端末装置及びプログラムを提供する。
上記課題を解決するために、請求項1に記載のプログラムの発明は、第1解像度の動画データと、前記第1解像度より高い第2解像度の動画データと、を記憶する配信装置にアクセス可能なコンピュータに所定の処理を実行させるプログラムであって、前記第2解像度の動画データは、前記第2解像度の動画データを構成する画像フレームを分割した分割画像フレームから構成される複数の分割動画データにより構成され、前記プログラムは、前記複数の分割動画データの中から、取得対象となる少なくとも1つの前記分割動画データを前記配信装置へ要求する要求ステップと、前記配信装置から配信された前記第1解像度の動画データと、前記要求ステップにより要求された前記分割動画データとを少なくとも受信する受信ステップと、前記第1解像度の動画データにより再生される第1全体動画を構成する画像フレーム内で、表示手段により表示される表示範囲が前記第1全体動画の再生位置に応じて変化可能な第1可変動画を、1表示範囲に従って、前記表示手段のメイン画面に表示させ、且つ、前記第1可変動画の少なくとも一部分の位置に、前記一部分の位置に対応する分割動画であって前記受信ステップにより受信された前記分割動画データにより再生される前記分割動画を表示させる第1表示ステップと、前記第1解像度の動画データと同一の又は対応する動画データにより再生される第2全体動画を構成する画像フレーム内で、前記表示手段により表示される表示範囲が前記第2全体動画の再生位置に応じて変化可能な第2可変動画であって、前記メイン画面に表示される候補となる前記第2可変動画の前記第2全体動画における第2表示範囲を示す表示範囲情報を所定の記憶装置から取得する取得ステップと、前記第1解像度の動画データと同一の又は対応する動画データにより再生される第2全体動画を構成する画像フレームにおいて前記取得ステップにより取得された前記表示範囲情報が示す前記第2表示範囲に従って、前記表示手段のサブ画面に前記第2可変動画を表示させる第2表示ステップと、を前記コンピュータに実行させることを特徴とする。
請求項2に記載の発明は、請求項1に記載のプログラムにおいて、前記受信ステップは、前記配信装置からストリーミング配信された、前記第1解像度の動画データと同一の又は対応する動画データを受信し、前記取得ステップは、前記受信ステップにより受信された前記動画データにより再生される前記第2全体動画の再生位置から所定時間範囲内に含まれる画像フレームにおける前記第2表示範囲を示す表示範囲情報を所定の記憶装置から取得し、前記第2表示ステップは、前記受信ステップによりストリーミングで前記動画データを受信しながら、前記取得ステップにより取得された前記表示範囲情報が示す前記第2表示範囲に従って、前記サブ画面に前記第2可変動画を表示させることを特徴とする。
請求項3に記載の発明は、請求項1又は2に記載のプログラムにおいて、前記第1表示ステップは、前記サブ画面に表示中の前記第2可変動画の選択指示に応じて、前記メイン画面に表示中の前記第1可変動画を、前記選択指示された前記第2可変動画に切換表示させることを特徴とする。
請求項に記載の発明は、第1解像度の動画データと、前記第1解像度より高い第2解像度の動画データと、を記憶する配信装置にアクセス可能な端末装置であって、前記第2解像度の動画データは、前記第2解像度の動画データを構成する画像フレームを分割した分割画像フレームから構成される複数の分割動画データにより構成され、前記複数の分割動画データの中から、取得対象となる少なくとも1つの前記分割動画データを前記配信装置へ要求する要求手段と、前記配信装置から配信された前記第1解像度の動画データと、前記要求手段により要求された前記分割動画データとを少なくとも受信する受信手段と、前記第1解像度の動画データにより再生される第1全体動画を構成する画像フレーム内で、表示手段により表示される表示範囲が前記第1全体動画の再生位置に応じて変化可能な第1可変動画を、1表示範囲に従って、前記表示手段のメイン画面に表示させ、且つ、前記第1可変動画の少なくとも一部分の位置に、前記一部分の位置に対応する分割動画であって前記受信手段により受信された前記分割動画データにより再生される動画を表示させる第1表示手段と、前記第1解像度の動画データと同一の又は対応する動画データにより再生される第2全体動画を構成する画像フレーム内で、前記表示手段により表示される表示範囲が前記第2全体動画の再生位置に応じて変化可能な第2可変動画であって、前記メイン画面に表示される候補となる前記第2可変動画の前記第2全体動画における第2表示範囲を示す表示範囲情報を所定の記憶装置から取得する取得手段と、前記第1解像度の動画データと同一の又は対応する動画データにより再生される第2全体動画を構成する画像フレームにおいて前記取得手段により取得された前記表示範囲情報が示す前記第2表示範囲に従って、前記表示手段のサブ画面に前記第2可変動画を表示させる第2表示手段と、を備えることを特徴とする。
請求項1、に記載の発明によれば、動画に対して他のユーザにより行われた疑似的なカメラワークの特徴を、第2の表示範囲に従ってサブ画面に表示される動画により、端末装置のユーザに、より分かり易く伝えることができ、低解像度の動画の一部分だけ高解像度の動画を表示させることができるので、端末装置の性能に応じて低解像度と高解像度の動画を柔軟にメイン画面に表示することができる
請求項2に記載の発明によれば、端末装置において、ストリーミングで動画データを受信しながら、他のユーザにより行われた疑似的なカメラワークの特徴を、第2の表示範囲に従ってサブ画面に表示される動画により、端末装置のユーザに、より分かり易く伝えることができる。
請求項3に記載の発明によれば、サブ画面に表示中の第2の動画の選択指示に応じて、選択指示された第2の動画に対する疑似的なカメラワークを、より分り易くユーザに伝えることができる。
本実施形態の通信システムSの概要構成例を示す図である。 各レイヤの動画を構成する1画像フレームを示す図である。 メイン画面及びサブ画面の一例を示す図である。 (A)〜(C)は、仮想スクリーンの例と、仮想スクリーンに対する表示範囲の例とを示す図である。 (A)〜(C)は、制御部21により生成されたカメラワークデータの一例である。 クライアント2の制御部21におけるメイン処理を示すフローチャートである。 (A)は、クライアント2の制御部21におけるダウンロード処理を示すフローチャートである。(B)は、データ群優先順決定処理により生成された取得対象リストの内容の一例を示す図である。 クライアント2の制御部21におけるデータ群優先順決定処理を示すフローチャートである。 (A)は、レイヤ1の画像フレームにおける描画領域を示す図である。(B)は、レイヤ2の分割画像フレームにおける描画領域を示す図である。(C),(D)は、レイヤ1及びレイヤ2にける動画ストリームにおいて、取得対象候補となる動画データ群が決定される様子を示す図である。 クライアント2の制御部21における再生処理を示すフローチャートである。 (A),(B)は、クライアント2の制御部21における画面描画処理を示すフローチャートである。 (A)は、配信サーバ1の制御部11におけるワークファイル登録処理を示すフローチャートである。(B)は、配信サーバ1の制御部11におけるカメラワークデータ要求受信処理を示すフローチャートである。
以下、本発明の実施形態を図面に基づいて説明する。
[1.通信システムSの構成及び動作概要]
始めに、図1等を参照して、本実施形態の通信システムの構成及び動作概要について説明する。図1は、本実施形態の通信システムSの概要構成例を示す図である。図1に示すように、通信システムSは、配信サーバ1、及び複数のクライアント2を含んで構成される。配信サーバ1は、本発明の情報処理装置の一例である。クライアント2は、本発明の端末装置の一例である。また、配信サーバ1とクライアント2とはネットワークNWを介して通信可能になっている。ネットワークNWは、例えば、インターネット等により構成される。
配信サーバ1は、例えばクライアント2からのコンテンツ、またはコンテンツのカメラワークデータのアップロードを受け付ける。配信サーバ1は、例えばクライアント2からのコンテンツ要求に応じて、コンテンツをクライアント2へ送信する。コンテンツは、動画データを含む。本実施形態では、動画データは、動画を構成する画像フレーム内で、表示手段により表示される表示範囲が、動画の再生位置に応じて変化可能である。このような動画データの一例として、例えばパノラマ動画がある。パノラマ動画は、例えば高解像度のカメラで、且つ広範囲を撮影可能なレンズを搭載するカメラにより被写体が撮影された動画である。広範囲を撮影可能なレンズには、ワイドレンズ、魚眼レンズ、360レンズ等がある。再生位置とは、動画データの再生開始からの経過時間である。なお、コンテンツは、音声データを含んでもよい。コンテンツの送信は、例えば、ネットワークNWを介してストリーミング配信により行われる。クライアント2は、配信サーバ1からストリーミング配信されたコンテンツを受信する。また、動画データは、カメラにより撮影された動画であれば良い。
また、配信サーバ1は、例えばクライアント2からカメラワークデータのリクエストに応じて、コンテンツのカメラワークデータをクライアント2へ送信する。カメラワークデータは、動画データの再生位置ごと、動画を構成する各画像フレーム内で表示手段により表示される表示範囲を示す情報である。なお、カメラワークデータは、表示範囲情報の一例である。この表示範囲は、1画像フレームのうち表示手段の画面に描画される描画領域に相当する。言い換えれば、表示範囲は、カメラなどにより撮影された画像フレームから切り出される範囲である。このような表示範囲は、例えば、疑似的なカメラワーク(以下、「疑似カメラワーク」という)により指定される。例えば、動画を構成する画像フレームが三次元仮想空間に配置された仮想スクリーンに投影されるものとし、三次元仮想空間において動画を見る人物が存在すると仮定する。疑似カメラワークとは、例えば仮想スクリーンに投影された動画を見る人物の視点位置、視線方向、及び視野面積の少なくともいずれか一つを決めることをいう。言い換えれば、疑似カメラワークとは、仮想カメラの向きや視界の広さなどを決めることをいう。ここで、仮想カメラは、動画を構成する画像フレーム内の描画領域を決定する仮想的なカメラをいう。上記カメラワークデータ(以下、「疑似カメラワークデータ」という)により疑似カメラワークを再現することができる。1つの疑似カメラワークデータは、例えば、動画データの再生開始からの再生終了までの再生時間に含まれる全ての画像フレームにおける表示範囲が示されるとは限らない。つまり、1つの疑似カメラワークデータは、再生時間における一部の時間範囲に含まれる画像フレームにおける表示範囲が示される場合もある。クライアント2は、例えば、ストリーミングでコンテンツを受信しながら、取得された疑似カメラワークデータが示す表示範囲に従って、画像フレーム内の所定の描画領域を表示することで、動画が表示される。
配信サーバ1は、記憶装置3と接続可能になっている。記憶装置3は、例えばハードディスクドライブ(HDD)により構成される。記憶装置3は、配信サーバ1に備えられる。或いは、記憶装置3は、配信サーバ1とは異なるサーバに備えられてもよい。記憶装置3は、クライアント2からの要求に応じて、クライアント2へ送信されるWebページのデータが記憶される。さらに、記憶装置3には、動画データ記憶領域31a、音声データ記憶領域31b、及びワークファイル記憶領域31cが設けられている。
動画データ記憶領域31aには、複数の動画データが記憶される。動画データ記憶領域31aに記憶された動画データは、配信サーバ1にアクセス可能な複数のクライアント2間で共有することができる。音声データ記憶領域31bには、複数の音声データが記憶される。音声データ記憶領域31bに記憶された音声データは、配信サーバ1にアクセス可能な複数のクライアント間で共有することができる。
動画データ記憶領域31aに記憶された動画データは、複数のカメラにより同じ被写体が別の視点から同期して撮影された複数の動画データであってもよい。また、動画データは、複数のカメラにより異なる被写体が同期して撮影された複数の動画データであってもよい。この複数の動画データの例としては、例えば、舞台で歌唱する人物が撮影された動画データと、この舞台の裏で待機する人物が撮影された動画データと、が挙げられる。また、動画データは、解像度の異なる複数の動画データであってもよい。この場合、1つの動画データから、例えば、低解像度の動画データ、中解像度の動画データ、及び高解像度の動画データが生成される。低解像度の動画データにより低解像度の動画が再生される。中解像度の動画データにより中解像度の動画が再生される。高解像度の動画データにより高解像度の動画が再生される。ここで、低解像度の動画をレイヤ1の動画という。中解像度の動画をレイヤ2の動画という。高解像度の動画をレイヤ3の動画いう。本実施形態では、レイヤ1からレイヤ3までの3つのレイヤを例にとっているが、これに限定されるものではない。また、例えばレイヤ2の動画を構成する各画像フレームと、レイヤ3の動画を構成する各画像フレームは、それぞれ、1画像フレーム全体が複数に分割されるようになっている。
図2は、各レイヤの動画を構成する1画像フレームを示す図である。図2の例では、レイヤ1の1画像フレームあたりのピクセル数は、1M(メガ)ピクセルである。また、レイヤ2の1画像フレームあたりのピクセル数は、4Mピクセルである。また、レイヤ3の1画像フレームあたりのピクセル数は、16Mピクセルである。そして、図2の例では、レイヤ2の画像フレームは4等分に分割されている。つまり、レイヤ2の1画像フレームから、パート1から4までの4つの画像フレームが得られる。このように分割された画像フレームを、「分割画像フレーム」という。一方、レイヤ3の1画像フレームは16等分に分割されている。このように分割された1分割画像フレームあたりのピクセル数は、1Mピクセルである。つまり、図2の例では、レイヤ2及びレイヤ3それぞれの分割画像フレームのピクセル数は、レイヤ1の画像フレームのピクセル数と同一となる。また、画像フレームの分割は、動画を構成する複数の画像フレームで、且つ動画の再生位置が互いに異なる複数の画像フレームごとに行われる。そして、上述したパートごとに、複数の分割画像フレームが纏められて動画データが生成される。この動画データを、「分割動画データ」という。図2の例では、レイヤ2の動画の分割動画データは4つ生成される。つまり、レイヤ2の動画の動画データは、4つの分割動画データから構成される。一方、レイヤ3の動画の分割動画データは16つ生成される。このように生成された分割動画データは、例えば、それぞれMPEG等の所定の圧縮形式で圧縮される。一方、図2に示すレイヤ1では、画像フレームが分割されていない動画データが、所定の圧縮方式で圧縮される。なお、レイヤ1の動画の画像フレームについても、分割されるように構成してもよい。また、図2の例では、画像フレームが格子状に分割されるように構成したが、その他の形状に分割されてもよい。また、図2の例では、同じレイヤにおける各画像フレーム全体の面積が均等になるように分割されているが、不均等になるように分割されてもよい。なお、上述したパートごとの動画データの生成は、配信サーバ1により生成されてもよいし、配信サーバ1とは異なるサーバにより生成されてもよい。
次に、ワークファイル記憶領域31cには、ワークファイルがコンテンツごとに対応付けられて記憶される。ワークファイルには、例えば、コンテンツのタイトル、疑似カメラワークの特徴を示す情報、及び疑似カメラワークデータ等が格納される。ワークファイルには、例えば、このワークファイルを識別するワークIDが付与される。疑似カメラワークの特徴を示す情報には、例えば疑似カメラワークにより画面に表示される被写体やシーンの名称や説明文等が含まれる。コンテンツのタイトル及び疑似カメラワークの特徴を示す情報は、疑似カメラワークデータの検索に用いられる。ここで、シーンとは、動画上のある動作の一区切りとなる範囲を示す。このようなシーンには、例えば、歌手が歌唱するシーン、俳優が演じるシーン、又はイベントの様子を映し出すシーンなどがある。なお、ワークファイルには、コンテンツを識別するコンテンツIDが含まれてもよい。ワークファイル記憶領域31cに記憶されるワークファイルには、例えば、クライアント2からアップロードされたワークファイルも含まれる。1つのコンテンツには、複数のワークファイルが対応付けられる場合もある。例えば、あるコンテンツに対して、複数のユーザそれぞれにより行われた疑似カメラワークにより指定された表示範囲を示す疑似カメラワークデータが対応付けられる。
そして、配信サーバ1は、図1に示すように、制御部11及びインターフェース部12を備えて構成される。制御部11は、コンピュータとしてのCPU、ROM、及びRAM等により構成される。制御部11は、コンテンツの送信又は受信制御、及び疑似カメラワークデータの送信又は受信制御等を行う。制御部11は、上述したストリーミング配信において、例えば、動画データに基づき動画ストリームを動画データごとに生成する。動画ストリームは、複数の動画データ群から構成される。動画データ群は、動画データの先頭位置から終了位置までが所定の時間単位で区切られたデータである。各動画データ群には、1又は複数の画像フレームFが含まれる。また、コンテンツに音声データが含まれる場合、配信サーバ1は、音声データに基づき音声ストリームを音声データごとに生成する。音声ストリームは、複数の音声データ群から構成される。音声データ群は、音声データの先頭位置から終了位置までが所定の時間単位で区切られたデータである。そして、配信サーバ1は、生成した動画ストリームに含まれる動画データ群を順次、クライアント2へ送信する。また、配信サーバ1は、生成した音声ストリームに含まれる音声データ群を順次、クライアント2へ送信する。また、制御部11は、クライアント2から、疑似カメラワークデータのリクエストを受信したとき、リクエストに基づいて、クライアント2へ返信する疑似カメラワークデータを決定する。なお、疑似カメラワークデータの決定方法については後述する。
次に、クライアント2は、図1に示すように、制御部21、記憶部22、ビデオRAM23、映像制御部24、操作処理部25、音声制御部26、インターフェース部27、及びバス28等を備えて構成される。これらの構成要素は、バス28に接続されている。映像制御部24には、ディスプレイを備える表示部24aが接続される。ディスプレイは、表示手段の一例である。操作処理部25には、操作部25aが接続される。操作部25aには、例えば、マウス、キーボード、リモコン等がある。表示部24aと操作部25aとを兼ねるタッチパネルが適用されてもよい。制御部21は、ユーザによる操作部25aからの操作指示を、操作処理部25を介して受け付ける。ユーザは、操作部25aを用いて、上述した疑似カメラワークの操作を行うことができる。音声制御部26には、スピーカ26aが接続される。インターフェース部27は、ネットワークNWに接続される。
制御部21は、コンピュータとしてのCPU、ROM、及びRAM等により構成される。制御部21は、タイマー機能を備える。制御部21は、本発明の第1表示手段、取得手段、及び第2表示手段の一例である。記憶部22は、例えば、例えばハードディスクドライブ(HDD)により構成される。記憶部22には、OS(Operating System)、及びプレイヤーソフトウェア等が記憶されている。プレイヤーソフトウェアは、コンテンツを再生するためのプログラムである。プレイヤーソフトウェアには、本発明のプログラムが含まれる。なお、プレイヤーソフトウェアは、例えば、ネットワークNWに接続された所定のサーバからダウンロードされるようにしてもよい。或いは、プレイヤーソフトウェアは、例えば、記録媒体に記録されて記録媒体のドライブを介して読み込まれるようにしてもよい。
制御部21は、プレイヤーソフトウェアを実行することでコンテンツを再生するプレイヤーとして機能する。制御部21はプレイヤーの機能により、配信サーバ1からストリーミング配信されたコンテンツを順次取得し、コンテンツを再生させる。プレイヤーの機能により、ディスプレイには、メイン画面及びサブ画面が表示される。メイン画面及びサブ画面には、動画が表示される。メイン画面に表示される動画は、第1の動画の一例である。一方、サブ画面に表示される動画は、第1の動画と同一の動画に対応する第2の動画であって、メイン画面に表示される候補となる第2の動画の一例である。第1の動画の動画データと第2の動画の動画データとは同一であってもよいし、異なってもよい。サブ画面は、例えば、サムネイル画面として複数表示されることが望ましい。図3は、メイン画面及びサブ画面の一例を示す図である。図3の例では、1つのメイン画面MVと、5つのサブ画面SV1〜SV5とが表示されている。サブ画面の数は、例えば、ディスプレイの面積に応じて設定される。また、図3の例では、メイン画面MVに表示される動画の動画データと、サブ画面SV1〜SV5とに表示される動画の動画データは同一である。つまり、同一の動画データの再生により表示される動画である。また、図3の例では、2つのソース画面SoV1,SoV2が表示されている。ソース画面SoV1,SoV2には、それぞれの動画を構成する画像フレームF全体が表示される。ソース画面SoV1に表示中の動画と、ソース画面SoV2に表示中の動画は、例えば、異なるカメラにより異なる位置から撮影されたものである。図3の例では、ソース画面SoV1に表示中の動画の動画データが選択されている。そのため、メイン画面MV及びサブ画面SV1〜SV5に表示中の動画の動画データは、ソース画面SoV1に表示中の動画の動画データになっている。動画の動画データは、例えばユーザからのソースの選択指示に応じて、制御部21により切換可能になっている。
そして、サブ画面SV1〜SV5には、互いに異なる疑似カメラワークデータに従って、動画が表示される。そのため、動画に対して他のユーザにより行われた疑似カメラワークの特徴を、クライアント2のユーザに、より分かり易く伝えることができる。また、サブ画面SV1〜SV5に表示されている動画の再生位置は同一になっている。つまり、サブ画面SV1〜SV5に表示されている画像フレームFは同一であるが、この画像フレームFにおける表示範囲が互いに異なっている。これは、例えば仮想カメラの向きや視界の広さなどが異なることを意味する。そして、図3の例では、サブ画面SV1〜SV5の中で、サブ画面SV1に表示中の動画が選択されており、選択された動画がメイン画面MVにも表示されている。なお、ソース画面SoV1に示す表示枠100内の表示範囲の動画がサブ画面SV1及びメイン画面MVに表示されるようになっている。
制御部21は、サブ画面SV2〜SV5に表示中の何れかの動画の選択指示に応じて、メイン画面MVに表示中の動画を、選択指示された動画に切換表示させる。これにより、サブ画面SV2〜SV5に表示中の動画の選択指示に応じて、選択指示された動画に対する疑似カメラワークを、より分り易くユーザに伝えることができる。なお、サブ画面SV1〜SV5に表示される動画の動画データが異なるように構成してもよい。例えば、サブ画面SV1〜SV3に表示される動画の動画データは、ソース画面SoV1に表示される動画の動画データが適用される。一方、サブ画面SV4,SV5に表示される動画の動画データは、ソース画面SoV2に表示される動画の動画データが適用される。この場合において、例えばサブ画面SV1に表示中の動画が選択されている状態で、例えばサブ画面SV4に表示中の動画の選択指示がなされたとする。すると、メイン画面MVに表示される動画の動画データが、ソース画面SoV1に表示中の動画の動画データから、ソース画面SoV2に表示中の動画の動画データに切換えられることになる。
なお、図3の例では、1つのメイン画面がディスプレイに表示される構成を示した。しかし、複数のメイン画面がディスプレイに表示されるように構成してもよい。
制御部21におけるRAMにはバッファメモリが設けられている。バッファメモリには、例えば配信サーバ1からストリーミング配信されたコンテンツに含まれる動画データ等が一時的に保持される。また、バッファメモリには、例えば配信サーバ1から配信された疑似カメラワークデータが一時的に保持される。制御部21は、バッファメモリからビデオRAM23へ動画データを出力する。ビデオRAM23には、メイン画面MV、サブ画面SV1〜SV5、及びソース画面SoV1,SoV2の描画結果を格納するフレームバッファがRAMに設けられている。例えば、メイン画面MV、及びサブ画面SV1〜SV5のそれぞれに対応するフレームバッファの描画領域には、動画データにより再生される動画を構成する画像フレームFにおいて、それぞれの疑似カメラワークデータが示す表示範囲に対応する部分の画像データが書き込まれる。また、ソース画面SoV1,SoV2のそれぞれに対応するフレームバッファの描画領域には、動画データにより再生される動画を構成する画像フレームFに対応する画像データが書き込まれる。映像制御部24は、制御部21からの制御信号に従って、フレームバッファに書き込まれた画像データを、画面に描画することで表示させる。つまり、制御部21は、ストリーミングで動画データを受信しながら、取得した疑似カメラワークデータが示す表示範囲に従って、メイン画面MV、サブ画面SV1〜SV5、及びソース画面SoV1,SoV2に動画を表示させる。なお、メイン画面MVには、疑似カメラワークデータが示す表示範囲に従って動画が表示される代わりに、ユーザの疑似カメラワークに応じた表示範囲に従って、動画が表示される場合もある。また、メイン画面MVに動画が表示されているとき、サブ画面SV1〜SV5には、それぞれの疑似カメラワークデータが示す表示範囲に従って動画が表示される代わりに、それぞれの疑似カメラワークデータが示す表示範囲の画像(静止画)が表示されるように構成してもよい。また、例えば配信サーバ1からバッファメモリに保持されたコンテンツに音声データが含まれる場合がある。この場合、制御部21は、バッファメモリから音声データを再生して音声制御部26へ出力する。音声制御部26は、音声データからアナログ音声信号を生成し、生成したアナログ音声信号をスピーカ26aへ出力する。
また、制御部21は、ユーザの疑似カメラワークの操作により、メイン画面MVに表示中の動画を構成する画像フレームFにおける一部分の表示範囲の指示を受け付ける。例えば、制御部21は、メイン画面MVに表示中の動画を構成する画像フレームFにおいて表示される表示範囲の変更指示を受け付ける。制御部21は、この変更指示に応じて、メイン画面MVに表示される表示範囲を変更表示する。言い換えれば、ユーザは、疑似カメラワークの操作により、視点位置、視線方向及び視野面積のうち少なくとも何れか1つを変更することで、メイン画面MVに表示中の動画の表示範囲を変更させることができる。例えば、動画を構成する画像フレームFが三次元仮想空間に配置された仮想スクリーンに投影されるものとし、三次元仮想空間において動画を見る人物が存在すると仮定する。視点位置は、その人物が動画を見ている位置である。視線方向は、その人物の動画に対する視線の方向である。視野面積は、例えば、三次元仮想空間に配置された仮想スクリーン上において、その人物の視野の範囲にある領域の面積である。なお、視野面積は、その人物の視野の範囲としてもよい。そして、疑似カメラワークの操作により、仮想スクリーン上において、動画の表示範囲が決定される。つまり、仮想スクリーンから、表示範囲として決定された範囲の画像が切り出され、切り出された画像がメイン画面MVに表示される。
図4(A)〜(C)は、仮想スクリーンの例と、仮想スクリーンに対する表示範囲の例とを示す図である。図4(A)の例では、仮想スクリーンとしてスクリーンSC1が定義される。スクリーンSC1は、長方形の平面スクリーンであり、長方形の平面に動画が投影される。スクリーンSC1上の表示範囲R11は、例えば、X座標、Y座標、幅及び高さにより規定される。例えば、スクリーンSC1の左上の頂点をスクリーンSC1の座標系における原点とする。X座標及びY座標は、視点位置を定める。X座標は、表示範囲R11の左上の頂点の横方向の座標であり、Y座標は、表示範囲R11の左上の頂点の縦方向の座標である。例えば三次元仮想空間において、スクリーンSC1から所定距離離れている点を視点と仮定してもよい。例えば、視点を通り、スクリーンSC1と垂直に交わる線を、視線とする。視線とスクリーンSC1とが交わる点が、表示範囲R11の中心となる。幅及び高さは、視野面積を定める。幅及び高さは、表示範囲R11の横の長さ及び縦の長さである。視線方向は、予め定められている。
図4(B)の例では、仮想スクリーンとしてスクリーンSC2が定義される。スクリーンSC2は、円筒形のスクリーンであり、円筒の側面に動画が投影される。円筒の側面は、仮想立体面の一例である。スクリーンSC2には、例えば円筒状のパノラマ動画が投影される。パノラマ動画は、例えば、全方位映像である。パノラマ動画は、360度より視野角が狭い部分方位映像であってもよい。スクリーンSC2上の表示範囲R12は、例えば、方位角、横視野角、及び高さにより規定される。方位角は、視線方向を定める。例えば、スクリーンSC2の円筒の中心軸の中点を、視点とする。また、視点を、三次元仮想空間の座標系における原点とし、スクリーンSC2の中心軸をZ軸とする。X軸は、原点を通り、Y軸及びZ軸に垂直である。Y軸は、原点を通り、X軸及びZ軸に垂直である。方位角は、視点からの視線の方向を定める。視線は、例えば、Z軸と垂直である。方位角は、例えば、X軸と視線とがなす角度である。横視野角及び高さは、視野面積を定める。横視野角は、視線の方向を中心とした横方向の視野の範囲を示す角度である。高さは、表示範囲R12の縦の長さである。方位角、横視野角及び高さに基づいて、三次元仮想空間における視野範囲を示す四角錐が定義される。この四角錐がビューボリュームである。ビューボリュームとは、三次元仮想空間において、投影変換の対象となる範囲をいう。実際のビューボリュームは四角錐台であるが、説明の便宜上、四角錐を用いる。ビューボリュームの頂点が視点であり、ビューボリュームの底面の中心を視線が通る。ビューボリュームの側面P21〜P24のうち、Z軸と平行な側面P21と側面P22とがなす角度が横視野角である。ビューボリュームとスクリーンSC2とが交わる面の縦方向の長さが、高さである。そして、ビューボリュームとスクリーンSC2とが交わる面が、表示範囲R12である。視点位置は、予め定められている。
図4(C)の例では、仮想スクリーンとしてスクリーンSC3が定義される。スクリーンSC3は、球状のスクリーンであり、球面に動画が表示される。スクリーンSC3には、例えば球状のパノラマ動画が表示される。スクリーンSC3上の表示範囲R13は、例えば、方位角、仰俯角、横視野角、縦視野角により規定される。方位角及び仰俯角は、視線方向を定める。三次元仮想空間において、例えば、スクリーンSC3に囲まれている範囲内に、視点が位置する。例えば、スクリーンSC3の球の中心を、視点とする。また、視点を、三次元仮想空間の座標系における原点とし、縦方向の座標軸をZ軸とする。X軸は、原点を通り、Y軸及びZ軸に垂直である。Y軸は、原点を通り、X軸及びZ軸に垂直である。方位角は、例えば、XZ平面と視線とがなす角度である。仰俯角は、例えば、XY平面と視線とがなす角度である。横視野角及び縦視野角は、視野面積を定める。横視野角は、視線の方向を中心とした横方向の視野の範囲を示す角度である。縦視野角は、視線の方向を中心とした縦方向の視野の範囲を示す角度である。XY平面上の線であって、原点を通り、視線と垂直に交わる線を、視線の縦回転軸とする。原点を通り、視線と縦回転軸とのそれぞれに垂直に交わる線を、視線の横回転軸とする。方位角、仰俯角、横視野角及び縦視野角に基づいて、三次元仮想空間における視野範囲を示す四角錐が定義される。この四角錐がビューボリュームである。ビューボリュームの頂点が視点であり、ビューボリュームの底面の中心を視線が通る。ビューボリュームの側面P31〜P34のうち、Z軸と平行な側面P31と側面P32とがなす角度が横視野角である。側面P33と側面P34とがなす角度が縦視野角である。そして、ビューボリュームとスクリーンSC3とが交わる面が、表示範囲R13である。視点位置は、予め定められている。透視変換により、視点位置、視線方向及び視野面積に基づいて、仮想スクリーン上の表示範囲の三次元座標が、二次元座標に変換される。変換された二次元座標により、例えばパノラマ動画を構成する画像フレームFのうちどの部分が表示範囲内にあるかを特定することができる。方位角及び仰俯角の少なくとも何れかが変化することにより、視線方向が変化すると、視線方向に応じて表示範囲R13が変化する。また、縦視野角および横視野角の少なくとも何れかが変化することにより、視野面積が変化すると、視野面積に応じて表示範囲R13は変化する。つまり、表示範囲R13は、視線方向および視野面積に応じた範囲となる。なお、スクリーンSC3は、一般に視点を完全に覆う立体であればよく、例えば、立方体等の形状をしたスクリーンであってもよい。
なお、スクリーンSC1〜SC3のうち何れの仮想スクリーンが用いられるかは、例えば、動画データの種類に応じて、仮想スクリーンが決定されてもよい。例えば、パノラマ動画以外の動画に対しては、スクリーンSC1が決定され、円筒状のパノラマ動画に対しては、スクリーンSC2が決定され、球状のパノラマ動画に対しては、スクリーンSC3が決定されてもよい。
また、制御部21は、メイン画面MVに表示中の動画の上記表示範囲を示す疑似カメラワークデータを生成する。図5(A)〜(C)は、制御部21により生成された疑似カメラワークデータの一例である。図5(A)は、仮想スクリーンが長方形のスクリーンSC1である場合の例を示す。図5(B)は、仮想スクリーンが円筒形のスクリーンSC2である場合の例を示す。図5(C)は、仮想スクリーンが球形のスクリーンSC3である場合の例を示す。なお、図5(A)の例において、例えば、アスペクト比が16対9のように決まっている場合、幅と高さの何れか一方が決まれば他方が決まるので、疑似カメラワークデータには幅と高さの何れか一方が含まれればよい。図5(A)〜図5(C)の例では、0ミリ秒、16ミリ秒、33ミリ秒、49ミリ秒等のそれぞれの再生位置の画像フレームFにおける表示範囲を示す疑似カメラワークデータを示している。なお、16ミリ秒は、ディスプレイのリフレッシュレート(60Hz)と同程度である。
[2.通信システムSの動作]
次に、通信システムSの動作について説明する。
(2−1.クライアント2の処理)
先ず、図6〜図11を参照して、クライアント2の処理について説明する。図6は、クライアント2の制御部21におけるメイン処理を示すフローチャートである。図7(A)は、クライアント2の制御部21におけるダウンロード処理を示すフローチャートである。図8は、クライアント2の制御部21におけるデータ群優先順決定処理を示すフローチャートである。図10は、クライアント2の制御部21における再生処理を示すフローチャートである。図11(A),(B)は、クライアント2の制御部21における画面描画処理を示すフローチャートである。
(2−1−1.メイン処理)
先ず、図6を参照して、クライアント2の制御部21におけるメイン処理を説明する。例えばクライアント2においてプレイヤーソフトウェアが起動すると、クライアント2はページリクエストを配信サーバ1へ送信する。そして、クライアント2は、ページリクエストに応じて配信サーバ1から送信されたWebページを受信して表示部24aにおけるディスプレイに表示する。このWebページには、例えば、コンテンツの情報が選択可能に表示される。Webページに表示されるコンテンツの情報は、配信サーバ1にアップロードされた複数のコンテンツの中の一部のコンテンツの情報である。これには、例えば、ユーザに推奨されるコンテンツの情報、またはユーザにより入力されたキーワードに基づき検索されたコンテンツの情報が該当する。コンテンツの情報には、例えば、コンテンツのタイトル、及びファイル構成等の情報が含まれる。そして、ユーザが操作部25aを操作して再生対象のコンテンツの情報を選択すると、図6に示すメイン処理を開始する。メイン処理が開始されると、制御部21は、例えば図3に示すように、メイン画面MV、サブ画面SV1〜SV5、及びソース画面SoV1,SoV2を、表示部24aにおけるディスプレイに表示する(ステップS1)。次いで、制御部21は、図7(A)に示すダウンロード処理と、図11に示す再生処理を開始する(ステップS2)。なお、図7(A)に示すダウンロード処理と、図10に示す再生処理とは、例えばOSのマルチタスク機能により並行して実行される。ダウンロード処理と再生処理の詳細については後述する。
次いで、制御部21は、メイン画面MVに対する疑似カメラワークの操作入力を「手動」に設定する(ステップS3)。これにより、疑似カメラワークの操作入力がユーザによる手動入力となる。つまり、メイン画面MVに表示される動画の表示範囲は、疑似カメラワークデータに依らず、ユーザの疑似カメラワークの操作により変化することになる。次いで、制御部21は、疑似カメラワークデータのクエリ情報、及びワークファイルの初期化処理を実行する(ステップS4)。疑似カメラワークデータのクエリ情報は、疑似カメラワークデータのリクエストに含まれる情報である。クエリ情報には、例えば、再生対象のコンテンツのタイトル、動画の再生位置、及び疑似カメラワークデータの最大返答数が含まれる。初期化処理では、ユーザにより選択された再生対象のコンテンツのタイトルがクエリ情報に設定され、且つ、動画の再生位置として0ミリ秒がクエリ情報に設定される。また、初期化処理では、疑似カメラワークデータの最大返答数として、例えばサブ画面の数がクエリ情報に設定される。また、初期化処理では、ユーザにより選択された再生対象のコンテンツのタイトルがワークファイルに設定される。なお、クエリ情報及びワークファイルには、コンテンツの識別するコンテンツIDが設定されてもよい。次いで、制御部21は、疑似カメラワークデータのクエリ情報を含むリクエストを、ネットワークNWを介して配信サーバ1へ送信する(ステップS5)。
次いで、制御部21は、例えばユーザから操作部25aを介して終了指示があったか否かを判定する(ステップS6)。終了指示があった場合(ステップS6:YES)、図6に示す処理は終了する。一方、終了指示がない場合(ステップS6:NO)、ステップS7へ進む。ステップS7では、制御部21は、配信サーバ1から疑似カメラワークデータを受信したか否かを判定する。疑似カメラワークデータを受信したと判定された場合(ステップS7:YES)、ステップS8へ進む。疑似カメラワークデータを受信したと判定されない場合(ステップS7:NO)、ステップS9へ進む。
ステップS8では、制御部21は、サブ画面SV1〜SV5それぞれに対する疑似カメラワークの操作入力として、ステップS7で受信された疑似カメラワークデータを設定し、ステップS9へ進む。これにより、疑似カメラワークの操作入力が疑似カメラワークデータに従って行われることになる。つまり、サブ画面SV1〜SV5それぞれに表示される動画の表示範囲は、それぞれの疑似カメラワークデータに従う。なお、受信された疑似カメラワークデータが、サブ画面SV1〜SV5の数に満たない場合は、余ったサブ画面には何も表示されない。
ステップS9では、制御部21は、ユーザから操作部25aを介してサブ画面に表示中の動画の選択指示があったか否かを判定する。例えば、ユーザがマウスで選択したいサブ画面をクリック、またはユーザが指やペン等で選択したいサブ画面をタップすると、サブ画面に表示中の動画の選択指示があったと判定される。そして、サブ画面に表示中の動画の選択指示があったと判定された場合(ステップS9:YES)、ステップS10へ進む。一方、サブ画面に表示中の動画の選択指示がないと判定された場合(ステップS9:NO)、ステップS11へ進む。
ステップS10では、制御部21は、動画の選択指示に応じて、メイン画面MVに対する疑似カメラワークの操作入力として、選択されたサブ画面に対する疑似カメラワークの操作入力として設定されている疑似カメラワークデータを設定する。これにより、メイン画面MVに表示中の動画が、選択指示された動画に切換表示される。
ステップS11では、制御部21は、ユーザから操作部25aを介して、疑似カメラワークの操作があったか否かを判定する。ここで、疑似カメラワークの具体的な操作として、例えば、ドラック操作、及びフリック操作がある。ドラック操作では、例えば、ユーザがメイン画面MVをマウスによりドラックすることで表示範囲を移動させることができる。また、フリック操作では、例えば、ユーザがタッチパネル方式のメイン画面MV上で指やペン等の接触物を素早くスライドすることで表示範囲を移動させることができる。また、疑似カメラワークの具体的な操作として、例えば、ユーザが操作部25aに設けられたボタンや画面上に表示されたボタン等を押すことにより、表示範囲を拡大したり縮小させたりする操作がある。この操作の場合、表示範囲の単位時間あたり変動量が大きくなりながら表示範囲が拡大又は縮小する変動が行われ、その後、単位時間あたり変動量が一定となって、表示範囲が変動する。ユーザがボタンを押すことをやめる操作を行わない限り、表示範囲が変動し、表示範囲の大きさが最大又は最少となった時点で、変動は停止する。仮想スクリーンが長方形のスクリーンSC1である場合、表示範囲の拡大・縮小は、表示範囲R11の幅及び高さの変動である。仮想スクリーンが円筒形のスクリーンSC2である場合、表示範囲の拡大・縮小は、横視野角及び高さの変動である。仮想スクリーンが円筒形のスクリーンSC3である場合、表示範囲の拡大・縮小は、縦視野角及び横視野角の変動である。なお、上述した操作は、あくまでも例示に過ぎず、その他の操作により疑似カメラワークが行われてもよい。
そして、疑似カメラワークの操作があったと判定された場合(ステップS11:YES)、ステップS12へ進む。一方、疑似カメラワークの操作がないと判定された場合(ステップS11:NO)、ステップS14へ進む。ステップS12では、制御部21は、メイン画面MVに対する疑似カメラワークの操作入力が「手動」に設定されていなければ「手動」に設定する。次いで、制御部21は、疑似カメラワークの操作により、動画を構成する画像フレームFにおける表示範囲の指示が受け付けられたときの再生位置に対応する上記表示範囲を示す疑似カメラワークデータをクエリ情報に設定し(ステップS13)、ステップS19へ進む。これにより、疑似カメラワークデータが設定されたクエリ情報が配信サーバ1へ送信される。ここで、「指示が受け付けられたときの再生位置」を「指示受付時の再生位置」という。指示受付時の再生位置に対応する上記表示範囲を示す疑似カメラワークデータは、例えば、指示受付時の再生位置の上記表示範囲を示す疑似カメラワークデータである。或いは、指示受付時の再生位置に対応する上記表示範囲を示す疑似カメラワークデータは、指示受付時の再生位置から過去Tp(例えば、3)秒間までの何れかの時点における表示範囲を示す疑似カメラワークデータであってもよい。或いは、指示受付時の再生位置に対応する上記表示範囲を示す疑似カメラワークデータは、指示受付時の再生位置から未来のTf(例えば、3)秒間までの何れかの時点における表示範囲を示す疑似カメラワークデータであってもよい。或いは、指示受付時の再生位置に対応する上記表示範囲を示す疑似カメラワークデータは、過去Tp秒間から未来のTf秒間までにおける表示範囲を示す疑似カメラワークデータであってもよい。
ここで、未来の表示範囲を示す疑似カメラワークデータの生成方法について説明する。例えば、操作部25aにより変更指示が受け付けられると、その後ユーザが何も操作を行わなくとも、一度受け付けられた変更指示に従って表示範囲の変動がしばらくの間持続するようなアルゴリズムがある。このようなアルゴリズムを表示範囲変動持続アルゴリズムという。表示範囲変動持続アルゴリズムでは、変更指示が受け付けられた時点で、その後の表示範囲の変動が継続する間における表示範囲が、予め決定されていることになる。そこで、制御部21は、この表示範囲変動持続アルゴリズムを用いて、指示受付時よりも後における表示範囲を示す疑似カメラワークデータを生成する。
表示範囲変動持続アルゴリズムを適用可能な操作として、例えば、フリック操作がある。フリック操作がされた場合、例えば、スライドの方向とは逆方向に、スライドの速度に応じて表示範囲が移動する。その後、表示範囲の移動速度は徐々に遅くなり、表示範囲の移動が停止する。この場合、フリック操作が行われた時点で、表示範囲の移動が停止するまでの間における表示範囲が決まる。従って、制御部21は、表示範囲変動持続アルゴリズムを用いて、未来の表示範囲を示す疑似カメラワークデータを生成することができる。また、表示範囲変動持続アルゴリズムを適用可能な操作として、例えば、表示範囲を拡大したり縮小させたりする操作がある。この操作の場合、制御部21は、指示受付時の再生位置における表示範囲を示す疑似カメラワークデータと、予め設定された単位時間あたりの増加度、単位時間あたりの変動量の最大値に基づいて、未来の表示範囲を示す疑似カメラワークデータを生成する。このとき、制御部21は、予め設定された単位時間あたりの増加度で、表示範囲の単位時間あたりの変動量が大きくなるように疑似カメラワークデータを生成する。
なお、上述した操作は、あくまでも例示に過ぎず、未来の表示範囲が予測可能な操作であれば、如何なる操作であってもよい。別の例として、ステップS12において疑似カメラワークの操作入力が「手動」に設定される前に、メイン画面MVに対する疑似カメラワークの操作入力として疑似カメラワークデータが設定されている場合がある。この場合、制御部21は、設定されていた疑似カメラワークデータが示す指示受付時の再生位置から未来のTf秒間までにおける表示範囲を取得する。そして、制御部21は、取得した表示範囲を示す疑似カメラワークデータを、未来の表示範囲を示す疑似カメラワークデータとして生成する。
ステップS14では、制御部21は、ユーザから操作部25aを介してキーワードの入力があったか否かを判定する。キーワードは、ユーザが所望の疑似カメラワークデータを検索するためのものである。例えば、ユーザが、あるアーティストグループのコンサートの動画において特定の歌手だけを表示する表示範囲を示す疑似カメラワークデータを検索したい場合があるとする。この場合、ユーザは、上記特定の歌手の名前をキーワードとして入力することになる。キーワードの入力があったと判定された場合(ステップS14:YES)、ステップS15へ進む。一方、キーワードの入力がないと判定された場合(ステップS14:NO)、ステップS16へ進む。
ステップS15では、制御部21は、ステップS14で入力されたキーワードをクエリ情報に設定し、ステップS19へ進む。ステップS16では、制御部21は、ユーザから操作部25aを介して入力されたキーワードのクリア指示があったか否かを判定する。キーワードのクリア指示があったと判定された場合(ステップS16:YES)、ステップS17へ進む。一方、キーワードのクリア指示がないと判定された場合(ステップS16:NO)、ステップS18へ進む。
ステップS17では、制御部21は、クエリ情報からキーワードを削除し、ステップS19へ進む。ステップS18では、制御部21は、ユーザによる操作がないまま所定時間が経過したか否かを判定する。この時間は、例えば1秒〜10秒程度に設定される。ユーザによる操作には、疑似カメラワークの操作が含まれる。ユーザによる操作がないまま所定時間が経過したと判定された場合(ステップS18:YES)、ステップS19へ進む。一方、ユーザによる操作がないまま所定時間が経過していないと判定された場合(ステップS18:NO)、ステップS21へ進む。
ステップS19では、制御部21は、疑似カメラワークデータのクエリ情報を含むリクエストを、ネットワークNWを介して配信サーバ1へ送信する。これにより、指示受付時の再生位置に対応する画像フレームFにおいて、指示された表示範囲から、同一の再生位置における画像フレームF上で所定の距離以内の表示範囲を示す疑似カメラワークデータが、ステップS7で取得される。この疑似カメラワークデータは、後述する図12(B)に示すステップS76で決定される。次いで、制御部21は、ステップS13で疑似カメラワークデータがクエリ情報に設定された場合、この疑似カメラワークデータをクエリ情報から削除し(ステップS20)、ステップS21へ進む。なお、ステップS13で疑似カメラワークデータがクエリ情報に設定されていない場合、そのままステップS21へ進む。
ステップS21では、制御部21は、クエリ情報に設定されている再生位置を、動画の現在の再生位置に変更設定する。次いで、制御部21は、現在の再生位置においてメイン画面MVに表示された動画の表示範囲を示す疑似カメラワークデータを、ワークファイルに格納する(ステップS22)。次いで、制御部21は、ワークファイルに所定時間範囲分の疑似カメラワークデータを蓄積できたか否かを判定する(ステップS23)。ここで、時間範囲は、例えば、30秒程度に設定される。この場合、例えば、再生位置が0秒〜30秒の疑似カメラワークデータ、再生位置が30秒〜60秒の疑似カメラワークデータ、・・・というように、疑似カメラワークデータが分割されて配信サーバ1へアップロードされることになる。なお、例えば、図6に示すメイン処理の実行中に、ユーザは操作部25aからアップロード対象の疑似カメラワークデータに対応する疑似カメラワークの特徴を示す情報を入力することができる。入力された疑似カメラワークの特徴を示す情報は、ワークファイルに格納されることになる。
そして、ワークファイルに所定時間範囲分の疑似カメラワークデータを蓄積できていないと判定された場合(ステップS23:NO)、ステップS6に戻る。一方、ワークファイルに所定時間範囲分の疑似カメラワークデータを蓄積できたと判定された場合(ステップS23:YES)、ステップS24へ進む。ステップS24では、制御部21は、ワークファイルを、ネットワークNWを介して配信サーバ1へ送信する。なお、ワークファイルが分割されて配信サーバ1へ送信されるのではなく、再生開始から再生終了までのワークファイルが一括で動画の再生終了後に送信されるように構成してもよい。次いで、制御部21は、ワークファイルをクリアし(ステップS25)、ステップS6に戻る。
(2−1−2.ダウンロード処理)
次に、図7〜図9を参照して、クライアント2の制御部21におけるダウンロード処理を説明する。図7(A)に示すダウンロード処理が開始されると、ユーザにより選択されたコンテンツの情報により示される動画データに対応する動画ストリームリストが動画データごとに生成される。例えば、レイヤ1の動画ストリームリスト、レイヤ2のパート1〜パート4それぞれの動画ストリームリスト、及びレイヤ3のパート1〜パート16それぞれの動画ストリームリストが生成される。動画ストリームリストは、動画ストリームを構成する各動画データ群のシリアル番号を登録するリストである。動画ストリームは、動画データ及び分割動画データの少なくとも何れか一方から配信サーバ1により生成されるものである。シリアル番号は、動画データ群の再生順に付与される。各動画ストリームリストに登録されるシリアル番号の数は同一である。更に、コンテンツに音声データが含まれる場合、音声データに対応する音声ストリームリストが生成される。音声ストリームリストは、音声ストリームを構成する各音声データ群のシリアル番号を登録するリストである。音声ストリームは、音声データから配信サーバ1により生成されるものである。なお、動画ストリームリスト及び音声ストリームリストは、制御部21により生成される。この場合、動画データまたは音声データの先頭位置から終了位置までを区切る時間単位は、予めプレイヤーソフトウェアに設定されている。或いは、動画ストリームリスト及び音声ストリームリストは、配信サーバ1により生成され、クライアント2へ送信されるように構成してもよい。
図7(A)に示すステップS31では、制御部21は、コンテンツの再生を終了するか否かを判定する。コンテンツの再生を終了すると判定された場合(ステップS31:YES)、図7(A)に示す処理が終了する。一方、コンテンツの再生を終了しないと判定された場合(ステップS31:NO)、ステップS32に進む。ステップS32では、制御部21は、データ群優先順決定処理を実行する。データ群優先順決定処理では、図8に示すように、制御部21は、現在の再生位置と、推定ネットワーク帯域とを取得する(ステップS321)。推定ネットワーク帯域は、配信サーバ1とクライアント2との間のネットワークNWの帯域(bps)の推定値である。推定ネットワーク帯域は、例えば、クライアント2と配信サーバ1との間のデータ伝送時間が制御部21により計測されることで算出される。
次いで、制御部21は、音声ストリームリストから、現在の再生位置を含む音声データ群と、現在の再生位置を含む音声データ群の次の音声データ群とを最優先で取得するデータ群として決定する(ステップS322)。ここで、現在の再生位置は、ステップS321で取得された再生位置である。次いで、制御部21は、ステップS322で決定された音声データ群のシリアル番号を登録する取得対象リストを生成する(ステップS323)。取得対象リストに登録されるシリアル番号には、音声データ群のシリアル番号であることを示す情報が付加される。
次いで、制御部21は、クライアント2の描画性能を示す値を取得する(ステップS324)。ここで、描画性能は、メイン画面MVに何ピクセル描画できるかを示すレンダリング能力である。言い換えれば、描画性能は、フレームバッファが1メイン画面MVあたり何ピクセル分のデータをバッファリングできるかを示す。なお、ステップS324における描画性能を示す値の取得は、初回のデータ群優先順決定処理でのみ行われればよい。或いは、描画性能を示す値の取得は、図7(A)に示すダウンロード処理の開始後、ステップS31の処理前に行われるように構成してもよい。
次いで、制御部21は、ステップS324で取得された描画性能を示す値に応じて、描画対象とするレイヤの範囲を決定する(ステップS325)。例えば、クライアント2の描画性能を示す値が、4M(pixels/frame)であるとする。この場合、図2の例では、レイヤ1及びレイヤ2の画像フレームFは、1画像フレームF全体を描画できる。一方、レイヤ3の画像フレームFは、画像フレームFの1/4しか描画できない。そのため、上記ステップS325では、描画対象とするレイヤの範囲として、レイヤ1及びレイヤ2が決定される。一方、例えば、クライアント2の描画性能を示す値が、2M(pixels/frame)であるとする。この場合、図2の例では、レイヤ1の画像フレームFだけが1画像フレームF全体を描画できる。そのため、上記ステップS325では、描画対象とするレイヤの範囲として、レイヤ1が決定される。
次いで、制御部21は、上記ステップS325で決定されたレイヤの動画ストリームリストから、現在の再生位置を含む動画データ群と、現在の再生位置を含む動画データ群の次の動画データ群とを決定する(ステップS326)。この決定は、ステップS325で決定された全てのレイヤの全ての動画ストリームリストについて行われる。例えば、ステップS325で決定されたレイヤが、レイヤ1とレイヤ2であるとする。この場合、レイヤ1の動画ストリームリスト、レイヤ2のパート1の動画ストリームリスト、レイヤ2のパート2の動画ストリームリスト、レイヤ2のパート3の動画ストリームリスト、及びレイヤ2のパート4の動画ストリームリストそれぞれについて、動画データ群が決定される。次いで、制御部21は、現在の再生位置の描画領域に基づいて、上記ステップS326で決定された動画データ群に含まれる画像フレームFまたは分割画像フレームの描画率を、上記決定された動画データ群ごとに算出する(ステップS327)。ここで、画像フレームFの描画率とは、描画領域の中に画像フレームFまたは分割画像フレームが占める割合をいう。
図9(A)は、レイヤ1の画像フレームにおける描画領域を示す図である。図9(A)に示すように、レイヤ1では、先頭の画像フレームFの描画率が100%である。図9(B)は、レイヤ2の分割画像フレームにおける描画領域を示す図である。分割画像フレームの場合、1つのパートで描画領域のすべてをカバーできるとは限らない。図9(B)に示すように、レイヤ2では、パート1における先頭の分割画像フレームの描画率が17%である。また、パート2における先頭の分割画像フレームの描画率が50%である。また、パート3における先頭の分割画像フレームの描画率が8%である。また、パート4における先頭の分割画像フレームの描画率が25%である。このように、レイヤ2のパート2における先頭の分割画像フレームが最も大きい描画率である。また、図9(B)の例では、破線で示すように、各動画データ群内で描画領域の位置が分割画像フレームごとに変化している。この場合、現在の再生位置の画像フレームFまたは分割画像フレームの時間的に後に続く画像フレームFまたは分割画像フレームの描画領域は、例えば、メイン画面MVに対する疑似カメラワークの操作入力として設定されている疑似カメラワークデータに基づいて特定される。一方、メイン画面MVに対する疑似カメラワークの操作入力として疑似カメラワークデータが設定されていない場合、現在の再生位置の画像フレームFまたは分割画像フレームの時間的に後に続く画像フレームFまたは分割画像フレームの描画領域は、現在の再生位置の描画領域に基づいて推定される。つまり、描画領域の動きの変化に基づき予測計算される。例えば、複数の分割画像フレーム間において描画領域が右に動いていたら、その次の分割画像フレームにおける描画領域はさらに右に位置することが予測計算される。なお、ステップS327で算出される分割画像フレームの描画率は、動画データ群に含まれる複数の分割画像フレームの描画率の平均または合計となる。
次いで、制御部21は、上記ステップS326で決定された動画データ群のビットレートと、上記ステップS321で取得された推定ネットワーク帯域とに基づいて、上記ステップS326で決定された動画データ群の中から、取得対象候補となる動画データ群をレイヤごとに決定する(ステップS328)。例えば各レイヤの動画データ群のビットレートが、推定ネットワーク帯域以下になるように、取得対象候補となる動画データ群が選定される。ここで、レイヤ2の場合、パート1〜パート4の動画データ群のビットレートの総和が推定ネットワーク帯域以下になるように、取得対象候補となる動画データ群が決定される。
図9(C),(D)は、レイヤ1及びレイヤ2にける動画ストリームにおいて、取得対象候補となる動画データ群が決定される様子を示す図である。図9(C),(D)に示すように、レイヤ1では、上記ステップS326で決定された全ての動画データ群が決定されている。レイヤ2では、上記ステップS326で決定されたシリアル番号が「1」の動画データ群の中(図9(C))で、描画率が50%の分割画像フレームを含む動画データ群と、描画率が25%の分割画像フレームを含む動画データ群と、が決定(図9(D))されている。これは、例えば描画率が17%の分割画像フレームを含む動画データ群が取得対象候補としてさらに決定されると、「動画データ群のビットレート≦推定ネットワーク帯域」の条件を満たさなくなるためである。一方、上記ステップS326で決定されたシリアル番号が「2」の動画データ群の中(図9(C))で、描画率が70%の分割画像フレームを含む動画データ群と、描画率が20%の分割画像フレームを含む動画データ群と、が決定(図9(D))されている。このように、描画率が高い分割画像フレームを含む動画データ群が優先して決定されることになる。これにより、より広い表示範囲に、高画質の画像を表示させることができる。
次いで、制御部21は、上記ステップS328で決定された取得対象候補となる動画データ群の中で描画率が基準描画率αである画像フレームFまたは分割画像フレームを含む動画データ群があるか否かを判定する(ステップS329)。基準描画率αは、例えば100%に設定されることが望ましい。ただし、90%〜100%の間に設定されてもよい。そして、描画率が基準描画率αである画像フレームFまたは分割画像フレームを含む動画データ群があると判定された場合(ステップS329:YES)、ステップS330へ進む。一方、描画率が基準描画率αである画像フレームFまたは分割画像フレームを含む動画データ群がないと判定された場合(ステップS329:NO)、ステップS331へ進む。
ステップS330では、制御部21は、描画率が基準描画率αである画像フレームFまたは分割画像フレームを含む動画データ群に対応するレイヤの中で、最も解像度の高いレイヤをベースレイヤとして決定し、ステップS332へ進む。つまり、複数の動画データ群の中で、解像度が高く、且つ、描画率が高い画像フレームFを含む動画データ群が優先されて、ベースレイヤの動画データ群として決定される。これにより、より広い表示範囲に、より高画質の画像を表示させることができる。図9(C),(D)の例では、描画率が基準描画率αである画像フレームFを含む動画データ群に対応するレイヤは、レイヤ1のみである。そのため、レイヤ1がベースレイヤとして決定される。なお、描画率が基準描画率αである画像フレームFまたは分割画像フレームを含む動画データ群に対応するレイヤが、レイヤ1〜レイヤ3であるとする。この場合、最も解像度の高いレイヤであるレイヤ3がベースレイヤとして決定される。また、この場合、レイヤ3よりも解像度の高いレイヤはないので、図8に示す処理は終了し、図7(A)に示す処理に戻る。一方、ステップS331では、制御部21は、最も描画率が高い画像フレームFまたは分割画像フレームを含む動画データ群に対応するレイヤの中で、最も解像度の高いレイヤをベースレイヤとして決定し、ステップS332へ進む。
ステップS332では、制御部21は、上記ステップS330又はステップS331で決定されたベースレイヤの動画データ群を、音声データ群の次に優先して取得するデータ群として決定する。次いで、制御部21は、ステップS332で決定された動画データ群のシリアル番号を上記取得対象リストに登録する(ステップS333)。なお、取得対象リストに登録されるシリアル番号には、動画データ群のシリアル番号であることを示す情報、及びレイヤを示す情報が付加される。
次いで、制御部21は、推定ネットワーク帯域から、ベースレイヤの動画データ群のビットレートを減算した差分ネットワーク帯域を算出する(ステップS334)。差分ネットワーク帯域は、ネットワークNWの帯域の余裕度を示す値の一例である。ネットワークNWの余裕度は、クライアント2と配信サーバ1との間のネットワークNWの空き帯域ともいう。言い換えれば、ネットワークNWの帯域の余裕度は、ネットワークNWを介して、クライアント2と配信サーバ1との間で利用可能な利用帯域ともいう。差分ネットワーク帯域は、ネットワークNWの帯域と、ベースレイヤの動画データ群を配信サーバ1から取得するために消費する帯域との差である。
次いで、制御部21は、上記ステップS326で決定された動画データ群のビットレートと、上記ステップS334で算出された差分ネットワーク帯域とに基づいて、上記ステップS326で決定された動画データ群の中から、再度、取得対象候補となる動画データ群をレイヤごとに決定する(ステップS335)。なお、ベースレイヤの動画データ群は、上記ステップS332で取得するデータ群として決定されているので、取得対象候補から除外される。例えばベースレイヤ以外のレイヤの動画データ群のビットレートが、差分ネットワーク帯域以下になるように、取得対象候補となる動画データ群が選定される。差分ネットワーク帯域に余裕がある場合、分割画像フレームを含む少なくとも一つの動画データ群が決定される。上記ステップS335の処理により、差分ネットワーク帯域に応じたデータ量の動画データ群を取得することが可能となる。
次いで、制御部21は、上記ステップS335で決定された取得対象候補となる動画データ群の中で描画率が基準描画率β以上の分割画像フレームを含む動画データ群があるか否かを判定する(ステップS336)。基準描画率βは、例えば70%に設定される。ただし、60%〜90%の間に設定されてもよい。そして、描画率が基準描画率β以上の分割画像フレームを含む動画データ群があると判定された場合(ステップS336:YES)、ステップS337へ進む。一方、描画率が基準描画率β以上の分割画像フレームを含む動画データ群がないと判定された場合(ステップS336:NO)、図8に示す処理は終了し、図7(A)に示す処理に戻る。
ステップS337では、制御部21は、描画率が基準描画率β以上の分割画像フレームを含む動画データ群に対応するレイヤの中で、最も解像度の高いレイヤをサブレイヤとして決定する。次いで、制御部21は、上記ステップS338で決定されたサブレイヤの動画データ群を、ベースレイヤの動画データ群の次に優先して取得するデータ群として決定する(ステップS338)。次いで、制御部21は、ステップS338で決定された動画データ群のシリアル番号を上記取得対象リストに登録し(ステップS339)、図7(A)に示す処理に戻る。なお、取得対象リストに登録されるシリアル番号には、動画データ群のシリアル番号であることを示す情報、レイヤを示す情報、及びパートを示す情報が付加される。
図7(B)は、データ群優先順決定処理により生成された取得対象リストの内容の一例を示す図である。図7(B)に示すように、取得対象リストに登録された各データ群のシリアル番号には、優先度が対応付けられている。対応付けられた優先度の値が小さいデータ群ほど、取得する優先度が高いデータ群である。なお、取得対象リストの内容は、コンテンツの再生が進行する従って変化する。
図7(A)に示す処理に戻り、ステップS33では、制御部21は、取得対象リストを参照して、配信サーバ1から取得するデータ群があるか否かを判定する。取得対象リストにデータ群のシリアル番号が登録されている場合、取得するデータ群があると判定される。そして、取得するデータ群があると判定された場合(ステップS33:YES)、ステップS34へ進む。一方、取得するデータ群がないと判定された場合(ステップS33:NO)、ステップS31に戻る。
ステップS34では、制御部21は、変数nに「1」をセットする。次いで、制御部21は、取得対象リストの中で優先度がn番のデータ群がバッファメモリに保持されているか否かを判定する(ステップS35)。つまり、図7(A)に示す処理で優先度がn番のデータ群が既に取得されているか否かが判定される。そして、優先度がn番のデータ群が保持されていないと判定された場合(ステップS35:NO)、ステップS36に進む。ステップS36では、制御部21は、優先度がn番のデータ群の要求を配信サーバ1へ送信する。これにより、制御部21は、例えば低解像度より高い中解像度又は高解像度の動画データを構成する複数の分割動画データの中から、取得対象となる少なくとも1つの分割動画データを含むデータ群を配信サーバ1へ要求することができる。そして、制御部21は、配信サーバ1から、例えば低解像度の動画データを含むデータ群を受信するとともに、低解像度より高い中解像度又は高解像度の分割動画データを含むデータ群を受信することができる。そして、制御部21は、データ群の取得が成功したか否かを判定する(ステップS37)。データ群の要求に応じて配信サーバ1からデータ群が受信されない場合、データ群の取得が失敗したと判定され(ステップS37:NO)、ステップS38へ進む。ステップS38では、データ群取得失敗メッセージがユーザへ通知され、図7(A)に示す処理が終了する。データ群取得失敗メッセージは、データ群の取得失敗を示すメッセージである。
一方、データ群の要求に応じて配信サーバ1からストリーミング配信されたデータ群の受信が完了した場合、データ群の取得が成功したと判定される(ステップS37:YES)。この場合、制御部21は、ステップS31へ戻り、コンテンツの再生を終了しない場合(ステップS31:NO)、再び、データ群優先順決定処理を実行する(ステップS32)。つまり、データ群が取得されるごとにデータ群優先順決定処理で、取得対象となるデータ群が決定されることになる。前回のデータ群優先順決定処理からさほど時間が経過していなければ、現在の再生位置を含むデータ群に変化はない。そのため、再び実行されたデータ群優先順決定処理で生成された取得対象リストの内容は、前回のデータ群優先順決定処理で生成された取得対象リストの内容と同一となる。この場合、ステップS35で、優先度がn番のデータ群が保持されていると判定されると(ステップS35:YES)、ステップS39へ進む。ステップS39では、制御部21は、変数nに「1」を加算する。次いで、制御部21は、変数nがデータ群数より大きいか否かを判定する(ステップS40)。データ群数とは、取得対象リストにシリアル番号が登録されているデータ群の数である。そして、変数nがデータ群数より大きくないと判定された場合(ステップS40:NO)、ステップS35に戻る。このとき、優先度がn+1番のデータ群が保持されていなければ、n+1番のデータ群の要求が配信サーバ1へ送信される(ステップS36)。一方、変数nがデータ群数より大きいと判定された場合(ステップS40:YES)、ステップS31に戻る。この場合、そのときの取得対象リストに登録されている全てのデータ群が取得された場合である。以上のように、データ群優先順決定処理は、データ群が配信サーバ1から取得されるたびに行われる。そのため、動画データの再生進行状況及び取得進行状況に応じて、各時点で最適なデータ群を取得対象として決定することができる。
なお、動画の動画データが複数ある場合において、それぞれの動画データに対応するメイン画面MVが設けられる場合がある。この場合、図7(A)に示すダウンロード処理は、それぞれの動画データに対応する動画データを取得するために実行される。
なお、上記ダウンロード処理では、解像度の異なる複数の動画データを例にとったが、解像度が同一の動画データであってもよい。
(2−1−3.再生処理)
次に、図10及び図11を参照して、クライアント2の制御部21における動画の再生処理を説明する。図10に示す再生処理が開始されると、制御部21は、クライアント2の描画性能を示す値を取得する(ステップS51)。次いで、制御部21は、コンテンツの再生を終了するか否かを判定する(ステップS52)。コンテンツの再生を終了すると判定された場合(ステップS52:YES)、図10に示す処理を終了する。一方、コンテンツの再生を終了しないと判定された場合(ステップS52:NO)、ステップS53へ進む。
ステップS53では、制御部21は、コンテンツは再生可能な状態にあるか否かを判定する。例えば、再生に十分な動画データ群がバッファメモリに保持されている場合、再生可能な状態にあると判定される。再生可能な状態にあると判定された場合(ステップS53:YES)、ステップS54へ進む。一方、再生可能な状態にないと判定された場合(ステップS53:NO)、ステップ52に戻る。ステップS54では、制御部21は、動画が再生中であるか否かを判定する。例えば、画像フレームFが遷移中である場合、動画が再生中であると判定され(ステップS54:YES)、ステップS55へ進む。一方、動画が再生中でないと判定された場合(ステップS54:NO)、ステップS57へ進む。再生中でないとは、一時停止中が該当する。
ステップS55では、制御部21は、画面描画処理を実行する。この画面描画処理の詳細は後述する。次いで、制御部21は、現在の再生位置を次の画像フレームFに移動させ(ステップS56)、ステップS52に戻る。ステップS57では、制御部21は、現在の描画領域が前回描画時の描画領域と異なるか否かを判定する。現在の描画領域が前回描画時の描画領域と異ならないと判定された場合(ステップS57:NO)、ステップS52に戻る。一方、現在の描画領域が前回描画時の描画領域と異なると判定された場合(ステップS57:YES)、ステップS58へ進む。ステップS58では、制御部21は、画面描画処理を実行する。これは、一時停止中であっても、ユーザにより疑似カメラワークの操作により描画領域が更新された場合、再度、画面描画処理を行う必要があるためである。
図11(A)は、メイン画面MVに対する画面描画処理を示す。一方、図11(B)は、サブ画面SV1〜SV5それぞれに対する画面描画処理を示す。これらの画面描画処理は、例えばOSのマルチタスク機能により並行して実行される。
メイン画面MVに対する画面描画処理では、図11(A)に示すように、制御部21は、現在の再生位置を特定する(ステップS551)。次いで、制御部21は、上記ステップS51で取得された描画性能を示す値に基づいて、描画対象のレイヤの範囲を決定する(ステップS552)。ステップS552の処理は、ステップS325の処理と同様である。次いで、制御部21は、取得済の動画データ群の中で、所定条件を満たす動画データ群を決定する(ステップS553)。例えば、所定条件として以下の(a)〜(c)の全ての条件を満たす動画データ群が決定される。
(a)現在の再生位置を含むこと
(b)現在の描画領域に画像フレームFまたは分割画像フレームの少なくとも一部が含まれること
(c)描画対象のレイヤに属すること
ここで、現在の再生位置は、上記ステップS551で特定された再生位置である。また、現在の描画領域は、例えばメイン画面MVに対する疑似カメラワークの操作入力にしたがって特定される。また、描画対象のレイヤは、上記ステップS552で決定されたレイヤである。
次いで、制御部21は、上記ステップS553で決定された動画データ群の情報を登録する描画対象リストを生成する(ステップS554)。動画データ群の情報とは、例えば、動画データ群のシリアル番号である。次いで、制御部21は、描画対象リストに登録された動画データ群の情報を高画質順にソートする(ステップS555)。つまり、動画データ群に含まれる動画データの解像度が高い順に動画データ群の情報が並び替えられる。ここで、並び替え対象となる動画データには、分割動画データも含まれる。次いで、制御部21は、メイン画面MVに対応するフレームバッファの描画領域をクリアする(ステップS556)。
次いで、制御部21は、変数nに「1」をセットする(ステップS557)。次いで、制御部21は、描画対象リストの中で解像度が高いn番目の動画データ群に含まれる例えば1画像フレームFまたは1分割画像フレーム分の画像データをバッファメモリから出力する(ステップS558)。そして、制御部21は、動画を構成する画像フレームFまたは分割画像フレームにおいて上記特定された描画領域に対応するピクセルのデータをフレームバッファに書き込む(ステップS559)。ただし、この書き込みは、既に書き込み済みのピクセルが上書きされないように制御される。
次いで、制御部21は、フレームバッファに、画像フレームFまたは分割画像フレームにおいて必要なピクセルのデータが全て書き込まれたか否かを判定する(ステップS560)。フレームバッファに必要なピクセルのデータが全て書き込まれていないと判定された場合(ステップS560:NO)、ステップS561に進む。一方、フレームバッファに必要なピクセルのデータが全て書き込まれたと判定された場合(ステップS560:YES)、ステップS563に進む。
ステップS561では、制御部21は、変数nに「1」を加算する。次いで、制御部21は、変数nがデータ群数より大きいか否かを判定する(ステップS562)。データ群数とは、描画対象リストに情報が登録されている動画データ群の数である。そして、変数nがデータ群数より大きくないと判定された場合(ステップS562:NO)、ステップS558に戻る。ステップS558の処理は、複数回繰り返し行われるが、解像度が高い動画データが優先して再生される。そのため、最初の処理では、解像度が高い分割画像フレームにおいて必要なピクセルのデータが書き込まれる。以後の処理では、分割画像フレームおいて必要なピクセルのデータが書き込まれなかったフレームバッファの書き込み領域に、例えば低解像度の動画を構成する画像フレームFが書き込まれる。一方、変数nがデータ群数より大きいと判定された場合(ステップS562:YES)、ステップS563へ進む。ステップS563では、制御部21は、フレームバッファの内容をメイン画面MVに表示させる。これにより、制御部21は、例えば低解像度の動画データにより再生される動画をメイン画面MVに表示させるとともに、この動画の画像フレームFの少なくとも一部分に、例えば中解像度又は高解像度の分割動画データにより再生される動画を表示させる。これにより、クライアント2の性能に応じて低解像度と高解像度の動画を柔軟にメイン画面MVに表示することができる。なお、音声データが再生されている場合、制御部21は、音声データの再生位置に同期させて動画を表示させる。また、動画の動画データが複数ある場合において、それぞれの動画データに対応するメイン画面MVが設けられる場合がある。この場合、図11(A)に示す画面描画処理は、それぞれの動画データに対応する動画を表示するために実行される。
一方、サブ画面SV1〜SV5それぞれに対する画面描画処理では、図11(B)に示すように、制御部21は、現在の再生位置を特定する(ステップS571)。次いで、制御部21は、取得済の動画データ群の中で、現在の再生位置を含み、且つ動画データ群に含まれる動画データの解像度が最も低い動画データ群を決定する(ステップS572)。動画データの解像度が最も低い動画データ群は、例えばレイヤ1の動画ストリームに含まれていた動画データ群である。次いで、制御部21は、サブ画面SV1〜SV5それぞれに対応するフレームバッファの描画領域をクリアする(ステップS573)。
次いで、制御部21は、ステップS572で決定された動画データ群に含まれる1画像フレームFの動画データをバッファメモリから出力する(ステップS574)。次いで、制御部21は、動画を構成する画像フレームFにおいて描画領域に対応するピクセルのデータをフレームバッファに書き込む(ステップS575)。この描画領域は、上記ステップS8で疑似カメラワークの操作入力としてサブ画面SV1〜SV5のそれぞれに設定された疑似カメラワークデータが示す表示範囲から決定される。次いで、制御部21は、フレームバッファの内容をサブ画面SV1〜SV5それぞれに表示させる(ステップS576)。これにより、制御部21は、低解像度の動画データにより再生される動画をサブ画面SV1〜SV5のそれぞれに表示させる。
なお、上記再生処理では、解像度の異なる複数の動画データを例にとったが、解像度が同一の動画データであってもよい。
(2−2.配信サーバ1の処理)
次に、図12を参照して、配信サーバ1の処理について説明する。図12(A)は、配信サーバ1の制御部11におけるワークファイル登録処理を示すフローチャートである。図12(B)は、配信サーバ1の制御部11における疑似カメラワークデータ要求受信処理を示すフローチャートである。
図12(A)に示すワークファイル登録処理は、クライアント2から、上記ステップS24で送信されたワークファイルが受信された場合に開始される。ワークファイル登録処理が開始されると、制御部11は、取得されたワークファイルに設定されたコンテンツのタイトルに基づきコンテンツの動画データを動画データ記憶領域31aから特定する(ステップS61)。
次に、図12(B)に示す疑似カメラワークデータ要求受信処理は、クライアント2から、上記ステップS5又はステップS19で送信された、疑似カメラワークデータのリクエストが受信された場合に開始される。このリクエストには、上述したクエリ情報が含まれる。疑似カメラワークデータ要求受信処理が開始されると、制御部11は、ワークファイル記憶領域31cに記憶されたワークファイルのうち、クエリ情報に設定されたコンテンツのタイトルが対応付けられた疑似カメラワークデータを返答候補として取得する(ステップS70)。
次いで、制御部11は、ステップS70で取得された返答候補のうち、クエリ情報に設定された再生位置が含まれる疑似カメラワークデータを、新たな返答候補として決定する(ステップS71)。つまり、ステップS70で決定された返答候補から、クエリ情報に設定された再生位置が含まれる疑似カメラワークデータに絞り込まれる。
次いで、制御部11は、クエリ情報にキーワードが設定されているか否かを判定する(ステップS72)。クエリ情報にキーワードが設定されていると判定された場合(ステップS72:YES)、ステップS73へ進む。一方、クエリ情報にキーワードが設定されていないと判定された場合(ステップS72:NO)、ステップS74へ進む。
ステップS73では、制御部11は、ステップS71で決定された返答候補のうち、クエリ情報に設定されたキーワードが対応付けられた疑似カメラワークデータを、新たな返答候補として決定する。例えば、クエリ情報に設定されたキーワードが、ワークファイル中のコンテンツのタイトル又は疑似カメラワークの特徴を示す情報中に含まれる場合、このワークファイルに格納された疑似カメラワークデータが新たな返答候補として決定される。
ステップS74では、制御部11は、クエリ情報に疑似カメラワークデータが設定されているか否かを判定する。クエリ情報に疑似カメラワークデータが設定されていると判定された場合(ステップS74:YES)、ステップS75へ進む。一方、クエリ情報に疑似カメラワークデータが設定されていないと判定された場合(ステップS74:NO)、ステップS77へ進む。
ステップS75では、制御部11は、クエリ情報に設定されたコンテンツのタイトルからコンテンツの動画データを動画データ記憶領域31aから特定する。次いで、制御部11は、ステップS71又はステップS73で決定された返答候補のうち、クエリ情報に設定された疑似カメラワークデータが示す表示範囲から、ステップS75で特定された動画データにおいて、同一の再生位置における画像フレームF上で所定の距離以内の表示範囲を示す疑似カメラワークデータを、新たな返答候補として決定する。ここで、所定の距離とは、画像フレームF上で近いと判断される距離である。この距離は、例えば10cm以下に設定される。ここで、クエリ情報に設定された疑似カメラワークデータを、以下、「第1の疑似カメラワークデータ」という。ステップS71又はステップS73で決定された返答候補である疑似カメラワークデータを、以下、「第2の疑似カメラワークデータ」という。ステップS76の処理は、仮想スクリーンの種類によって異なるように設定することができる。
例えば、仮想スクリーンが長方形のスクリーンSC1の場合がある。この場合、制御部11は、第1の疑似カメラワークデータが示す表示範囲における第1の所定点と、第2の疑似カメラワークデータが示す表示範囲における第2の所定点との間の距離を算出する。第1の所定点及び第2の所定点は、それぞれの表示範囲の中心座標(x0,y0)である。第1の所定点及び第2の所定点は、図4(A)の例では、表示範囲R11の中心である。或いは、第1の所定点及び第2の所定点は、それぞれの表示範囲の4隅のうち何れかの隅の座標(x1,y1)でもよい。そして、制御部11は、算出した距離が閾値以下であるか否かを判定する。算出した距離が閾値以下である場合、制御部11は、第2の疑似カメラワークデータを、新たな返答候補として決定する。
一方、仮想スクリーンが円筒形のスクリーンSC2又は球形のスクリーンSC3である場合がある。この場合、同一の再生位置における画像フレームF上で所定の距離以内であるかは、三次元仮想空間における視点から、疑似カメラワークデータが示す表示範囲における所定点までの視線に基づいて判定される。例えば、第1及び第2の疑似カメラワークデータそれぞれが示す画像フレームFが三次元仮想空間における仮想立体面に投影されるとする。この場合、制御部11は、少なくとも、三次元仮想空間における視点からの第1の視線であって第1の疑似カメラワークデータが示す表示範囲における第1の所定点までの第1の視線と、同一の視点からの第2の視線であって第2の疑似カメラワークデータが示す表示範囲における第2の所定点まで第2の視線との間の角度を算出する。ここで、円筒形のスクリーンSC2の場合、視点は、例えば、円筒の中心軸の中点である。この場合の第1の所定点及び第2の所定点は、図4(B)の例では、表示範囲R12の中心である。また、球形のスクリーンSC3の場合、視点、例えば、球の中心である。この場合の第1の所定点及び第2の所定点は、図4(C)の例では、表示範囲R13の中心である。そして、制御部11は、算出した角度が閾値以下であるか否かを判定する。算出した角度が閾値以下である場合、制御部11は、第2の疑似カメラワークデータを、新たな返答候補として決定する。
なお、仮想スクリーンが円筒形のスクリーンSC2である場合、制御部11は、第1の疑似カメラワークデータが示す表示範囲における第1の所定点と、第2の疑似カメラワークデータが示す表示範囲における第2の所定点との間の距離を算出するように構成してもよい。この場合、第1の所定点及び第2の所定点は、長方形のスクリーンSC1の場合と同様である。そして、制御部11は、算出した距離が閾値以下である場合、第2の疑似カメラワークデータを、新たな返答候補として決定する。或いは、制御部11は、上記算出した角度が閾値以下であり、且つ算出した距離が閾値以下である場合、第2の疑似カメラワークデータを、新たな返答候補として決定するように構成してもよい。また、疑似カメラワークデータが複数の再生位置における表示範囲を示す場合がある。この場合、制御部11は、例えば、再生位置ごとに、ステップS76の処理を行うことで、第2の疑似カメラワークデータを、新たな返答候補として決定するように構成される。
ステップS77では、制御部11は、ステップS71、ステップS73、又はステップS76で決定された返答候補の数が、クエリ情報に設定された最大返答数より大きいか否かを判定する。そして、返答候補の数が最大返答数より大きいと判定された場合(ステップS77:YES)、ステップS78へ進む。一方、返答候補の数が最大返答数より大きくないと判定された場合(ステップS77:NO)、ステップS79へ進む。ステップS78では、制御部11は、ステップS71、ステップS73、又はステップS76で決定された返答候補のうち、優先度の高い順に上記最大返答数分の疑似カメラワークデータを、新たな返答候補として決定する。ここで、「優先度の高い順」は、例えば、疑似カメラワークデータの登録日時の遅い順、アクセスランキング順、又は「いいね」等のコミュニティ評価の高い順として設定される。
ステップS79では、制御部11は、ステップS71、ステップS73、ステップS76、又はステップS78で決定された返答候補である疑似カメラワークデータを、疑似カメラワークデータの要求元であるクライアント2へ返信する。
以上説明したように、上記実施形態によれば、クライアント2は、メイン画面MVに動画が表示されているときに、配信サーバ1から取得された疑似カメラワークデータが示す表示範囲に従って、メイン画面MVに表示される候補となる動画がサブ画面SV2〜SV5に表示されるように構成した。そのため、動画に対して他のユーザにより行われた疑似カメラワークの特徴を、取得された疑似カメラワークデータが示す表示範囲に従ってサブ画面SV2〜SV5に表示される動画により、クライアント2のユーザに、より分かり易く伝えることができる。
なお、上記実施形態において、クライアント2は配信サーバ1からコンテンツ及びコンテンツの疑似カメラワークデータを受信する構成を示した。しかし、ハイブリッド型またはピア型のピアツーピアネットワークにおいて、クライアント2が他のクライアント2からコンテンツ及びコンテンツの疑似カメラワークデータを受信する場合に対しても本発明は適用できる。また、上記実施形態において、クライアント2が記憶装置3と接続可能であるように構成してもよい。この場合、クライアント2は記憶装置3から取得したコンテンツを再生する。そして、クライアント2は、記憶装置3から取得した疑似カメラワークデータに従って、動画を表示することになる。
1 配信サーバ
2 クライアント
3 記憶装置
21 制御部
22 記憶部
S 通信システム

Claims (4)

  1. 第1解像度の動画データと、前記第1解像度より高い第2解像度の動画データと、を記憶する配信装置にアクセス可能なコンピュータに所定の処理を実行させるプログラムであって、
    前記第2解像度の動画データは、前記第2解像度の動画データを構成する画像フレームを分割した分割画像フレームから構成される複数の分割動画データにより構成され、
    前記プログラムは、
    前記複数の分割動画データの中から、取得対象となる少なくとも1つの前記分割動画データを前記配信装置へ要求する要求ステップと、
    前記配信装置から配信された前記第1解像度の動画データと、前記要求ステップにより要求された前記分割動画データとを少なくとも受信する受信ステップと、
    前記第1解像度の動画データにより再生される第1全体動画を構成する画像フレーム内で、表示手段により表示される表示範囲が前記第1全体動画の再生位置に応じて変化可能な第1可変動画を、1表示範囲に従って、前記表示手段のメイン画面に表示させ、且つ、前記第1可変動画の少なくとも一部分の位置に、前記一部分の位置に対応する分割動画であって前記受信ステップにより受信された前記分割動画データにより再生される前記分割動画を表示させる第1表示ステップと、
    前記第1解像度の動画データと同一の又は対応する動画データにより再生される第2全体動画を構成する画像フレーム内で、前記表示手段により表示される表示範囲が前記第2全体動画の再生位置に応じて変化可能な第2可変動画であって、前記メイン画面に表示される候補となる前記第2可変動画の前記第2全体動画における第2表示範囲を示す表示範囲情報を所定の記憶装置から取得する取得ステップと、
    前記第1解像度の動画データと同一の又は対応する動画データにより再生される第2全体動画を構成する画像フレームにおいて前記取得ステップにより取得された前記表示範囲情報が示す前記第2表示範囲に従って、前記表示手段のサブ画面に前記第2可変動画を表示させる第2表示ステップと、
    前記コンピュータに実行させることを特徴とするプログラム。
  2. 前記受信ステップは、前記配信装置からストリーミング配信された、前記第1解像度の動画データと同一の又は対応する動画データを受信し、
    前記取得ステップは、前記受信ステップにより受信された前記動画データにより再生される前記第2全体動画の再生位置から所定時間範囲内に含まれる画像フレームにおける前記第2表示範囲を示す表示範囲情報を所定の記憶装置から取得し、
    前記第2表示ステップは、前記受信ステップによりストリーミングで前記動画データを受信しながら、前記取得ステップにより取得された前記表示範囲情報が示す前記第2表示範囲に従って、前記サブ画面に前記第2可変動画を表示させることを特徴とする請求項1に記載のプログラム。
  3. 前記第1表示ステップは、前記サブ画面に表示中の前記第2可変動画の選択指示に応じて、前記メイン画面に表示中の前記第1可変動画を、前記選択指示された前記第2可変動画に切換表示させることを特徴とする請求項1又は2に記載のプログラム。
  4. 第1解像度の動画データと、前記第1解像度より高い第2解像度の動画データと、を記憶する配信装置にアクセス可能な端末装置であって、
    前記第2解像度の動画データは、前記第2解像度の動画データを構成する画像フレームを分割した分割画像フレームから構成される複数の分割動画データにより構成され、
    前記複数の分割動画データの中から、取得対象となる少なくとも1つの前記分割動画データを前記配信装置へ要求する要求手段と、
    前記配信装置から配信された前記第1解像度の動画データと、前記要求手段により要求された前記分割動画データとを少なくとも受信する受信手段と、
    前記第1解像度の動画データにより再生される第1全体動画を構成する画像フレーム内で、表示手段により表示される表示範囲が前記第1全体動画の再生位置に応じて変化可能な第1可変動画を、1表示範囲に従って、前記表示手段のメイン画面に表示させ、且つ、前記第1可変動画の少なくとも一部分の位置に、前記一部分の位置に対応する分割動画であって前記受信手段により受信された前記分割動画データにより再生される動画を表示させる第1表示手段と、
    前記第1解像度の動画データと同一の又は対応する動画データにより再生される第2全体動画を構成する画像フレーム内で、前記表示手段により表示される表示範囲が前記第2全体動画の再生位置に応じて変化可能な第2可変動画であって、前記メイン画面に表示される候補となる前記第2可変動画の前記第2全体動画における第2表示範囲を示す表示範囲情報を所定の記憶装置から取得する取得手段と、
    前記第1解像度の動画データと同一の又は対応する動画データにより再生される第2全体動画を構成する画像フレームにおいて前記取得手段により取得された前記表示範囲情報が示す前記第2表示範囲に従って、前記表示手段のサブ画面に前記第2可変動画を表示させる第2表示手段と、
    を備えることを特徴とする端末装置。
JP2013037494A 2013-02-27 2013-02-27 端末装置及びプログラム Active JP5825279B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2013037494A JP5825279B2 (ja) 2013-02-27 2013-02-27 端末装置及びプログラム
PCT/JP2014/054296 WO2014132911A1 (ja) 2013-02-27 2014-02-24 端末装置及びプログラム
EP14757155.8A EP2963920A1 (en) 2013-02-27 2014-02-24 Terminal device and program
US14/835,855 US20150373296A1 (en) 2013-02-27 2015-08-26 Terminal Device and Computer-Readable Medium for the Same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013037494A JP5825279B2 (ja) 2013-02-27 2013-02-27 端末装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2014165839A JP2014165839A (ja) 2014-09-08
JP5825279B2 true JP5825279B2 (ja) 2015-12-02

Family

ID=51428176

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013037494A Active JP5825279B2 (ja) 2013-02-27 2013-02-27 端末装置及びプログラム

Country Status (4)

Country Link
US (1) US20150373296A1 (ja)
EP (1) EP2963920A1 (ja)
JP (1) JP5825279B2 (ja)
WO (1) WO2014132911A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001093226A (ja) * 1999-09-21 2001-04-06 Sony Corp 情報通信システムおよび方法、ならびに、情報通信装置および方法
US8234411B2 (en) * 2010-09-02 2012-07-31 Comcast Cable Communications, Llc Providing enhanced content
JP6167703B2 (ja) * 2013-07-08 2017-07-26 株式会社リコー 表示制御装置、プログラム及び記録媒体
US9996895B2 (en) * 2015-05-01 2018-06-12 Ricoh Company, Ltd. Image display system, information processing apparatus, and image display method
WO2017052001A1 (en) * 2015-09-23 2017-03-30 Lg Electronics Inc. Mobile terminal and controlling method thereof
KR102567002B1 (ko) * 2016-08-16 2023-08-14 삼성전자주식회사 영상 표시 장치 및 그 동작방법
KR102536945B1 (ko) * 2016-08-30 2023-05-25 삼성전자주식회사 영상 표시 장치 및 그 동작방법
US11395020B2 (en) * 2016-09-08 2022-07-19 Telefonaktiebolaget Lm Ericsson (Publ) Bitrate control in a virtual reality (VR) environment
KR20180037725A (ko) * 2016-10-05 2018-04-13 엘지전자 주식회사 디스플레이 장치
US10609283B2 (en) * 2017-04-01 2020-03-31 Intel Corporation Sharing panoramic video images over a wireless display session
US10743085B2 (en) * 2017-07-21 2020-08-11 Microsoft Technology Licensing, Llc Automatic annotation of audio-video sequences
JP2019105933A (ja) * 2017-12-11 2019-06-27 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、およびプログラム
US11831855B2 (en) * 2018-06-22 2023-11-28 Lg Electronics Inc. Method for transmitting 360-degree video, method for providing a user interface for 360-degree video, apparatus for transmitting 360-degree video, and apparatus for providing a user interface for 360-degree video
CN110446005A (zh) * 2019-07-09 2019-11-12 南京速瑞特信息科技有限公司 电网监控用视频接收装置及视频处理方法
CN111416942B (zh) * 2020-04-27 2021-06-29 深圳市瑞立视多媒体科技有限公司 限制相机搜索范围的方法、装置、设备及存储介质
CN112911371B (zh) * 2021-01-29 2023-05-05 Vidaa美国公司 双路视频资源播放方法及显示设备
WO2022165299A1 (en) * 2021-01-29 2022-08-04 VIDAA USA, Inc. Display apparatus

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6675386B1 (en) * 1996-09-04 2004-01-06 Discovery Communications, Inc. Apparatus for video access and control over computer network, including image correction
US5956081A (en) * 1996-10-23 1999-09-21 Katz; Barry Surveillance system having graphic video integration controller and full motion video switcher
US6504990B1 (en) * 1998-11-12 2003-01-07 Max Abecassis Randomly and continuously playing fragments of a video segment
JP3444801B2 (ja) * 1998-11-19 2003-09-08 株式会社ケンウッド 映像用光ディスク再生装置
US7782363B2 (en) * 2000-06-27 2010-08-24 Front Row Technologies, Llc Providing multiple video perspectives of activities through a data network to a remote multimedia server for selective display by remote viewing audiences
US7015976B1 (en) * 2000-08-07 2006-03-21 Ati International Srl Automatic panning of digital content while zoomed
US20020094026A1 (en) * 2001-01-12 2002-07-18 Edelson Steven D. Video super-frame display system
JP2003153250A (ja) * 2001-11-16 2003-05-23 Sony Corp 全方位映像における被写体の自動追尾表示システム及び自動追尾表示方法,全方位映像の配信システム及び配信方法,全方位映像の視聴システム,全方位映像の自動追跡表示用記録媒体
JP2004104556A (ja) * 2002-09-11 2004-04-02 Nippon Telegr & Teleph Corp <Ntt> 映像再生方法,映像再生装置,映像再生プログラムおよび映像再生プログラムの記録媒体
GB2395852B (en) * 2002-11-29 2006-04-19 Sony Uk Ltd Media handling system
JP2005341064A (ja) * 2004-05-25 2005-12-08 Sony Corp 情報送出装置、情報送出方法、プログラム及び記録媒体並びに表示制御装置及び表示方法
US20070124796A1 (en) * 2004-11-25 2007-05-31 Erland Wittkotter Appliance and method for client-sided requesting and receiving of information
EP2498210A1 (en) * 2005-07-22 2012-09-12 Kangaroo Media, Inc. System and methods for enhancing the experience of spectators attending a live sporting event
JP4408845B2 (ja) * 2005-07-27 2010-02-03 シャープ株式会社 映像合成装置及びプログラム
US8208792B2 (en) * 2006-09-12 2012-06-26 Panasonic Corporation Content shooting apparatus for generating scene representation metadata
WO2008151416A1 (en) * 2007-06-12 2008-12-18 In Extenso Holdings Inc. Distributed synchronized video viewing and editing
JP2009124516A (ja) 2007-11-15 2009-06-04 Sharp Corp 動画編集装置、再生装置、動画編集方法、及び再生方法
US7952596B2 (en) * 2008-02-11 2011-05-31 Sony Ericsson Mobile Communications Ab Electronic devices that pan/zoom displayed sub-area within video frames in response to movement therein
JP5293587B2 (ja) * 2009-12-16 2013-09-18 ソニー株式会社 表示制御装置、表示制御方法、プログラム
US9258530B2 (en) * 2010-04-09 2016-02-09 Canon Kabushiki Kaisha Method for accessing a spatio-temporal part of a compressed video sequence using decomposed access request
US9116988B2 (en) * 2010-10-20 2015-08-25 Apple Inc. Temporal metadata track
US20120098925A1 (en) * 2010-10-21 2012-04-26 Charles Dasher Panoramic video with virtual panning capability
US8970666B2 (en) * 2011-09-16 2015-03-03 Disney Enterprises, Inc. Low scale production system and method
US8594488B1 (en) * 2012-03-13 2013-11-26 Google Inc. Methods and systems for video retargeting using motion saliency
US20130259447A1 (en) * 2012-03-28 2013-10-03 Nokia Corporation Method and apparatus for user directed video editing

Also Published As

Publication number Publication date
WO2014132911A1 (ja) 2014-09-04
JP2014165839A (ja) 2014-09-08
US20150373296A1 (en) 2015-12-24
EP2963920A1 (en) 2016-01-06

Similar Documents

Publication Publication Date Title
JP6015493B2 (ja) 端末装置、及びプログラム
JP5825279B2 (ja) 端末装置及びプログラム
WO2014132987A1 (ja) 情報処理装置及び情報処理方法
US7823058B2 (en) Methods and apparatus for interactive point-of-view authoring of digital video content
JP6433559B1 (ja) 提供装置および提供方法、プログラム
JP5942933B2 (ja) 端末装置、及びプログラム
WO2020181084A1 (en) Method, apparatus, medium, terminal, and device for multi-angle free-perspective interaction
EP1579407A1 (en) Methods and apparatus for interactive map-based analysis of digital video content
EP1579674A2 (en) Methods and apparatus for interactive network sharing of digital video content
JP5838925B2 (ja) 通信システム、端末装置、動画の表示方法、及びプログラム
JP5928196B2 (ja) 通信システム、端末装置、登録方法、及びプログラム
JP2009177431A (ja) 動画像再生システム、サーバ装置、端末装置及び動画像生成方法等
JP2014072608A (ja) 情報処理システム、情報処理装置、表示装置、及びプログラム
JP6572368B2 (ja) 生成装置および生成方法、プログラム
JP5942932B2 (ja) 端末装置、及びプログラム
JP5850012B2 (ja) 情報処理装置、プログラム及び通信システム
JP7204843B2 (ja) 送信装置および送信方法、プログラム
JP6551107B2 (ja) サーバ装置、サーバプログラム、端末プログラム、動画送信方法、動画表示方法、通信システム
JP6931375B2 (ja) 送信装置および送信方法、プログラム
JP5854018B2 (ja) 通信システム、情報処理装置、及びプログラム
JP2009177430A (ja) 情報生成装置、情報生成方法及び情報生成プログラム
JP2015070419A (ja) 端末装置、及びプログラム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140902

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150727

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150928

R150 Certificate of patent or registration of utility model

Ref document number: 5825279

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150