(57)【要約】  番組識別のためのシステムおよび方法が提供される。たとえば、第1のオーディオ信号に対応する第1のオーディオフィンガープリントが取得され、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かが検出され、ここで、第2のオーディオフィンガープリントは第2のオーディオ信号に対応し、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組が、第1のオーディオ信号に関連した番組識別に対する結果として提供される。
2016518663.tif 000002
【特許請求の範囲】
【請求項１】
番組識別のための方法であって、
第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するステップと、
所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが前記第1のオーディオフィンガープリントにマッチするか否かを検出するステップであって、第2のオーディオフィンガープリントは番組に関連した第2のオーディオ信号に対応する、ステップと、
前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つが前記第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、前記第1のオーディオ信号に関連した番組識別に対する結果として提供するステップと
を含む方法。
【請求項２】
所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが前記第1のオーディオフィンガープリントにマッチするか否かを検出する前記ステップが、
前記第1のオーディオフィンガープリントと前記所定のフィンガープリントデータベースに含まれる前記1つまたは複数の第2のオーディオフィンガープリントの各々との間のマッチ度を計算するステップと、
前記第1のオーディオフィンガープリントとの最大マッチ度を有する前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つを決定するステップと、
前記最大マッチ度が所定の閾値を超えているか否かを検出するステップと、
前記最大マッチ度が前記所定の閾値を超えていることに応答して、前記最大マッチ度を有する前記1つまたは複数の第2のオーディオフィンガープリントのうちの前記1つを、前記第1のオーディオフィンガープリントにマッチするものとして提供するステップと
を含む、請求項1に記載の方法。
【請求項３】
前記第1のオーディオ信号が、1つまたは複数の第1のピーク点を含み、
前記第1のオーディオ信号に対応する前記第1のオーディオフィンガープリントが、1つまたは複数の第1の二つ組を含み、
第1の二つ組は、第1のピーク点の第1の取得時間と、前記第1のピーク点に対応する第1のハッシュ符号とを含み、
前記第2のオーディオ信号が、1つまたは複数の第2のピーク点を含み、
前記第2のオーディオ信号に対応する前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つが、1つまたは複数の基準二つ組を含み、
基準二つ組は、第2のピーク点の第2の取得時間と、前記第2のピーク点に対応する第2のハッシュ符号とを含み、
前記第1のオーディオフィンガープリントと前記所定のフィンガープリントデータベースに含まれる前記1つまたは複数の第2のオーディオフィンガープリントの各々との間のマッチ度を計算する前記ステップが、
各第1の二つ組と各基準二つ組とに対して、
前記第1の二つ組の前記第1のハッシュ符号が前記基準二つ組の前記第2のハッシュ符号と同一であるか否かを検出するステップと、
前記第1の二つ組の前記第1のハッシュ符号が前記基準二つ組の前記第2のハッシュ符号と同一であることに応答して、前記第1の二つ組の前記第1の取得時間と前記基準二つ組の前記第2の取得時間との間の第1の差を計算するステップと、
少なくとも前記第1の二つ組の前記第1の取得時間と前記基準二つ組の前記第2の取得時間との間の前記第1の差に関連した情報に基づいて、累積数を計算するステップと、
少なくとも前記第1のオーディオフィンガープリントおよび前記1つまたは複数の第2のオーディオフィンガープリントに関係する前記累積数に関連した情報に基づいて、最大累積数を、前記第1のオーディオフィンガープリントと前記1つまたは複数の第2のオーディオフィンガープリントの各々との前記マッチ度として決定するステップと
を含む、請求項2に記載の方法。
【請求項４】
前記番組から所定の持続時間に対する前記第2のオーディオ信号を取得するステップであって、前記所定の持続時間はΔTで表され、前記所定の持続時間の終わりは現在時間Tに対応する、ステップと、
少なくとも前記第2のオーディオ信号に関連した情報に基づいて、第2のオーディオフィンガープリントを計算するステップと、
前記第2のオーディオフィンガープリントおよび前記第2のオーディオフィンガープリントと前記番組との間のマッピングを前記所定のフィンガープリントデータベースに格納するステップと
をさらに含む、請求項2または3に記載の方法。
【請求項５】
少なくとも前記第2のオーディオ信号に関連した情報に基づいて、第2のオーディオフィンガープリントを計算する前記ステップが、
前記第2のオーディオ信号から1つまたは複数の第2のピーク点を抽出するステップと、
各第2のピーク点に対して、
前記第2のピーク点の第2の取得時間および第2の取得周波数を取得するステップと、
所定の範囲内で前記第2のピーク点にマッチする第3のピーク点のマッチする時間およびマッチする周波数を取得するステップと、
前記第2の取得時間と前記マッチする時間との間の第2の差および前記第2の取得周波数と前記マッチする周波数との間の周波数差を計算するステップと、
少なくとも前記第2の取得周波数、前記第2の差、および前記周波数差に関連した情報に基づいて、ハッシュ値を計算するステップと、
前記ハッシュ値を前記第2のピーク点に対応するハッシュ符号として決定するステップと、
前記第2の取得時間および前記第2のピーク点に対応する前記ハッシュ符号を基準二つ組として格納するステップと、
前記基準二つ組を第2のオーディオフィンガープリントとして提供するステップと
を含む、請求項4に記載の方法。
【請求項６】
前記第1のオーディオ信号が、端末環境に関連し、
前記第2のオーディオ信号が、生番組に関連する、請求項1に記載の方法。
【請求項７】
番組識別のための装置であって、
第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するように構成された取得モジュールと、
所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが前記第1のオーディオフィンガープリントにマッチするか否かを検出するように構成された検出モジュールであって、第2のオーディオフィンガープリントは番組に関連した第2のオーディオ信号に対応する、検出モジュールと、
前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つが前記第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、前記第1のオーディオ信号に関連した番組識別に対する結果として提供するように構成された識別モジュールと
を備える装置。
【請求項８】
前記検出モジュールが、
前記第1のオーディオフィンガープリントと前記所定のフィンガープリントデータベースに含まれる前記1つまたは複数の第2のオーディオフィンガープリントの各々との間のマッチ度を計算するように構成された第1の計算ユニットと、
前記第1のオーディオフィンガープリントとの最大マッチ度を有する前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つを決定するように構成された第1の決定ユニットと、
前記最大マッチ度が所定の閾値を超えているか否かを検出するように構成された検出ユニットと、
前記最大マッチ度が前記所定の閾値を超えていることに応答して、前記最大マッチ度を有する前記1つまたは複数の第2のオーディオフィンガープリントのうちの前記1つを、前記第1のオーディオフィンガープリントにマッチするものとして提供するように構成された第2の決定ユニットと
を備える、請求項7に記載の装置。
【請求項９】
前記第1のオーディオ信号が、1つまたは複数の第1のピーク点を含み、
前記第1のオーディオ信号に対応する前記第1のオーディオフィンガープリントが、1つまたは複数の第1の二つ組を含み、
第1の二つ組は、第1のピーク点の第1の取得時間と、前記第1のピーク点に対応する第1のハッシュ符号とを含み、
前記第2のオーディオ信号が、1つまたは複数の第2のピーク点を含み、
前記第2のオーディオ信号に対応する前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つが、1つまたは複数の基準二つ組を含み、
基準二つ組は、第2のピーク点の第2の取得時間と、前記第2のピーク点に対応する第2のハッシュ符号とを含み、
前記第1の計算ユニットが、
各第1の二つ組と各基準二つ組とに対して、前記第1の二つ組の前記第1のハッシュ符号が前記基準二つ組の前記第2のハッシュ符号と同一であるか否かを検出するように構成された検出サブユニットと、
前記第1の二つ組の前記第1のハッシュ符号が前記基準二つ組の前記第2のハッシュ符号と同一であることに応答して、前記第1の二つ組の前記第1の取得時間と前記基準二つ組の前記第2の取得時間との間の第1の差を計算するように構成された第1の計算サブユニットと、
少なくとも前記第1の二つ組の前記第1の取得時間と前記基準二つ組の前記第2の取得時間との間の前記第1の差に関連した情報に基づいて、累積数を計算するように構成された第2の計算サブユニットと、
少なくとも前記第1のオーディオフィンガープリントおよび前記1つまたは複数の第2のオーディオフィンガープリントに関係する前記累積数に関連した情報に基づいて、最大累積数を、前記第1のオーディオフィンガープリントと前記1つまたは複数の第2のオーディオフィンガープリントの各々との前記マッチ度として決定するように構成された第1の決定サブユニットと
を備える、請求項8に記載の装置。
【請求項１０】
前記検出モジュールが、
前記番組から所定の持続時間に対する前記第2のオーディオ信号を取得するように構成された取得ユニットであって、前記所定の持続時間はΔTで表され、前記所定の持続時間の終わりは現在時間Tに対応する、取得ユニットと、
少なくとも前記第2のオーディオ信号に関連した情報に基づいて、第2のオーディオフィンガープリントを計算するように構成された第2の計算ユニットと、
前記第2のオーディオフィンガープリントおよび前記第2のオーディオフィンガープリントと前記番組との間のマッピングを前記所定のフィンガープリントデータベースに格納するように構成された保存ユニットと
をさらに備える、請求項8または9に記載の装置。
【請求項１１】
前記第2の計算ユニットが、
前記第2のオーディオ信号から1つまたは複数の第2のピーク点を抽出し、各第2のピーク点に対して、前記第2のピーク点の第2の取得時間および第2の取得周波数を取得するように構成された第1の取得サブユニットと、
所定の範囲内で前記第2のピーク点にマッチする第3のピーク点のマッチする時間およびマッチする周波数を取得するように構成された第2の取得サブユニットと、
前記第2の取得時間と前記マッチする時間との間の第2の差および前記第2の取得周波数と前記マッチする周波数との間の周波数差を計算するように構成された第3の計算サブユニットと、
少なくとも前記第2の取得周波数、前記第2の差、および前記周波数差に関連した情報に基づいて、ハッシュ値を計算し、前記ハッシュ値を、前記第2のピーク点に対応するハッシュ符号として決定するように構成された第4の計算サブユニットと、
前記第2の取得時間および前記第2のピーク点に対応する前記ハッシュ符号を基準二つ組として格納し、前記基準二つ組を第2のオーディオフィンガープリントとして提供するように構成された第2の決定サブユニットと
を備える、請求項10に記載の装置。
【請求項１２】
前記第1のオーディオ信号が、端末環境に関連し、
前記第2のオーディオ信号が、生番組に関連する、請求項7に記載の装置。
【請求項１３】
1つまたは複数のデータプロセッサと、
コンピュータ可読記憶媒体と
をさらに備え、
前記取得モジュール、前記検出モジュール、および前記識別モジュールのうちの1つまたは複数が、前記コンピュータ可読記憶媒体に格納され、前記1つまたは複数のデータプロセッサによって実行されるように構成される、請求項7に記載の装置。
【請求項１４】
サーバであって、
番組識別のための装置を備え、
前記装置は、
第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するように構成された取得モジュールと、
所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが前記第1のオーディオフィンガープリントにマッチするか否かを検出するように構成された検出モジュールであって、第2のオーディオフィンガープリントは第2のオーディオ信号に対応する、検出モジュールと、
前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つが前記第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、前記第1のオーディオ信号に関連した番組識別に対する結果として提供するように構成された識別モジュールと
を備える、サーバ。
【請求項１５】
前記検出モジュールが、
前記第1のオーディオフィンガープリントと前記所定のフィンガープリントデータベースに含まれる前記1つまたは複数の第2のオーディオフィンガープリントの各々との間のマッチ度を計算するように構成された第1の計算ユニットと、
前記第1のオーディオフィンガープリントとの最大マッチ度を有する前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つを決定するように構成された第1の決定ユニットと、
前記最大マッチ度が所定の閾値を超えているか否かを検出するように構成された検出ユニットと、
前記最大マッチ度が前記所定の閾値を超えていることに応答して、前記最大マッチ度を有する前記1つまたは複数の第2のオーディオフィンガープリントのうちの前記1つを、前記第1のオーディオフィンガープリントにマッチするものとして提供するように構成された第2の決定ユニットと
を備える、請求項14に記載のサーバ。
【請求項１６】
前記第1のオーディオ信号が、1つまたは複数の第1のピーク点を含み、
前記第1のオーディオ信号に対応する前記第1のオーディオフィンガープリントが、1つまたは複数の第1の二つ組を含み、
第1の二つ組は、第1のピーク点の第1の取得時間と、前記第1のピーク点に対応する第1のハッシュ符号とを含み、
前記第2のオーディオ信号が、1つまたは複数の第2のピーク点を含み、
前記第2のオーディオ信号に対応する前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つが、1つまたは複数の基準二つ組を含み、
基準二つ組は、第2のピーク点の第2の取得時間と、前記第2のピーク点に対応する第2のハッシュ符号とを含み、
前記第1の計算ユニットが、
各第1の二つ組と各基準二つ組とに対して、前記第1の二つ組の前記第1のハッシュ符号が前記基準二つ組の前記第2のハッシュ符号と同一であるか否かを検出するように構成された検出サブユニットと、
前記第1の二つ組の前記第1のハッシュ符号が前記基準二つ組の前記第2のハッシュ符号と同一であることに応答して、前記第1の二つ組の前記第1の取得時間と前記基準二つ組の前記第2の取得時間との間の第1の差を計算するように構成された第1の計算サブユニットと、
少なくとも前記第1の二つ組の前記第1の取得時間と前記基準二つ組の前記第2の取得時間との間の前記第1の差に関連した情報に基づいて、累積数を計算するように構成された第2の計算サブユニットと、
少なくとも前記第1のオーディオフィンガープリントおよび前記1つまたは複数の第2のオーディオフィンガープリントに関係する前記累積数に関連した情報に基づいて、最大累積数を、前記第1のオーディオフィンガープリントと前記1つまたは複数の第2のオーディオフィンガープリントの各々との前記マッチ度として決定するように構成された第1の決定サブユニットと
を備える、請求項15に記載のサーバ。
【請求項１７】
前記検出モジュールが、
前記番組から所定の持続時間に対する前記第2のオーディオ信号を取得するように構成された取得ユニットであって、前記所定の持続時間はΔTで表され、前記所定の持続時間の終わりは現在時間Tに対応する、取得ユニットと、
少なくとも前記第2のオーディオ信号に関連した情報に基づいて、第2のオーディオフィンガープリントを計算するように構成された第2の計算ユニットと、
前記第2のオーディオフィンガープリントおよび前記第2のオーディオフィンガープリントと前記番組との間のマッピングを前記所定のフィンガープリントデータベースに格納するように構成された保存ユニットと
をさらに備える、請求項15または16に記載のサーバ。
【請求項１８】
前記第2の計算ユニットが、
前記第2のオーディオ信号から1つまたは複数の第2のピーク点を抽出し、各第2のピーク点に対して、前記第2のピーク点の第2の取得時間および第2の取得周波数を取得するように構成された第1の取得サブユニットと、
所定の範囲内で前記第2のピーク点にマッチする第3のピーク点のマッチする時間およびマッチする周波数を取得するように構成された第2の取得サブユニットと、
前記第2の取得時間と前記マッチする時間との間の第2の差および前記第2の取得周波数と前記マッチする周波数との間の周波数差を計算するように構成された第3の計算サブユニットと、
少なくとも前記第2の取得周波数、前記第2の差、および前記周波数差に関連した情報に基づいて、ハッシュ値を計算し、前記ハッシュ値を、前記第2のピーク点に対応するハッシュ符号として決定するように構成された第4の計算サブユニットと、
前記第2の取得時間および前記第2のピーク点に対応する前記ハッシュ符号を基準二つ組として格納し、前記基準二つ組を第2のオーディオフィンガープリントとして提供するように構成された第2の決定サブユニットと
を備える、請求項17に記載のサーバ。
【請求項１９】
前記第1のオーディオ信号が、端末環境に関連し、
前記第2のオーディオ信号が、生番組に関連する、請求項14に記載のサーバ。
【請求項２０】
番組識別のためのプログラミング命令を格納した非一時的なコンピュータ可読記憶媒体であって、
前記プログラミング命令は、1つまたは複数のデータプロセッサに、
第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得する手順と、
所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが前記第1のオーディオフィンガープリントにマッチするか否かを検出する手順であって、第2のオーディオフィンガープリントは第2のオーディオ信号に対応する、手順と、
前記1つまたは複数の第2のオーディオフィンガープリントのうちの1つが前記第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、前記第1のオーディオ信号に関連した番組識別に対する結果として提供する手順と
を含むオペレーションを実行させるように構成される、非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、2013年4月28日に出願した中国特許出願第201310156479.3号の優先権を主張するものである。上記中国出願は、すべての目的に関して、参照により本明細書に組み込まれる。
【０００２】
本発明のいくつかの実施形態は、コンピュータ技術を対象とする。より具体的には、本発明のいくつかの実施形態は、ネットワーク技術のためのシステムおよび方法を提供する。単なる例として、本発明のいくつかの実施形態は、データ処理に適用された。しかしながら、本発明の適用範囲は、はるかに広いことが理解されるであろう。
【背景技術】
【０００３】
テレビジョンおよびラジオは、インターネットの急速な発展にもかかわらず、依然として主流のメディア通信プラットフォームであり、ユーザは、一般的に、情報を得るためにテレビを見るか、またはラジオを聴く。
【０００４】
ユーザが番組のセクションを何気なく視聴した場合に、ユーザが番組の視聴を後で再開するために番組を識別することが必要になる場合が多い。従来、ユーザは、しばしば、番組に出現したキーワードを取得し、人力で、そのキーワードをキーボードまたはタッチスクリーンを通じて入力する。端末は、ユーザによって入力されたキーワードを受信し、キーワードに対応する番組を取得するための要求をサーバに送信する。次いで、端末は、ユーザ要求に応答してサーバによって提供される番組を受信し、キーワードに関連した番組の識別の結果として受信された番組を提供する。
【０００５】
しかしながら、従来の技術にはいくつかの問題がある。たとえば、ユーザがキーワードを取得できない場合、または間違ったキーワードを取得する場合があり、そのために、端末は、間違ったキーワードに基づき誤った番組要求をサーバに送信する。正しい番組は、その要求への応答として取得され得ず、したがって、番組識別の精度が低下する。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
したがって、番組識別のための技術を改善することが非常に望ましい。
【課題を解決するための手段】
【０００７】
一実施態様によれば、番組識別のための方法が提供される。たとえば、第1のオーディオ信号に対応する第1のオーディオフィンガープリント(audio fingerprint)が取得され、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチする(match with)か否かが検出され、ここで、第2のオーディオフィンガープリントは第2のオーディオ信号に対応し、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組が、第1のオーディオ信号に関連した番組識別に対する結果として提供される。
【０００８】
別の実施態様によれば、番組識別のための装置は、取得モジュールと、検出モジュールと、識別モジュールとを備える。取得モジュールは、第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するように構成される。検出モジュールは、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かを検出するように構成され、ここで、第2のオーディオフィンガープリントは第2のオーディオ信号に対応する。識別モジュールは、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、第1のオーディオ信号に関連した番組識別に対する結果として提供するように構成される。
【０００９】
さらに別の実施態様によれば、サーバは、番組識別のための装置を備える。この装置は、取得モジュールと、検出モジュールと、識別モジュールとを備える。取得モジュールは、第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するように構成される。検出モジュールは、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かを検出するように構成され、ここで、第2のオーディオフィンガープリントは第2のオーディオ信号に対応する。識別モジュールは、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、第1のオーディオ信号に関連した番組識別に対する結果として提供するように構成される。
【００１０】
さらに別の実施態様によれば、非一時的コンピュータ可読記憶媒体は、番組識別のためのプログラミング命令を備える。プログラミング命令は、1つまたは複数のデータプロセッサに特定のオペレーションを実行させるように構成される。たとえば、第1のオーディオ信号に対応する第1のオーディオフィンガープリントが取得され、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かが検出され、ここで、第2のオーディオフィンガープリントは第2のオーディオ信号に対応し、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組が、第1のオーディオ信号に関連した番組識別に対する結果として提供される。
【００１１】
たとえば、本明細書で説明されているシステムおよび方法は、ユーザが番組キーワードを取得することに失敗するか、または間違った番組キーワードを取得し、そのために、正しい番組を取得することができないという問題を解決することによって番組識別の精度を改善するように構成される。別の例では、本明細書で説明されているシステムおよび方法は、計算誤差からのマッチ度(matching degree)に基づき決定された第2のオーディオフィンガープリントによって引き起こされる番組識別誤差を低減することによって番組識別の精度を改善するように構成される。
【００１２】
実施形態に応じて、1つまたは複数のメリットが得られる。これらのメリット、ならびに本発明の様々な追加の目的、特徴、および利点は、以下の詳細な説明および添付の図面を参照することで完全に理解される。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態による番組識別のための方法を示す簡略化された図である。
【図２】本発明の別の実施形態による番組識別のための方法を示す簡略化された図である。
【図３】本発明のさらに別の実施形態による番組識別のための方法を示す簡略化された図である。
【図４】本発明の一実施形態による垂直読み取り方向を有するモバイル端末のための座標系を示す簡略化された図である。
【図５】本発明の一実施形態による水平読み取り方向を有するモバイル端末のための座標系を示す簡略化された図である。
【図６】本発明の一実施形態によるテレビ番組を見るときにユーザが端末をシェイクするのを示す簡略化された図である。
【図７】本発明の一実施形態によるユーザが端末をシェイクすることに応答して開始する番組識別アプリケーションに関連したインターフェースを示す簡略化された図である。
【図８】本発明の一実施形態によるいくつかのインタラクティブ操作ルールに対するインターフェースを示す簡略化された図である。
【図９】本発明の一実施形態による番組識別のための装置を示す簡略化された図である。
【図１０】本発明の別の実施形態による番組識別のための装置を示す簡略化された図である。
【発明を実施するための形態】
【００１４】
図1は、本発明の一実施形態による番組識別のための方法を示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。方法100は、少なくとも、第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するためのプロセス101と、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かを検出するためのプロセス102であって、第2のオーディオフィンガープリントが第2のオーディオ信号に対応している、プロセス102と、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、第1のオーディオ信号に関連した番組識別に対する結果として提供するためのプロセス103とを含む。
【００１５】
一実施形態によれば、プロセス101において、第1のオーディオ信号に対応する第1のオーディオフィンガープリントが取得される。いくつかの実施形態によれば、番組識別は、取得された第1のオーディオ信号に従って実行され、第1のオーディオ信号は、マイクロフォンによって取得される。いくつかの実施形態によれば、番組識別は、ビデオ信号に従って実行され、ビデオ信号は、カメラによって取得される。一実施形態では、ビデオ信号は、オーディオ信号に比べて大量のデータを含むので、番組識別にオーディオ信号を使用することで、効率が改善される。たとえば、オーディオフィンガープリントは、1つまたは複数の重要な音響特性を表すための高い圧縮比を有するオーディオコンテンツベースのコンパクトなデジタル署名であり、オーディオフィンガープリントは、オーディオ信号を一意的に識別するために使用される。
【００１６】
別の実施形態によれば、プロセス102において、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かが検出される。たとえば、第1のオーディオフィンガープリントにマッチする第2のオーディオフィンガープリントが1つまたは複数ある場合、プロセス103が実行される。特に、第1のオーディオフィンガープリントは、オーディオ信号を一意的に識別する。たとえば、サーバは、オーディオフィンガープリントデータベースに予めアクセスし、第1のオーディオフィンガープリントにマッチする第2のオーディオフィンガープリントが存在するか否かを検出し、第2のオーディオフィンガープリントが検出された場合、プロセス103が実行される。別の例では、第1のオーディオフィンガープリントにマッチする第2のオーディオフィンガープリントが検出されない場合、サーバは、番組を識別することができず、オペレーションは終了する。さらに別の例では、オーディオフィンガープリントデータベースは、1つまたは複数の第2のオーディオフィンガープリントを含み、第2のオーディオフィンガープリントは、番組の第2のオーディオ信号に対応する。
【００１７】
さらに別の実施形態によれば、プロセス103において、マッチする第2のオーディオ信号に関連した番組は、第1のオーディオ信号に関連した番組識別に対する結果として提供される。たとえば、第2のオーディオフィンガープリントは、番組の第2のオーディオ信号に対応する。一例として、第2のオーディオ信号に関連した番組は、第2のオーディオフィンガープリントが第1のオーディオフィンガープリントに基づき決定された後に第2のオーディオフィンガープリントに基づき決定され、決定された番組は、第1のオーディオフィンガープリントに関連した番組識別に対する結果として提供される。
【００１８】
図2は、本発明の別の実施形態による番組識別のための方法を示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。方法200は、少なくとも、第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するためのプロセス201と、番組から所定の持続時間に対する第2のオーディオ信号を取得し、ここで、所定の持続時間はΔTで表され、所定の持続時間の終わりは現在時間Tに対応し、少なくとも第2のオーディオ信号に関連した情報に基づき第2のオーディオフィンガープリントを計算し、第2のオーディオフィンガープリントおよび第2のオーディオフィンガープリントと番組との間のマッピングをオーディオフィンガープリントデータベースに格納するためのプロセス202と、第1のオーディオフィンガープリントと所定のフィンガープリントデータベースに含まれる第2のオーディオフィンガープリントの各々との間のマッチ度を計算するためのプロセス203と、第1のオーディオフィンガープリントとの最大のマッチ度を有する第2のオーディオフィンガープリントのうちの1つを決定するためのプロセス204と、最大のマッチ度が所定の閾値を超えるか否かを検出し、最大のマッチ度が所定の閾値を超えたことに応答して、最大のマッチ度を有する第2のオーディオフィンガープリントのうちの1つを第1のオーディオフィンガープリントにマッチするものとして決定するためのプロセス205と、マッチする第2のオーディオフィンガープリントに関連した番組を第1のオーディオ信号に関連した番組識別に対する結果として提供するためのプロセス206とを含む。
【００１９】
一実施形態によれば、プロセス201において、第1のオーディオ信号に対応する第1のオーディオフィンガープリントが取得される。いくつかの実施形態によれば、番組識別は、取得された第1のオーディオ信号に従って実行され、第1のオーディオ信号は、マイクロフォンによって取得される。いくつかの実施形態によれば、番組識別は、取得されたビデオ信号に従って実行され、ビデオ信号は、カメラによって取得される。一実施形態では、ビデオ信号は、オーディオ信号に比べて大量のデータを含むので、番組識別にオーディオ信号を使用することで、効率が改善される。たとえば、オーディオ信号は、サンプリング周波数が8KHzである16ビット量子化パルス符号変調(PCM)の形式のオーディオストリームを含む。別の例では、第1のオーディオ信号は、端末環境に関連し、第1のオーディオ信号は、端末を通じて取得される。さらに別の例では、端末は、第1のオーディオ信号を取得する前に第1のオーディオ信号に関係する取得時間期間の持続時間を予め決定する。一例として、端末は、トリガ信号を検出した後に第1のオーディオ信号を取得することを開始し、計時し始める。端末は、所定の取得時間期間の経過後に第1のオーディオ信号を取得することを停止する。たとえば、取得時間期間の持続時間が短すぎる場合、サーバは、第1のオーディオ信号に対応する番組を正確に識別することができず、第1のオーディオ信号を識別するための精度を低下させ得る。別の例では、取得時間期間の持続時間が長すぎる場合、端末が第1のオーディオ信号を取得するとき、およびサーバが第1のオーディオ信号を識別するときにリソースが無駄になる。いくつかの実施形態では、取得時間期間の持続時間が、実際の必要条件に従って、たとえば、5〜15秒に適切に設定される。
【００２０】
別の実施形態によれば、端末は、第1のオーディオ信号をサーバに直接送信する。たとえば、サーバは、第1のオーディオ信号の第1のオーディオフィンガープリントを計算し、第1のオーディオフィンガープリントに基づき第1のオーディオ信号を識別する。端末によって第1のオーディオ信号を送信するために消費されるトラヒックは、第1のオーディオフィンガープリントを送信するために消費されるトラヒックよりもかなり大きく、第1のオーディオ信号に対する第1のオーディオフィンガープリントの計算は、いくつかの実施形態によれば、端末の高い性能を必要としない。端末は、取得された第1のオーディオ信号に対する第1のオーディオフィンガープリントを計算し、その第1のオーディオフィンガープリントをサーバに送信し、これにより、いくつかの実施形態では、第1のオーディオ信号を送信するために消費されるトラヒックを節約する。
【００２１】
さらに別の実施形態によれば、サーバは、第1のオーディオ信号を受信し、第1のオーディオ信号に基づき第1のオーディオフィンガープリントを計算する。特に、第1のオーディオ信号は、1つまたは複数の第1のピーク点を含み、第1のオーディオ信号に対応する第1のオーディオフィンガープリントは、いくつかの実施形態では、1つまたは複数の第1の二つ組(two-tuple)を含む。たとえば、各二つ組は、第1のピーク点の第1の取得時間と、第1のピーク点に対応するハッシュ符号とを含む。別の例では、第1のオーディオ信号に基づき第1のオーディオフィンガープリントを計算するステップは、第1のオーディオ信号から1つまたは複数の第1のピーク点を抽出するステップと、各第1のピーク点について、第1のピーク点の第1の取得時間および第1の取得周波数を取得するステップと、所定の範囲内で第1のピーク点にマッチする対になるピーク点のマッチする時間およびマッチする周波数を取得するステップと、第1の取得時間とマッチする時間との間の時間差および第1の取得周波数とマッチする周波数との間の周波数差を計算するステップと、少なくとも第1の取得周波数、時間差、および周波数差に関連した情報に基づきハッシュ値を計算するステップと、ハッシュ値を第1のピーク点に対応するハッシュ符号として決定するステップと、第1の取得時間および第1のピーク点に対応するハッシュ符号を第1の二つ組として記憶するステップと、第1の二つ組を第1のオーディオフィンガープリントとして提供するステップとを含む。
【００２２】
一実施形態では、サーバは、第1のオーディオ信号から1つまたは複数の第1のピーク点を抽出し、第1のピーク点に基づき第1のオーディオ信号の第1のオーディオフィンガープリントを計算する。たとえば、第1のオーディオ信号の二次元時間周波数グラフを取得するために第1のオーディオ信号上で時間周波数解析が実行され、二次元時間周波数グラフは、所定の数の時間周波数サブグラフに分割される。一例として、ピーク点は、各時間周波数サブグラフ内の矩形近傍内に最大エネルギー値を有する特性点に対応する。
【００２３】
別の実施形態では、サーバは、第1のオーディオ信号の第1のピーク点を抽出する前に第1のオーディオ信号をフレームに分割して複数のオーディオフレーム信号を形成する。たとえば、サーバは、窓関数を通じて第1のオーディオ信号をフレームに分割する。一例として、窓関数は、ハミング窓関数、ハニング窓関数、またはガウス窓関数などである。別の例では、2つのオーディオフレーム信号の間の不連続を回避するために、第1のオーディオ信号がフレームに分割されるときにオーディオフレーム信号の間のオーバーラップが設定される。さらに別の例では、オーバーラップは16msに設定され、これにより現在のオーディオフレーム信号の最初の16msの内容は前のオーディオフレーム信号の最後の16msの内容と同じになる。
【００２４】
さらに別の実施形態では、オーディオフレーム信号を取得した後に、サーバは、各オーディオフレーム信号に対してSTFT(短時間フーリエ変換)を実行し、各オーディオフレーム信号の周波数スペクトルを取得し、各オーディオフレーム信号の周波数スペクトルに対応する振幅スペクトルを抽出する。たとえば、サーバは、各オーディオフレーム信号の時間シーケンスに従って各オーディオフレーム信号の周波数スペクトルおよび振幅スペクトルを引き出し、第1のオーディオ信号の二次元時間周波数グラフを形成する。
【００２５】
一実施形態によれば、サーバは、少なくともM上の時間(t)のモジュロ演算に関連した情報に基づき二次元時間周波数グラフを分割して位相チャネルに対応するM個の時間周波数サブグラフを生成し、ここで、Mは正整数である。たとえば、いくつかの時間の各々(たとえば、t=M-1、(M-1)+M、...、(M-1)+xM)に対応する特性点は、二次元時間周波数グラフから選択され、ここで、xは正整数であり、0<(M-1)+xM≦tmax(たとえば、tmaxは、時間周波数グラフ内の最大時間に対応する)である。一例として、選択された特性点は、第1のオーディオ信号の位相チャネルに対応する時間周波数サブグラフ(たとえば、サブグラフM)を構成するために使用される。時間周波数サブグラフMは、位相チャネルMに対応する。
【００２６】
別の実施形態によれば、サーバは、各位相チャネルに対応する時間周波数サブグラフ内の各特性点のエネルギー値を分析し、第1のピーク点として各特性点のエネルギー値に基づく矩形近傍内の最大エネルギー値を有する特性点を選択する。たとえば、サーバは、第1のピーク点の取得時間および取得周波数を得る。別の例では、第1のピーク点にマッチしたときに、サーバは、矩形ターゲット領域を選択し、その矩形ターゲット領域内で、第1のピークにマッチするように第1のピーク点以外の1つまたは複数のピーク点を選択する。さらに別の例では、1つまたは複数のピーク点は、選択されたピーク点に関連した出現時間が第1のピーク点に関連した出現時間と比べて最小の差を有するので、第1のピーク点にマッチするように選択される。さらに別の例では、1つまたは複数のピーク点は、ピーク点が第1のピーク点以外の最大エネルギー値を有するので、第1のピーク点にマッチするように選択される。いくつかの実施形態では、サーバが、第1のピーク点にマッチするピーク点を決定した後、サーバは、マッチしているピーク点のマッチしている時間およびマッチしているピーク点のマッチしている周波数を取得する。
【００２７】
さらに別の実施形態によれば、サーバは、取得時間とマッチする時間との間の第2の時間差および取得周波数とマッチする周波数との間の第2の周波数差を計算して、四つ組(取得時間、取得周波数、第2の時間差、および第2の周波数差)を得る。たとえば、サーバは、(取得周波数、第2の時間差、および第2の周波数差)に対するハッシュ計算を実行し、固定された数のビットを持つハッシュ値を取得し、ハッシュ値を第1のピーク点に対応するハッシュ符号として提供する。別の例では、第1の二つ組の各セットは、(取得時間，ハッシュ符号)と表される。
【００２８】
一実施形態では、端末によって第1のピーク点を送信するために消費されるトラヒックは、第1のオーディオフィンガープリントを送信するために消費されるトラヒックよりも小さい。たとえば、第1のピーク点を決定した後に、端末は、圧縮された第1のピーク点をサーバに送信する。別の例では、圧縮された第1のピーク点を受信した後に、サーバは、圧縮されている第1のピーク点を展開し、第1のピーク点に対応する第1の二つ組を計算して第1のオーディオフィンガープリントを生成する。
【００２９】
別の実施形態では、サーバによって取得された第1のオーディオ信号の持続時間は、5から15秒であり、テストされる数百個の二つ組(第1の二つ組)に対応し得る。たとえば、第1のオーディオ信号は、4つの第1の二つ組を含み、第1のオーディオフィンガープリントは、{(t1,hashcode1),(t2,hashcode2),(t3,hashcode3),(t4,hashcode4)}であり、ここで、tは端末による第1のオーディオ信号の取得の開始を基準とした時間を表す。別の例では、端末は、20秒目に第1のオーディオ信号を取得することを開始し、第1の二つ組に関係する第1のピーク点に関連した取得時間は、21秒目である。このとき、第1の二つ組の取得時間は1秒として記録される。
【００３０】
さらに別の実施形態では、サーバおよび端末は、有線またはワイヤレスネットワークを介して通信する。たとえば、第1のオーディオフィンガープリントは、2G(第2世代移動通信技術)、3G(第3世代移動通信技術)、および/またはWi-Fi(ワイヤレスフィデリティ)を介して取得される。
【００３１】
いくつかの実施形態では、プロセス202において、第2のオーディオ信号は、番組から所定の持続時間について取得され、ここで、所定の持続時間はΔTで表され、所定の持続時間の終わりは現在時間Tに対応する。たとえば、少なくとも第2のオーディオ信号に関連した情報に基づき第2のオーディオフィンガープリントが計算される。一例として、第2のオーディオフィンガープリントおよび第2のオーディオフィンガープリントと番組との間のマッピングは、オーディオフィンガープリントデータベースに格納される。別の例では、オーディオフィンガープリントデータベースは、第2のオーディオフィンガープリントの少なくとも1つのセットを含む。さらに別の例では、第2のオーディオフィンガープリントの各セットは、番組の第2のオーディオ信号に対応する。一例として、第2のオーディオ信号は、生番組に関連する。
【００３２】
一実施形態では、サーバは、端末によって送信された第1のオーディオ信号の識別を可能にするためにすべての番組に対応する第2のオーディオ信号を予め取得する。特に、サーバは、番組に対応する第2のオーディオ信号の第2のオーディオフィンガープリントおよび第2のオーディオフィンガープリントと番組との間のマッピングを取得し、いくつかの実施形態では、第2のオーディオフィンガープリントに基づき端末によって送信された第1のオーディオ信号を識別する。サーバは、様々な方法で第2のオーディオフィンガープリントを取得することができる。たとえば、サーバは、すべての番組に対応する第2のオーディオ信号を受信し、各第2のオーディオ信号について第2のオーディオフィンガープリントを計算する。別の例では、サーバは、他のサーバによって送信された各番組に対応する第2のオーディオフィンガープリントを受信する。
【００３３】
別の実施形態では、第2のオーディオ信号は、生番組に関連する。たとえば、第2のオーディオ信号が、生衛星テレビジョン信号である場合、衛星信号は、様々な衛星チャネルのTS(トランスポートストリーム)に変換され、オーディオストリームがこのTSストリームから抽出される。別の例では、オーディオストリームは、サンプリング周波数が8KHzである16ビット量子化PCMの形式で抽出される。
【００３４】
いくつかの実施形態では、端末が取得された第1のオーディオ信号をサーバに送信するときに、遅延が生じ得る。生番組から取得された第2のオーディオ信号の持続時間は、サーバによって取得された第2のオーディオ信号が端末によって送信された第1のオーディオ信号を含むことを確実にするために取得持続時間よりも長い所定の持続時間に設定され、ここで、所定の持続時間はΔTであり、所定の持続時間の終了時間は、現在の時間Tである。一例として、取得持続時間が5〜15秒である場合、所定の持続時間は1〜2分に設定される。
【００３５】
いくつかの実施形態では、第2のオーディオ信号は、1つまたは複数の第2のピーク点を含む。たとえば、第2のオーディオ信号に対応する第2のオーディオフィンガープリントのうちの1つは、1つまたは複数の基準二つ組を含み、基準二つ組は、第2のピーク点の第2の取得時間と、第2のピーク点に対応する第2のハッシュ符号とを含む。別の例では、第2のオーディオ信号に基づき第2のオーディオフィンガープリントを計算するステップは、第2のオーディオ信号から1つまたは複数の第2のピーク点を抽出するステップと、各第2のピーク点について、第2のピーク点の第2の取得時間および第2の取得周波数を取得するステップと、所定の範囲内で第2のピーク点にマッチする第3のピーク点のマッチする時間およびマッチする周波数を取得するステップと、第2の取得時間とマッチする時間との間の第2の差および第2の取得周波数とマッチする周波数との間の周波数差を計算するステップと、少なくとも第2の取得周波数、第2の差、および周波数差に関連した情報に基づきハッシュ値を計算するステップと、ハッシュ値を第2のピーク点に対応するハッシュ符号として決定するステップと、第2の取得時間および第2のピーク点に対応するハッシュ符号を基準二つ組として記憶するステップと、基準二つ組を第2のオーディオフィンガープリントとして提供するステップとを含む。
【００３６】
いくつかの実施形態では、1〜2分のオーディオ信号は、数千個の基準二つ組を含む。たとえば、オーディオ信号は、m個の基準二つ組を含む。別の例では、第2のオーディオフィンガープリントは、{(T11,hashcode11),(T12,hashcode12),...,(T1n,hashcode1n),(T1n+1,hashode1n+1),(T1n+2,hashcode1n+2),(T1n+3,hashcode1n+3),...,(T1m,hashcode1m)}であり、ここで、Tは、オーディオ信号の実際の取得時間を表す。一例として、基準二つ組に関係する第2のピーク点に関連した実際の取得時間が、21秒目である場合、基準二つ組の取得時間は、21秒目として記録される。たとえば、サーバによる第2のオーディオ信号に基づき第2のオーディオフィンガープリントを計算するためのプロセスは、サーバによる第1のオーディオ信号に基づき第1のオーディオフィンガープリントを計算するためのプロセス(たとえば、プロセス201)と同じである。
【００３７】
いくつかの実施形態では、第2のオーディオフィンガープリントと番組との間のマッピングを記憶するときに、番組は、一次インデックスとして使用され、ハッシュ符号は、二次インデックスとして使用される。たとえば、同じ番組識別を有する基準二つ組は、シーケンスとしてみなされ、シーケンス内の各基準二つ組は、ハッシュ符号の昇順で配列される。いくつかの実施形態では、ハッシュ符号は、一次インデックスとして使用され、番組識別は、二次インデックスとして使用される。たとえば、同じハッシュ符号を有する基準二つ組は、シーケンスとしてみなされる。
【００３８】
一実施形態では、プロセス203において、第1のオーディオフィンガープリントと所定のフィンガープリントデータベースに含まれる第2のオーディオフィンガープリントの各々との間のマッチ度が計算される。たとえば、第1のオーディオ信号は、1つまたは複数の第1のピーク点を含み、第1のオーディオ信号に対応する第1のオーディオフィンガープリントは、1つまたは複数の第1の二つ組を含み、第1の二つ組は、第1のピーク点の第1の取得時間と、第1のピーク点に対応する第1のハッシュ符号とを含む。別の例では、第2のオーディオ信号は、1つまたは複数の第2のピーク点を含み、第2のオーディオ信号に対応する第2のオーディオフィンガープリントのうちの1つは、1つまたは複数の基準二つ組を含み、基準二つ組は、第2のピーク点の第2の取得時間と、第2のピーク点に対応する第2のハッシュ符号とを含む。さらに別の例では、第1のオーディオフィンガープリントと所定のフィンガープリントデータベースに含まれる第2のオーディオフィンガープリントの各々との間のマッチ度を計算するステップは、各第1の二つ組および各基準二つ組について、第1の二つ組の第1のハッシュ符号が基準二つ組の第2のハッシュ符号と同じであるか否かを検出するステップと、第1の二つ組の第1のハッシュ符号が基準二つ組の第2のハッシュ符号と同じであることに応答して、第1の二つ組の第1の取得時間と基準二つ組の第2の取得時間との間の時間差を計算するステップと、少なくとも第1の二つ組の第1の取得時間と基準二つ組の第2の取得時間との間の時間差に関連した情報に基づき累積数を計算するステップと、少なくとも第1のオーディオフィンガープリントおよび第2のオーディオフィンガープリントに関係する累積数に関連した情報に基づき最大累積数を第1のオーディオフィンガープリントおよび第2のオーディオフィンガープリントの各々のマッチ度として決定するステップとを含む。
【００３９】
いくつかの実施形態では、第1のオーディオフィンガープリントが、第2のオーディオフィンガープリントと同じハッシュ符号を有することになった後、3つの時間差が計算され、これら3つの異なる時間差に関連した累積数は4、27、および9である。第1のオーディオフィンガープリントと第2のオーディオフィンガープリントとの間のマッチ度は、いくつかの実施形態では27である。
【００４０】
一実施形態では、tは、端末による第1のオーディオ信号の取得の始まりに関する時間を表し、Tは、第2のオーディオ信号の実際の取得時間を表す。たとえば、計算されたΔtは、端末による第1のオーディオ信号の取得の時間を表す。
【００４１】
別の実施形態では、プロセス204において、第1のオーディオフィンガープリントとの最大のマッチ度を有する第2のオーディオフィンガープリントのうちの1つが決定される。たとえば、第1のオーディオフィンガープリントと第2のオーディオフィンガープリントとの間のマッチ度が高ければ高いほど、端末によって送信される第1のオーディオ信号が番組の第2のオーディオ信号に対応する可能性が高くなる。別の例では、サーバは、計算されたマッチ度から最大マッチ度を決定し、最大のマッチ度を有する第2のオーディオフィンガープリントのうちの1つを第1のオーディオフィンガープリントにマッチするフィンガープリントとして決定する。
【００４２】
さらに別の実施形態では、プロセス205において、最大マッチ度が所定の閾値を超えているか否かが検出される。たとえば、最大マッチ度が所定の閾値を超えていることに応答して、最大マッチ度を有する第2のオーディオフィンガープリントのうちの1つが、第1のオーディオフィンガープリントにマッチするものとして提供される。別の例では、所定の閾値は、第1のオーディオフィンガープリントと第2のオーディオフィンガープリントとの間の、計算誤差によって引き起こされるマッチ度問題を回避するように設定される。さらに別の例では、最大マッチ度が所定の閾値を超えたことを検出した後、サーバは、最大マッチ度に対応する第2のオーディオフィンガープリントを第1のオーディオフィンガープリントにマッチする第2のオーディオフィンガープリントとして決定し、これにより、第1のオーディオフィンガープリントと第2のオーディオフィンガープリントとの間のマッチの精度を高める。
【００４３】
一実施形態によれば、プロセス206において、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組は、第1のオーディオ信号に関連した番組識別に対する結果として提供される。たとえば、第2のオーディオフィンガープリントは、番組の第2のオーディオ信号に対応する。別の例では、第2のオーディオフィンガープリントのうちの1つが、第1のオーディオフィンガープリントにマッチすると決定されると、マッチする第2のオーディオ信号に対応する番組が、マッチする第2のオーディオフィンガープリントに基づき決定され、第1のオーディオフィンガープリントに関連した番組識別に対する結果として提供される。
【００４４】
図3は、本発明のさらに別の実施形態による番組識別のための方法を示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。方法300は、少なくともプロセス301〜311を含む。
【００４５】
一実施形態によれば、プロセス301において、端末は、シェイク信号、音響制御信号、キーボード信号、クリック信号、ダブルクリック信号、マルチクリック信号、カーソル、クリック一時停止信号、所定のジェスチャ信号、およびホットキー信号のうちのいずれか1つ、および/または任意の組合せを含むトリガ信号を検出する。たとえば、トリガ信号が受信された場合、プロセス302が実行される。別の例では、端末によるリアルタイム信号取得によって引き起こされるリソースの無駄使いを回避するために、端末は、トリガオペレーションを備える。さらに別の例では、端末がトリガオペレーションに関連したトリガ信号を受信した場合、プロセス302は、端末環境に関連したオーディオ信号を取得するために実行される。
【００４６】
一実施形態では、トリガ信号は、シェイク信号、音響制御信号、キーボード信号、クリック信号、ダブルクリック信号、マルチクリック信号、カーソル、フリック一時停止信号、所定のジェスチャ信号、およびホットキー信号のうちのいずれか1つ、および/または任意の組合せを含む。たとえば、トリガ信号は、ユーザがキーボードまたはタッチスクリーンをクリックすることによって生成される。別の例では、キーボードのクリックまたはタッチスクリーンのクリックは、端末デバイスの損傷を引き起こし、端末の寿命を縮めるおそれがある。さらに別の例では、端末内のセンサーは、トリガ信号が受信されたか否かを決定するために使用される。
【００４７】
さらに別の実施形態では、端末は、重力加速度センサーを通じて端末の加速度を取得し、その加速度が所定の条件を満たしているか否かを決定する。たとえば、その加速度が所定の条件を満たしている場合、その加速度はトリガ信号であると決定される。別の例では、端末は、マイクロフォンを通じて端末から音響信号を取得し、その音響信号が所定の条件を満たしているか否かを決定する。一例として、その音響信号が所定の条件を満たしている場合、その音響信号はトリガ信号であると決定される。
【００４８】
特に、トリガ信号がシェイク信号である場合、いくつかの実施形態では、トリガ信号が受信されたか否かが決定される。たとえば、所定の時間期間内の端末の加速度は、重力加速度センサーを介して取得される。別の例では、加速の方向が所定の回数変化したか否かが検出される。さらに別の例では、加速の方向が所定の回数変化した場合、トリガ信号が受信されたと決定される。
【００４９】
いくつかの実施形態によれば、重力加速度センサーは、3軸加速度計、または3軸ジャイロスコープである。たとえば、センサーを使用するために、端末に対する座標系がセンサーの3本の軸が置かれる3本の直線に基づき確立される。別の例では、これら3本のセンサー軸は、それぞれ端末の長さ、幅、および高さに対応する。いくつかの実施形態では、座標系は、少なくともセンサー軸に関連した情報に基づき確立される。たとえば、端末のインターフェースは、x-z平面として設定される。端末を中心は、座標原点に対応し、端末の右を指す軸は、x軸の正軸に対応し、x軸に垂直な端末平面上の軸は、z軸に対応する。一例として、端末の頂部を指すx-z平面内の軸は、z軸の正軸に対応し、端末平面に垂直な軸は、y軸に対応し、x-z平面から出て端末の頂部の方を指す軸は、y軸の正軸に対応する。
【００５０】
図4は、本発明の一実施形態による垂直読み取り方向を有するモバイル端末のための座標系を示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。たとえば、モバイル端末は、携帯電話である。
【００５１】
図5は、本発明の一実施形態による水平読み取り方向を有するモバイル端末のための座標系を示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。たとえば、モバイル端末は、タブレットである。
【００５２】
いくつかの実施形態では、端末の加速度が、重力加速度センサーを通じて得られた後、端末は、x軸方向に沿ってシェイクし、次いで、加速の方向がx軸方向において所定の回数変化したか否かが検出される。たとえば、加速の方向がx軸方向において所定の回数変化した場合、トリガ信号が受信されたと決定される。別の例では、加速の方向がx軸方向において所定の回数変化しない場合、トリガ信号が受信されないと決定される。たとえば、x軸方向が、左から右への方向に対応している場合、右から左へ変化する加速の方向は、一方方向の変化としてカウントされる。
【００５３】
いくつかの実施形態では、端末によってトリガ信号を検出する精度を改善するために、加速度が所定の閾値を超えたか否かが検出される。たとえば、加速の方向が所定の回数変化し、加速度が所定の閾値を超えた場合、端末がトリガ信号を受信したと決定される。
【００５４】
一実施形態によれば、加速度aがセンサーを通じて得られた後、加速度aは、x軸、y軸、およびz軸に沿って分解され、3本の軸に対応する加速度成分ax、ay、およびazを得る。たとえば、端末が、x軸に沿ってシェイクされている場合、x軸に沿った加速度閾値は、ax0に設定され、axの大きさが閾値ax0を超えるか否かが検出される。一例として、axの大きさが、閾値ax0を超えた場合、加速度成分axの大きさは、閾値ax0よりも大きいと決定され、したがって、トリガ信号が受信されたと決定される。
【００５５】
図6は、本発明の一実施形態によるテレビ番組を見るときにユーザが端末をシェイクするのを示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。
【００５６】
図7は、本発明の一実施形態によるユーザが端末をシェイクすることに応答して開始する番組識別アプリケーションに関連したインターフェースを示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。
【００５７】
図3を再び参照すると、プロセス302において、端末は、いくつかの実施形態では、信号をサーバに送信する。たとえば、端末は、第1のオーディオ信号をサーバに送信し、サーバは、第1のオーディオ信号に基づき第1のオーディオフィンガープリントを取得する。別の例では、第1のオーディオフィンガープリントは、端末環境のオーディオ信号に対応する。一例として、第1のオーディオ信号に関連した番組は、第1のオーディオフィンガープリントに基づき識別される。
【００５８】
一実施形態によれば、端末は、第1のオーディオ信号をサーバに直接送信する。たとえば、サーバは、第1のオーディオ信号の第1のオーディオフィンガープリントを計算し、第1のオーディオフィンガープリントに基づき第1のオーディオ信号を識別する。端末によって第1のオーディオ信号を送信するために消費されるトラヒックは、第1のオーディオフィンガープリントを送信するために消費されるトラヒックよりもかなり大きく、第1のオーディオ信号に対する第1のオーディオフィンガープリントの計算は、いくつかの実施形態では、端末の高い性能を必要としない。端末は、取得された第1のオーディオ信号に対する第1のオーディオフィンガープリントを計算し、その第1のオーディオフィンガープリントをサーバに送信し、これにより、いくつかの実施形態では、第1のオーディオ信号を送信するために消費されるトラヒックを節約する。
【００５９】
特に、第1のオーディオ信号は、1つまたは複数の第1のピーク点を含み、第1のオーディオ信号に対応する第1のオーディオフィンガープリントは、いくつかの実施形態では、1つまたは複数の第1の二つ組を含む。たとえば、各二つ組は、第1のピーク点の第1の取得時間と、第1のピーク点に対応するハッシュ符号とを含む。別の例では、第1のオーディオ信号に基づき第1のオーディオフィンガープリントを計算するステップは、第1のオーディオ信号から1つまたは複数の第1のピーク点を抽出するステップと、各第1のピーク点について、第1のピーク点の第1の取得時間および第1の取得周波数を取得するステップと、所定の範囲内で第1のピーク点にマッチする対になるピーク点のマッチする時間およびマッチする周波数を取得するステップと、第1の取得時間とマッチする時間との間の時間差および第1の取得周波数とマッチする周波数との間の周波数差を計算するステップと、少なくとも第1の取得周波数、時間差、および周波数差に関連した情報に基づきハッシュ値を計算するステップと、ハッシュ値を第1のピーク点に対応するハッシュ符号として決定するステップと、第1の取得時間および第1のピーク点に対応するハッシュ符号を第1の二つ組として記憶するステップと、第1の二つ組を第1のオーディオフィンガープリントとして提供するステップとを含む。一例として、端末による第1のオーディオ信号に基づき第1のオーディオフィンガープリントを計算するためのプロセスは、サーバによる第1のオーディオ信号に基づき第1のオーディオフィンガープリントを計算するためのプロセス(たとえば、プロセス201)と同じである。
【００６０】
一実施形態では、サーバおよび端末は、有線またはワイヤレスネットワークを介して通信する。たとえば、第1のオーディオフィンガープリントは、2G(第2世代移動通信技術)、3G(第3世代移動通信技術)、および/またはWi-Fi(ワイヤレスフィデリティ)を介して取得される。
【００６１】
別の実施形態では、プロセス303において、サーバは、端末によって送信された信号に従って第1のオーディオフィンガープリントを取得する。たとえば、サーバは、第1のオーディオ信号に基づき第1のオーディオフィンガープリントを計算する。別の例では、サーバは、第1のオーディオ信号に基づき端末の計算によって得られた第1のオーディオフィンガープリントを受信する。
【００６２】
さらに別の実施形態では、プロセス304において、第2のオーディオ信号は、番組から所定の持続時間について取得され、ここで、所定の持続時間はΔTで表され、所定の持続時間の終わりは現在時間Tに対応する。たとえば、少なくとも第2のオーディオ信号に関連した情報に基づき第2のオーディオフィンガープリントが計算される。一例として、第2のオーディオフィンガープリントおよび第2のオーディオフィンガープリントと番組との間のマッピングは、オーディオフィンガープリントデータベースに格納される。
【００６３】
さらに別の実施形態では、オーディオフィンガープリントデータベースは、第2のオーディオフィンガープリントの1つまたは複数のセットを含む。たとえば、第2のオーディオフィンガープリントの各セットは、番組の第2のオーディオ信号に対応し、第2のオーディオ信号は、生番組に関連する。
【００６４】
いくつかの実施形態では、第2のオーディオ信号は、1つまたは複数の第2のピーク点を含む。たとえば、第2のオーディオ信号に対応する第2のオーディオフィンガープリントのうちの1つは、1つまたは複数の基準二つ組を含み、基準二つ組は、第2のピーク点の第2の取得時間と、第2のピーク点に対応する第2のハッシュ符号とを含む。別の例では、第2のオーディオ信号に基づき第2のオーディオフィンガープリントを計算するステップは、第2のオーディオ信号から1つまたは複数の第2のピーク点を抽出するステップと、各第2のピーク点について、第2のピーク点の第2の取得時間および第2の取得周波数を取得するステップと、所定の範囲内で第2のピーク点にマッチする第3のピーク点のマッチする時間およびマッチする周波数を取得するステップと、第2の取得時間とマッチする時間との間の第2の差および第2の取得周波数とマッチする周波数との間の周波数差を計算するステップと、少なくとも第2の取得周波数、第2の差、および周波数差に関連した情報に基づきハッシュ値を計算するステップと、ハッシュ値を第2のピーク点に対応するハッシュ符号として決定するステップと、第2の取得時間および第2のピーク点に対応するハッシュ符号を基準二つ組として記憶するステップと、基準二つ組を第2のオーディオフィンガープリントとして提供するステップとを含む。いくつかの実施形態では、サーバによる第2のオーディオ信号に基づき第2のオーディオフィンガープリントを計算するためのプロセスは、サーバによる第1のオーディオ信号に基づき第1のオーディオフィンガープリントを計算するためのプロセス(たとえば、プロセス201)と同じである。
【００６５】
一実施形態によれば、プロセス305において、第1のオーディオフィンガープリントと所定のフィンガープリントデータベースに含まれる第2のオーディオフィンガープリントの各々との間のマッチ度が計算される。たとえば、第1のオーディオフィンガープリントとの最大のマッチ度を有する第2のオーディオフィンガープリントのうちの1つが決定される。一例として、最大マッチ度が所定の閾値を超えているか否かが検出される。最大マッチ度が所定の閾値を超えたことに応答して、最大マッチ度を有する第2のオーディオフィンガープリントに関連した第2のオーディオ信号に対応する番組は、いくつかの実施形態では、第1のオーディオ信号に対する番組識別の結果として提供される。
【００６６】
別の実施形態によれば、第1のオーディオ信号は、1つまたは複数の第1のピーク点を含み、第1のオーディオ信号に対応する第1のオーディオフィンガープリントは、1つまたは複数の第1の二つ組を含み、第1の二つ組は、第1のピーク点の第1の取得時間と、第1のピーク点に対応する第1のハッシュ符号とを含む。別の例では、第2のオーディオ信号は、1つまたは複数の第2のピーク点を含み、第2のオーディオ信号に対応する第2のオーディオフィンガープリントのうちの1つは、1つまたは複数の基準二つ組を含み、基準二つ組は、第2のピーク点の第2の取得時間と、第2のピーク点に対応する第2のハッシュ符号とを含む。さらに別の例では、第1のオーディオフィンガープリントと所定のフィンガープリントデータベースに含まれる第2のオーディオフィンガープリントの各々との間のマッチ度を計算するステップは、各第1の二つ組および各基準二つ組について、第1の二つ組の第1のハッシュ符号が基準二つ組の第2のハッシュ符号と同じであるか否かを検出するステップと、第1の二つ組の第1のハッシュ符号が基準二つ組の第2のハッシュ符号と同じであることに応答して、第1の二つ組の第1の取得時間と基準二つ組の第2の取得時間との間の時間差を計算するステップと、少なくとも第1の二つ組の第1の取得時間と基準二つ組の第2の取得時間との間の時間差に関連した情報に基づき累積数を計算するステップと、少なくとも第1のオーディオフィンガープリントおよび第2のオーディオフィンガープリントに関係する累積数に関連した情報に基づき最大累積数を第1のオーディオフィンガープリントおよび第2のオーディオフィンガープリントの各々のマッチ度として決定するステップとを含む。いくつかの実施形態では、オーディオフィンガープリントデータベースが第1のオーディオフィンガープリントにマッチする第2のオーディオフィンガープリントを有するか否かをサーバが検出するプロセスは、プロセス203と同じである。
【００６７】
さらに別の実施形態によれば、プロセス306において、サードパーティクライアントが、番組に対応する1つまたは複数のタイプのインタラクティブ情報をサーバに送信する。たとえば、サードパーティクライアントは、番組において実行されるいくつかのインタラクティブアクティビティに関連したインタラクティブ情報を予め編集しておき、編集されたインタラクティブ情報を、サーバがインタラクティブ情報を端末に転送するようにサーバに送信する。別の例では、サードパーティクライアントは、ラジオ局を含む。
【００６８】
いくつかの実施形態では、番組識別のセキュリティを改善するために、サードパーティクライアントは、悪意のあるインタラクティブ情報の発行を回避するよう認証され、これにより端末による偽インタラクティブアクティビティへの参加を回避し、インタラクティブアクティビティのセキュリティを改善する。たとえば、サードパーティクライアントは、サーバに対して公開アカウントを申請する。一例として、サードパーティクライアントがサーバの認証に通った後、サーバは、サードパーティクライアントに対して公開アカウントを付与する。サードパーティクライアントは、この公開アカウントを使用して、サーバにログオンし、その公開アカウントを使用してインタラクティブ情報を編集するか、または送信することができる。
【００６９】
一実施形態では、プロセス307において、サーバは、サードパーティクライアントによって送信された番組に対応する1つまたは複数のタイプのインタラクティブ情報を受信する。たとえば、プロセス308において、サーバは、1つまたは複数のタイプのインタラクティブ情報に従ってインタラクティブ情報データベースを確立し、インタラクティブ情報の管理を円滑にする。
【００７０】
別の実施形態では、プロセス309において、サーバは、番組に対応するインタラクティブ情報に関係するフィードバック情報を端末に送信する。たとえば、サーバは、オーディオフィンガープリントデータベースを確立するときに予め第2のオーディオフィンガープリントと番組との間のマッピングを記憶しておく。一例として、第2のオーディオフィンガープリントは、対応する番組を決定するために使用され、番組に関連したインタラクティブ情報は、端末が番組に対応するインタラクティブアクティビティに参加するために取得される。特に、番組は、一意的な番組識別を使用して決定され、いくつかの実施形態では、サーバは、予め、第2のオーディオフィンガープリントと番組識別との間のマッピングを記憶しておく。たとえば、第2のオーディオフィンガープリントに対応する番組識別は、第2のオーディオフィンガープリントが決定された後に取得される。他の例では、インタラクティブ情報は、番組識別を含む。いくつかの実施形態では、サーバは、番組識別を使用してインタラクティブ情報を特定し、特定されたインタラクティブ情報を、番組に対応するインタラクティブ情報として決定し得る。たとえば、インタラクティブアクティビティが現在存在している場合、サーバは、インタラクティブ情報を端末に送信する。別の例では、インタラクティブアクティビティが存在していない場合、サーバは、指示応答を端末に送信する。
【００７１】
さらに別の実施形態では、プロセス310において、端末は、サーバからインタラクティブ情報を受信する。たとえば、インタラクティブアクティビティが現在存在している場合、端末は、サーバからインタラクティブ情報を受信し、プロセス311を実行する。別の例では、インタラクティブアクティビティが存在していない場合、端末は、サーバから指示応答を受信し、しかるべく番組識別のためプロセスを終了する。
【００７２】
いくつかの実施形態では、プロセス311において、端末は、インタラクティブ情報に従って番組に対応するインタラクティブアクティビティに参加する。たとえば、インタラクティブ情報は、ルールの導入、参加のための方法、および販促用コンテンツなどの、インタラクティブアクティビティの導入を含む。一例として、端末は、インタラクティブ情報に従ってインタラクティブアクティビティに参加することができる。
【００７３】
図8は、本発明の一実施形態によるいくつかのインタラクティブ操作ルールに対するインターフェースを示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。一実施形態によれば、端末上でインタラクティブ情報がクリックされた後、インタラクティブ操作ルールのためのインターフェースが表示される。図8に示されているように、インターフェースは、インタラクティブアクティビティに対するルールの導入を含む。たとえば、インターフェースは、アプリケーションインターフェース、公開アカウントインターフェースによって提供されるインターフェース、またはアプリケーションもしくはサードパーティによって提供されるウェブページを含む。
【００７４】
図9は、本発明の一実施形態による番組識別のための装置を示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。番組識別のための装置900は、取得モジュール910、検出モジュール920、および識別モジュール930を備える。
【００７５】
一実施形態によれば、取得モジュール910は、第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するように構成される。検出モジュール920は、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かを検出するように構成され、ここで、第2のオーディオフィンガープリントは、第2のオーディオ信号に対応する。識別モジュール930は、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、第1のオーディオ信号に関連した番組識別に対する結果として提供するように構成される。
【００７６】
図10は、本発明の別の実施形態による番組識別のための装置900を示す簡略化された図である。この図は、単なる例にすぎず、特許請求の範囲を過度に限定するものではない。当業者であれば、多くの変更形態、代替的形態、および修正形態を認識するであろう。
【００７７】
いくつかの実施形態では、検出モジュール920は、第1の計算ユニット921と、第1の決定ユニット922と、検出ユニット923と、第2の決定ユニット924とを備える。たとえば、第1の計算ユニット921は、第1のオーディオフィンガープリントと所定のフィンガープリントデータベースに含まれる第2のオーディオフィンガープリントの各々との間のマッチ度を計算するように構成される。別の例では、第1の決定ユニット922は、第1のオーディオフィンガープリントとの最大のマッチ度を有する第2のオーディオフィンガープリントのうちの1つを決定するように構成される。一例として、検出ユニット923は、最大マッチ度が所定の閾値を超えているか否かを検出するように構成される。別の例では、第2の決定ユニット924は、最大マッチ度が所定の閾値を超えていることに応答して、最大マッチ度を有する第2のオーディオフィンガープリントのうちの1つを第1のオーディオフィンガープリントにマッチするものとして提供するように構成される。
【００７８】
いくつかの実施形態では、第1のオーディオ信号は、1つまたは複数の第1のピーク点を含む。たとえば、第1のオーディオ信号に対応する第1のオーディオフィンガープリントは、1つまたは複数の第1の二つ組を含み、第1の二つ組は、第1のピーク点の第1の取得時間と、第1のピーク点に対応する第1のハッシュ符号とを含む。別の例では、第2のオーディオ信号は、1つまたは複数の第2のピーク点を含む。さらに別の例では、第2のオーディオ信号に対応する第2のオーディオフィンガープリントのうちの1つは、1つまたは複数の基準二つ組を含み、基準二つ組は、第2のピーク点の第2の取得時間と、第2のピーク点に対応する第2のハッシュ符号とを含む。
【００７９】
一実施形態では、第1の計算ユニット921は、検出サブユニット921Aと、第1の計算サブユニット921Bと、第2の計算サブユニット921Cと、第1の決定サブユニット921Dとを備える。たとえば、検出サブユニット921Aは、各第1の二つ組および各基準二つ組について、第1の二つ組の第1のハッシュ符号が基準二つ組の第2のハッシュ符号と同じであるか否かを検出するように構成される。別の例では、第1の計算サブユニット921Bは、第1の二つ組の第1のハッシュ符号が基準二つ組の第2のハッシュ符号と同じであることに応答して、第1の二つ組の第1の取得時間と基準二つ組の第2の取得時間との間の第1の差を計算するように構成される。さらに別の例では、第2の計算サブユニット921Cは、少なくとも第1の二つ組の第1の取得時間と基準二つ組の第2の取得時間との間の第1の差に関連した情報に基づき累積数を計算するように構成される。さらに別の例では、第1の決定サブユニット921Dは、少なくとも第1のオーディオフィンガープリントおよび第2のオーディオフィンガープリントに関係する累積数に関連した情報に基づき最大累積数を第1のオーディオフィンガープリントおよび第2のオーディオフィンガープリントの各々のマッチ度として決定するように構成される。
【００８０】
別の実施形態では、検出モジュール920は、取得ユニット925と、第2の計算ユニット926と、保存ユニット927とをさらに備える。たとえば、取得ユニット925は、番組から所定の持続時間に対する第2のオーディオ信号を取得するように構成され、ここで、所定の持続時間はΔTで表され、所定の持続時間の終わりは現在時間Tに対応する。別の例では、第2の計算ユニットを926は、少なくとも第2のオーディオ信号に関連した情報に基づき第2のオーディオフィンガープリントを計算するように構成される。さらに別の例では、保存ユニット927は、第2のオーディオフィンガープリントおよび第2のオーディオフィンガープリントと番組との間のマッピングをオーディオフィンガープリントデータベースに格納するように構成される。
【００８１】
さらに別の実施形態では、第2の計算ユニット926は、第1の取得サブユニット926Aと、第2の取得サブユニット926Bと、第3の計算サブユニット926Cと、第4の計算サブユニット926Dと、第2の決定ユニット926Eとを備える。たとえば、第1の取得サブユニット926Aは、第2のオーディオ信号から1つまたは複数の第2のピーク点を抽出し、各第2のピーク点について、第2のピーク点の第2の取得時間と第2の取得周波数とを取得するように構成される。別の例では、第2の取得サブユニット926Bは、所定の範囲内で第2のピーク点にマッチする第3のピーク点のマッチする時間およびマッチする周波数を取得するように構成される。さらに別の例では、第3の計算サブユニット926Cは、第2の取得時間とマッチする時間との間の第2の差および第2の取得周波数とマッチする周波数との間の周波数差を計算するように構成される。一例として、第4の計算サブユニット926Dは、少なくとも第2の取得周波数、第2の差、および周波数差に関連した情報に基づきハッシュ値を計算し、ハッシュ値を第2のピーク点に対応するハッシュ符号として決定するように構成される。別の例では、第2の決定サブユニット926Eは、第2の取得時間と第2のピーク点に対応するハッシュ符号とを基準二つ組として記憶し、基準二つ組を第2のオーディオフィンガープリントとして提供するように構成される。さらに別の例では、第1のオーディオ信号は、端末環境に関連し、第2のオーディオ信号は、生番組に関連する。
【００８２】
一実施形態によれば、番組識別のための方法が提供される。たとえば、第1のオーディオ信号に対応する第1のオーディオフィンガープリントが取得され、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かが検出され、ここで、第2のオーディオフィンガープリントは第2のオーディオ信号に対応し、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組は、第1のオーディオ信号に関連した番組識別に対する結果として提供される。たとえば、方法は、少なくとも図1、図2、および/または図3に従って実装される。
【００８３】
別の実施形態によれば、番組識別のための装置は、取得モジュールと、検出モジュールと、識別モジュールとを備える。取得モジュールは、第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するように構成される。検出モジュールは、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かを検出するように構成され、ここで、第2のオーディオフィンガープリントは、第2のオーディオ信号に対応する。識別モジュールは、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、第1のオーディオ信号に関連した番組識別に対する結果として提供するように構成される。たとえば、装置は、少なくとも図9および/または図10に従って実装される。
【００８４】
さらに別の実施形態によれば、サーバは、番組識別のための装置を備える。この装置は、取得モジュールと、検出モジュールと、識別モジュールとを備える。取得モジュールは、第1のオーディオ信号に対応する第1のオーディオフィンガープリントを取得するように構成される。検出モジュールは、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かを検出するように構成され、ここで、第2のオーディオフィンガープリントは、第2のオーディオ信号に対応する。識別モジュールは、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組を、第1のオーディオ信号に関連した番組識別に対する結果として提供するように構成される。たとえば、サーバは、少なくとも図9および/または図10に従って実装される。
【００８５】
さらに別の実施形態によれば、非一時的コンピュータ可読記憶媒体は、番組識別のためのプログラミング命令を備える。プログラミング命令は、1つまたは複数のデータプロセッサに特定のオペレーションを実行させるように構成される。たとえば、第1のオーディオ信号に対応する第1のオーディオフィンガープリントが取得され、所定のフィンガープリントデータベース中の1つまたは複数の第2のオーディオフィンガープリントが第1のオーディオフィンガープリントにマッチするか否かが検出され、ここで、第2のオーディオフィンガープリントは第2のオーディオ信号に対応し、第2のオーディオフィンガープリントのうちの1つが第1のオーディオフィンガープリントにマッチすることに応答して、マッチする第2のオーディオ信号に関連した番組は、第1のオーディオ信号に関連した番組識別に対する結果として提供される。たとえば、記憶媒体は、少なくとも図1、図2、および/または図3に従って実装される。
【００８６】
上記は、本発明によって提示されるいくつかのシナリオを説明しているに過ぎず、説明は、比較的具体的で詳細であるが、それによって本発明の特許の範囲を限定するものとして理解され得ない。当業者は、本発明の概念的前提から逸脱することなく、多数の変更および修正を加えることができ、それらはすべて本発明の範囲内にあることに留意されたい。その結果、保護に関して、特許請求の範囲が優先するものとする。
【００８７】
たとえば、本発明の様々な実施形態の一部のまたは全部のコンポーネントは各々、個別におよび/または少なくとも別のコンポーネントと組み合わせて、1つまたは複数のソフトウェアコンポーネント、1つまたは複数のハードウェアコンポーネント、および/または、ソフトウェアおよびハードウェアコンポーネントの1つまたは複数を使用して実装される。別の例では、本発明の様々な実施形態の一部のまたは全部のコンポーネントは各々、個別におよび/または少なくとも別のコンポーネントと組み合わせて、1つまたは複数のアナログ回路および/または1つまたは複数のデジタル回路などの、1つまたは複数の回路で実装される。さらに別の例では、本発明の様々な実施形態および/または例は、組み合わされる。
【００８８】
それに加えて、本明細書で説明されている方法およびシステムは、デバイス処理サブシステムによって実行可能なプログラム命令を含むプログラムコードによって多くの異なるタイプの処理デバイス上に実装される。ソフトウェアプログラム命令は、処理システムに本明細書で説明されている方法およびオペレーションを実行させるように動作可能であるソースコード、オブジェクトコード、マシンコード、または他の記憶されているデータを含む。しかしながら、本明細書で説明されている方法およびシステムを実行するように構成されているファームウェア、さらには適切に設計されたハードウェアなどの他の実装も使用され得る。
【００８９】
システムおよび方法のデータ(たとえば、関連付け、マッピング、データ入力、データ出力、中間データ結果、最終データ結果など)は、異なるタイプの記憶装置デバイスおよびプログラミング構成要素(たとえば、RAM、ROM、フラッシュメモリ、フラットファイル、データベース、プログラミングデータ構造体、プログラミング変数、IF-THEN(または類似のタイプの)ステートメント構成物など)などの、1つまたは複数の異なるタイプのコンピュータ実装データストアに格納され、実装される。データ構造体は、コンピュータプログラムによる使用のために、データベース、プログラム、メモリ、または他のコンピュータ可読媒体にデータを編成し、格納する際に使用するためのフォーマットを記述することに留意されたい。
【００９０】
システムおよび方法は、方法のオペレーションを実行し、本明細書で説明されているシステムを実装するためにプロセッサによる実行で使用するための命令(たとえば、ソフトウェア)を収容するコンピュータ記憶メカニズム(たとえば、CD-ROM、ディスケット、RAM、フラッシュメモリ、コンピュータのハードドライブなど)を含む多くの異なるタイプのコンピュータ可読媒体上で実現される。
【００９１】
本明細書で説明されているコンピュータコンポーネント、ソフトウェアモジュール、機能、データストア、およびデータ構造体は、それらのオペレーションに必要なデータの流れを可能にするために互いに直接的にまたは間接的に接続される。また、モジュールまたはプロセッサは、限定はしないが、ソフトウェアオペレーションを実行するコードのユニットを含み、たとえば、コードのサブルーチンユニットとして、またはコードのソフトウェア機能ユニットとして、またはオブジェクト(オブジェクト指向パラダイムにおけるオブジェクトのようなもの)として、またはアプレットとして、またはコンピュータスクリプト言語により、または別のタイプのコンピュータコードとして実装されることにも留意されたい。ソフトウェアコンポーネントおよび/または機能は、手元の状況に応じて単一のコンピュータ上に配置されるか、または複数のコンピュータにまたがって分散される。
【００９２】
コンピューティングシステムは、クライアントおよびサーバを含み得る。クライアントおよびサーバは、一般に、互いに隔てられており、典型的には、通信ネットワークを通じて情報のやり取りを行う。クライアントとサーバとの関係は、コンピュータプログラムが各コンピュータ上で実行され、互いとの間にクライアント-サーバ関係を有することによって発生する。
【００９３】
本明細書は、多くの詳細事項を含んでいるが、これらは、特許請求の範囲またはその内容に対する限定として解釈すべきではなく、特定の実施形態に特有の特徴の説明として解釈されるべきものである。背景状況または別の実施形態において本明細書で説明されているいくつかの特徴も、単一の実施形態において組合せで実装され得る。逆に、単一の実施形態の背景状況において説明されている様々な特徴は、複数の実施形態で別々に、または好適な部分的組合せで、実装されることもあり得る。さらに、特徴は、いくつかの組合せで動作するものとして上記で説明され、最初にそのように特許請求されることさえあるが、請求される組合せからの1つまたは複数の特徴は、場合によってはその組合せから削除され得、請求される組合せは、部分組合せ、または部分組合せの変更形態を対象とする。
【００９４】
同様に、動作が特定の順序で図面に示されているが、これは、望ましい結果を達成するために、そのような動作が、示される特定の順序でまたは順番に実行されることを、またはすべての図示の動作が実行されることを必要とするものとして理解されるべきでない。いくつかの状況では、マルチタスキングおよび並列処理が有利である。さらに、上述の実施形態において様々なシステムコンポーネントが分離しているが、すべての実施形態においてそのような分離が必要とされていると理解されるべきではなく、また説明されているプログラムコンポーネントおよびシステムは、一般的に、単一のソフトウェア製品に一体化され得るか、または複数のソフトウェア製品にパッケージングされ得ることは理解されるであろう。
【００９５】
本発明の特定の実施形態が説明されているが、当業者には、説明されている実施形態と同等である他の実施形態があることが理解されるであろう。したがって、本発明が、特定の図解されている実施形態に限定されるのではなく、添付の特許請求の範囲によってのみ限定されることは理解されるであろう。
【符号の説明】
【００９６】
900  番組識別のための装置
910  取得モジュール
920  検出モジュール
921  第1の計算ユニット
921A  検出サブユニット
921B  第1の計算サブユニット
921C  第2の計算サブユニット
921D  第1の決定サブユニット
922  第1の決定ユニット
923  検出ユニット
924  第2の決定ユニット
925  取得ユニット
926  第2の計算ユニット
926A  第1の取得サブユニット
926B  第2の取得サブユニット
926C  第3の計算サブユニット
926D  第4の計算サブユニット
926E  第2の決定ユニット
927  保存ユニット
930  識別モジュール
【図１】
2016518663.tif 000003
【図２】
2016518663.tif 000004
【図３】
2016518663.tif 000005
【図４】
2016518663.tif 000006
【図５】
2016518663.tif 000007
【図６】
2016518663.tif 000008
【図７】
2016518663.tif 000009
【図８】
2016518663.tif 000010
【図９】
2016518663.tif 000011
【図１０】
2016518663.tif 000012
【国際調査報告】
2016518663.tif 000013
2016518663.tif 000014
2016518663.tif 000015