以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
図1は、本発明の実施の形態の1つにおける画像送信システムの全体概要を示す図である。図1を参照して、画像送信システム1は、物理的に離れた空間である会議室A,B,Cに区切られ、会議室A,B,Cにはネットワーク2が敷設される。会議室Aには、それぞれがネットワーク2に接続されたMFP(Multi Function Peripheral)100と、テレビ会議用端末装置200と、パーソナルコンピュータ(以下「PC」という)300とが設置される。会議室Bには、それぞれがネットワーク2に接続されたテレビ会議用端末装置200AとPC300A,300Bが設置され、会議室Cには、それぞれがネットワーク2に接続されたテレビ会議用端末装置200BとPC300C,300Dが設置される。また、ネットワーク2には、サーバ250が接続される。MFP100は、テレビ会議用端末装置200,200A,200B、PC300,300A〜300Dおよびサーバ250とネットワーク2を介して通信することが可能である。ここでは、会議室Aで発表者が発表する場合を例に説明する。
ネットワーク2は、ローカルエリアネットワーク(LAN)であり、接続形態は有線または無線を問わない。またネットワーク2は、LANに限らず、ワイドエリアネットワーク(WAN)、公衆交換電話網(PSTN)、インターネット等であってもよい。
なお、ここでは会議室A、会議室B、会議室Cの3つの物理的に離れた空間を配置する例を示すが、空間の数はこれに限定されることなく、会議室A,B,Cのいずれか1つであってもよいし、複数の会議室のうちから選ばれた2以上の組であってもよい。
PC300,300A〜300Dは、一般的なコンピュータであり、Webサーバに記憶されたWebページをダウンロードするためのブラウザプログラムと、動画像データをデコードし、動画像を再生するための動画再生プログラムと、がインストールされている。
MFP100は、原稿を読取るためのスキャナ装置、画像データに基づいて紙などの記録媒体に画像を形成するための画像形成装置およびファクシミリ装置を含み、画像読取機能、複写機能、ファクシミリ送受信機能を備えている。また、MFP100は、Webサーバおよびストリーミング送信サーバとして機能するためのプログラムがインストールされている。なお、本実施の形態においては画像送信装置の一例としてMFP100を例に説明するが、MFP100に代えて、静止画像を記録可能な装置、たとえば、プリンタ、ファクシミリ装置、パーソナルコンピュータ等であってもよい。また、MFP100は、構成及び機能が同じなので以下の説明では特に言及しない限りMFP100を例に説明する。
図2は、MFPの外観を示す斜視図である。図3は、MFPのハードウェア構成の一例を示すブロック図である。図2および図3を参照して、MFP100は、メイン回路110と、原稿を読み取るための原稿読取部130と、原稿を原稿読取部130に搬送するための自動原稿搬送装置120と、原稿読取部130が原稿を読み取って出力する静止画像を用紙等に形成するための画像形成部140と、画像形成部140に用紙を供給するための給紙部150と、ユーザインターフェースとしての操作パネル160と、を含む。メイン回路110は、CPU111と、通信インターフェース(I/F)部112と、ROM113と、RAM114と、EEPROM(Electronically Erasable and Programmable ROM)115と、大容量記憶装置としてのハードディスクドライブ(HDD)116と、ファクシミリ部117と、フラッシュメモリ118Aが装着されるカードインターフェース(I/F)118とを含む。CPU111は、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150および操作パネル160と接続され、MFP100の全体を制御する。
ROM113は、CPU111が実行するプログラム、またはそのプログラムを実行するために必要なデータを記憶する。RAM114は、CPU111がプログラムを実行する際の作業領域として用いられる。また、RAM114は、原稿読取部130から連続的に送られてくる静止画像を一時的に記憶する。
操作パネル160は、MFP100の上面に設けられ、表示部160Aと操作部160Bとを含む。表示部160Aは、液晶表示装置(LCD)、有機ELD(Electroluminescence Display)等の表示装置であり、ユーザに対する指示メニューや取得した画像データに関する情報等を表示する。操作部160Bは、複数のキーを備え、キーに対応するユーザの操作による各種の指示、文字、数字などのデータの入力を受付ける。操作部160Bは、表示部160A上に設けられたタッチパネルをさらに含む。
通信I/F部112は、MFP100をネットワーク2に接続するためのインターフェースである。CPU111は、通信I/F部112を介してテレビ会議用端末装置200,200A,200BまたはPC300,300A〜300Dとの間で通信し、データを送受信する。また、通信I/F部112は、ネットワーク2を介してインターネットに接続されたコンピュータと通信が可能である。
ファクシミリ部117は、公衆交換電話網(PSTN)に接続され、PSTNにファクシミリデータを送信する、またはPSTNからファクシミリデータを受信する。ファクシミリ部117は、受信したファクシミリデータを、HDD116に記憶する、または画像形成部140に出力する。画像形成部140は、ファクシミリ部117により受信されたファクシミリデータを用紙に印刷する。また、ファクシミリ部117は、HDD116に記憶されたデータをファクシミリデータに変換して、PSTNに接続されたファクシミリ装置に送信する。
カードI/F118は、フラッシュメモリ118Aが装着される。CPU111は、カードI/F118を介してフラッシュメモリ118Aにアクセス可能である。CPU111は、カードI/F118に装着されたフラッシュメモリ118Aに記録されたプログラムをRAM114にロードして実行する。なお、CPU111が実行するプログラムは、フラッシュメモリ118Aに記録されたプログラムに限られず、HDD116に記憶されたプログラムをRAM114にロードして実行するようにしてもよい。この場合、ネットワーク2に接続された他のコンピュータが、MFP100のHDD116に記憶されたプログラムを書換える、または、新たなプログラムを追加して書き込むようにしてもよい。さらに、MFP100が、ネットワーク2に接続された他のコンピュータからプログラムをダウンロードして、そのプログラムをHDD116に記憶するようにしてもよい。ここでいうプログラムは、CPU111が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
テレビ会議用端末装置200,200A,200Bの構成および機能は同じなので、ここではテレビ会議用端末装置200を例に説明する。図4は、テレビ会議用端末装置の機能概要の一例を示す機能ブロック図である。図4を参照して、テレビ会議用端末装置200は、テレビ会議用端末装置200の全体を制御するための制御部201と、テレビ会議用端末装置200をネットワーク2に接続するためのネットワークI/F207と、操作パネル205と、画像を投影する投影部203と、会議室内を撮像するためのカメラ204と、音声を収集するマイクロフォン208と、音声を出力するスピーカ209と、を含む。
カメラ204は、会議室A内を撮像し、撮像して得られる映像データを制御部201に出力する。マイクロフォン208は、音を収集し、音声データを制御部201に出力する。
制御部201は、CPUと、作業領域として用いられるRAMと、CPUが実行するプログラムを記憶するためのROMと、を含む。制御部201は、カメラ204から入力される映像データと、マイクロフォン208から入力される音声データとを、ネットワークI/F207を介して他のテレビ会議用端末装置200A,200Bに送信する。これにより、テレビ会議用端末装置200A,200Bにおいて、会議室A内を撮像した映像と会議室A内で集音された音声が、テレビ会議用端末装置200A,200Bで出力される。
また、制御部201は、ネットワークI/F207を介して他のテレビ会議用端末装置200A,200Bから受信する映像データを投影用のフォーマットに変換し、投影用のデータを投影部203に出力し、他のテレビ会議用端末装置200A,200Bから受信する音声データをスピーカ209に出力する。これにより、テレビ会議用端末装置200A,200Bにおいて、会議室B,C内をそれぞれ撮像した映像と会議室B,C内でそれぞれ集音された音声が、テレビ会議用端末装置200で出力される。
投影部203は、液晶表示装置、レンズおよび光源を備える。液晶表示装置は、制御部201から入力されるデータを表示する。光源から発せられる光は、液晶表示装置を透過し、レンズを介して外部に照射される。投影部203から照射される光が、スクリーンに照射されると、液晶表示装置に表示された画像を拡大した画像がスクリーンに映し出される。なお、反射率の高い面であれば、壁などを利用することができ、その場合にはスクリーンを設置する必要はない。操作パネル205は、ユーザインターフェースであり、液晶表示装置などの表示部と、複数のキーを含む操作部とを含む。
なお、ここでは、テレビ会議用端末装置200,200A,200Bが投影部203を有する例を説明するが、投影部203に代えて、LCD、有機ELD等のディスプレイであってもよい。
また、会議室Aに設置されたテレビ会議用端末装置200は、発表者の音声をマイクロフォン208で集音する。このため、テレビ会議用端末装置200の制御部201は、マイクロフォン208が出力する音声データを、ネットワークI/F207を介してMFP100に送信する。
PC300,300A〜300Dの構成および機能は同じなので、ここではPC300を例に説明する。図5は、PCのハードウェア構成の一例を示すブロック図である。図5を参照して、PC300は、PC300の全体を制御するためのCPU301と、CPU301が実行するプログラム等を記憶するためのROM302と、CPU301の作業領域として用いられるRAM303と、PC300をネットワークに接続するためのネットワークI/F304と、大容量記憶装置としてのHDD305と、表示部306と、ユーザの操作の入力を受付ける操作部307とを含む。
本実施の形態においては、会議の発表者が発表用の資料を静止画像としてPC300に記憶させ、その発表用の資料をテレビ会議用端末装置200,200A,200Bに表示させる場合を例に説明する。そして、会議の参加者がPC300A〜300Dを操作して、発表用資料を動画像で閲覧することができる場合を例に説明する。
図6は、MFPが備えるCPUが有する機能の一例をHDDに記憶するデータとともに示す機能ブロック図である。図6を参照して、MFP100が備えるCPU111は、静止画像を取得するための画像取得部51と、静止画像の指定を受け付ける指定受付部69と、静止画像を送信する静止画像送信部71と、Webページを含むコンテンツを生成するためのコンテンツ生成部53と、コンテンツの送信要求を受け付けるコンテンツ送信要求受付部59と、コンテンツの送信を要求するユーザを認証するためのユーザ認証部57と、コンテンツを送信するコンテンツ送信部61と、動画再生要求を受け付ける動画再生要求受付部63と、動画像を送信する送信部67と、静止画像から動画像を生成する動画像生成部65と、を含む。
画像取得部51は、静止画像を取得し、取得された静止画像を静止画像データ95としてHDD116に記憶する。これにより、HDDに静止画像データ95が記憶される。画像取得部51は、複数の静止画像を1つのまとまりとして取得する場合、複数の静止画像を1つのまとまりの静止画像データ95としてHDD116に記憶する。なお、静止画像データ95の格納先は、特に限定するものではないが、HDD116の予め定められた領域に格納するようにすれば、その領域に静止画像データが記憶されることをトリガとして、静止画像データ95を送信するようにすることができる。
より具体的には、ユーザが操作部160Bに原稿画像を読み取る原稿読取指示を入力する場合、画像取得部51は、操作部160Bから原稿読取指示が入力される。画像取得部51は、原稿読取指示が入力されると原稿読取部130に原稿画像を読み取らせ、原稿読取部130が原稿画像を読み取って出力する静止画像を、原稿読取部130から取得する。画像取得部51は、原稿読取部130が複数枚の原稿を読み取る場合、複数の静止画像を取得する。
また、画像取得部51は、HDD116に記憶されている静止画像データ95のファイル名を表示し、ユーザが操作部160Bに表示されたファイル名を選択する指示を入力する場合、画像取得部51は、操作部160Bから選択されたファイル名が入力される。画像取得部51は、選択されたファイル名の静止画像データ95をHDD116から取得する。画像取得部51は、取得された静止画像データ95を識別する識別情報をコンテンツ生成部53に出力する。画像取得部51は、複数のファイル名が選択される場合、複数の静止画像データ95を取得する。そして、取得された複数の静止画像データを1つの静止画像データ95としてHDD116に記憶する。
また、画像取得部51は、通信I/F部112がネットワーク2に接続されたPCからプリントデータを受信する場合、通信I/F部112がPCから受信するプリントデータを、通信I/F部112から取得する。画像取得部51は、通信I/F部112から取得したプリントデータを、静止画像に変換し、HDD116に静止画像データ95として記憶する。これにより、HDDに静止画像データ95が記憶される。画像取得部51は、複数ページのプリントデータを取得する場合、プリントデータに含まれる複数のページそれぞれを複数の静止画像に変換する。そして、変換した複数の静止画像を1つの静止画像データ95としてHDD116に記憶する。
また、通信I/F部112がネットワーク2に接続されたPCから静止画像を、例えばFTP(File Transfer Protocol)またはSMB(Server Message Block)の通信プロトコルで受信する場合、通信I/F部112がPCから受信する静止画像を静止画像データ95としてHDD116に記憶する。画像取得部51は、複数の静止画像を取得する場合、取得された複数の静止画像を1つの静止画像データ95としてHDD116に記憶する。
コンテンツ生成部53は、コンテンツを生成し、HDD116に記憶する。具体的には、発表者がPC300を操作し、プロジェクタ設定画面の送信をMFP100に送信すると、コンテンツ生成部53は、プロジェクタ設定画面をPC300に送信し、PC300のユーザがプロジェクタ設定画面に従って入力する静止画像を識別するための静止画像識別情報と、静止画像を送信する先の装置識別情報と、コンテンツを記憶するためのHDD116における位置情報とをPC300から取得する。
図7は、プロジェクタ設定画面の一例を示す図である。図7を参照して、プロジェクタ設定画面500は、静止画像を指定する領域情報501と、静止画像を送信するプロジェクタを指定する領域503A〜503Cと、コンテンツを記憶するための位置情報を指定する領域505と、OKの文字が表されたボタン507と、Cancelの文字が表されたボタン509と、を含む。領域501には、画像取得部51により取得された静止画像を識別するための静止画像識別情報が入力される。静止画像識別情報は、それが記憶される位置情報とファイル名とを含む。領域503A〜503Cは、静止画像を出力する先の装置の装置識別情報が入力される。ここでは、装置識別情報をその装置に付された名称とし、テレビ会議用端末装置200の名称「プロジェクタA」と、テレビ会議用端末装置200Aの名称「プロジェクタB」と、テレビ会議用端末装置200Bの名称「プロジェクタC」とが入力される。領域505には、コンテンツを保存する位置情報が入力される。ここでは、HDD116に「¥¥投影box¥kaigi」の名称で予め生成された記憶領域が入力される場合を例に示している。
発表者が、プロジェクタ設定画面に従って、静止画像識別情報と、送信先の装置識別情報と、コンテンツの保存先の位置情報とを入力すると、コンテンツ生成部53は、コンテンツを生成する。コンテンツは、後述する動画像を再生するためのコマンドを含む。その一例を具体的に説明すると、コンテンツは、Webページと、メタファイルとを含む。メタファイルは、マークアップ言語で記述され、動画像をリアルタイムで送信するためのコマンドを含む。メタファイルに含まれるコマンドは、後述する動画像ファイルのネットワーク2上の位置情報を含む。コマンドは、例えば、RTSP(Real Time Streaming Protocol)またはMMS(Microsoft Media Server)の通信プロトコルで通信するためのコマンドである。位置情報は、MFP100に割り当てられたIPアドレスと、メタファイルが記憶されるHDD116におけるメタファイルへの絶対パスを含む。位置情報は、動画像ファイルのネットワーク上の位置情報を示し、ここではURL(Uniform Resource Locator)を用いている。コンテンツ生成部53は、生成したメタファイルをHDD116に記憶する。
次に、コンテンツ生成部53は、Webページを生成し、WebページをHDD116の所定の位置に記憶する。所定の位置は、発表者がプロジェクタ設定画面に従って入力したコンテンツの保存先の位置情報により定まる。Webページは、メタファイルのネットワーク2上の位置情報(URL)を含む。このため、Webページが、ブラウザプログラムがインストールされたPC300A〜300Dのいずれかで表示されると、PC300A〜300Dそれぞれは、メタファイルのURLに基づいて、MFP100からメタファイルをダウンロード可能となる。PC300A〜300Dそれぞれがメタファイルをダウンロードした場合の処理の詳細は後述する。Webページは、さらに、動画像を一時停止させる指示を受け付けるコマンドと、動画像を早送りする指示を受け付けるコマンドと、動画像を早戻しする指示を受け付けるコマンドとを含む。
さらに、コンテンツ生成部53は、動画像レコードを生成し、HDD116に記憶される動画像テーブル93に動画像レコードを追加して記憶する。図8は、動画像テーブルに含まれる動画像レコードの一例を示す図である。図8を参照して、動画像レコードは、動画像識別情報と、発表者がプロジェクタ設定画面に従って入力した静止画像識別情報とを含み、それらを関連付ける。動画像レコードは、発表者がプロジェクタ設定画面に従って静止画像識別情報を入力するごとに1つ生成され、動画像テーブル93に追加される。動画像識別情報は、後述する動画像生成部65により生成される動画像を識別するための情報であり、ここではファイル名を用いている。動画像識別情報は、HDD116における絶対パスを含む。
図6に戻って、指定受付部69は、通信I/F部112がPC300から静止画像を指定する指定コマンドを受信すると、通信I/F部112から指定コマンドを受け付ける。たとえば、PC300に、テレビ会議用端末装置200,200A,200Bに表示させる静止画像を指定するための制御画面を送信し、PC300から静止画像識別情報を含む指定コマンドを受信する。指定受付部69は、受信した指定コマンドを静止画像送信部71に出力する。なお、MFP100を直接操作する場合は、静止画像を指示する操作を受け付けると、指示された静止画像の静止画像識別情報を含む指定コマンドを静止画像送信部71に出力する。
静止画像送信部71は、指定コマンドが入力されると、指定コマンドで特定される静止画像をHDD116に記憶された静止画像データ95から読出し、発表者がプロジェクタ設定画面に従って入力した装置識別情報で特定されるテレビ会議用端末装置、ここでは、テレビ会議用端末装置200,200A,200Cに静止画像を送信する。これにより、テレビ会議用端末装置200,200A,200Cにより、発表者が指定した静止画像が投影される。
動画像生成部65は、静止画像送信部71が送信する静止画像を含む動画像を生成し、生成した動画像をHDD116に記憶する。また、動画像生成部65は、通信I/F部112がテレビ会議用端末装置200から受信する音声データを、動画像と同期させてHDD116に記憶する。動画像のファイル名は、静止画像送信部71が送信する静止画像の静止画像識別情報と、動画像テーブル93により関連付けられた動画像のファイル名である。このため、動画像生成部65は、静止画像送信部71が送信する静止画像の静止画像識別情報を含む動画像レコードを、HDD116に記憶されている動画像テーブル93から抽出し、抽出した動画像レコードに含まれる動画像ファイルのURLを取得する。そして、動画像生成部65は、生成する動画像を取得したURLで特定される位置に記憶する。動画像生成部65が生成する動画像は、解像度を静止画像のそれよりも低くするのが好ましい。送信するデータ量を少なくして、通信負荷を軽減するとともに、動画像の画質を静止画像よりも劣化させる。これにより、動画像のフレームがハードプリントなどされた場合に、印刷された画像の画質を静止画像より劣らせるとともに、静止画像と区別することができる。
PC300Aのユーザは、MFP100のHDD116を検索し、予め定められた記憶領域、ここでは、「¥¥投影box」を参照することにより、コンテンツのURL「¥MFP¥投影box¥kaigi」を知ることができる。したがって、PC300Aのユーザは、PC300Aにブラウザプログラムを実行させ、コンテンツのURL「¥MFP¥投影box¥kaigi」を入力することにより、PC300AがMFP100にコンテンツ送信要求を送信する。
MFP100は、Webサーバとして機能し、通信I/F部112がコンテンツ送信要求を受信すると、コンテンツ送信要求受付部59は、通信I/F部112からコンテンツ送信要求と、PC300A〜300Dのうちコンテンツ送信要求を送信してきたPCのIP(Internet Protocol)アドレスとを受け付ける。ここでは、PC300Aがコンテンツ送信要求を送信してきた場合を例に説明する。
コンテンツ送信要求受付部59は、受け付けたIPアドレスを、まず、ユーザ認証部57に出力し、ユーザ認証部57による認証が成功することを条件に、コンテンツ送信要求とコンテンツ送信要求を送信してきたPC300AのIPアドレスとをコンテンツ送信部61に出力する。
ユーザ認証部57は、コンテンツ送信要求受付部59から入力されるIPアドレスに基づいて、コンテンツ送信要求を送信してきたPC300Aにログインを要求するための認証用Webページを送信する。この認証用Webページは、認証情報としてパスワードを入力する領域を有し、その領域に入力されたパスワードをMFP100に送信するコマンドを含む。PC300Aのユーザが、パスワードをPC300Aの操作部307に入力すれば、PC300AはネットワークI/F304を介してパスワードをMFP100に送信する。PC300Aから送信されるパスワードは、MFP100の通信I/F部112により受信されるので、ユーザ認証部57は、通信I/F部112からパスワードを受け付ける。そして、受け付けたパスワードが、参加者として予め登録されたユーザのパスワードと一致すれば認証成功と判断し、一致しなければ認証失敗と判断する。参加者として予め登録されたユーザか否かは、HDD116に予め記憶される参加者テーブルにより判断する。この参加者テーブルは、サーバ250に予め記憶するようにし、そのサーバ250から取得する。
図9は、参加者テーブルの一例を示す図である。参加者テーブルは、会議の参加者として予め登録されたユーザごとに、そのユーザに関する情報を定義する参加者レコードを含む。図9を参照して、参加者レコードは、ユーザ名の項目と、IPアドレスの項目と、発表者の項目とを含む。ユーザ名の項目は、会議の参加者を識別するためのユーザ識別情報が設定される。IPアドレスの項目は、そのユーザが所有するPCに割り当てられたIPアドレスが設定される。発表者の項目は、発表者の有無を区別するための種別が設定され、発表者の場合に「○」印が設定される。
図6に戻って、ユーザ認証部57は、認証成功と判断する場合、コンテンツ送信要求受付部59に認証成功を示す信号を出力する。また、ユーザ認証部57は、認証が成功すると、PC300Aとの間で通信のセッションを確立する。セッションは、所定時間の経過、またはPC300Aからのセッションの切断を指示する信号が受信されるまで、継続される。
コンテンツ送信部61は、コンテンツ送信要求受付部59からURLと、IPアドレスとが入力されると、URLで特定されるWebページをHDD116から読出し、IPアドレスに基づいてコンテンツ送信要求を送信してきたPC300AにWebページを通信I/F部112を介して送信する。Webページを受信するPC300Aにおいては、ブラウザプログラムが実行され、Webページが表示部306に表示される。
図10は、Webページの画面の一例を示す図である。図10を参照して、PC300Aに表示されるWebページの画面600は、動画像を表示する領域601と、再生を指示するための再生ボタン603と、一時停止を指示するための一時停止ボタン605と、早送りを指示するための早送りボタン607と、早戻しを指示するための早戻しボタン609と、を含む。動画像を表示する領域601は、CPU301により動画再生プログラムが実行されることにより生成される動画像が表示される。
再生ボタン603は、Webページに含まれるメタファイルのURLとリンクされており、再生ボタン603が操作部207により指示されると、メタファイルのURLを含み、メタファイルの送信を要求する信号がネットワークI/F304を介して、MFP100に送信される。メタファイルの送信を要求する信号は、リアルタイムストリーミング送信を要求する信号の一部である。一時停止ボタン605が指示されると一時停止を指示する制御コマンドがMFP100に送信され、早送りボタン607が指示されると早送りを指示する制御コマンドがMFP100に送信され、早戻しボタン609が指示されると早戻しを指示する制御コマンドがMFP100に送信される。
なお、ここではブラウザプログラムが表示するWebページの画面600中に、動画再生プログラムが再生する動画像を表示するための画面を表示する領域601を含む、いわゆるエンベット形式のWebページについて説明したが、ブラウザプログラムがWebページを表示する画面とは別の画面を動画再生プログラムが表示し、その画面の中で動画像を再生する、いわゆるポップアップ形式のWebページとしてもよい。
図6に戻って、MFP100において、PC300Aから送信されるメタファイルの送信を要求する信号が通信I/F部112により受信されると、動画再生要求受付部63は通信I/F部112からメタファイルの送信を要求する信号と、それを送信してきたPC300AのIPアドレスとを受け付ける。動画再生要求受付部63は、PC300Aとのセッションが確立されていることを条件に、メタファイルの送信を要求する信号に含まれるURLで特定されるメタファイルをHDD116から読出し、通信I/F部112から受け付けたIPアドレスに基づいてメタファイルをPC300Aに送信する。
メタファイルを受信したPC300Aにおいては、動画再生プログラムが実行されており、動画再生要求信号をMFP100にネットワークI/F304を介して送信する。動画再生要求信号は、リアルタイムストリーミング送信を要求する信号の一部であり、メタファイルに含まれるコマンドを含む。
MFP100において、PC300Aから送信される動画再生要求信号が通信I/F部112により受信される。MFP100は、動画送信サーバとして機能し、通信I/F部112が動画再生要求信号を受信すると、動画再生要求受付部63は通信I/F部112から動画再生要求信号と、動画再生要求信号を送信してきたPC300AのIPアドレスとを受け付ける。動画再生要求信号は、動画像をリアルタイムで送信するためのコマンドであり、動画像ファイルのURLを含む。動画再生要求受付部63は、PC300Aとのセッションが確立されていることを条件に、送信部67に動画像ファイルのURLとIPアドレスとを出力する。
送信部67は、動画再生要求受付部63から入力される動画像ファイルのURLで特定される位置に記憶されている動画像をHDD116から読出し、IPアドレスに基づいて動画像をPC300Aに送信する。PC300Aにおいては、動画像再生プログラムが実行されているので、MFP100から送信される動画像がネットワークI/F304で受信されると、受信された動画像を表示部306に表示する。このため、PC300のユーザは、MFP100に記憶された静止画像を、動画像で視認することができる。また、静止画像に代えて動画像が送信されるので静止画像の複製がPC300のHDD305に記憶されないようにすることができる。一方、動画像はリアルタイム送信されるので、PC300のHDD305に、動画像が記憶されない。このため、動画像に基づいて静止画像の複製が生成されるのを防止することができる。さらに、動画像の解像度を静止画像の解像度よりも低くするので、動画像がHDD305に記憶されたとしても、静止画像よりも画質が悪くなり、動画像のフレームをハードプリントしたとしても印刷される画像は、静止画像よりも悪くなる。このため、静止画像そのものの複製がHDD305に記憶されるのを防止することができる。
一方、PC300Aで表示されているWebページ600は、一時停止ボタン605と、早送りボタン607と、早戻しボタン609とを含む。送信部67は、通信I/F部112がPC300Aから一時停止を指示する制御コマンドを受信すると、動画像の再生を一時中止し、そのときの画像を送信する。また、通信I/F部112がPC300Aから早送りを指示する制御コマンドを受信すると、動画像のフレームを間引きして送信する。さらに、通信I/F部112がPC300Aから早戻しを指示する制御コマンドを受信すると、動画像の再生を逆に再生するとともにフレームを間引きして送信する。
なお、コンテンツ生成部53が生成するコンテンツとして、コンテンツがWebページと、メタファイルとを含む例を説明したが、動画像をリアルタイムで送信するためのコマンドを含むWebページを生成するようにしてもよい。この場合、動画像をリアルタイムで送信するためのコマンドは、例えば、JAVA(登録商標)スクリプトで記述される。
図11は、画像出力処理の流れの一例を示すフローチャートである。画像出力処理は、MFP100が備えるCPU111が画像出力プログラムを実行することによりCPU111により実行される処理である。画像出力プログラムは、画像送信プログラムの一部である。図11を参照して、CPU111は、原稿読取指示を受け付けたか否かを判断する(ステップS01)。ユーザが操作部160Bに原稿画像を読み取る原稿読取指示を入力する場合、CPU111は、操作部160Bから原稿読取指示が入力される。原稿読取指示は、例えば、操作部160Bに設けられたスキャンボタンの押下の後、スタートボタンが押下されることにより受け付けられる。原稿読取指示が入力されたならば処理をステップS02に進めるが、そうでなければ処理をステップS05に進める。
ステップS02においては、原稿読取部130に原稿画像を読み取らせ、原稿読取部130が原稿画像を読み取って出力する静止画像を、原稿読取部130から取得する。一方、ステップS05においては、通信I/F部112がネットワーク2に接続されたPCから静止画像を受信したか否かを判断する。静止画像を受信したならば処理をステップS03に進めるが、そうでなければ処理をステップS06に進める。ステップS06においては、通信I/F部112がPCからプリントデータを受信したか否かを判断する。プリントデータを受信したならば処理をステップS07に進め、そうでなければ処理をステップS08に進める。ステップS07においては、プリントデータから静止画像を生成し、処理をステップS03に進める。
ステップS03においては、ステップS02において取得された静止画像、ステップS05において受信された静止画像、またはステップS07において生成された静止画像を静止画像データ95としてHDD116に記憶し、HDD116に記憶された静止画像データ95のファイル名を取得し(ステップS04)、処理をステップS11に進める。ステップS02において原稿読取部130が複数枚の原稿を読み取る場合、ステップS05において通信I/F部112が複数の静止画像を受信する場合、またはステップS06において複数ページのプリントデータを受信する場合、複数の静止画像を1つのまとまりの静止画像データ95としてHDD116に記憶し、その静止画像データ95のファイル名を取得する。
ステップS08においては、HDD116に記憶されている静止画像データのファイル名を表示し、ユーザが操作部160Bに表示されたファイル名のうちからいずれかの指定を受け付ける。そして、指定された静止画像データのファイル名を取得し(ステップS09)、指定が終了したか否かを判断する(ステップS10)。指定が終了したならば処理をステップS11に進めるが、そうでなければ処理をステップS08に戻す。指定の終了は、ユーザが操作部160Bに指定の終了を指示する操作を入力することにより、受け付けられる。これにより、少なくとも1つの静止画像データのファイル名が取得される。
ステップS11においては、ステップS04またはステップS09において取得された静止画像データ95のファイル名と、動画像のファイル名とを含む動画像レコードを生成する。そして、生成した動画像レコードを、HDD116に記憶される動画像テーブル93に追加して記憶する(ステップS12)。
次のステップS13においては、プロジェクタ設定を受け付けたか否かを判断する。プロジェクタ設定を受け付けるまで待機状態となり(ステップS13でNO)、プロジェクタ設定を受け付けたならば処理をステップS14に進める。具体的には、プロジェクタ設定画面の送信を要求してきたPC300に、図7に示したプロジェクタ設定画面を送信し、PC300のユーザがプロジェクタ設定画面に従って入力する静止画像を識別するための静止画像識別情報と、静止画像を送信する先の装置識別情報と、コンテンツを記憶するためのHDD116における位置情報とをPC300から取得することにより、プロジェクタ設定を受け付ける。なお、ここではMFP100をPC300から遠隔操作する場合を例に説明するが、ユーザがMFP100を直接操作するようにしてもよい。この場合、プロジェクタ設定画面を、表示部160Aに表示する。
ステップS14においては、動画像をリアルタイム送信するためのコマンドを生成する。具体的には、メタファイルを生成してHDD116に記憶し、メタファイルのURLを含むコマンドを生成する。メタファイルは、マークアップ言語で記述され、動画像をリアルタイムで送信するためのコマンドを含む。メタファイルに記述されるコマンドは、後述する動画像ファイルのURLを含み、例えば、RTSPまたはMMS(等のリアルタイム送信のための通信プロトコルで通信するためのコマンドである。動画像ファイルのURLは、HDD116に記憶されている動画像テーブル93に含まれる動画像レコードのうちステップS13においてPC300から取得された静止画像識別情報を含む動画像レコードの動画像識別情報の項目に設定されている動画像識別情報である。
そして、Webページを生成し(ステップS15)、WebページをHDD116の予め定められた位置に記憶する(ステップS16)。予め定められた位置は、ステップS13においてPC300から取得したコンテンツを記憶するためのHDD116における位置情報で特定される位置である。Webページは、ステップS13において生成されたリアルタイム送信するためのコマンドと、制御コマンドとを含む。
次のステップS17においては、静止画像の指定を受け付けたか否かを判断する。通信I/F部112がPC300から静止画像を指定する指定コマンドを受信するまで待機状態となり(ステップS17でNO)、指定コマンドを受信すると(ステップS17でYES)、その指定コマンドを受け付け、処理をステップS18に進める。PC300に、テレビ会議用端末装置200,200A,200Bに表示させる静止画像を指定するための制御画面を送信し、PC300から静止画像識別情報を含む指定コマンドを受信する。
ステップS18においては、受け付けられた指定コマンドに含まれる静止画像識別情報で特定される静止画像を、HDD116に記憶されている静止画像データ95から読出し、読み出した静止画像を、ステップS13において受け付けられたプロジェクタ設定に含まれる装置識別情報で特定されるテレビ会議用端末装置200,200A,200Bに送信する。これにより、テレビ会議用端末装置200,200A,200Bそれぞれにおいて、PC300のユーザが指定した静止画像が投影され、静止画像が表示される。
ステップS19においては、動画像の生成および記憶を開始する。静止画像を送信してから次の静止画像が送信されるまで、先に送信した静止画像を含む動画像を生成する。そして、生成した動画像を、ステップS13において受け付けられたプロジェクタ設定に含まれる位置情報で特定される位置に記憶する。たとえば、所定の時間間隔で生成される動画像を、動画像ファイルに順に追加して記憶する。
次のステップS20においては、静止画像の切換指示を受け付けたか否かを判断する。通信I/F部112がPC300から静止画像を指定する指定コマンドを受信したならば、その指定コマンドを受け付け、処理をステップS21に進めるが、そうでなければ処理をステップS22に進める。
ステップS21においては、ステップS20において受け付けられた指定コマンドに含まれる静止画像識別情報で特定される静止画像を、HDD116に記憶されている静止画像データ95から読出し、読み出した静止画像を、ステップS13において受け付けられたプロジェクタ設定に含まれる装置識別情報で特定されるテレビ会議用端末装置200,200A,200Bに送信する。ステップS19において動画像の生成およい記録が開始されているので、静止画像が切り換えられると、切り換えられた後の静止画像を含む動画像が記憶される。
ステップS22においては、会議が終了したか否かを判断する。会議が終了した場合には処理をステップS23に進めるが、そうでなければ処理をステップS20に戻す。PC300から終了コマンドを受信する場合、または、PC300との通信セッションが切断された場合に会議が終了したと判断する。PC300は、制御画面に予め設けられた会議終了ボタンが指示されると、終了コマンドを送信するようにすればよい。
ステップS23においては、動画像の生成を終了する。そして、HDD116に記憶された動画像を消去し(ステップS24)、処理を終了する。会議が終了すると、動画像が消去されるので、動画像が会議の終了後にダウンロードされることがなく、セキュリティを向上させることができる。
MFP100が動画出力処理を実行すると、PC300のユーザである発表者がプロジェクタ設定画面に従って入力した位置情報にWebページが記憶される。ここでは、位置情報を「¥¥投影box¥kaigi」としている。会議の参加者であるユーザがPC300A,300B,300Cを操作し、MFP100のHDD116が有する「¥¥投影box」に記憶されているファイルを参照すれば、「¥¥投影box¥kaigi」のURLを取得することができる。ユーザがPC300A,300B,300Cを操作し、PC300A,300B,300Cにブラウザプログラムを実行させ、WebページのURLを指示すれば、Webページが表示部206に表示される。ここでは、図10に示したWebページがPC300A,300B,300Cの表示部306に表示される。ここで、ユーザがWebページに含まれる再生ボタン603を操作部307で指示すると、メタファイルのURLを含み、メタファイルの送信を要求する信号がネットワークI/F304を介してMFP100に送信される。
また、ユーザがWebページに含まれる一時停止ボタン605、早送りボタン607および巻き戻しボタン609のいずれかを指示すれば、それらに対応する制御コマンドがネットワークI/F304を介してMFP100に送信される。
図12は、動画送信処理の流れの一例を示すフローチャートである。動画送信処理は、MFP100が備えるCPU111が動画送信プログラムを実行することによりCPU111により実行される処理である。動画送信プログラムは、画像送信プログラムの一部である。図12を参照して、CPU111は、WebページのURLを含むWebページの送信指示を受信したか否かを判断する(ステップS31)。Webページの送信指示を受信するまで待機状態となり(ステップS31でNO)、Webページの送信指示を受信したならば(ステップS31でYES)、処理をステップS32に進める。ここでは、PC300AからWebページの送信指示を受信する例を説明する。
ステップS32においては、認証情報を要求する。具体的には、ステップS31において受信された送信指示を送信してきたPC300Aに割り当てられたIPアドレスに基づいて、PC300Aにログインを要求するための認証用Webページを送信する。この認証用Webページは、認証情報としてパスワードを入力する領域を有し、その領域に入力されたパスワードをMFP100に送信するコマンドを含む。PC300Aのユーザが、パスワードをPC300Aの操作部307に入力すれば、PC300AはネットワークI/F304を介してパスワードをMFP100に送信する。
ステップS33においては、認証情報としてのパスワードを受信したか否かを判断する。パスワードを受信したならば処理をステップS34に進めるが、そうでなければ処理をステップS31に戻す。パスワードを受信しない場合は、認証が失敗した場合と同様に取り扱うためである。
ステップS34においては、認証情報に基づく認証が成功したか否かを判断する。認証に成功したならば処理をステップS35に進め、そうでなければ処理をステップS31に戻す。ステップS33においてPC300Aから受信されたパスワードが、予め定められたパスワードと一致すれば認証成功と判断し、一致しなければ認証失敗と判断する。
ステップS35においては、ステップS31において受信された送信指示を送信してきたPC300Aとの間のセッションを確立する。ステップS36においては、リアルタイムストリーミング送信要求があったか否かを判断する。リアルタイムストリーミング送信要求があるまで待機状態となり(ステップS36でNO)、リアルタイムストリーミング送信要求があったならば(ステップS36でYES)、処理をステップS37に進める。また、リアルタイムストリーミング送信要求があるか否かは、セッションが確立されていることを条件に判断される。リアルタイムストリーミング送信要求の存否は、メタファイルの送信を要求する信号と動画再生要求信号とを受信したか否かにより判断する。まず、メタファイルの送信を要求する信号を受信したならば、メタファイルの送信を要求する信号に含まれるURLで特定されるメタファイルをHDD116から読出し、メタファイルをPC300Aに送信する。メタファイルを受信したPC300Aにおいては、動画再生要求信号をMFP100にネットワークI/F304を介して送信するので、PC300が送信する動画再生要求信号を受信する。
ステップS37においては、ステップS36において受信された動画再生要求信号に含まれるコマンドに含まれる動画像ファイルのURLを取得し、そのURLで特定される動画像をHDD116から読み出し、動画再生要求を送信してきたPC300Aへの送信を開始する。
ステップS38においては、制御コマンドを受信したか否かを判断する。制御コマンドを受信したならば処理をステップS39に進め、そうでなければ処理をステップS40に進める。ステップS39においては、送信する動画像を制御コマンドに従って制御する。一時停止を示す制御コマンドが受信されたならば動画像を一時停止した静止画像を送信し、早送りを示す制御コマンドが受信されたならば動画像を早送りして送信(フレームを間引いて送信)し、早戻しを示す制御コマンドが受信されたならば動画像を早戻しして送信(動画像を逆に再生し、かつフレームを間引いて送信)し、再生を示す制御コマンドが受信されたならば動画像を記録した速度で再生して送信する。
ステップS40においては、セッションが終了したか否かを判断する。セッションが終了したならば処理を終了するが、セッションが終了しなければ処理をステップS38に戻す。
図13は、画像表示処理の流れの一例を示すフローチャートである。画像表示処理は、会議の参加者が操作するPC300A,300B,300Cにより実行される。ここでは、PC300Aが備えるCPU301が画像表示処理を実行する場合を例に説明する。画像表示処理は、PC300Aが備えるCPU111301が、ブラウザプログラムおよび動画再生プログラムを実行することにより、CPU301により実行される処理である。
図13を参照して、CPU301は、ブラウザプログラムを実行する(ステップS51)。そして、URLを受け付けたか否かを判断する(ステップS52)。URLを受け付けるまで待機状態となり(ステップS52でNO)、URLを受け付けたならば(ステップS52でYES)、処理をステップS53に進める。
ステップS53においては、ステップS52において受け付けられたURLを含むGETリクエストを送信する。ここでは、URLは、MFP100に記憶されているWebページに割り当てられているので、MFP100にGETリクエストが送信される。
そして、認証要求を受信する(ステップS54)。ここでは、認証用WebページがMFP100から送信されてくるので、その認証用Webページを受信し、表示部306に表示して、操作部307にユーザが入力する認証情報を受け付ける(ステップS55)。そして、受け付けた認証情報をMFP100に送信する(ステップS56)。
ステップS57においては、セッションが確立したか否かを判断する。MFP100において、ステップS56において送信した認証情報に基づく認証が成功すればMFP100からWebページが送信されてくるので、WebページをMFP100から受信する場合にはセッションが確立したと判断し、Webページを受信しなければセッションが確立しないものとして処理を終了する。
ステップS58においては、MFP100から送信されてくるWebページを受信する。そして、受信したWebページを表示部206に表示する(ステップS59)。図10に示したWebページの画面が表示される。ステップS60においては、セッションが終了したか否かを判断する。セッションが終了したならば処理を終了し、そうでなければ処理をステップS61に進める。例えば、ステップS51において起動されたブラウザプログラムを終了させる指示がユーザにより入力された場合に、セッションが終了したと判断する。また、MFP100からセッションを終了させる信号を受信した場合に、セッションが終了したと判断する。
ステップS61においては、動画再生指示を受け付けたか否かを判断する。ステップS59において、表示部306に表示されたWebページ601に含まれる再生ボタン603が操作部307により指示されると、動画再生指示を受け付ける。動画再生指示を受け付けたならば処理をステップS62に進め、そうでなければ処理をステップS65に進める。ステップS62においては、リアルタイムストリーミング送信要求をMFP100に送信する。まず、Webページの再生ボタン603にリンクされたメタファイルの送信を要求する信号をネットワークI/F304を介して、MFP100に送信する。これに応じて、MFP100からメタファイルを受信するので、そのメタファイルに含まれる動画再生要求信号をMFP100にネットワークI/F304を介して送信する。
そして、動画再生プログラムを実行し(ステップS63)、MFP100から送信されてくる動画像を受信し、再生する処理を開始する(ステップS64)。
ステップS65においては、制御コマンドを受け付けたか否かを判断する。表示部206に表示されているWebページ600に含まれる再生ボタン603、一時停止ボタン605、早送りボタン607および早戻しボタン609のいずれかが指示されたならば制御コマンドを受け付ける。制御コマンドを受け付けたならば処理をステップS66に進め、そうでなければ処理をステップS60に戻す。
ステップS66においては、制御コマンドをMFP100に送信し、処理をステップS60に戻す。Webページ600に含まれる再生ボタン603が指示されたならば再生を示す制御コマンドを送信し、一時停止ボタン605が指示されたならば一時停止を示す制御コマンドを送信し、早送りボタン607が指示されたならば早送りを示す制御コマンドを送信し、早戻しボタン609が指示されたならば早戻しを示す制御コマンドを送信する。
以上説明したように、本実施の形態における画像送信システム1のMFP100は、静止画像が指定されることに応じて、静止画像を送信するとともに、静止画像を含む動画像を生成し、動画像のリアルタイムストリーミング配信を要求するためのコマンドを含むコンテンツを生成する。そして、コンテンツが指定されることに応じて、コンテンツが送信され、コンテンツを送信したPC300Aからの要求に応じて、動画像をリアルタイムストリーミング送信する。このため、静止画像に代えて動画像が送信されるので、静止画像の内容を動画像で確認することができる。一方、動画像がリアルタイムストリーミング送信されるので、動画像が送信されるPC300Aに動画像が蓄積されない。このため、動画像の複製が作成されるのを防止することができる。
また、外部から入力される音声が動画像と関連付けられて記憶されるので、動画画像に加えて音声を送信することができる。
また、動画像をリアルタイムストリーミング送信しているときに、制御コマンドを受信することに応じて、動画像を制御コマンドに従って送信する。このため、PC300Aを操作するユーザは、動画像の再生を制御することができる。
なお、上述した実施の形態においては、画像送信装置としてのMFP100について説明したが、図11および図12に示した処理を実行するための画像送信方法およびその画像送信方法をコンピュータに実行させるための画像送信プログラムとして発明を捉えることができるのは、言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 画像送信システム、2 ネットワーク、、51 画像取得部、53 コンテンツ生成部、57 ユーザ認証部、59 コンテンツ送信要求受付部、61 コンテンツ送信部、63 動画再生要求受付部、65 動画像生成部、67 送信部、69 指定受付部、71 静止画像送信部、93 動画像テーブル、95 静止画像データ、100 MFP、110 メイン回路、111 CPU、112 通信I/F部、116 HDD、118 カードI/F、118A フラッシュメモリ、130 原稿読取部、140 画像形成部、160 操作パネル、160A 表示部、160B 操作部、、200,200A,200C テレビ会議用端末装置、250 サーバ、300,300A〜300D PC、301 CPU、304 ネットワークI/F、306 表示部、307 操作部。