(57)【特許請求の範囲】
【請求項１】
原データをエンコードしたエンコード化データを、ネットワークを介して受信装置へ送信するデータ送信手段を有するデータ送信装置において、
送信すべき１つ以上の原データと、送信完了期限時刻ｔＬとを設定する送信条件設定手段と、
前記ネットワークにおける伝送速度を測定する伝送速度測定手段と、
エンコード化データの送信中に、現時点の伝送速度に応じて、前記送信完了期限時刻ｔＬまでに送信が完了しないことを検出する期限時刻超過検出手段と、
原データに基づく第１のエンコードパラメータと、当該第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータとを選択するエンコードパラメータ選択手段と、
前記原データを第１のエンコードパラメータでエンコードした第１のエンコード化データを前記データ送信手段へ出力すると共に、前記原データを第２のエンコードパラメータでエンコードするエンコード手段と、
第１のエンコード化データを前記データ送信手段から送信中に、前記期限時刻超過検出手段によって前記送信完了期限時刻までに送信が完了しないことが検出された際、第１のエンコード化データの送信を停止すると共に、第２のエンコード化データを前記データ送信手段から送信するべく制御する送信データ制御手段と
を有することを特徴とするデータ送信装置。
【請求項２】
前記期限時刻超過検出手段について、送信完了期限時刻ｔＬまでに送信が完了しないことを検出する時刻は、送信完了期限よりも、第２のエンコード化データの伝送処理時間だけ以前となる時刻（少なくとも第２のエンコード化データを送信完了とすべき余裕時間に基づく時刻）であることを特徴とする請求項１に記載のデータ送信装置。
【請求項３】
前記エンコード手段は、エンコード処理能力に所定閾値以上の余裕がある場合にのみ、前記原データを第２のエンコードパラメータでエンコードすることを特徴とする請求項１又は２に記載のデータ送信装置。
【請求項４】
前記原データは、映像データであり、
前記エンコードパラメータ選択手段は、第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータが無い場合、又は、伝送速度によって変更されたビットレートが当該映像データのビットレートよりも過小な場合、映像データにおける画素数を減らすべく変換する映像変換手段を更に有することを特徴とする請求項１から３のいずれか１項に記載のデータ送信装置。
【請求項５】
前記映像変換手段は、フレームレートを減らすか、又は、特定の色成分の解像度若しくは全ての色成分の解像度を減らすことによって、前記映像データにおける画素数を減らすべく変換することを特徴とする請求項４に記載のデータ送信装置。
【請求項６】
前記エンコードパラメータは、
映像フォーマット、
画面サイズ（解像度）
フレームレート、
ビットレート、
空間方向の画素間予測を用いて符号化を行うフレームの割合、
時間方向の画素間予測を用いて符号化を行うフレームの割合、
画素間予測の探索を行う範囲の大きさ、
画素間予測の探索に用いるアルゴリズムの種別、
量子化パラメータの大きさ、
空間方向の画素成分を間引く割合、
画像の色成分を間引く割合、
単位時間あたりのフレーム数、
情報圧縮に用いる符号化のアルゴリズムの種類、
画素の周波数変換に用いる方式種別
のいずれか又はそれら複数の組み合わせを含むパラメータセットに基づくものであることを特徴とする請求項４又は５に記載のデータ送信装置。
【請求項７】
コンピュータを搭載したデータ送信装置であって、原データをエンコードしたエンコード化データを、ネットワークを介して受信装置へ送信するデータ送信手段としてコンピュータを機能させるデータ送信用のプログラムにおいて、
送信すべき１つ以上の原データと、送信完了期限時刻ｔＬとを設定する送信条件設定手段と、
前記ネットワークにおける伝送速度を測定する伝送速度測定手段と、
エンコード化データの送信中に、現時点の伝送速度に応じて、前記送信完了期限時刻ｔＬまでに送信が完了しないことを検出する期限時刻超過検出手段と、
原データに基づく第１のエンコードパラメータと、当該第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータとを選択するエンコードパラメータ選択手段と、
前記原データを第１のエンコードパラメータでエンコードした第１のエンコード化データを前記データ送信手段へ出力すると共に、前記原データを第２のエンコードパラメータでエンコードするエンコード手段と、
第１のエンコード化データを前記データ送信手段から送信中に、前記期限時刻超過検出手段によって前記送信完了期限時刻までに送信が完了しないことが検出された際、第１のエンコード化データの送信を停止すると共に、第２のエンコード化データを前記データ送信手段から送信するべく制御する送信データ制御手段と
してコンピュータを機能させることを特徴とするデータ送信用のプログラム。
【請求項８】
原データをエンコードしたエンコード化データを、ネットワークを介して受信装置へ送信するデータ送信部を有するデータ送信装置におけるデータ送信方法において、
送信すべき１つ以上の原データと、送信完了期限時刻ｔＬとを設定する第１のステップと、
エンコード化データの送信中に、ネットワークにおける現時点の伝送速度を測定し、前記送信完了期限時刻ｔＬまでに送信が完了しないことを検出する第２のステップと、
原データに基づく第１のエンコードパラメータと、当該第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータとを選択する第３のステップと、
前記原データを第１のエンコードパラメータでエンコードした第１のエンコード化データを前記データ送信手段へ出力すると共に、前記原データを第２のエンコードパラメータでエンコードする第４のステップと、
第１のエンコード化データを前記データ送信部から送信中に、前記送信完了期限時刻までに送信が完了しないことが検出された際、第１のエンコード化データの送信を停止すると共に、第２のエンコード化データを前記データ送信部から送信するべく制御する第５のステップと
を有することを特徴とするデータ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送信すべきデータをエンコードし、そのエンコード化データをネットワークを介して送信するデータ送信装置、プログラム及び方法に関する。
【背景技術】
【０００２】
従来、データを圧縮することによって、その伝送時間を短縮する技術がある（例えば特許文献１参照）。この技術によれば、データ送信装置は、送信すべきデータに対する圧縮処理時間と、その圧縮データの伝送時間との合計時間を算出する。この合計時間が、そのデータの非圧縮のままでの伝送時間よりも短い場合、データ送信装置は、そのデータに対して圧縮処理を実行し、その圧縮データを送信する。
【０００３】
また、サーバから映像データを配信するシステムについて、ユーザによって指定された制限時間内に、映像データを配信する技術がある（例えば特許文献２参照）。この技術によれば、サーバに蓄積する映像データを、階層符号化を用いて予めエンコード（圧縮）しておくことによって、１種類の映像データを、ネットワークの状況に応じて異なるビットレートで配信することができる。配信ビットレートを変更することによって、映像データの伝送時間を変化させることができる。
【０００４】
更に、データ送信装置に蓄積された映像データを、制限時間内（期限時刻まで）にネットワークを介して伝送する蓄積型映像伝送の技術がある（例えば特許文献３参照）。この技術によれば、エンコード処理と伝送処理とを並行して実行することを考慮したものである。エンコード処理とは、映像データを一定の規則に基づいて符号化する処理をいい、例えばデータの圧縮処理をいう。映像データの場合、エンコードパラメータ（映像規格、解像度等）の組み合わせに応じて、多数のエンコード機能が提供されている。
【０００５】
更に、例えばテレビ放送局の緊急報道における映像データを、期限時刻までに、エンコードし且つ伝送する技術がある（例えば非特許文献１参照）。この技術によれば、できる限り高品質な映像伝送を実現すると共に、ネットワーク品質の低下を考慮して期限時刻までにデータの送信を完了することができる。その点について、特許文献２に記載された技術のように、映像データに対して予めエンコード処理を実行しておくものではない。非特許文献１に記載された技術によれば、期限時刻までにデータの送信を完了することができるように、エンコードパラメータを自動的に決定する。また、映像データの伝送中のネットワーク回線の品質低下によって伝送速度が低下した場合、エンコードパラメータを再設定することによって、期限時刻までにデータの送信を完了することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平７−１７５７０７号公報
【特許文献２】特開２００６−１５５１７８号公報
【特許文献３】ＵＳＰ７，５３３，３９８
【非特許文献】
【０００７】
【非特許文献１】豊田陽介、米山暁夫、「ネットワークの帯域変動を考慮した制限時間内での蓄積型映像伝送」、PCSJ/IMPS2009、I-2-17
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載された技術によれば、送信すべきデータの圧縮処理の有無を判断するだけである。そのために、ネットワークの伝送速度を考慮して、エンコード処理によるデータの圧縮率を調整可能なものではない。
【０００９】
特許文献２に記載された技術によれば、映像データの伝送処理が実行される前に、予め決定された段階数の階層符号化を適用した映像データを用意しておく方式であり、複数の段階が用意されたデータの圧縮率は、それぞれ固定値となる。このため、ネットワーク状態に応じて柔軟に映像データの圧縮率を変更する必要性がある用途には、適当な方式ではない。
【００１０】
特許文献３に記載された技術によれば、期限時刻までに映像データの送信を完了しようとするものである。しかしながら、伝送処理中のネットワーク速度の変動を考慮するものではない。
【００１１】
非特許文献１に記載された技術によれば、期限時刻までに映像データの送信を完了しようとするものであり、また、伝送中のネットワーク速度の変動を考慮したものである。しかしながら、映像データの送信に大きな影響を及ぼすほどのネットワーク速度変動が実際に生じるまでは、実行されない。このため、残り時間が少なくなった状態でネットワーク速度の変動が生じた際に、期限時刻内で伝送を完了させることができない場合がある。
【００１２】
そこで、本発明は、原データに基づくエンコード化データを送信中に、ネットワークの伝送速度の低下によって期限時刻までに送信が完了しないことが検出された場合であっても、期限時刻までに送信を完了させることができるデータ送信装置、プログラム及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明によれば、原データをエンコードしたエンコード化データを、ネットワークを介して受信装置へ送信するデータ送信手段を有するデータ送信装置において、
送信すべき１つ以上の原データと、送信完了期限時刻ｔＬとを設定する送信条件設定手段と、
ネットワークにおける伝送速度を測定する伝送速度測定手段と、
エンコード化データの送信中に、現時点の伝送速度に応じて、送信完了期限時刻ｔＬまでに送信が完了しないことを検出する期限時刻超過検出手段と、
原データに基づく第１のエンコードパラメータと、当該第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータとを選択するエンコードパラメータ選択手段と、
原データを第１のエンコードパラメータでエンコードした第１のエンコード化データをデータ送信手段へ出力すると共に、原データを第２のエンコードパラメータでエンコードするエンコード手段と、
第１のエンコード化データをデータ送信手段から送信中に、期限時刻超過検出手段によって送信完了期限時刻までに送信が完了しないことが検出された際、第１のエンコード化データの送信を停止すると共に、第２のエンコード化データをデータ送信手段から送信するべく制御する送信データ制御手段と
を有することを特徴とする。
【００１４】
本発明のデータ送信装置における他の実施形態によれば、期限時刻超過検出手段について、送信完了期限時刻ｔＬまでに送信が完了しないことを検出する時刻は、送信完了期限よりも、第２のエンコード化データの伝送処理時間だけ以前となる時刻（少なくとも第２のエンコード化データを送信完了とすべき余裕時間に基づく時刻）であることも好ましい。
【００１５】
本発明のデータ送信装置における他の実施形態によれば、エンコード手段は、エンコード処理能力（例えばパーソナルコンピュータにおけるＣＰＵ使用率など、ハードウェア内のプロセッサの処理負荷）に所定閾値以上の余裕がある場合にのみ、原データを第２のエンコードパラメータでエンコードすることも好ましい。
【００１６】
本発明のデータ送信装置における他の実施形態によれば、
原データは、映像データであり、
エンコードパラメータ選択手段は、第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータが無い場合、又は、伝送速度によって変更されたビットレートが当該映像データのビットレートよりも過小な場合、映像データにおける画素数を減らすべく変換する映像変換手段を更に有することも好ましい。
【００１７】
本発明のデータ送信装置における他の実施形態によれば、映像変換手段は、フレームレートを減らすか、又は、特定の色成分の解像度若しくは全ての色成分の解像度を減らすことによって、映像データにおける画素数を減らすべく変換することも好ましい。
【００１８】
本発明のデータ送信装置における他の実施形態によれば、エンコードパラメータは、
映像フォーマット、
画面サイズ（解像度）、
フレームレート、
ビットレート、
空間方向の画素間予測を用いて符号化を行うフレームの割合、
時間方向の画素間予測を用いて符号化を行うフレームの割合、
画素間予測の探索を行う範囲の大きさ、
画素間予測の探索に用いるアルゴリズムの種別、
量子化パラメータの大きさ、
空間方向の画素成分を間引く割合、
画像の色成分を間引く割合、
単位時間あたりのフレーム数、
情報圧縮に用いる符号化のアルゴリズムの種類、
画素の周波数変換に用いる方式種別
のいずれか又はそれら複数の組み合わせを含むパラメータセットに基づくものであることも好ましい。
【００１９】
本発明によれば、コンピュータを搭載したデータ送信装置であって、原データをエンコードしたエンコード化データを、ネットワークを介して受信装置へ送信するデータ送信手段としてコンピュータを機能させるデータ送信用のプログラムにおいて、
送信すべき１つ以上の原データと、送信完了期限時刻ｔＬとを設定する送信条件設定手段と、
ネットワークにおける伝送速度を測定する伝送速度測定手段と、
エンコード化データの送信中に、現時点の伝送速度に応じて、送信完了期限時刻ｔＬまでに送信が完了しないことを検出する期限時刻超過検出手段と、
原データに基づく第１のエンコードパラメータと、当該第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータとを選択するエンコードパラメータ選択手段と、
原データを第１のエンコードパラメータでエンコードした第１のエンコード化データをデータ送信手段へ出力すると共に、原データを第２のエンコードパラメータでエンコードするエンコード手段と、
第１のエンコード化データをデータ送信手段から送信中に、期限時刻超過検出手段によって送信完了期限時刻までに送信が完了しないことが検出された際、第１のエンコード化データの送信を停止すると共に、第２のエンコード化データをデータ送信手段から送信するべく制御する送信データ制御手段と
してコンピュータを機能させることを特徴とする。
【００２０】
本発明によれば、原データをエンコードしたエンコード化データを、ネットワークを介して受信装置へ送信するデータ送信部を有するデータ送信装置におけるデータ送信方法において、
送信すべき１つ以上の原データと、送信完了期限時刻ｔＬとを設定する第１のステップと、
エンコード化データの送信中に、ネットワークにおける現時点の伝送速度を測定し、送信完了期限時刻ｔＬまでに送信が完了しないことを検出する第２のステップと、
原データに基づく第１のエンコードパラメータと、当該第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータとを選択する第３のステップと、
原データを第１のエンコードパラメータでエンコードした第１のエンコード化データをデータ送信手段へ出力すると共に、原データを第２のエンコードパラメータでエンコードする第４のステップと、
第１のエンコード化データをデータ送信部から送信中に、送信完了期限時刻までに送信が完了しないことが検出された際、第１のエンコード化データの送信を停止すると共に、第２のエンコード化データをデータ送信部から送信するべく制御する第５のステップと
を有することを特徴とする。
【発明の効果】
【００２１】
本発明のデータ送信装置、プログラム及び方法によれば、原データに基づくエンコード化データを送信中に、ネットワークの伝送速度の低下によって期限時刻までに送信が完了しないことが検出された場合であっても、伝送速度の低下を考慮したエンコード化データを予め生成しておくことによって、期限時刻までに送信を完了させることができる。
【図面の簡単な説明】
【００２２】
【図１】対象となるシステム構成図である。
【図２】エンコード時間及び伝送時間の関係を表すグラフである。
【図３】本発明に基づくエンコード時間及び伝送時間の関係を表すグラフである。
【図４】本発明におけるデータ送信装置の機能構成図である。
【図５】本発明におけるデータ送信装置のフローチャートである。
【発明を実施するための形態】
【００２３】
以下では、本発明の実施の形態について、図面を用いて詳細に説明する。尚、送信対象となるデータは、映像データであるとして説明するが、エンコードされるデータであればよく、映像データに限られるものではない。
【００２４】
図１は、対象となるシステム構成図である。
【００２５】
図１によれば、本発明の対象として、取材現場から報道局へ、ニュース素材の映像データを伝送するシステムを想定している。具体的には、「取材現場で１５：５４に撮影したニュース素材の映像データを、ニュース番組の放送時刻（又は、番組用の素材編集など、放送前の準備を考慮した締切時刻）に間に合うように、１６：３０までに報道局への送信を完了する」という状況を想定している。このとき、取材現場側の送信装置１は、アクセスネットワークに接続し且つインターネットを介して、その映像データを、報道局側のデータ受信装置３へ送信する。
【００２６】
図１によれば、カメラ２を用いて取材現場が撮影されている。カメラ２は、マイク機能も内蔵しており、音声も含む映像データを取得する。カメラ２は、ケーブルを介してデータ送信装置１に接続され、撮影された映像データをデータ送信装置１へ転送する。カメラ２とデータ送信装置１との接続方式としては、例えばＩＥＥＥ１３９４(i.LINK/FireWire)、ＳＤＩ(Serial Digital Interface)、ＨＤＭＩ(High-Definition Multimedia Interface)、アナログ映像端子と映像キャプチャデバイスを組み合わせたものがある。
【００２７】
取材現場側のデータ送信装置１と、報道局側のデータ受信装置３とは、アクセスネットワークを介してインターネットに接続されている。アクセスネットワークは、例えば、有線・無線ＬＡＮ(Local Area Network)、携帯電話用データ通信網、ＷｉＭＡＸ(Worldwide Interoperability for Microwave Access)、ＢＧＡＮ(Broadband Global Area Network)のような衛星通信網等である。
【００２８】
データ送信装置１は、カメラ２から取得した映像データをエンコードし、そのエンコード化データを、インターネットを介して、データ受信装置３へ送信する。このとき、データ送信装置１は、ユーザによって指定された期限時刻ｔＬまでに、その映像データの送信を完了する。図１によれば、期限時刻は「１６：３０」であって、制限時間（ｔＬ−ｔ０）は３６分（１６：３０−１５：５４）である。
【００２９】
この映像データの品質は、エンコードパラメータに依存する。即ち、制限時間３６分以内に、ネットワークの伝送測度を考慮して、映像データをエンコードし、そのエンコード化データの送信を完了しなければならない。
【００３０】
尚、データ送信装置１は、アクセスネットワークに接続する通信インタフェース部を内蔵しているものとして説明しているが、ネットワーク接続装置が別途、外付けで備えられているものであってもよい。
【００３１】
また、データ送信装置１及びカメラ２は、一体的に構成されていてもよい。
【００３２】
更に、データ送信装置１は、必ずしもカメラ２から映像データを取得する場合に限られず、ＵＳＢ(Universal Serial Bus)メモリ、外付けハードディスク、ビデオテープ、ＳＤ(Secure Digital)メモリカード等の外部記録媒体装置から映像データを取得するものであってもよい。
【００３３】
更に、データ送信装置１は、例えばパーソナルコンピュータ又は専用端末であって、アプリケーションソフトウェアによって映像データのエンコード処理及び伝送処理を実行する。同様に、データ受信装置３も、例えばパーソナルコンピュータ又は専用端末であって、アプリケーションソフトウェアによってエンコード化データの受信処理を実行する。
【００３４】
図１によれば、例えば取材現場のカメラマンに対して、データ送信装置１のディスプレイにユーザインタフェース画面が表示されている。例えば、左側ボックス内に、選択可能な「映像データの一覧」が表示され、右上側ボックス内に、「期限時刻」が入力される。このユーザインタフェース画面の指示に応じて、ユーザは、送信すべき「映像データ」を選択すると共に、「期限時刻」を指定することができる。尚、「期限時刻」を入力する以外の書式として、現在時刻と終了時刻との差（制限時間）を入力するものであってもよい。そして、ユーザによって「設定開始」ボタンが押下されると、エンコード処理及び伝送処理が実行される。
【００３５】
報道用の映像伝送システムでは、ネットワークの伝送速度を考慮した上で、期限時刻までに、映像データの送信を完了しなければならない。また、緊急の取材については、迅速な報道を行うために十分な時間が確保できない場合がある。このため、通常の取材で用いる業務用カメラ等のプロ用の機材ではなく、民生用カメラ等の一般向けの機材が用いられる場合がある。また、現場近くの一般市民が撮影した映像が提供されることもある。このような場合、撮影された映像データの解像度や記録ビットレートは、撮影した機材の種類や機材の設定によって様々である。このため、解像度や記録ビットレート等が様々に異なる映像データが混在した状態で、それら映像データを期限時刻までに送信を完了することが必要となる。
【００３６】
図２は、エンコード時間及び伝送時間の関係を表すグラフである。
【００３７】
映像データの品質は、エンコード処理におけるエンコードパラメータに依存する。しかしながら、高品質な映像データを生成しようとするほど、必要とされるエンコード処理時間も長くなる。また、高品質な映像データであるほど、エンコード化データのデータサイズも大きくなり、結果的に、その伝送時間も長くなる。ここで、１つの映像データについて、エンコードを開始してから、伝送を終了するまでの時間を「送信処理時間」とする。そうすると、映像データの品質と、送信処理時間との間のトレードオフをとって、適切なエンコードパラメータを選択する必要がある。
【００３８】
図２のグラフは、横軸に時間経過を表す。図２（ａ）は、映像データ毎に、所定のパラメータセットｐａによってエンコードし、そのエンコード化データを送信する。実質的に、エンコード処理及び伝送処理を、ほぼ同時に並行して実行できる。しかしながら、エンコード時間と伝送時間とは異なるために、いずれか長い方の時間が、送信処理時間となる。図２（ａ）によれば、ネットワークの伝送速度が比較的低いために、映像データ毎のエンコード時間及び伝送時間の関係に応じて、エンコード時間に空きが生じている。そのために、時間的に見ると、エンコード処理能力を十分に活用しきれていないこととなる。
【００３９】
図２（ｂ）は、複数の映像データについて連続的に、エンコード処理及び伝送処理を実行している（エンコード処理については、ｐａを用いた場合のみを記載している）。
［パターン１］第１〜第３の映像データが、同一のエンコードパラメータｐａでエンコードされている。このとき、第１〜第３の映像データにおける第１〜第３のエンコード化データの伝送時間は、期限時刻ｔＬを超過している。
［パターン２］次に、第１の映像データがエンコードパラメータｐｂでエンコードされ、第２及び第３の映像データがエンコードパラメータｐａ及びｐｃでエンコードされている。このとき、第１の映像データにおける第１のエンコード化データの伝送時間が短くなる。これによって、第１〜第３の映像データにおける第１〜第３のエンコード化データの伝送時間は、丁度、期限時刻ｔＬに達している。
［パターン３］第１の映像データがエンコードパラメータｐｂでエンコードされ、第２の映像データがエンコードパラメータｐａでエンコードされ、第３の映像データがエンコードパラメータｐｃでエンコードされている。このとき、第３の映像データにおける第３のエンコード化データの伝送時間も短くなる。これによって、第１〜第３の映像データにおける第１〜第３のエンコード化データの伝送時間は、期限時刻ｔＬよりも十分に早く終了する。
【００４０】
このように、ネットワークの伝送速度が変化しない場合には、送信開始時刻ｔ０に、期限時刻ｔＬに間に合うようにエンコードパラメータを選択することができる。尚、エンコードパラメータは、例えば以下のような関係にある。
ｐa：高品質、エンコード化データが大きい
ｐb：中品質、エンコード化データが中程度
ｐc：低品質、エンコード化データが小さい
【００４１】
しかしながら、第１〜第３のエンコード化データを送信中に、ネットワークの伝送速度が低下した場合、期限時刻を超過することも想定される。そこで、本発明によれば、期限時刻に丁度達するエンコードパラメータｐｂが選択されていても、伝送速度が低下する場合に備えて、第３の映像データをエンコードパラメータｐｃでエンコードした第３のエンコード化データを予め生成しておく。伝送速度が低下することによって期限時刻までに送信完了しないことが検出された際に、第３のエンコード化データを送信する。これによって、第１〜第３のエンコード化データを、期限時刻までに送信完了することができる。
【００４２】
図３は、本発明に基づくエンコード時間及び伝送時間の関係を表すグラフである。
【００４３】
図３（ａ）は、エンコードパラメータを再設定しても、期限時刻を超過してしまう場合を表す。時刻ｔＤに、伝送速度の低下によって、期限時刻までに送信完了しないことを検出したとする。この時点で、第３の映像データの第３のエンコード化データは、送信中である。このとき、第３の映像データについて、伝送時間が短くなるエンコードパラメータで再度、エンコード処理を実行する。エンコード処理及び伝送時間は、ほぼ同時に並行して実行されたとしても、期限時刻ｔＬまでに送信完了しない場合がある。これは、ある映像データの品質を放送用などに利用可能なレベルでエンコードする場合、エンコード後の映像データの圧縮率に、品質維持のための制限が加えられるためである。これによって、処理時間に下限値が存在することになるためである。その下限値がｔＬ-ｔＤより大きくなる場合は、制限時間内での処理が実現できない。特に、期限時刻の超過を検出した時刻ｔＤから、期限時刻ｔＬまでの時間が短いほど、期限時刻を超過する場合が多くなる。
【００４４】
これに対し、図３（ｂ）は、第３の映像データについて、事前に第２のエンコードパラメータｐｃでエンコード処理を実行する場合を表す。本発明によれば、第３の映像データを第１のエンコードパラメータｐａでエンコード処理を実行した後（時刻ｔＰ）、同じ第３の映像データについて、第２のエンコードパラメータｐｃでエンコード処理を実行する。この第２のエンコード化データは、バッファされる。その後、期限時刻の超過が検出された際（時刻ｔＤ）に、第１のエンコード化データの送信を停止し、第２のエンコード化データの送信を開始する。第２のエンコード化データは、期限時刻ｔＬまでに送信が完了する。即ち、期限時刻の超過が検出された際に、第２のエンコードパラメータでエンコードされた第２のエンコード化データを送信するだけでよく、エンコードし直す必要がない。図３によれば、バッファするデータは、単一のデータであったが、複数のデータに対して同様に処理することも望ましい。
【００４５】
ここでは、伝送速度が低下した場合の例を示したが、逆に、ネットワークの帯域変動で伝送速度が向上する場合もある。このような場合に対処可能となるよう、伝送速度の低下率と上昇率の両者を考慮して判別し、伝送速度の上昇が見込まれる場合には、高品質なデータをバッファするように処理してもよい。即ち、第２のエンコードパラメータとして、第１のエンコードパラメータよりも処理時間が大きくかつ品質が高くなるものを選択し、そのデータをバッファする処理となる。
【００４６】
また、エンコードに用いる符号化方式として、階層符号化を用いてもよい。この場合、階層符号化における低レイヤのデータが、前述のパラメータの例ではｐｃに相当する。そして、より高位のレイヤに相当するものが、パラメータｐb、ｐaである。
【００４７】
図４は、本発明におけるデータ送信装置の機能構成図である。
【００４８】
図４によれば、データ送信装置１は、外部とのインタフェースとして、ユーザインタフェース部１０１と、映像データインタフェース部１０２と、通信インタフェース部１０３とを有する。
【００４９】
ユーザインタフェース部１０１は、ユーザに対するディスプレイ及び操作インタフェースである。ディスプレイは、ユーザインタフェース画面を表示する（図１参照）。キーボードのような操作インタフェースは、ユーザから、送信すべき映像データ及び期限時刻の情報を取得する。
【００５０】
映像データインタフェース部１０２は、例えばケーブルを介して接続されたカメラ２から映像データを取得し、その映像データを映像データ蓄積部１１１へ出力する。
【００５１】
通信インタフェース部１０３は、アクセスネットワークに接続し、データ受信装置３へ、エンコードされた映像データを送信する。
【００５２】
また、図４によれば、データ送信装置１は、映像データ蓄積部１１１と、エンコード部１１２と、データ送信部１１３と、送信条件設定部１２１と、伝送速度測定部１２２と、期限時刻超過検出部１２３と、エンコードパラメータ選択部１２４と、送信データ制御部１２５と、映像変換部１２６とを有する。これら機能構成部は、データ送信装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
【００５３】
映像データ蓄積部１１１は、映像データインタフェース部１０２から入力された映像データを、大容量記憶媒体に蓄積する。
【００５４】
送信条件設定部１２１は、送信すべき１つ以上の映像データと、その映像データの送信完了までの期限時刻ｔＬとを設定する。送信条件は、ユーザ自身がユーザインタフェース画面（図１参照）に対して入力するものであってもよいし、予め設定されていてもよい。送信すべき１つ以上の映像データは、映像データ蓄積部１１１に蓄積されたものである。期限時刻ｔＬは、選択された全ての映像データについて、送信が完了するまでの時刻である。
【００５５】
伝送速度測定部１２２は、データ受信装置に対するネットワークにおける現時点の伝送速度を測定する。測定方法として、例えばパケットペア方式、パケットトレイン方式等の技術がある。
【００５６】
期限時刻超過検出部１２３は、エンコード化データの送信中に、現時点の伝送速度に応じて、送信完了期限時刻ｔＬまでに送信が完了しないことを検出する。
残存時間        ＜      残存エンコード化データの伝送時間
（期限時刻−現在時刻）＜（残存エンコード化データのサイズ／現時点の伝送速度）
【００５７】
また、送信完了期限時刻ｔＬまでに送信が完了しないことを検出する時刻は、送信完了期限よりも、第２のエンコード化データの伝送処理時間だけ以前となる時刻（少なくとも第２のエンコード化データを送信完了とすべき余裕時間に基づく時刻）であってもよい。
【００５８】
エンコードパラメータ選択部１２４は、送信すべき全ての映像データにおける送信処理時間ＴＰが、制限時間（ｔＬ−ｔ０）以下となるように、第１のエンコードパラメータを選択する。エンコードパラメータ選択部１２４は、以下の式（３）を満たす第１のエンコードパラメータを選択する。
Ｍａｘ｛Σi=1nＴEi(p)，Σi=1nＴTi(p)｝  ＜  ＴＬ                  式（３）
Ｍａｘ｛ａ，ｂ｝：ａ又はｂのいずれか大きい方を出力する関数
Σi=1nＴEi(p)：各映像データのエンコード処理時間の総和
Σi=1nＴTi(p)：各エンコード化データの伝送時間の総和
ここで左辺の値が処理時間ＴＰである。
【００５９】
本発明のエンコードパラメータ選択部１２４は、映像データに基づく第１のエンコードパラメータと、当該第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータとを選択する。そして、第１及び第２のエンコードパラメータを、エンコード部１１２へ指示する。エンコードパラメータは、例えば以下のいずれか又はそれら複数の組み合わせを含むパラメータセットに基づくものである。
映像フォーマット
画面サイズ（解像度）
フレームレート
ビットレート
空間方向の画素間予測を用いて符号化を行うフレームの割合
時間方向の画素間予測を用いて符号化を行うフレームの割合
画素間予測の探索を行う範囲の大きさ
画素間予測の探索に用いるアルゴリズムの種別
量子化パラメータの大きさ
空間方向の画素成分を間引く割合
画像の色成分を間引く割合
単位時間あたりのフレーム数
情報圧縮に用いる符号化のアルゴリズムの種類
画素の周波数変換に用いる方式種別
また、上記の他に、映像符号化の処理で適用の可否が選択可能なものであって、かつ、それが画質と処理時間とのトレードオフとなるような設定項目を含めることも望ましい。
【００６０】
以下の表１は、ある映像データのエンコード処理時間を推定するために利用する処理時間の参照データを表す。この参照データは、事前にテストデータをエンコードすることで測定してもよく、また、ユーザが指定してもよい。単位時間としては、例えば「１秒分の映像データ」のような時間を基準としたものを用いてもよいし、映像データのデジタルデータとしての情報量を用いてもよい。
【表１】
0005385230.tif 000002
【００６１】
前述の表によれば、画像サイズ1440×1080及び1280×720のＨＤ(High Definition)で記録するＨＤＶ方式と、画像サイズ720×480のＳＤ(Standard Definition)で記録するＤＶ方式とが表されている。ＨＤＶ方式では、映像データの圧縮にＭＰＥＧ−２を用いている。ＨＤＶ1080iは、走査線1080本(1440×1080ピクセル)のインターレース映像を記録し、ＨＤＶ720pは、走査線720本(1280×720ピクセル)のプログレッシブ映像を記録する。本発明によれば、勿論、これらフォーマットに限られず、非圧縮の映像データ、1920×1080のフルＨＤにも対応したＡＶＣＨＤ(Advanced Video Codec High Definition)方式、その他のビデオフォーマットであってもよい。
【００６２】
また、表１によれば、映像データのパラメータセットとして、以下の３通りが表されている。
「高速」  （エンコード処理時間は短いが、映像品質が低い）
「標準」  （エンコード処理時間及び映像品質は「高速」「高画質」の中間となる）
「高画質」（エンコード時間処理は長いが、映像品質が高い）
この３通りのパラメータの違いは、例えばH.264の符号化における符号化ツールセットの利用の有無や動き補償の探索範囲の大小などの違いに基づく。即ち、符号化処理において処理時間とエンコードによる品質低下とのトレードオフが存在する処理の違いに基づく。
【００６３】
尚、パラメータセットについては、３つに限ることなく、複数のセットが用意されていればよい。また、解像度やフレームレートは、様々なパターンを用意しておいてもよいが、ある程度限定されたパターンを用意しておくだけでもよい。例えば、HD(1440×1080、30fps)の映像データを処理する場合の時間を推定するために、HD(1440×1080、30fps)の映像データをテストエンコードする。これに対し、処理時間は画素数に比例すると仮定し、HD(1440×1080、15fps)の映像データをテストエンコードした場合の時間を、実際のエンコードを実行することなく、前述のHD(1440×1080、30fps)処理時間の半分の値を用いてもよい。また、ビットレートの差による処理時間の違いが小さい場合は、ある１つのビットレートでエンコードを実行した場合の計測データを、他のビットレートでエンコードした場合の値として用いてもよい。
【００６４】
エンコード部１１２は、映像データ蓄積部１１１から入力した映像データに対して、エンコードパラメータ選択部１２４によって選択されたパラメータセットに基づいて、エンコード処理を実行する。エンコード部１１２は、映像データを第１のエンコードパラメータでエンコードした第１のエンコード化データをデータ送信部１１３へ出力すると共に、映像データを第２のエンコードパラメータでエンコードする。
【００６５】
データ送信部１１３は、エンコード化データを、通信インタフェース部１０３を介してデータ受信装置３へ送信する。
【００６６】
送信データ制御部１２５は、第１のエンコード化データをデータ送信部１１３から送信中に、期限時刻超過検出部１２３によって送信完了期限時刻までに送信が完了しないことが検出された際、第１のエンコード化データの送信を停止すると共に、第２のエンコード化データをデータ送信部１１３から送信するべく制御する。
【００６７】
映像変換部１２６は、エンコードパラメータ選択部１２４によって、第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータが無い場合、又は、伝送速度によって変更されたビットレートが当該映像データのビットレートよりも過小な場合、映像データにおける画素数を減らすべく変換する。この映像変換は、フレームレートを減らすか、又は、サイズを減らすことによって実行される。
【００６８】
ここである映像データをエンコードする際に、最低限要求されるビットレートは、以下のように与えられる。
【表２】
0005385230.tif 000003
【００６９】
ここで示したとおり、映像の解像度やフレームレートによって、下限のビットレートが決定される。これは、予め規定値として設定されている形態であってもよいし、また、ユーザが指定できる形態であってもよい。また、表２の例では過剰なビットレート割り当てが起こらないよう、上限を設定している。予め上限が設定されている場合に、制限時間にあわせたパラメータ設定について上限ビットレートを超える設定が適用されることになった場合に、算出したビットレートでなく、表２の上限ビットレートを設置値として用いるようにする。
【００７０】
一般的に、映像データの解像度、再生時間及びフレームレートには、以下のような関係がある。
・同一の解像度・再生時間の映像データについて、フレームレートが高いデータほど、エンコード処理時間が長くなる。
・同一のフレームレート・再生時間の映像データについて、解像度が大きいほど、エンコード処理時間が長くなる。
・同一の解像度及びフレームレートの映像データについて、再生時間が長いほど、エンコード時間が長くなる。
【００７１】
このような関係は、エンコード処時間が、映像データに含まれる画素数に基づいて決まることを意味する。このとき、元の映像データのデータサイズと画素数とは、必ずしも一致しない。例えば、ＡＶＣＨＤ(Advanced Video Codec High Definition)で映像データを記録するビデオカメラについて、１つの解像度の映像データを撮影する際に、記録ビットレートが、24Mbps、17Mbps、9Mbps、5Mbpsと、最大で５倍程度の差となる設定がある。また、ＨＤ又はＳＤのように記録方式が異なる場合、解像度の差が４倍も異なるにも関わらず、同等の記録ビットレートとなる。従って、このような違いに左右されない送信処理時間を割り当てる必要がある。また、エンコード処理後のビットレート（エンコードビットレート）の決定についても、画素数が大きいほどそれを記録するために必要なデータ量が多く必要であるため、同様の指標に従う必要がある。
【００７２】
尚、図４には、図示していないが、エンコード処理時間について、パフォーマンス測定部及びエンコード処理時間蓄積部を有することも好ましい。
【００７３】
パフォーマンス測定部は、エンコードパラメータ毎に、映像データをエンコード部１１２によってエンコードし、単位時間の映像データをエンコードするために必要なエンコード処理時間を導出する。データ送信装置１に搭載されたプロセッサ又はチップセットの処理能力が異なる場合、そのエンコード処理時間も異なるためである。最初に、実際に、テストデータに対して、エンコード処理を実行することによって、正確なエンコード処理時間を取得する。
【００７４】
パフォーマンス測定部は、エンコードパラメータ毎に、エンコード処理時間を測定しなければならない。非常に多くのパラメータセットがある場合、一方のパラメータセットによって測定されたエンコード処理時間から、他方のパラメータセットに基づくエンコード処理時間を推定するものであってもよい。これによって、全てのパラメータセットについて測定する必要がなくなる。また、エンコード処理時間に大きく影響を与えるエンコードパラメータの値に基づいて、パラメータセットに基づくエンコード処理時間を推定するものであってもよい。更に、複数のパラメータセットのエンコード処理時間に基づいて、例えば線形補間によって、他のパラメータセットのエンコード処理時間を推定するものであってもよい。
【００７５】
エンコード処理時間記憶部は、エンコードパラメータ毎に、パフォーマンス測定部によって導出されたエンコード処理時間を予め記憶する。エンコード処理時間記憶部は、送信処理時間算出部１２４から参照される。
【００７６】
図５は、本発明におけるフローチャートである。
【００７７】
（Ｓ５０１）送信すべき１つ以上の映像データと、それら映像データの送信完了期限時刻ｔＬとを設定させる。図４における送信条件設定部１２１と同様の処理が実行される。
（Ｓ５０２）映像データに基づく第１のエンコードパラメータを選択する。第１のエンコードパラメータは、送信すべき全ての映像データにおける送信処理時間ＴＰが、制限時間（ｔＬ−ｔ０）以下となるように選択されたものである。
（Ｓ５０３）送信すべき映像データを、映像データ蓄積部１１１から取得し、エンコード処理を実行する。
（Ｓ５０４）第１のエンコードパラメータでエンコードされた第１のエンコード化データを、ネットワークを介してデータ受信装置３へ送信する。
【００７８】
（Ｓ５０５）以下、全ての映像データのエンコード化データの送信が完了するまでＳ５０６〜Ｓ５２２を繰り返す。
（Ｓ５０６）送信装置から送出されるデータ量（伝送速度）をチェックする。
（Ｓ５０７）測定された伝送速度に基づいて、期限時刻までに送信完了するか否か判定する。期限時刻を超過すると判定された場合、Ｓ５１４へ移行する。
（Ｓ５０８）期限時刻を超過しないと判定された場合、エンコード処理能力（グラフィック処理能力）に所定閾値以上の余裕があるか否かを判定する。エンコード処理能力に余裕が無いと判定された場合、Ｓ５２２へ移行する。
（Ｓ５０９）エンコード処理能力に余裕が有ると判定された場合、第１のエンコードパラメータよりも、伝送時間を短くするエンコードパラメータが有るか否かを判定する。伝送時間を短くするエンコードパラメータが有る場合、Ｓ５１１へ移行する。
（Ｓ５１０）第１のエンコードパラメータよりも短い伝送時間となる第２のエンコードパラメータが無い場合、又は、伝送速度によって変更されたビットレートが当該映像データのビットレートよりも過小な場合、映像データにおける画素数を減らすべく変換する。
（Ｓ５１１）第１のエンコードパラメータよりも、伝送時間を短くする第２のエンコードパラメータを選択する。選択された第２のエンコードパラメータの伝送時間が短いほど、期限時刻の超過を検出する時刻を早めにする（ｔＬ−ｔＤの余裕時間差を長くする）ことができる（図３参照）。
（Ｓ５１２）Ｓ５０４と同じ映像データについて、第２のエンコードパラメータを用いてエンコード処理を実行する。
（Ｓ５１３）第２のエンコード化データを、バッファする。そして、Ｓ５２２へ移行する。
【００７９】
（Ｓ５１４）期限時刻を超過すると判定された場合、第１のエンコード化データの送信を停止する。
（Ｓ５１５）次に、バッファ済みのデータがあるか否かを判定する。
（Ｓ５１６）バッファ済みのデータがある場合、Ｓ５１３でバッファしていた第２のエンコード化データを、ネットワークを介して受信装置へ送信する。
（Ｓ５１７〜Ｓ５２０）バッファ済みのデータがない場合、Ｓ５０９〜Ｓ５１２と同様の処理をする。
（Ｓ５２１）Ｓ５２０にて第２のエンコードパラメータでエンコードされた第２のエンコード化データを、ネットワークを介してデータ受信装置３へ送信する。
【００８０】
以上、詳細に説明したように、本発明のデータ送信装置、プログラム及び方法によれば、映像データに基づくエンコード化データを送信中に、ネットワークの伝送速度の低下によって、期限時刻までに送信が完了しないことが検出された場合であっても、ネットワークの伝送速度の低下を考慮したエンコード化データを予め生成しておくことによって、期限時刻までに送信を完了することができる。ユーザは、データ送信装置へ、送信すべき１つ以上の映像データと、その期限時刻とを入力するだけである。
【００８１】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【００８２】
１  データ送信装置
１０１  ユーザインタフェース部
１０２  映像データインタフェース部
１０３  通信インタフェース部
１１１  映像データ蓄積部
１１２  エンコード部
１１３  データ送信部
１２１  送信条件設定部
１２２  伝送速度測定部
１２３  期限時刻超過検出部
１２４  エンコードパラメータ選択部
１２５  送信データ制御部
１２６  映像変換部
２  カメラ
３  データ受信装置
【図１】
0005385230.tif 000004
【図２】
0005385230.tif 000005
【図３】
0005385230.tif 000006
【図４】
0005385230.tif 000007
【図５】
0005385230.tif 000008