(57)【特許請求の範囲】
【請求項１】
ビデオコンテンツの処理に関するフィードバックを提供するための、コンピュータによって実現される方法であって、
ビデオコンテンツのストリームをビデオアップロードホスティングサーバに送信するステップと、
前記ビデオアップロードホスティングサーバから、該ビデオアップロードホスティングサーバによって前記ビデオコンテンツから抽出された代表的なフレームのシーケンスを受信するステップであって、該受信された代表的なフレームは、処理済のフレームと未処理のフレームとからなり、前記処理済のフレームは前記ビデオアップロードホスティングサーバによって処理された前記ビデオコンテンツの処理済の部分を示し、前記未処理のフレームは前記ビデオアップロードホスティングサーバによって処理されていない前記ビデオコンテンツの未処理の部分を示す、前記ステップと、
前記受信された前記代表的なフレームのシーケンスを時間順に同時に表示するステップであって、該同時に表示される該代表的なフレームのシーケンスは、前記ビデオアップロードホスティングサーバによる前記ビデオコンテンツのストリームの処理の進捗を可視的に示す、前記ステップと、
からなる方法。
【請求項２】
前記ビデオアップロードホスティングサーバが前記ビデオコンテンツのストリームを処理している間に前記代表的なフレームが表示され、かつ、前記受信された前記代表的なフレームのシーケンスは、前記ビデオアップロードホスティングサーバによって現在処理されている前記ビデオコンテンツの部分を動的に示す、ことを特徴とする請求項１に記載の方法。
【請求項３】
前記ビデオコンテンツが前記ビデオアップロードホスティングサーバに完全に送信された後に、前記受信された代表的なフレームが表示される、ことを特徴とする請求項１又は２に記載の方法。
【請求項４】
前記ビデオアップロードホスティングサーバによる前記ビデオコンテンツのストリームの処理の進捗を可視的に示すことは、前記処理済のフレームを第１の色を用いて表示し、前記未処理のフレームを該第１の色とは可視的に区別される第２の色を用いて表示することを含む、請求項１乃至３のいずれかに記載の方法。
【請求項５】
表示された代表的なフレームによって示される処理済のビデオコンテンツのフォーマットまたはビットレートを表示するステップを更に含む請求項１乃至４のいずれかに記載の方法。
【請求項６】
表示された代表的なフレームと共に時間値を表示するステップを更に含み、該時間値は前記処理済のビデオコンテンツにおける、表示された前記代表的なフレームの位置を示すものであり、前記表示された代表的なフレームによって示されたビデオコンテンツは、前記表示された代表的なフレームの選択に応じて前記時間値まで再生される、ことを特徴とする請求項１乃至５のいずれかに記載の方法。
【請求項７】
前記未処理のフレームの選択に応じて、該選択された未処理のフレームによって示された前記ビデオコンテンツの前記未処理の部分を処理するために必要とされる推定時間を表示するステップを更に含む請求項１乃至６のいずれかに記載の方法。
【請求項８】
前記処理済のフレームの選択に応じて、該選択された処理済のフレームによって示された前記ビデオコンテンツの前記処理済の部分を処理するために要した処理時間を表示するステップを更に含む請求項１乃至７のいずれかに記載の方法。
【請求項９】
ビデオコンテンツの処理に関するフィードバックを提供するためのコンピュータプログラムであって、プロセッサに、
ビデオコンテンツのストリームをビデオアップロードホスティングサーバに送信する手順と、
前記ビデオアップロードホスティングサーバから、該ビデオアップロードホスティングサーバによって前記ビデオコンテンツから抽出された代表的なフレームのシーケンスを受信する手順であって、該受信された代表的なフレームは、処理済のフレームと未処理のフレームとからなり、前記処理済のフレームは前記ビデオアップロードホスティングサーバによって処理された前記ビデオコンテンツの処理済の部分を示し、前記未処理のフレームは前記ビデオアップロードホスティングサーバによって処理されていない前記ビデオコンテンツの未処理の部分を示す、前記手順と、
前記受信された前記代表的なフレームのシーケンスを時間順に同時に表示する手順であって、該同時に表示される該代表的なフレームのシーケンスは、前記ビデオアップロードホスティングサーバによる前記ビデオコンテンツの処理の進捗を可視的に示す、前記手順と、
を実行させるためのプログラムコードからなるコンピュータプログラム。
【請求項１０】
前記ビデオアップロードホスティングサーバが前記ビデオコンテンツのストリームを処理している間に前記代表的なフレームが表示され、かつ、前記受信された前記代表的なフレームのシーケンスは、前記ビデオアップロードホスティングサーバによって現在処理されている前記ビデオコンテンツの部分を動的に示す、ことを特徴とする請求項９に記載のコンピュータプログラム。
【請求項１１】
前記ビデオアップロードホスティングサーバによる前記ビデオコンテンツのストリームの処理の進捗を可視的に示すことは、前記処理済のフレームを第１の色を用いて表示し、前記未処理のフレームを該第１の色とは可視的に区別される第２の色を用いて表示することを含む、請求項９又は１０に記載のコンピュータプログラム。
【請求項１２】
表示された代表的なフレームによって示される処理済のビデオコンテンツのフォーマットまたはビットレートを表示する手順を、前記プロセッサに実行させるためのプログラムコードを更に含む、請求項９乃至１１のいずれかに記載のコンピュータプログラム。
【請求項１３】
表示された代表的なフレームと共に時間値を表示する手順を、前記プロセッサに実行させるためのプログラムコードを更に含み、該時間値は前記処理済のビデオコンテンツにおける、表示された前記代表的なフレームの位置を示すものであり、前記表示された代表的なフレームによって示されたビデオコンテンツは、前記表示された代表的なフレームの選択に応じて前記時間値まで再生される、ことを特徴とする請求項９乃至１２のいずれかに記載のコンピュータプログラム。
【請求項１４】
前記未処理のフレームの選択に応じて、該選択された未処理のフレームによって示された前記ビデオコンテンツの前記未処理の部分を処理するために必要とされる推定時間を表示する手順を、前記プロセッサに実行させるためのプログラムコードを更に含む、請求項９乃至１３のいずれかに記載のコンピュータプログラム。
【請求項１５】
前記処理済のフレームの選択に応じて、該選択された処理済のフレームによって示された前記ビデオコンテンツの前記処理済の部分を処理するために要した処理時間を表示する手順を、前記プロセッサに実行させるためのプログラムコードを更に含む、請求項９乃至１４のいずれかに記載のコンピュータプログラム。
【請求項１６】
ビデオコンテンツの処理に関するフィードバックを提供するための、コンピュータによって実現される方法であって、
ビデオアップロードホスティングサーバにおいて、コンテンツプロバイダクライアントからビデオコンテンツのストリームを受信するステップと、
前記ビデオアップロードホスティングサーバから、該ビデオアップロードホスティングサーバによって前記ビデオコンテンツから抽出された代表的なフレームのシーケンスを送信するステップであって、該送信された代表的なフレームは、処理済のフレームと未処理のフレームとからなり、前記処理済のフレームは前記ビデオアップロードホスティングサーバによって処理された前記ビデオコンテンツの処理済の部分を示し、前記未処理のフレームは前記ビデオアップロードホスティングサーバによって処理されていない前記ビデオコンテンツの未処理の部分を示す、前記ステップと、
からなり、
前記送信された前記代表的なフレームのシーケンスは前記コンテンツプロバイダクライアント上において時間順に同時に表示され、該同時に表示される該代表的なフレームのシーケンスは、前記ビデオアップロードホスティングサーバによる前記ビデオコンテンツのストリームの処理の進捗を可視的に示すものである、ことを特徴とする方法。
【請求項１７】
前記ビデオアップロードホスティングサーバが前記ビデオコンテンツのストリームを処理している間に、前記代表的なフレームが表示され、かつ、前記送信された前記代表的なフレームのシーケンスは、前記ビデオアップロードホスティングサーバによって現在処理されている前記ビデオコンテンツの部分を動的に示す、ことを特徴とする請求項１６に記載の方法。
【請求項１８】
前記ビデオアップロードホスティングサーバによる前記ビデオコンテンツのストリームの処理の進捗を可視的に示すことは、前記処理済のフレームを第1の色を用いて表示し、前記未処理のフレームを該第1の色とは可視的に区別される第２の色を用いて表示することを含む、請求項１６又は１７に記載の方法。
【請求項１９】
表示された代表的なフレームによって示される処理済のビデオコンテンツのフォーマットまたはビットレートを送信するステップを更に含む請求項１６乃至１８のいずれかに記載の方法。
【請求項２０】
表示された代表的なフレームと共に時間値を送信するステップを更に含み、該時間値は前記処理済のビデオコンテンツにおける、表示された前記代表的なフレームの位置を示すものであり、前記表示された代表的なフレームによって示されたビデオコンテンツは、前記表示された代表的なフレームの選択に応じて前記時間値まで再生される、ことを特徴とする請求項１６乃至１９のいずれかに記載の方法。
【請求項２１】
或る選択された未処理のフレームを指示するユーザ選択を受信するステップと、
該選択された前記未処理のフレームによって示された前記ビデオコンテンツの前記未処理の部分を処理するために必要とされる推定時間を、表示のために送信するステップと
を更に含む請求項１６乃至２０のいずれかに記載の方法。
【請求項２２】
或る選択された処理済のフレームを指示するユーザ選択を受信するステップと、
該選択された前記処理済のフレームによって示された前記ビデオコンテンツの前記処理済の部分を処理するために要した時間を、表示のために送信するステップと
を更に含む請求項１６乃至２１のいずれかに記載の方法。
【請求項２３】
ビデオコンテンツの処理に関するフィードバックを提供するためのコンピュータプログラムであって、プロセッサに、
ビデオアップロードホスティングサーバにおいて、コンテンツプロバイダクライアントからビデオコンテンツのストリームを受信する手順と、
前記ビデオアップロードホスティングサーバから、該ビデオアップロードホスティングサーバによって前記ビデオコンテンツから抽出された代表的なフレームのシーケンスを送信する手順であって、該送信された代表的なフレームは、処理済のフレームと未処理のフレームとからなり、前記処理済のフレームは前記ビデオアップロードホスティングサーバによって処理された前記ビデオコンテンツの処理済の部分を示し、前記未処理のフレームは前記ビデオアップロードホスティングサーバによって処理されていない前記ビデオコンテンツの未処理の部分を示す、前記手順と、
を実行させるためのプログラムコードからなり、
前記送信された前記代表的なフレームのシーケンスは前記コンテンツプロバイダクライアント上において時間順に同時に表示され、該同時に表示される該代表的なフレームのシーケンスは、前記ビデオアップロードホスティングサーバによる前記ビデオコンテンツのストリームの処理の進捗を可視的に示すものである、ことを特徴とするコンピュータプログラム。
【請求項２４】
前記ビデオアップロードホスティングサーバが前記ビデオコンテンツのストリームを処理している間に、前記代表的なフレームが表示され、かつ、前記送信された前記代表的なフレームのシーケンスは、前記ビデオアップロードホスティングサーバによって現在処理されている前記ビデオコンテンツの部分を動的に示す、ことを特徴とする請求項２３に記載のコンピュータプログラム。
【請求項２５】
前記ビデオアップロードホスティングサーバによる前記ビデオコンテンツのストリームの処理の進捗を可視的に示すことは、前記処理済のフレームを第1の色を用いて表示し、前記未処理のフレームを該第1の色とは可視的に区別される第２の色を用いて表示することを含む、請求項２３又は２４に記載のコンピュータプログラム。
【請求項２６】
表示された代表的なフレームによって示される処理済のビデオコンテンツのフォーマットまたはビットレートを表示のために送信する手順を、前記プロセッサに実行させるためのプログラムコードを更に含む、請求項２３乃至２５のいずれかに記載のコンピュータプログラム。
【請求項２７】
表示された代表的なフレームと共に時間値を表示することを実行する手順を、前記プロセッサに実行させるためのプログラムコードを更に含み、該時間値は前記処理済のビデオコンテンツにおける、表示された前記代表的なフレームの位置を示すものであり、前記表示された代表的なフレームによって示されたビデオコンテンツは、前記表示された代表的なフレームの選択に応じて前記時間値まで再生される、ことを特徴とする請求項２３乃至２６のいずれかに記載のコンピュータプログラム。
【請求項２８】
或る選択された未処理のフレームを指示するユーザ選択を受信する手順と、
該選択された前記未処理のフレームによって示された前記ビデオコンテンツの前記未処理の部分を処理するために必要とされる推定時間を、表示のために送信する手順と、
を前記プロセッサに実行させるためのプログラムコードを更に含む、請求項２３乃至２７のいずれかに記載のコンピュータプログラム。
【請求項２９】
或る選択された処理済のフレームを指示するユーザ選択を受信する手順と、
該選択された前記処理済のフレームによって示された前記ビデオコンテンツの前記処理済の部分を処理するために要した時間を、表示のために送信する手順と、
を前記プロセッサに実行させるためのプログラムコードを更に含む、請求項２３乃至２８のいずれかに記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施の形態は、オンラインコンテンツを処理する分野、特に、ビデオ処理フィードバックを提供することに関する。
【背景技術】
【０００２】
ほとんどのオンラインユーザは、個人およびコンテンツパブリシャーが他人による視聴用にビデオをアップロードできるビデオホスティングサービスに精通している。典型的には、これらのサービスは、ユーザがビデオをアップロードするためのオンラインツールを提供する。前記ユーザは、ローカルストーレジ(ローカル接続された記憶装置)からビデオを選択し、アップロード処理を開始する。そして、前記ビデオホスティングサービスは、受信したコンテンツにおけるオーディオおよびビデオのフォーマットを判定し、前記受信したコンテンツをデコードする。前記ビデオホスティングサービスは多数のフォーマットのビデオを受信するので、前記受信したコンテンツにおけるオーディオおよびビデオのフォーマットを判定し、前記受信したコンテンツをデコードすることは、前記ビデオホスティングサービスの最も重要部分である。典型的には、前記ユーザは、このビデオ処理のステータスに関する情報は全くわずかしか与えられず、せいぜい、前記ビデオが処理されたパーセンテージとして前記ビデオのアップローディングを示す全体的な“プログレスバー”が提示されるだけである。例えば、前記ビデオの78%がアップロードされたことを示すプログレスバーは、前記ビデオの処理の進捗、および、前記ビデオのデコードが成功したか否かについての十分な情報を前記ユーザに与えるものではない。
【０００３】
さらに、前記ユーザおよび前記サービスは進捗について互いに異なる定義を有するで、前記全体的なプログレスバーは、時には、誤解を招くことがある。例えば、前記サービスは前記アップロードされたビデオを望ましくはないフォーマットに処理し、処理されたビデオの質が許容できないものになることがある。従って、前記処理されたビデオが濃淡のむらがありまたは黒いフレームからなる望ましくないものであるときでも、ユーザも前記アップロードされたビデオの処理が成功したことを示す処理バーを見ることもある。このような場合、前記ユーザは、前記ビデオが首尾よくアップロードされて処理されたと誤って信じることになる。
【発明の概要】
【０００４】
ビデオ処理サーバは、ビデオファイルをアップロードするコンテンツプロバイダに、処理済のフレームのシーケンスを表示することを含むフィードバックを提供する。前記コンテンツプロバイダがビデオ処理サーバにビデオファイルをアップロードするのに伴い、前記サーバは、前記アップロードされたファイルを処理し、前記ビデオファイルから代表的なビデオフレームを抽出する。前記ビデオ処理サーバは、該ビデオ処理サーバにおけるウェブサーバに提供された処理フィードバックページに前記代表的なビデオフレームを埋め込む。前記フィードバックページにおける各代表的なビデオフレームは、前記アップロードされたビデオの一部を示す。前記フィードバックページは、前記コンテンツプロバイダのブラウザを介してアクセス可能であり、代表的なフレームのシーケンスを時間順に有する。一実施の形態において、前記フィードバックページにおける前記代表的なフレームは、特定のフレームによって示されたビデオ部分が処理済であるか否かを示すことができるような色または色調で表示される。
【０００５】
本明細書に記載された特徴および利点は本発明の特徴および利点のすべてではなく、特に、多くの他の特徴および利点が、図面、明細書よび特許請求の範囲から、当業者に明白であろう。さらに、本明細書に使用される言語は、主に読み易さおよび教示目的で選択されたものであり、本発明の主題を限定し、その境界を規定するために選択されたものではない。
【図面の簡単な説明】
【０００６】
【図１】一実施の形態に従ってビデオ処理フィードバックを提供するためのコンピューティング環境を示すブロック図。
【０００７】
【図２】一実施の形態に従うビデオアップロードホスティングサーバを示すブロック図。
【０００８】
【図３】一実施の形態に従うサムネイルモジュールを示すブロック図。
【０００９】
【図４】一実施の形態に従ってビデオ処理フィードバックを提供する方法を示すトレース図。
【００１０】
【図５】一実施の形態に従ってビデオ処理フィードバックを提供するウェブページを示す表示画面の図。
【発明を実施するための形態】
【００１１】
ここに説明されるコンピューティング環境は、ビデオ処理フィードバックを提供する。図面および以下の説明は、いくつかの実施の形態を例示的に説明している。以下の説明から当業者が理解するように、ここに説明された構成および方法の代替的な実施の形態も、ここに説明された原理から逸脱することなく、採用可能である。以下に、いくつかの実施の形態について説明するが、そのうちのあるものは添付図面に示されている。なお、図面に示す同様な参照番号は同様な機能の構成要素を示す。
システム環境
【００１２】
図1において、ビデオ処理フィードバックを提供するためのコンピューティング環境100は、コンテンツプロバイダクライアント104、エンドユーザクライアント106、ビデオアップロードホスティングサーバ102、および、ネットワーク110とからなる。当業者に理解されるように、追加的なビデオアップロードホスティングサーバ102も前記コンピューティング環境100に存在してよいが、添付図面は例示的に唯1つのビデオアップロードホスティングサーバ102を示している。同様に、追加的なクライアント104〜106も前記コンピューティング環境100に存在してよい。ブラウザは、例えば、見られるべきビデオを含むウェブページ、または、ビデオが埋め込まれたウェブページを見ることができ、前記ビデオは前記ビデオアップロードホスティングサーバ102からダウンロードされる。
【００１３】
前記コンテンツプロバイダクライアント104およびエンドユーザクライアント106は、ブラウザ108のようなアプリケーションを実行可能なプロセッサおよびメモリを備えたコンピューティング装置である。クライアント104〜106の一例は、デスクトップ、ラップトップおよびノート（ハンドヘルド）コンピューティング装置を含む。前記ブラウザ108は、前記ビデオアップロードホスティングサーバ102のような様々なエンティティにおいて利用可能なオンラインデータを取り出して提示する。
【００１４】
前記ビデオアップロードホスティングサーバ102は、後にエンドユーザ106に送信するためのビデオファイルを記憶し、処理する。前記ビデオアップロードホスティングサーバ102は、クライアント104を介してコンテンツプロバイダからビデオファイルを受信し、該受信したファイルを適当なフォーマットに処理し、該処理したファイルを記憶する。一実施の形態において、前記ビデオアップロードホスティングサーバ102は、その後、ビデオ処理のフィードバックの一部として、前記記憶したファイルを前記コンテンツブバイダのクライアント104に表示できるよう送信する。前記ビデオアップロードホスティングサーバ102は、図2に関して後で詳述する。
【００１５】
前記ネットワーク110は、前記コンテンツプロバイダクライアント104と、前記エンドユーザクライアント106と前記ビデオアップロードホスティングサーバ102との間の通信経路を表す。一実施の形態において、前記ネットワーク110はインターネットである。さらに、前記ネットワーク110は、必ずしも前記インターネットの一部ではない専用のまたは私用の通信リンクを使用することができる。
概要
【００１６】
コンテンツプロバイダは、クライアント104上でブラウザ108aを起動し、前記ビデオアップロードホスティングサーバ102上のアップロードウェブページにアクセスしてビデオファイルをアップロードする。前記ビデオファイルがアップロードされるのに伴い、前記ビデオアップロードホスティングサーバ102は、前記ビデオを処理し、処理された代表的なフレームのシーケンスを含む前記処理に関するフィードバックを提供する。該フィードバックは、前記ビデオをアップロードするために私用されたものと同じウェブページ上、または、前記アップロードウェブページからリンクされたもしくは導かれた他のウェブページ上で利用可能である。
【００１７】
図5は、上記のようなビデオ処理フィードバックを提供するウェブページの一例を示す図である。前記ウェブページは、前記ビデオのタイトル502を表示し、ビデオ処理フィードバックを提供する。前記フィードバックは、前記サーバ102によって処理されたビデオの様々な部分を示す連続したフレーム504a〜504fを含む。さらに、さらに、一実施の形態において、前記連続したフレーム504a〜504eは、前記ビデオにおけるフレームの時間位置（例えば、時間コード）を示す時間インジケータ506a〜506fを含む。さらに、一実施の形態において、前記フィードバックは、既に処理されたフレーム、および、近いうちに処理されるであろうフレームを含む。図5に示すように、このようなフィードバックは、前記既に処理されたビデオフレーム504a〜504dを未処理のビデオフレーム504e〜504fの色調または色とは異なる色調または色で表示することによって提供される。前記フレーム504のシーケンスは前記サーバ102が更なるフレームを処理するのに応じてアップデートされ、前記フレームは右から左に徐々にシフトされ、これにより、前記ビデオの処理済および未処理の特定部分の動的な表示が提供される。
【００１８】
このようにして、前記コンテンツプロバイダは、提供されたフィードバックを見ることができ、前記ビデオの処理済の部分を確認することができる。処理済のビデオの割合を表示するシンプルなプログレスバーとは異なり、前記連続したフレームは、前記コンテンツプロバイダに対して、新たな代表的なフレームが表示され画面を横切るよう移動される速度によって示される前記フレームがどれくらい速く処理されているのかについての視覚的な表示と共に、前記ビデオの処理済のフレームに関する有用な情報を与える。故に、前記コンテンツプロバイダは、前記ビデオの処理済部分を確認するために、シンプルなプログレスバーにおける表示される割合を推測または調整しなくてもよい。
【００１９】
前記ビデオファイルがアッブデートまたは処理された後、該ビデオファイルは送信のために利用可能である。その後、エンドユーザは、エンドユーザクライアント106aにおけるブラウザ108bを介して、処理されたビデオが視聴のために利用可能な表示ウェブページにアクセスする。
【００２０】
上述の如く、特定の機能が様々なエンティティ、特に、前記ビデオ処理サーバおよびクライアント、によって実行されるものとして説明する。このような説明および機能割当ては、例示目的であり、サーバまたはクライアントのようなエンティティをそれらが割り当てられた機能に制限するものではない。当業者に理解されるように、一実施の形態においてサーバ側で実行されるものとして説明される機能は、他の実施の形態では、適宜、クライアント側でも実行可能である。同様に、前記クライアント側の機能は、適宜、前記サーバによって実行可能である。さらに、特定の構成要素に起因する機能は、開発者によって適当であると考えられるように、互いに異なるまたは多数の構成要素が共働することによって実行可能である。
ビデオアップロードホスティングサーバ
【００２１】
図2は、一実施の形態に従うビデオアップロードホスティングサーバ102を示すブロック図である。前記ビデオアップロードホスティングサーバ102は、ビデオストリームフィードバックモジュール204と、取込み（ingest: インジェスト）モジュール206と、ビデオ処理モジュール208と、サムネイルモジュール210と、ウェブサーバ212とディジタルコンテンツデータベース214とからなる。
【００２２】
前記ビデオストリームフィードバックモジュール204は、処理済コンテンツを要求するリクエストを受信し対処する。前記ビデオストリームフィードバックモジュール204は、処理フィードバックを要求するリクエストを受信することに応じて前記ディジタルコンテンツデータベース214をサーチするための論理を有する。一実施の形態において、前記ビデオストリームフィードバックモジュール204は、処理フィードバックを要求するリクエストの一部として、処理済または処理中のビデオファイルの特定の部分(例えば、時間コード)に対応するインデックスを受信する。そして、前記ビデオストリームフィードバックモジュール204は前記インデックスを受信することによって前記ビデオファイルの対応する部分を送信し、該ビデオファイルは、前記処理フィードバックの一部として再生される。
【００２３】
前記取込みモジュール206は前記クライアント106からアップロードされているビデオを受信し、前記ビデオ処理モジュール208は、アップロードされたビデオを処理し前記ディジタルコンテンツデータベース214に記憶する。この処理は、フォーマット変換（トランスコーディング）、スケーリング、圧縮、メタデータのタグ付け、コンテンツ分析、フィンガープリンティング、および、その他のデータ処理を含んでいてよい。さらに、前記ビデオ処理モジュール208は前記受信されたビデオから代表的なフレームを取り出し、該代表的なフレームを前記サムネイルモジュール210に送信する。
【００２４】
前記サムネイルモジュール210は、処理済および未処理のビデオ部分を示すフレームシーケンスを記憶し、前記ビデオ処理フィードバックを提供するウェブページに表示されるよう前記記憶されたフレームを送信する。図3において、前記サムネイルモジュール210は、サムネイルレトリーバ（retriever:取り出し手段）302と、サムネイルサーバ304とサムネイルキャッシュ306とからなる。
【００２５】
前記サムネイルレトリーバ302は、前記ビデオ処理モジュール208から代表的なフレームのシーケンスを受信し、該受信フレームを前記サムネイルキャッシュ306に記憶する。該受信した代表的なフレームの各々は、受信した前記ビデオの一部と関連するものであり、後に、前記ビデオ処理モジュール208によって処理される。該関連したビデオ部分は、前記代表的なフレームによって示されたシーンの近傍のビデオ部分である。例えば、前記ビデオの5秒目のシーンを示す代表的なフレームは、前記ビデオの最初の5秒を示すことができる。同様に、前記ビデオの11秒目のシーンを示す代表的なフレームは、前記ビデオの11秒目から13秒目のビデオを示すことができる。前記代表的なフレームの一例は、ビデオファイルのIフレームまたはイントラコード化フレームである。
【００２６】
一実施の形態において、前記サムネイルレトリーバ302は、さらに、前記ビデオファイルにおける受信フレームの位置を示す時間インジケータを受信し、記憶する。さらに、一実施の形態において、前記サムネイルレトリーバ302は、前記受信フレームをJPEG等の所望の画像フォーマットに変換し、該変換されたフレームを前記サムネイルキャッシュ306に記憶する。他の実施の形態において、前記サムネイルレトリーバ302は、該フレームを他のフォーマットに変換することなく、前記サムネイルキャッシュ306に記憶する。前記ビデオ処理モジュール208が前記ビデオファイルの処理を進行するのに伴い、前記サムネイルレトリーバ302は、更なるフレームを繰り返し受信し、および/または、前記ビデオ処理モジュール208からの処理進捗情報を含むメッセージをアップデートする。前記進捗情報は、1または複数の処理済フレームの識別情報を含む。該識別情報は、当該識別されたフレームが処理済であることを示すものである。一実施の形態において、前記サムネイルレトリーバ302は、新たに利用可能なフレームおよび進捗情報を前記ビデオ処理モジュール208から受信する代わりに、繰り返し前記ビデオ処理モジュール208にポーリングして新たに利用可能なフレームおよび進捗情報を得る。前記サムネイルレトリーバ302がどのようにしてフレームおーおよび進捗情報を得るかにかかわらず、前記サムネイルレトリーバ302は、前記フレームおよび進捗情報を前記サムネイルレトリーバ302に記憶する。
【００２７】
一実施の形態において、前記サムネイルレトリーバ302は、前記ビデオ処理モジュール208から、代表的なフレームに対応する追加的な情報も受信する。例えば、前記サムネイルレトリーバ302は、前記フレームに関するビットレートまたはフォーマットを受信する。前記ビットレートは、前記フレームによって示された処理済のビデオコンテンツのビットレートである。同様に、前記フォーマットは、前記フレームによって示された処理済のビデオコンテンツのフォーマットである。さらに、前記サムネイルレトリーバ302は、前記ビデオファイルにおいて前記フレームによって示された前記処理済のビデオコンテンツに対するインデックスを受信する。さらに、前記サムネイルレトリーバ302は、前記フレームによって示された前記ビデオコンテンツを処理するために要した時間の量を受信(算出)することもできる。さらに、一実施の形態において、前記フレームが前記ビデオファイルにおける未処理部分を示すものである場合、前記サムネイルレトリーバ302は、前記示されたビデオコンテンツを処理するために要した時間の量を前記ビデオ処理モジュール208から受信(または算出)する。前記サムネイルレトリーバ302は、前記更なる情報のうちの1または複数を受信し、該受信した情報を前記サムネイルキャッシュ306に記憶する。
【００２８】
前記サムネイルキャッシュ306は、前記サムネイルレトリーバ302からの前記受信したフレームを記憶し、その後、前記サムネイルサーバ304からのリクエストを受信することに応じて、前記記憶したフレームを取り出す。さらに、一実施の形態において、前記サムネイルキャッシュ306は、さらに、前記時間情報、および、前記記憶したフレームに対応する進捗情報を記憶する。さらに、前記サムネイルキャッシュ306は、前記サムネイルレトリーバ302から前記追加的な情報を受信し、前記サムネイルキャッシュ306はこの受信した情報を記憶する。
【００２９】
前記サムネイルサーバ304は、前記コンテンツプロバイダクライアント104から、または、該コンテンツプロバイダクライアント104にフィードバックを与える中間エンティティから、前記代表的なフレームに対するリクエストを受信し、該リクエストに対応する。一実施の形態において、前記サムネイルサーバ304はビデオに対するリクエストをIDと共に受信し、前記サムネイルサーバ304は、前記サムネイルキャッシュ306から、前記リクエストされたビデオの代表的なフレームを取り出す。一実施の形態において、前記サムネイルサーバ304は、前記ビデオにおける略等間隔でビデオシーンを示すフレームを取り出す。例えば、前記サムネイルサーバ304は、各N番目のフレーム(例えば、各15番目のフレーム)、または、M秒毎のフレームを取り出すことができる。他の実施の形態において、前記サムネイルサーバ304は、前記リクエストされたビデオについて記憶されたすべてのフレームまたは1つおきのフレームを取り出す。代案として、前記サムネイルサーバ304は、前記フレームに対応し前記サムネイルキャッシュ306に記憶された、タイムコード情報のような追加的な情報も取り出す。そして、前記サムネイルサーバ304は、前記コンテンツプロバイダクライアント104にインストールされたブラウザ108aに表示されるよう、前記取り出したフレームおよび任意に前記更なる情報を送信する。好ましくは、前記フレームは、それらの時間に対応するシーケンシャルな順序で送信される。前記サムネイルサーバ304が前記取り出したフレームをシーケンシャルな順に送信しない場合、前記ウェブサーバ212のような中間エンティティが前記フレームを順に記憶する。このような記憶により、前記フレームは、前記ビデオ処理モジュール208が前記フレームに対応するビデオ部分を処理するのと同じ順序で、前記ブラウザ108aに表示される。
【００３０】
図2において、前記ウェブサーバ212は、ビデオアップロードホスティングサーバ102とクライアント104〜106との間の通信を担当する。前記ウェブサーバ212は、ウェブページ、ビデオおよび関連情報を含むウェブオブジェクトに対するリクエストを受信し、該リクエストに応じてビデオおよび他のリクエストされたオブジェクトを提供する。さらに、前記ウェブサーバ212は、ウェブページに、ビデオ処理フィードバックを提供するオブジェクトへのリンクを付加し、前記ウェブページに対するリクエストを受信することに応じて前記オブジェクトが付加されたページを送信する。例えば、前記ウェブサーバ212は、処理中のビデオを示す代表的なフレームへのリンクを埋め込む。さらに、前記ウェブサーバ212は、前記ウェブページに、前記代表的なフレームに関連した更なる情報へのリンクを埋め込む。さらに、前記ウェブサーバ212は、前記ウェブページに、前記更なる情報へのリンクの代わりに、前記更なる情報自体を埋め込む。
【００３１】
前記ディジタルコンテンツデータベース214は、前記ビデオアップロードホスティングサーバ102によって処理されたビデオを記憶する。前記ディジタルコンテンツデータベース214は、前記ビデオコンテンツに加えて、該ビデオコンテンツに関連したメタデータを記憶する。前記メタデータは、前記コンテンツプロバイダ、前記ビデオアップロードホスティングサーバ102のオペレータまたは第三者によって提供される。前記メタデータとしては、ビデオID、アーチスト、ビデオタイトル、ラベル、ジャンル、時間長、および、任意に、地理的原則に基づいてデータ収集またはコンテンツ遮断に使用され得る地理的な制約を含む。前記ビデオコンテンツは、前記コンテンツプロバイダに対してビデオ処理のフィードバックを提供するために、前記ビデオストリームフィードバックモジュール204によって前記ディジタルコンテンツデータベース214から取り出される。
ビデオ処理フィードバックの方法
【００３２】
図4は、ビデオ処理フィードバックを提供する方法を示すトレース図である。前記コンテンツプロバイダは前記コンテンツプロバイダクライアント104上のブラウザ108aを介してウェブページにアクセスし、該コンテンツプロバイダは、前記ビデオアップロードホスティングサーバ102にアップロードすべきビデオファイルを選択する。そして、前記コンテンツプロバイダクライアント104は、前記ビデオを送信し始める。前記コンテンツプロバイダ104がステップ402においてビデオブロックを送信した後、前記ビデオアップロードホスティングサーバ102は、ステップ404において受信した前記ビデオブロックを記憶し、ステップ405において前記受信したビデオブロックを処理し始め、前記ビデオブロックにおける代表的なフレームを検出し、ステップ406において前記代表的なフレームを記憶する。
【００３３】
その後、前記ビデオアップロードホスティングサーバ102は、ステップ408において、前記フィードバックの一部として、記憶された前記代表的なフレームの1または複数のを前記コンテンツプロバイダクライアント104に送信する。一実施の形態において、前記ビデオアップロードホスティングサーバ102は、さらに、送信した前記フレームに対応する進捗情報を送信する。該進捗情報は、処理済および/または未処理の送信されたフレームを示す。前記コンテンツプロバイダ104は、前記送信されたフレームを受信し、および、任意に、送信された前記進捗情報を受信する。前記受信された情報に基づいて、前記コンテンツプロバイダ104は、ステップ410において、上述の如く、前記受信された1または複数を有するウェブページを表示する。このようなウェブページの一例は図5に示されている。
【００３４】
その間、前記ビデオアップロードホスティングサーバ102は、ステップ412において、更なる未処理ビデオ部分を処理し続ける。前記ビデオアップロードホスティングサーバ102が更なるビデオ部分を処理するのに伴い、前記ビデオアップロードホスティングサーバ102は、ステップ414において、更なる代表的なフレーム、該更なる代表的なフレームについての進捗情報、および/または、それまでに送信された代表的なフレームについての進捗情報を送信する。前記コンテンツプロバイダ104は、送信された前記情報に基づいて、更新された代表的なフレームを有するウェブページを表示する。
【００３５】
例えば、前記ビデオアップロードホスティングサーバ102は、ステップ408において、ビデオを処理しながら、最初の6つの代表的なフレームを前記コンテンツプロバイダクライアント104に送信する。さらに、前記ビデオアップロードホスティングサーバ102は、送信された前記6つのフレームのうちの最初の4つが処理されたことを示す進捗情報を送信する。そして、前記コンテンツプロバイダクライアント104は、前記最初の4つの処理済フレームを有するウェブページを1つの色調で表示し、次の2つの未処理フレームをその他の色調で表示する。その後、前記ビデオアップロードホスティングサーバ102は、前記送信された6つのフレームのうちの残りの2つのフレームを処理し、前記2つのフレームの処理を示す処理更新メッセージを送信する。前記コンテンツプロバイダ104は、前記更新メッセージを受信し、前記6つの処理済フレームのすべてを表示する更新済みウェブページを表示する。一実施の形態において、前記更新メッセージは、前記コンテンツプロバイダクライアント104によって直接的には受信されない。その代わりに、前記更新メッセージは、前記ビデオアップロードホスティングサーバ102内において、前記サムネイルモジュール210によって前記ビデオ処理モジュール208から受信される。前記更新メッセージを受信することに応じて、前記サムネイルモジュール210は、前記記憶されたフレームの色調または色を更新する。その後、前記更新されたフレームはウェブページに埋め込まれ、該更新されて埋め込まれたフレームへのリンクが、前記ウェブサーバ212によって、前記コンテンツプロバイダクライアント104のブラウザ108aに送られる。そして、前記ブラウザ108aは、前記更新されたフレームを取り出し、前記ウェブページに埋め込められた前記更新されたフレームを表示する。
【００３６】
前記フレームが前記ウェブページに表示され後、ユーザは、表示された前記フレームのうちの1つを選択し、追加的な情報を得ることができる。前記ユーザによる特定のフレームの選択を受信することに応じて、前記ブラウザ108は、選択された前記フレームによって示されたビデオ部分に関するビットレートまたはフレームのような情報を、前記ビデオアップロードホスティングサーバ102から取り出して表示する。代案として、前記ブラウザは、前記示されたビデオ部分を処理するのに要した時間、または、(該示されたビデオ部分が未処理である場合)該ビデオ部分を処理するのに要する推定処理時間を表示する。さらに、一実施の形態において、前記ブラウザは、前記フレームに関する時間情報を取り出し、該時間情報を前記フレームと共に表示する。さらに、他の実施の形態において、前記ユーザの選択を受信することに応じて、前記ブラウザ108は、前記選択されたフレームに関するビデオ部分を再生する。
【００３７】
本発明の実施の形態についての上述の説明は、例示的な説明であり、本発明の全て網羅するものではなく、本発明を開示内容のみに限定するものでもない。当業者に理解されるように、上記開示内容に照らして多くの変更が可能である。
【００３８】
以上の詳細な説明のいくつかの部分は、本発明の特徴を情報についての処理のアルゴリズムおよび情報処理の象徴的な表現について説明している。これらのアルゴリズムおよび表現は、当業者がかれらの作業内容を他の当業者に最も効果的に伝えるために一般的に使用される手段である。上記の処理は、ここでは機能的、計算的または論理的に説明されているが、コンピュータプログラムまたは等価電気回路、マイクロコード等によって実現されてよい。これらの処理の構成は、普遍性を喪失することなく、モジュールとして言及することは、折にふれて便利であることが知られている。上述した処理および該処理に関連したモジュールは、ソフトウエア、ファームウエアもしくはハードウエア、またはこれらの組合せで実施されてよい。
【００３９】
上記ステップまたは処理は、1または複数のハードウエアまたはソフトウエアモジュールを単独で使用することによって、または、他の装置と組み合わせて使用することによって実行可能である。一実施の形態において、ソフトウエアモジュールが、上述したステップまたは処理のいずれかまたはすべてを実行するコンピュータプロセッサによって実行可能なコンピュータプログラムコードを含むコンピュータによって読み取り可能な媒体からなるコンピュータプログラム製品で実現される。
【００４０】
本発明の実施の形態は、さらに、上記処理を実行する装置に関する。この発明は前記要求される目的に特化して構成されてもよく、および／または、コンピュータに記憶されたコンピュータプログラムによって選択的に作動または再構成される汎用コンピューテイング装置からなっていてよい。このようなコンピュータプログラムは、コンピュータシステムバスに接続された、電子命令を記憶するのに適した一時的ではない、有形のコンピュータによって読み取り可能な記憶媒体またはその他任意タイプの媒体に記憶されてよい。さらに、この明細書に言及されているコンピューティングシステムは、単一のプロセッサを備えるものでよく、または、向上した計算能力を実現するための多数のプロセッサを採用したアーキテクチャであってもよい。
【００４１】
本発明の実施の形態は、ここに説明された計算処理によって作成された製品にも関するものであってもよい。このような製品は、計算処理から生じる情報からなっていてよく、そこでは、前記情報は一時的ではない有形のコンピュータによって読み取り可能な媒体に記憶されており、ここに説明されたコンピュータプログラム製品または他のデータの組合せの任意の実施の形態を含んでいてよい。
【００４２】
最後に、この明細書に使用された言語が主に読み易さおよび教示目的で選択されたものであり、本発明の主題を限定し、その境界を規定するために選択されたものではない。従って、ここでの本発明の範囲は、ここに記載した詳細な説明に限定されるものではなく、この出願に基づいて権利付与される請求の範囲によって制限されるものである。従って、上記実施の形態の開示は、請求の範囲に記載された本発明の範囲を例示的に説明するものであって限定的なものではない。
【図１】
0005695765.tif 000002
【図２】
0005695765.tif 000003
【図３】
0005695765.tif 000004
【図４】
0005695765.tif 000005
【図５】
0005695765.tif 000006