(58)【調査した分野】(Int.Cl.,DB名)
前記役割が前記ライブ配信を視聴するための画面のメインカメラの場合における前記第二のビットレートは、前記役割がサブカメラの場合における前記第二のビットレートよりも高いことを特徴とする請求項11に記載の通信装置。
ライブ配信を実行している状態において、前記制御手段は、前記通信手段を介して前記外部装置から受信した前記ライブ配信の視聴者の情報に基づいて、前記第二のビットレートを変更する
ことを特徴とする請求項1から16のいずれか1項に記載の通信装置。
前記制御手段は、前記ライブ配信を行う他の通信装置と比較して、前記ライブ配信の視聴者の情報に含まれる視聴者の評価や人気が高い場合、前記ライブ配信を行う他の通信装置よりもビットレートを上げ、
前記ライブ配信を行う他の通信装置と比較して、前記ライブ配信の視聴者の情報に含まれる視聴者の評価や人気が低い場合、前記ライブ配信を行う他の通信装置よりもビットレートを下げる
ことを特徴とする請求項17に記載の通信装置。
【発明を実施するための形態】
【0009】
以下に、本発明を実施するための形態について、添付の図面を用いて詳細に説明する。
【0010】
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されてもよい。また、各実施の形態を適宜組み合せることも可能である。
【0011】
ここで輻輳は、ローカルエリアネットワーク(LAN)内で送受信されるすべてのパケットの容量の合計が大きく、LAN内の通信に遅延が発生し得るほど帯域が利用されている状況のこととする。
【0012】
[第1の実施形態]
<デジタルカメラの構成>
図1は、本実施形態の通信装置の一例であるデジタルカメラ100の構成例を示すブロック図である。なお、ここでは通信装置の一例としてデジタルカメラについて述べるが、通信装置はこれに限られない。例えば通信装置は、パーソナルコンピュータ、携帯電話、スマートフォン、タブレットデバイス、デジタルビデオカメラなどの情報処理装置であってもよい。
【0013】
制御部101は、入力された信号や、後述のプログラムに従ってデジタルカメラ100の各部を制御する。なお、制御部101が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
【0014】
撮像部102は、例えば、光学レンズユニットと絞り・ズーム・フォーカスなど制御する光学系と、光学レンズユニットを経て導入された光(映像)を電気的な映像信号に変換するための撮像素子などで構成される。撮像素子としては、一般的には、CMOS(Complementary Metal Oxide Semiconductor)や、CCD(Charge Coupled Device)が利用される。撮像部102は、制御部101に制御されることにより、撮像部102に含まれるレンズで結像された被写体光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行いデジタルデータを画像データや動画データとして出力する。本実施形態では、当該画像データまたは動画データを撮像し出力するための一連の処理を「撮影」という。本実施形態のデジタルカメラ100では、画像データは、DCF(Design Rule for Camera File system)の規格に従って、記録媒体110に記録される。
【0015】
不揮発性メモリ103は、電気的に消去・記録可能な不揮発性のメモリであり、制御部101で実行される後述のプログラム等が格納される。
【0016】
作業用メモリ104は、撮像部102で撮像された画像データや動画データを一時的に保持するバッファメモリや、表示部106の画像表示用メモリ、制御部101の作業領域等として使用される。
【0017】
操作部105は、ユーザがデジタルカメラ100に対する指示をユーザから受け付けるために用いられる。操作部105は例えば、ユーザがデジタルカメラ100の電源のON/OFFを指示するための電源ボタンや、撮影を指示するためのレリーズスイッチ、画像データの再生を指示するための再生ボタンを含む。さらに、後述の通信部111を介して外部機器との通信を開始するための専用の接続ボタンなどの操作部材を含む。また、後述する表示部106に形成されるタッチパネルも操作部105に含まれる。なお、レリーズスイッチは、SW1およびSW2を有する。レリーズスイッチが、いわゆる半押し状態となることにより、SW1がONとなる。これにより、AF(オートフォーカス)処理、AE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の撮影準備を行うための指示を受け付ける。また、レリーズスイッチが、いわゆる全押し状態となることにより、SW2がONとなる。これにより、撮影を行うための指示を受け付ける。
【0018】
表示部106は、撮影の際のビューファインダー画像の表示、撮影した画像データの表示、対話的な操作のための文字表示などを行う。なお、表示部106は必ずしもデジタルカメラ100が内蔵する必要はない。デジタルカメラ100は内部又は外部の表示部106と接続することができ、表示部106の表示を制御する表示制御機能を少なくとも有していればよい。
【0019】
記録媒体110は、撮像部102から出力された画像データや動画データを記録することができる。記録媒体110は、デジタルカメラ100に着脱可能なよう構成してもよいし、デジタルカメラ100に内蔵されていてもよい。すなわち、デジタルカメラ100は少なくとも記録媒体110にアクセスする手段を有していればよい。
【0020】
通信部111は、外部装置と接続するためのインターフェースである。本実施形態のデジタルカメラ100は、通信部111を介して、外部装置とデータを送受信できる。例えば、撮像部102で生成した動画データを、通信部111を介して外部装置に送信することができる。なお、本実施形態では、通信部111はIEEE802.11の規格に準拠した、いわゆる無線LANで通信するためのインターフェースを含む。制御部101は、通信部111を制御することで外部装置との無線通信を実現する。なお、通信方式は無線通信方式に限定されるものではなく、例えば既存の有線通信方式も含む。
【0021】
次に、デジタルカメラ100の外観について説明する。
図2(a)、および
図2(b)はそれぞれデジタルカメラ100の前面と後面の外観の一例を示す図である。レリーズスイッチ105aや再生ボタン105b、方向キー105c、タッチパネル105dは、前述の操作部105に含まれる操作部材である。また、表示部106には、撮像部102による撮像の結果得られた画像が表示される。
【0022】
以上がデジタルカメラ100の説明である。
【0023】
<マルチカメラライブ配信のシステム構成>
ライブ配信とは、テレビ放送の生放送のように、ストリーミング技術によってユーザがインターネット上でリアルタイムに動画を配信することである。さらに、ユーザは一つのWebページ上に複数の動画をライブ配信でき、その視聴者は複数の動画を切り替えてライブ配信を視聴することができる。以降、複数のカメラを用いたライブ配信をマルチカメラライブ配信という。本実施形態において、デジタルカメラ100はマルチカメラライブ配信に対応している通信装置の一例である。マルチカメラライブ配信とは、複数のデジタルカメラ100はそれぞれ撮影している動画データを外部サーバへ送信し、外部サーバがその動画データを1つのWebページで視聴できるように配信するライブ配信の手法である。
【0024】
ユーザはライブ配信を開始する前に、パソコンやスマートフォン等を用いてイベントをサーバに作成する。イベントは、例えばライブ配信の識別子、ライブ配信のタイトル、映像のビットレート、およびライブ配信に使用するデジタルカメラの数等のライブ配信に関する設定を含むデータである。ユーザはこのイベントをサーバに複数作成することができる。デジタルカメラはこのイベントをサーバから取得し、イベントに従ってライブ配信の処理を行う。また本実施形態において、マルチカメラライブ配信のイベントは、デジタルカメラごとに作成されるものとする。例えば3台のデジタルカメラでマルチカメラライブ配信を行う設定の場合、イベントは3つ作成される。ただし、本実施形態において、この3つのイベントにおいて、ライブ配信の識別子は共通であるとする。3台のデジタルカメラ100がこの3つのイベントをそれぞれサーバから受信することで、ユーザはその3台のデジタルカメラ100を用いてマルチカメラライブ配信することができる。
【0025】
図3(a)および
図3(b)は2台のデジタルカメラ100によってマルチカメラライブ配信されているWebページの一例である。以降、この2台のデジタルカメラ100を、それぞれカメラ1およびカメラ2と区別する。ここで、
図3(a)に示す画面が、ユーザがマルチカメラライブ配信をしているWebページを開いたとき、最初に表示される画面であるとする。Webページ上のマルチカメラライブ配信を視聴する画面において、ユーザが主に視聴する画面をメイン画面と称し、それ以外の画面をサブ画面と称する。メイン画面301では、カメラ1で撮影された動画が再生されており、サブ画面302およびサブ画面303ではそれぞれカメラ1およびカメラ2が撮影した動画がメイン画面301より小さい画面で再生されている。
図3(a)の状態において、ユーザは主にメイン画面301に映る動画を視聴することになる。ここでユーザがサブ画面303をクリックすると、
図3(b)に示すように、Webページ上でサブ画面303において再生されている動画がメイン画面301に再生される。さらに、ユーザは、
図3(b)の状態でサブ画面302をクリックすると、
図3(a)の状態に戻り、Webページ上でサブ画面302において再生されている動画がメイン画面301に再生される。このようにマルチカメラライブ配信では、視聴者は複数のデジタルカメラ100において撮影された動画を自由に切り替えて視聴することができる。以降、カメラ1をメインカメラ401、カメラ2をサブカメラ402として説明する。なお、本実施形態におけるマルチカメラライブ配信において、ユーザがデジタルカメラ100を3台以上用いてマルチカメラライブ配信を行ったとしても、メイン画面にはメインカメラ401で撮影した動画が映るものとする。
【0026】
図4はマルチカメラライブ配信のシステム構成図である。メインカメラ401およびサブカメラ402はデジタルカメラ100と同じ構成である。またアクセスポイント403およびサーバ404とサーバ404およびパソコン405とがインターネットを介して接続している。
【0027】
メインカメラ401およびサブカメラ402はアクセスポイント403が形成するLANに無線接続しており、撮影している動画データをアクセスポイント403を経由してサーバ404へ送信する。ここでアクセスポイント403が形成するLANの範囲に、サーバ404およびパソコン405は含まれないものとする。また、本実施形態において、メインカメラ401が送信した動画データは、ユーザがライブ配信しているWebページを開いたときに最初に再生される。サブカメラ402が送信した動画データは、ユーザがWebページを操作して再生する動画を切り替えることで再生される。例えば、
図3(a)において、カメラ1の動画はメインカメラ401によって撮影された動画であり、カメラ2の動画はサブカメラ402によって撮影された動画である。
【0028】
サーバ404はメインカメラ401およびサブカメラ402からインターネットを介して動画データを受信する。また、サーバ404はパソコン405からマルチカメラライブ配信の要求を受信すると、パソコン405へ動画データを送信する。
【0029】
以上が、マルチカメラライブ配信のシステム構成図についての説明である。
【0030】
<マルチカメラライブ配信の手順>
続いて第1の実施形態におけるマルチカメラライブ配信を行う手順について説明する。
【0031】
図5はマルチカメラライブ配信をする場合におけるメインカメラ401およびサブカメラ402の表示部106に表示される画面の一例を説明するための図である。また、
図6はマルチカメラライブ配信をする場合における、メインカメラ401、サブカメラ402、およびサーバ404のシーケンス図である。
図5を参照しながら
図6のシーケンス図を説明する。
【0032】
ステップS601では、ユーザは操作部105によってメインカメラ401のライブ配信のための機能を起動する。例えば、
図5(a)において、ユーザはメインカメラ401の画面のライブ配信501を選択する。
【0033】
ステップS602では、メインカメラ401はサーバ404にライブ配信のイベントを要求する。
【0034】
ステップS603では、サーバ404はメインカメラ401にイベントを送信する。ここで、イベントが複数ある場合、サーバ404はすべて送信する。
【0035】
ステップS604では、メインカメラ401はステップS603において受信したイベントの一覧を表示する。例えば、メインカメラ401は
図5(b)のようにイベントに含まれるタイトルの一覧を表示する。ユーザは
図5(b)において、イベント502を選択する。イベント502は、デジタルカメラがマルチカメラライブ配信におけるメインカメラ(
図3におけるカメラ1)として動画を送信するイベントである。メインカメラ401はイベント502に従ってライブ配信の処理を行う。ここで、イベント502に含まれる動画データのビットレートの設定を10Mbpsとする。
【0036】
ステップS605からステップS607の処理は、それぞれステップS601からステップS603までのメインカメラ401の処理と同様に、サブカメラ402が処理を行う。
【0037】
ステップS608では、サブカメラ402はステップS603において受信したイベントの一覧を表示する。サブカメラ402は
図5(b)のようにイベントに含まれるタイトルの一覧を表示する。ユーザは
図5(b)において、イベント503を選択する。イベント503は、デジタルカメラがマルチカメラライブ配信においてサブカメラ(
図3におけるカメラ2)として動画を送信するイベントである。サブカメラ402はイベント503に従ってライブ配信の処理を行う。なお、このイベントは、イベント502によるマルチカメラライブ配信と同じライブ配信において、デジタルカメラ100がサブカメラとしてライブ配信するイベントである。ここで、イベント503に含まれる動画データのビットレートの設定を8Mbpsとする。
【0038】
ステップS609ではユーザはメインカメラ401の操作部105を操作し、イベントを選択する。ユーザがイベント502を選択すると、メインカメラ401は
図5(c)のようにライブ配信前の待機画面を表示する。
図5(c)のダイアログボックス504は現在のライブ配信の設定を表示している。
【0039】
ステップS610では、メインカメラ401はマルチカメラライブ配信することをLAN内に接続する機器に通知する。例えば、メインカメラ401はイベント502に含まれるライブ配信の識別子を送信する。ここで、メインカメラ401はユーザによってライブ配信が開始されるまで、この通知を繰り返し送信する。なお、サブカメラ402はマルチカメラライブ配信に設定される前であるため、メインカメラ401による通知を無視する。
【0040】
ステップS611では、ユーザはサブカメラ402の操作部105を操作し、イベントを選択する。ユーザがイベント503を選択すると、サブカメラ402は
図5(c)と同様のUIによってライブ配信前の待機画面を表示する。
【0041】
ステップS612では、サブカメラ402はマルチカメラライブ配信することをLAN内に接続する機器に通知を送信する。例えば、サブカメラ402はイベント503に含まれるライブ配信の識別子を送信する。ここで、イベント502に含まれるライブ配信の識別子とイベント503に含まれるライブ配信の識別子は同一であるとする。メインカメラ401はこの通知を受信し、同じLAN内に同じマルチカメラライブ配信する他のデジタルカメラ100があることを検出する。例えば、メインカメラ401はステップS609において選択されたイベントのライブ配信の識別子と受信したライブ配信の識別子とを比較して、一致するか否か判断する。2つの識別子が一致した場合、メインカメラ401はサブカメラ402が同じライブ配信を行うと判断する。ここでメインカメラ401は
図5(d)のように、ビットレートを下げることを示す警告505を画面に表示する。これによってユーザはライブ配信する動画のビットレートが自動で変更されたことを認識できる。ここで、サブカメラ402はユーザによってライブ配信が開始されるまで、この通知を繰り返し送信する。
【0042】
ここで、ステップS613において、ステップS610と同様にメインカメラ401はマルチカメラライブ配信することをLAN内に接続する機器に通知を送信する。本ステップにおいて送信される通知は、ステップS612において受信したサブカメラ402の通知への応答ではなく、ステップS610から繰り返し送信される通知である。サブカメラ402はステップS611においてマルチカメラライブ配信の設定が為されたため、この通知を受信し、同じLAN内に同じマルチカメラライブ配信する他のデジタルカメラ100があることを検出する。例えば、サブカメラ402は設定されているイベントのライブ配信の識別子と受信したライブ配信の識別子とを比較して、一致するか否か判断する。2つの識別子が一致した場合、サブカメラ402はメインカメラ401が同じライブ配信を行うと判断する。また、サブカメラ402は
図5(c)と同様のUIによって警告を表示する。
【0043】
なお、ステップS612およびステップS613の処理の後も、メインカメラ401およびサブカメラ402はそれぞれステップS610およびステップS612の処理を繰り返し、ライブ配信が開始されるまで通知を送信し続ける。この通知を受信している間、メインカメラ401およびサブカメラ402はLAN内に同じマルチカメラライブ配信するカメラがいると認識できる。逆に、この通知が受信できない場合、メインカメラ401およびサブカメラ402はLAN内に同じマルチカメラライブ配信するカメラがいないと認識する。
【0044】
ステップS614では、メインカメラ401は、ステップS611においてサブカメラ402から同じライブ配信に動画を送信する通知を受信したため、サーバ404へ送信する動画データのビットレートを変更する。例えば、メインカメラ401は送信する動画のビットレートを10Mbpsから5Mbpsに下げる。
【0045】
ステップS615では、サブカメラ402はステップS611においてメインカメラ401から同じライブ配信に動画を送信する通知を受信したため、サーバ404へ送信する動画データのビットレートを変更する。例えば、サブカメラ402は送信する動画のビットレートを8Mbpsから4Mbpsに下げる。
【0046】
このように、メインカメラ401およびサブカメラ402は同じライブ配信するカメラの総数でビットレートを除算する。この場合におけるすべてのカメラから送信される動画データのデータ量の合計は、最もビットレートの高い1台のカメラからビットレートを下げずに送信される動画データのデータ量以下となる。これにより、デジタルカメラ100はデータ通信の輻輳を抑え、ライブ配信の遅延を低減できる。
【0047】
ステップS616では、ユーザはメインカメラ401を操作部105によって操作してライブ配信を開始する。本ステップにおいて、メインカメラ401は
図5(e)のように、メインカメラでライブ配信中であることを示す画面を表示する。ここでアイコン506は、このライブ配信においてメインカメラ401が送信した動画を視聴している人数を示している。メインカメラ401は後述するステップS617のライブ配信中にこの情報をサーバ404から受信する。
【0048】
ステップS617では、メインカメラ401はサーバ404にライブ配信を開始するための要求パケットを送信し、ライブ配信を開始する。メインカメラ401はライブ配信が開始されたことをトリガに、撮影した動画データを逐次(リアルタイムに)サーバ404へ送信する。ライブ配信中において、メインカメラ401はサーバ404からメインカメラ401が送信した動画を視聴している人数の情報を受信し、この情報をアイコン506に反映する。例えば、ライブ配信においてメインカメラ401が送信した動画を視聴している人数が5人だった場合、アイコンの上に5という数字を表示する。
【0049】
ステップS618およびステップS619では、それぞれステップS614およびステップS615のメインカメラ401の処理と同様に、サブカメラ402が処理を行う。
【0050】
ステップS620では、ユーザはメインカメラ401を操作部105によって、ライブ配信を終了するための操作を行う。
【0051】
ステップS621では、メインカメラ401はサーバ404にライブ配信を終了するための要求を送信し、ライブ配信を終了する。
【0052】
ステップS622およびステップS623は、それぞれステップS620およびステップS621のメインカメラ401の処理と同様に、サブカメラ402が処理を行う。
【0053】
以上が、マルチカメラライブ配信を行う手順の説明である。
【0054】
また、本実施形態ではライブ配信開始の要求を送信するサーバとライブ動画を送信するサーバを同一と想定しているが、それぞれ別のサーバを有していてもよい。
【0055】
また、ステップS614およびステップS615において、メインカメラ401とサブカメラ402はそれぞれのビットレートがどちらも同じになるように設定してもよい。メインカメラ401およびサブカメラ402のビットレートの設定を変更する方法は、メインカメラ401またはサブカメラ402の低い方のビットレートの設定に統一する方法や、任意のビットレートの設定に統一する方法等がある。なお、ステップS612およびステップS613において、メインカメラ401とサブカメラ402を特に区別せず、メインカメラ401およびサブカメラ402のビットレートの設定を所定の割合もしくは所定のビットレート値ずつ低くする方法もある。例えば、メインカメラ401はマルチカメラライブ配信するカメラが1台増えるごとにビットレートを10%もしくは1Mbps低くする。この場合、マルチカメラライブ配信するデジタルカメラ100が増えるほど送信される動画データのデータ量の合計は増加するが、ユーザは動画データのビットレートの低下をなるべく抑え、動画の画質をある程度維持しながらもライブ配信できる。
【0056】
また、ステップS612およびステップS613において、メインカメラ401はサブカメラ402よりもビットレートが高くなるように動画のビットレートを変更してもよい。この方法はライブ配信するユーザはメインカメラで撮影した動画をサブカメラで撮影した動画よりも画質を優先したい場合に有効である。この場合、メインカメラ401およびサブカメラ402はステップS612およびステップS613において、それぞれお互いのビットレートの値を送受信し、取得する。これによりメインカメラ401およびサブカメラ402は他のカメラのビットレートと自身のビットレートを比較し、メインカメラ401のほうがサブカメラ402よりもビットレートが高くなるようにビットレートを変更する。
【0057】
ステップS616において、メインカメラ401はライブ配信を視聴している人数を表示したが、他のライブ配信に関するデータを表示してもよい。たとえば、メインカメラ401はお気に入り登録しているユーザ数、コメント数、および高評価・低評価の数等を表示する。なお、サブカメラ402も同様のことができる。さらに、メインカメラ401およびサブカメラ402はこの情報をライブ配信中にお互いに通知することで、この情報をもとにビットレートを動的に変化させてもよい。例えば、メインカメラ401およびサブカメラ402のうち、ライブ配信を視聴している人が多い方のカメラはビットレートを上げ、もう片方のカメラはビットレートを下げる。このようにデジタルカメラ100が視聴者の評価や人気よってビットレートを調整することで、ユーザはライブ配信の視聴者にとって快適なライブ配信の提供が可能になる。
【0058】
なお、本実施形態ではメインカメラ401とサブカメラ402の2台のデジタルカメラを利用したマルチカメラライブ配信を説明したが、マルチカメラライブ配信に利用するデジタルカメラ100の数は複数であればよい。この場合、デジタルカメラ100が増えるほど、デジタルカメラ100は外部サーバに送信する動画データのビットレートを変化させる量を増やす。例えば、10Mbpsで動画データを送信する設定において、デジタルカメラ100はマルチカメラライブ配信を2台で行う場合は5Mbpsで動画データを送信し、3台で行う場合は約3.3Mbpsで動画データを送信する。
【0059】
また、本実施形態では、デジタルカメラ100の関係にメインカメラとサブカメラという役割を設定した。この役割は、例えばライブ配信するために必要な情報に含まれる。メインカメラであるデジタルカメラ100は、ステップS611において、サブカメラであるデジタルカメラ100に対してサブカメラのビットレートを指示してもよい。例えば、メインカメラであるデジタルカメラ100はサブカメラであるデジタルカメラ100に対して、3Mbpsの動画データを外部サーバに送信するよう指示する。なお、この役割はデジタルカメラ100を区別するための設定であり、デジタルカメラ100の優先順位等を必ずしも定めるものではない。
【0060】
<マルチカメラライブ配信のフローチャート>
図7はデジタルカメラ100の処理手順の一例を説明するフローチャートである。この処理は、不揮発性メモリ103に記録されたソフトウェアを作業用メモリ104に展開して制御部101が実行することで実現する。本実施形態において、メインカメラ401およびサブカメラ402はデジタルカメラ100と同じ動作をする。本フローチャートの処理は、
図5(a)のようにユーザによりライブ配信機能の選択が行われることで開始される。
【0061】
ステップS701において、制御部101はサーバ404に対して、イベントを取得するための要求パケットを送信する。この要求パケットに応じて、サーバ404は記録しているイベントをすべてデジタルカメラ100に送信する。本ステップは
図6のステップS602およびステップS606に対応する。
【0062】
ステップS702において、制御部101はサーバ404から送信されたイベントをすべて受信する。本ステップは
図6のステップS603およびステップS607に対応する。
【0063】
ステップS703において、制御部101はサーバ404から受信したイベントの一覧を表示部106に表示する。例えば、制御部101は表示部106に
図5(b)のようにイベントに含まれるタイトルの一覧を表示する。本ステップは
図6のステップS604およびステップS608に対応する。
【0064】
ステップS704において、制御部101は操作部105によってマルチカメラライブ配信のイベントが選択されたか否かを判断する。制御部101はマルチカメラライブ配信ではないイベントが選択されたと判断した場合、ステップS708へ進む。制御部101はマルチカメラライブ配信のライブ配信イベントが選択されたと判断した場合、ステップS705へ進む。本ステップは
図6のステップS609およびステップS611に対応する。
【0065】
ステップS705において、制御部101はマルチカメラライブ配信を行うことをブロードキャストでLAN内に通知する。例えば、制御部101はSimple Service Discovery Protocol(SSDP)という通信プロトコルに従って、同じLAN内にマルチカメラライブ配信する他のデジタルカメラ100へ通知を送信する。この通知はライブ配信の識別子を含む。本ステップは
図6のステップS610、ステップS612、およびステップS613に対応する。
【0066】
ステップS706において、制御部101は同じLAN内に同じマルチカメラライブ配信を行うことを通知している別のデジタルカメラ100があるか否かを判断する。例えば、制御部101は他のデジタルカメラ100からライブ配信の識別子を含む通知を受信する。制御部101はステップS704において選択されたイベントのライブ配信の識別子と受信したライブ配信の識別子とを比較して、一致するか否か判断する。2つの識別子が一致した場合、制御部101は同一LAN内に同じライブ配信を行う別のデジタルカメラ100があると判断する。同じLAN内に同じマルチカメラライブ配信を行うことを通知しているデジタルカメラ100が無いと判断した場合、処理はステップS708に進む。同一LAN内に同じマルチカメラライブ配信を行うことを通知しているデジタルカメラ100があると判断した場合、処理はステップS707に進む。なお、制御部101は同一LAN内に同じマルチカメラライブ配信を行うことを通知しているデジタルカメラ100があると判断した場合、そのデジタルカメラ100の台数も本ステップで計算する。また加えて、制御部101は表示部106にビットレートを下げることを示す警告を表示する。
【0067】
ステップS707において、制御部101はサーバ404へ送信する動画のビットレートを変更する処理を行う。例えば、制御部101は、ステップS706において取得したマルチカメラライブ配信するデジタルカメラ100の合計数でビットレートの設定値を除算した値にビットレートを設定する。本ステップにより、同一LAN内に同じマルチカメラライブ配信を行うデジタルカメラが複数台ある場合でも、デジタルカメラが送信する動画のパケットがネットワーク帯域を超えることは少なく、輻輳の発生を低減できる。本ステップは
図6のステップS614およびステップS615に対応する。
【0068】
ステップS708において、制御部101は操作部105によってライブ配信を開始する操作がなされたか否かを判断する。ライブ配信を開始する操作がなされてないと判断した場合、ステップS709へ進む。ライブ配信を開始する操作がなされたと判断した場合、ステップS710へ進み、ライブ配信を開始する。本ステップは
図6のステップS616およびステップS618に対応する。
【0069】
ステップS709において、制御部101は、イベントがマルチカメラライブ配信か否かを判断する。イベントがマルチカメラライブ配信ではないと判断した場合は、ステップS708の処理を繰り返し、ユーザによる指示を待機する。イベントがマルチカメラライブ配信であると判断した場合は、ステップS705に戻り、再度、同一LAN内に同じマルチカメラライブ配信を行うデジタルカメラ100が存在するかの判定を行う。
【0070】
ステップS710において、制御部101はサーバ404に対して、撮像部102において逐次撮影した動画データを逐次送信し、ライブ配信する。ここでサーバ404は、この動画を視聴者に配信する。本ステップは
図6のステップS617およびステップS619に対応する。ここで制御部101はライブ配信中において、サーバ404からデジタルカメラ100が送信した動画を視聴している人数の情報を受信し、この情報に基づいて表示部106の表示を更新する。
【0071】
ステップS711において、制御部101は操作部105によってライブ配信を終了する操作がなされたか否かを判断する。ライブ配信を終了する操作がなされてないと判断した場合、ステップS710に戻り、ライブ配信を継続する。ライブ配信を終了する操作がなされたと判断した場合、ステップS712へ進む。本ステップは
図6のステップS620およびステップS622に対応する。
【0072】
ステップS712において、制御部101はサーバ404に対して、ライブ配信を終了するための要求パケットを送信し、ライブ配信を終了する。本ステップは
図6のステップS621およびステップS623に対応する。
【0073】
以上、本実施形態のマルチカメラライブ配信におけるデジタルカメラ100の動作について説明した。
【0074】
なお、本実施形態では、イベントをサーバ404が記録している場合について説明したが、デジタルカメラ100がイベントを記録していてもよい。また、イベントは、サーバ404およびデジタルカメラ100のいずれでも作成可能である。デジタルカメラ100がイベントを記録または作成した場合、デジタルカメラ100はサーバ404からイベントを取得しなくてもよい。
【0075】
また、本実施形態においてデジタルカメラ100はマルチカメラライブ配信のイベントが選択されてからライブ配信が開始されるまで、他のカメラに通知を繰り返し送信したが(例えば
図6のステップS610)、通知を送信する方法はこれに限られない。例えば、メインカメラが通知を送信し続け、その応答を受け取った数でメインカメラおよびサブカメラの数を計算する。そして、メインカメラは次に送信する通知に計算した数を含めて送信すればよい。
【0076】
本実施形態では、複数台のデジタルカメラ100が同一LAN内でマルチカメラライブ配信を行う場合、デジタルカメラ100が送信する動画のビットレートを下げるため、輻輳の発生を低減することができる。また、輻輳の発生が低減されるため、デジタルカメラ100は動画の再送や送信待ちをする可能性が減る。この結果、複数台のデジタルカメラが同一LAN内でマルチカメラライブ配信を行う場合でも、ライブ配信の動画の遅延を発生しにくくできる。
【0077】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0078】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。