(57)【要約】  本開示は、検索結果ページ内に埋め込まれたメトロノームを提供するためのシステムおよび方法を提供する。1つの例示的なコンピュータ実装方法は、モバイルコンピューティングデバイスが、メトロノームユーザインターフェースを含む検索結果ウェブページを表示するステップを含む。この方法は、モバイルコンピューティングデバイスが、あるテンポでのメトロノームの実装を要求するユーザ入力を受信するステップを含む。ユーザ入力の受信に応じて、この方法は、モバイルコンピューティングデバイスが、そのテンポを示すオーディオクリップを生成するステップを含む。この方法は、モバイルコンピューティングデバイスが、オーディオクリップを再生するためにオーディオプレーヤアプリケーションを使用するステップを含む。オーディオプレーヤアプリケーションは、モバイルコンピューティングデバイスがオーディオクリップの再生中にロック画面状態に遷移するときに中断またはレイテンシを受けない。
2019512897.tif 000002
【特許請求の範囲】
【請求項１】
ロック画面遷移の影響を受けないメトロノームを提供するためのコンピュータ実装方法であって、
モバイルコンピューティングデバイスのブラウザアプリケーションが、メトロノームユーザインターフェースを含む検索結果ウェブページを表示するステップであって、前記検索結果ウェブページが、前記メトロノームに関連するユーザによって入力された検索クエリに応答する、ステップと、
前記モバイルコンピューティングデバイスが、あるテンポでの前記メトロノームの実装を要求するユーザ入力を受信するステップと、
前記ユーザ入力の受信に応じて、前記モバイルコンピューティングデバイスの前記ブラウザアプリケーションが、前記テンポを示すオーディオクリップを生成するステップと、
前記モバイルコンピューティングデバイスが、前記オーディオクリップを前記ブラウザアプリケーションから前記モバイルコンピューティングデバイスのオーディオプレーヤアプリケーションに転送するステップと、
前記モバイルコンピューティングデバイスが、前記オーディオクリップを再生するために前記オーディオプレーヤアプリケーションを使用するステップであって、前記オーディオプレーヤアプリケーションが、前記モバイルコンピューティングデバイスが前記オーディオクリップの再生中にロック画面状態に遷移するときに中断またはレイテンシを受けない、ステップと
を含む、コンピュータ実装方法。
【請求項２】
前記モバイルコンピューティングデバイスの前記ブラウザアプリケーションが前記オーディオクリップを生成するステップが、前記モバイルコンピューティングデバイスが、前記オーディオクリップを生成するために、前記検索結果ウェブページ内に含まれたクライアントサイドJavaScript(登録商標)コードを実行するステップを含む、請求項1に記載のコンピュータ実装方法。
【請求項３】
前記モバイルコンピューティングデバイスが前記オーディオクリップを再生するために前記オーディオプレーヤアプリケーションを使用するステップが、前記モバイルコンピューティングデバイスが、前記オーディオクリップを再生するために、前記モバイルコンピューティングデバイスのオペレーティングシステム内に含まれたネイティブオーディオプレーヤアプリケーションを使用するステップを含む、請求項1に記載のコンピュータ実装方法。
【請求項４】
前記モバイルコンピューティングデバイスの前記ブラウザアプリケーションが前記テンポを示す前記オーディオクリップを生成するステップが、前記モバイルコンピューティングデバイスの前記ブラウザアプリケーションが、前記テンポを示すMP3符号化オーディオクリップを生成するステップを含み、
前記モバイルコンピューティングデバイスが、前記オーディオクリップを再生するために前記オーディオプレーヤアプリケーションを使用するステップが、前記モバイルコンピューティングデバイスが、前記オーディオクリップを再生するためにMP3オーディオプレーヤアプリケーションを使用するステップを含む、請求項1に記載のコンピュータ実装方法。
【請求項５】
前記モバイルコンピューティングデバイスの前記ブラウザアプリケーションが前記オーディオクリップを生成するステップが、
前記モバイルコンピューティングデバイスが、標準クリックオーディオフレームおよび標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能であるかどうかを決定するステップと、
前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能であるとの決定に応じて、前記モバイルコンピューティングデバイスが、前記テンポを示す前記オーディオクリップを生成するために前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームを連結させるステップと
を含む、請求項1に記載のコンピュータ実装方法。
【請求項６】
前記モバイルコンピューティングデバイスが、前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームの連結を使用して前記テンポを示す前記オーディオクリップの生成が達成可能であるかどうかを決定するステップが、前記テンポのビート持続時間をオーディオ符号化フレーム持続時間と比較するステップを含む、請求項5に記載のコンピュータ実装方法。
【請求項７】
前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームが前記検索結果ウェブページ内に含まれるJavaScript(登録商標)コード内にインライン方式で含まれる、請求項5に記載のコンピュータ実装方法。
【請求項８】
前記モバイルコンピューティングデバイスの前記ブラウザアプリケーションが、前記オーディオクリップを生成するステップが、
前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能でないとの決定に応じて、前記モバイルコンピューティングデバイスが、複数の潜在的なテンポにそれぞれ関連する複数のビートユニットを含むデータセットを受信するステップであって、前記複数のビートユニットのうちの少なくとも1つが前記ユーザによって要求される前記テンポに関連する、ステップと、
前記モバイルコンピューティングデバイスが、前記オーディオクリップを生成するために、前記ユーザによって要求される前記テンポに関連する前記ビートユニットを複製するステップと
をさらに含む、請求項5に記載のコンピュータ実装方法。
【請求項９】
ロック画面遷移の影響を受けないメトロノームを提供するモバイルコンピューティングデバイスであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサによって実装されたモバイルブラウザアプリケーションであって、前記モバイルブラウザアプリケーションが、
前記メトロノームに関連するユーザによって入力される検索クエリに応じて提供される、メトロノームユーザインターフェースを含む検索結果ウェブページを表示することと、
あるテンポでの前記メトロノームの実装を要求するユーザ入力を受信することと、
前記ユーザ入力の受信に応じて、前記テンポを示すオーディオクリップを生成することと、
前記オーディオクリップをオーディオプレーヤアプリケーションに転送することと
を行うように構成された、モバイルブラウザアプリケーションと、
前記少なくとも1つのプロセッサによって実装された前記オーディオプレーヤアプリケーションと
を備え、
前記オーディオプレーヤアプリケーションが、前記オーディオクリップを再生することであって、前記モバイルコンピューティングデバイスが前記オーディオクリップの再生中にロック画面状態に遷移するときに前記オーディオプレーヤアプリケーションが中断またはレイテンシを受けない、再生することを行うように構成される、モバイルコンピューティングデバイス。
【請求項１０】
前記オーディオプレーヤアプリケーションが、前記モバイルコンピューティングデバイスのオペレーティングシステム内に含まれたネイティブオーディオプレーヤアプリケーションを備える、請求項9に記載のモバイルコンピューティングデバイス。
【請求項１１】
前記オーディオクリップがMP3オーディオクリップを備え、
前記オーディオプレーヤアプリケーションがMP3オーディオプレーヤアプリケーションを備える、請求項9に記載のモバイルコンピューティングデバイス。
【請求項１２】
前記テンポを示す前記オーディオクリップを生成するために、前記モバイルブラウザアプリケーションが、前記検索結果ウェブページ内に含まれたクライアントサイドJavaScript(登録商標)コードを実行する、請求項9に記載のモバイルコンピューティングデバイス。
【請求項１３】
前記テンポを示す前記オーディオクリップを生成するために、前記モバイルブラウザアプリケーションが、標準クリックオーディオフレームおよび標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能であるかどうかを決定し、
前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能であるとの決定に応じて、前記テンポを示す前記オーディオクリップを生成するために前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームを連結させる、請求項9に記載のモバイルコンピューティングデバイス。
【請求項１４】
前記テンポを示す前記オーディオクリップを生成するために、前記モバイルブラウザアプリケーションが、標準クリックオーディオフレームおよび標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能でないとの決定に応じて、複数の潜在的なテンポにそれぞれ関連する複数のビートユニットを含むデータセットを受信することであって、前記複数のビートユニットのうちの少なくとも1つが前記ユーザによって要求される前記テンポに関連する、受信することと、
前記オーディオクリップを生成するために前記ユーザによって要求される前記テンポに関連する前記ビートユニットを複製することと
を行う、請求項9に記載のモバイルコンピューティングデバイス。
【請求項１５】
ロック画面遷移の影響を受けないメトロノームを提供するためのコンピュータ実装方法であって、
モバイルコンピューティングデバイスが、メトロノームユーザインターフェースを含む検索結果ウェブページを表示するステップと、
前記モバイルコンピューティングデバイスが、あるテンポでの前記メトロノームの実装を要求するユーザ入力を受信するステップと、
前記ユーザ入力の受信に応じて、前記モバイルコンピューティングデバイスのブラウザアプリケーションが、前記テンポを示すオーディオクリップを生成するステップであって、
前記モバイルコンピューティングデバイスが、標準クリックオーディオフレームおよび標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能であるかどうかを決定するステップと、
前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能であるとの決定に応じて、前記モバイルコンピューティングデバイスが、前記テンポを示す前記オーディオクリップを生成するために前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームを連結させるステップと
を含む、ステップと、
前記モバイルコンピューティングデバイスが、前記オーディオクリップを再生するためにオーディオプレーヤアプリケーションを使用するステップであって、前記オーディオプレーヤアプリケーションが、前記モバイルコンピューティングデバイスが前記オーディオクリップの再生中にロック画面状態に遷移するときに中断またはレイテンシを受けない、ステップと
を含む、コンピュータ実装方法。
【請求項１６】
前記モバイルコンピューティングデバイスが、前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能であるかどうかを決定するステップが、前記テンポのビート持続時間をオーディオ符号化フレーム持続時間と比較するステップを含む、請求項15に記載のコンピュータ実装方法。
【請求項１７】
前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームが、前記検索結果ウェブページ内に含まれたJavaScript(登録商標)コード内にインライン方式で含まれる、請求項15に記載のコンピュータ実装方法。
【請求項１８】
前記モバイルコンピューティングデバイスが前記オーディオクリップを生成するステップが、
前記標準クリックオーディオフレームおよび前記標準無音オーディオフレームの連結を使用した前記テンポを示す前記オーディオクリップの生成が達成可能でないとの決定に応じて、前記モバイルコンピューティングデバイスが、複数の潜在的なテンポにそれぞれ関連する複数のビートユニットを含むデータセットを受信するステップであって、前記複数のビートユニットのうちの少なくとも1つがユーザによって要求される前記テンポに関連する、ステップと、
前記モバイルコンピューティングデバイスが、前記オーディオクリップを生成するために前記ユーザによって要求される前記テンポに関連する前記ビートユニットを複製するステップと
をさらに含む、請求項15に記載のコンピュータ実装方法。
【請求項１９】
前記モバイルコンピューティングデバイスが前記オーディオクリップを生成するステップが、前記モバイルコンピューティングデバイスが、前記オーディオクリップを生成するために、前記検索結果ウェブページ内に含まれたクライアントサイドJavaScript(登録商標)コードを実行するステップを含む、請求項15に記載のコンピュータ実装方法。
【請求項２０】
前記モバイルコンピューティングデバイスが前記オーディオクリップを再生するために前記オーディオプレーヤアプリケーションを使用するステップが、前記モバイルコンピューティングデバイスが、前記オーディオクリップを再生するために、前記モバイルコンピューティングデバイスのオペレーティングシステム内に含まれたネイティブオーディオプレーヤアプリケーションを使用するステップを含む、請求項15に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、コンピューティングデバイスによって実装されるメトロノームに関し、より詳細には、コンピューティングデバイスのロック画面遷移の影響を受けない再生が可能な検索結果ページ内に埋め込まれたメトロノームに関する。
【背景技術】
【０００２】
メトロノームは、固定期間または固定テンポに従って規則的な韻律音(たとえば、ティックまたはクリック)を生成するデバイスである。たとえば、メトロノームは、1分当たりのビート数(beats per minute)で定義されるテンポに従うことができる。いくつかのメトロノームでは、メトロノームのテンポは調整可能か、別の方法でユーザ設定可能であってよい。
【０００３】
メトロノームの1つの一般的な使用法は、楽器の演奏中に音楽家を支援することである。たとえば、音楽家が演奏するにつれて安定したテンポを維持するのを助けるために、不規則なタイミングの問題に取り組むために、または明瞭なタイミング感覚およびテンポ感覚を習得するのを助けるために、音楽家はメトロノームを使用することができる。
【０００４】
メトロノームは時間を印すために、また安定したテンポを維持するのを補助するために使用されるため、メトロノームの動作は信頼でき、首尾一貫し、中断されないことが重要である。たとえば、メトロノームは、ビートを飛ばしたり、別の方法で正確なテンポに従わなかったりしてはならない。さらに、ユーザがそうすることを望むまで、メトロノームは音の生成を中止すべきではない。
【０００５】
ある種のモバイルコンピューティングデバイス(たとえば、スマートフォンまたはタブレットコンピュータ)はメトロノームとして機能し得る。一例では、ユーザは、モバイルコンピューティングデバイスのブラウザアプリケーション内にウェブページをロードすることができ、ウェブページと対話して、モバイルコンピューティングデバイスをメトロノームとして機能させることができる。たとえば、モバイルコンピューティングデバイスは、デバイスに所望のテンポに従って音を規則的に生成させる、ウェブページ内に含まれた命令を実行することができる。
【０００６】
しかしながら、モバイルブラウザアプリケーションは、一般に、モバイルコンピューティングデバイスのメトロノームとしての上述の使用を困難にする制約を課す。具体的には、モバイルウェブブラウザに関連するオーディオは、一般に、モバイルコンピューティングデバイスが、デバイスが使用に対して「ロック」される「ロック画面状態」に遷移するとき、レイテンシまたは再生の問題を経験する。「ロック画面状態」にある間、ユーザはデバイスを全機能に戻すために、デバイスを「ロック解除」することを要求される場合がある。例として、ユーザは、パスコードを入力することによって、特定のスワイプまたはジェスチャを実行することによって、指紋検知を完了することによって、または他の技法を通して、デバイスをロック解除することができる。場合によっては、デバイスがロック画面状態にある間にいくつかの限定された機能(たとえば、新しい写真の捕捉または緊急電話呼出し)が可能にされ得る。しかしながら、場合によっては、ロック画面状態への遷移は、画面を完全にオフにさせる場合があるか、別の方法で、画面の状態または動作モードを変更させる場合がある。多くのモバイルコンピューティングデバイスは、ある非アクティブ化期間の後にそのようなロック画面状態に自動的に遷移する。上述のように、モバイルウェブブラウザに関連するオーディオは、一般に、モバイルコンピューティングデバイスがロック画面状態に遷移するときにレイテンシまたは再生の問題を経験する。
【０００７】
一例として、いくつかの一般的なモバイルウェブブラウザは、モバイルコンピューティングデバイスによってオーディオを再生させるために、ウェブオーディオAPIを使用する。しかしながら、ウェブオーディオAPIを介してオンザフライで生成されたオーディオは、モバイルコンピューティングデバイスがロック画面状態に遷移する15秒以内に自動的に停止することになる。
【０００８】
したがって、ユーザは、モバイルコンピューティングデバイスのブラウザアプリケーション内にウェブページをロードし、メトロノームを開始することができる。しかしながら、一定期間(たとえば、30秒)後にモバイルコンピューティングデバイスは、ロック画面状態に遷移する場合があり、メトロノームは中止することになる。したがって、ユーザが依然として練習している間にメトロノーム動作は終了し、ユーザは、メトロノームなしで練習を続けるか、または練習を停止し、デバイスをロック解除してメトロノームを再度開始するかを選ぶことを余儀なくされる。
【０００９】
別の例として、モバイルブラウザアプリケーションによって(たとえば、ウェブページの一部分として)実行されるJavaScript(登録商標)を介してループするように設定されたオーディオクリップまたはループされたオーディオクリップは、ロック画面状態に入るとすぐに画面がオフになるとき、自動的に停止するか、または増大したレイテンシの影響を受けることになる。デバイスによるそのようなレイテンシはユーザに提供されるメトロノーム信号の信頼性および精度を低下させるため、そのようなレイテンシは、この場合も、ユーザを苛立たせる。結果として、ユーザは、ビートから外れた状態になるか、別の方法で、デバイスのレイテンシに合わせて自らの演奏を調整しようと苦労する場合がある。
【００１０】
さらに、モバイルブラウザアプリケーションを通して実装されるいくつかのメトロノームは、画面がオンであるときですら、タイミング精度および一貫性を変える。そのようなメトロノームは信頼できるサービスを単に提供しない。
【００１１】
したがって、モバイルウェブブラウザを通して実装されるメトロノームは、モバイルコンピューティングデバイスのロック画面状態への遷移時のレイテンシにより、音の生成を望ましくなく中止するか、またはビートを飛ばす可能性があるため、これらのメトロノームは、一般に、信頼できない。
【発明の概要】
【課題を解決するための手段】
【００１２】
本開示の実施形態の態様および利点は、以下の明細書に一部が記載されるか、または明細書から学習可能であるか、または実施形態の実施を通して学習可能である。
【００１３】
本開示の1つの例示的な態様は、ロック画面遷移の影響を受けないメトロノームを提供するためのコンピュータ実装方法に関する。この方法は、モバイルコンピューティングデバイスが、メトロノームユーザインターフェースを含む検索結果ウェブページを表示するステップを含む。この方法は、モバイルコンピューティングデバイスが、あるテンポでのメトロノームの実装を要求するユーザ入力を受信するステップを含む。ユーザ入力の受信に応じて、この方法は、モバイルコンピューティングデバイスが、そのテンポを示すオーディオクリップを生成するステップを含む。この方法は、モバイルコンピューティングデバイスが、オーディオクリップを再生するためにオーディオプレーヤアプリケーションを使用するステップを含む。このオーディオプレーヤアプリケーションは、モバイルコンピューティングデバイスがオーディオクリップの再生中にロック画面状態に遷移するときに中断またはレイテンシを受けない。このオーディオアプリケーションは、デバイス上で実行するいずれのモバイルブラウザアプリケーションとも異なり得る。
【００１４】
本開示の別の例示的な態様は、ロック画面遷移の影響を受けないメトロノームを提供するモバイルコンピューティングデバイスに関する。このモバイルコンピューティングデバイスは、少なくとも1つのプロセッサと、少なくとも1つのコンピュータ可読媒体とを含み、この少なくとも1つのコンピュータ可読媒体は、非一時的コンピュータ可読媒体であってよいが、本発明はこれに限定されない。この少なくとも1つのコンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、モバイルコンピューティングデバイスに、メトロノームユーザインターフェースを含む検索結果ウェブページを表示させ、あるテンポでのメトロノームの実装を要求するユーザ入力を受信させ、ユーザ入力の受信に応じて、そのテンポを示すオーディオクリップを生成させ、オーディオクリップを再生するためにオーディオプレーヤアプリケーションを使用させる命令を記憶する。このオーディオプレーヤアプリケーションは、モバイルコンピューティングデバイスがオーディオクリップの再生中にロック画面状態に遷移するときに中断またはレイテンシを受けない。本開示の別の例示的な態様は、ロック画面遷移の影響を受けないメトロノームを提供するモバイルコンピューティングデバイスに関する。このモバイルコンピューティングデバイスは、少なくとも1つのプロセッサと、少なくとも1つのプロセッサによって実行されると、モバイルコンピューティングデバイスに上述の例示的な態様の方法を実行させる命令を記憶した少なくとも1つのコンピュータ可読媒体とを含む。
【００１５】
本開示の別の例示的な態様は、命令を記憶する少なくとも1つのコンピュータ可読媒体に関し、この少なくとも1つのコンピュータ可読媒体は、非一時的コンピュータ可読媒体であってよいが、本発明はこれに限定されない。少なくとも1つのプロセッサによって実行されると、これらの命令は、少なくとも1つのプロセッサに、コンピューティングデバイスのブラウザアプリケーションによって提供されるウェブページ内にユーザインターフェースを表示させる。このユーザインターフェースは、周期的可聴インジケータの実装を可能にする。少なくとも1つのプロセッサによって実行されると、これらの命令はさらに、少なくとも1つのプロセッサに、あるテンポでの周期的可聴インジケータの実装を要求するユーザ入力の受信に応じて、そのテンポで周期的可聴インジケータを提供させる。この周期的可聴インジケータは、コンピューティングデバイスのデバイス状態にかかわらず、ブラウザアプリケーションを通して動作可能である。この例示的な態様では、少なくとも1つのプロセッサにそのテンポでの周期的可聴インジケータを提供させる命令は、少なくとも1つのプロセッサに、そのテンポを示すオーディオクリップを生成させ、再生のためにそのオーディオクリップをオーディオプレーヤアプリケーションに提供させる。追加または代替として、この例示的な態様では、コンピュータ可読媒体はさらに、標準クリックオーディオフレームと標準無音オーディオフレームとを記憶することができ、少なくとも1つのプロセッサにそのテンポを示すオーディオクリップを生成させる命令は、少なくとも1つのプロセッサに、そのテンポを示すオーディオクリップを生成するために標準クリックオーディオフレームおよび標準無音オーディオフレームを連結させることができる。追加または代替として、この例では、これらの命令は、コンピューティングデバイスのブラウザアプリケーションによって提供されるウェブページ内に含まれたクライアントサイドJavaScrip(登録商標)tコードを備え得る。
【００１６】
本開示の他の態様は、本明細書で説明する1つまたは複数の態様を実装するためのシステム、方法、装置、および有形の非一時的コンピュータ可読媒体に関する。
【００１７】
以下の説明および添付の特許請求の範囲を参照して、様々な実施形態のこれらのおよび他の特徴、態様、および利点をより理解されよう。本明細書内に組み込まれ、かつ本明細書の一部分を構成する添付の図面は、本開示の実施形態を示し、明細書とともに、関連する原理を説明するのに役立つ。一態様または一実施形態に関して説明する特徴は、本明細書で説明するいずれかの他の態様または実施形態内に組み込まれてもよいことが理解されよう。
【図面の簡単な説明】
【００１８】
【図１】本開示の例示的な実施形態による、検索結果ページ内に埋め込まれたメトロノームのある例示的なユーザインターフェースを示す図である。
【図２】本開示の例示的な実施形態による、ある例示的なコンピューティングシステムのブロック図である。
【図３】本開示の例示的な実施形態による、メトロノームを実装するためのある例示的な方法のフローチャート図である。
【図４】本開示の例示的な実施形態による、メトロノームを実装するためのある例示的な方法のフローチャート図である。
【発明を実施するための形態】
【００１９】
一般に、本開示は、モバイルコンピューティングデバイスのロック画面または他のデバイス状態遷移の影響を受けない再生が可能な検索結果ページ内に埋め込まれたメトロノームを提供する。
【００２０】
具体的には、関連する検索クエリ(たとえば、用語「メトロノーム」に対する検索)に応じて、ウェブベースのメトロノームを検索結果ページ内で提供することができる。たとえば、スマートフォンまたはタブレットコンピューティングデバイスなど、モバイルコンピューティングデバイスのブラウザアプリケーションは、関連する検索クエリに応じて検索結果ページを提供することができる。
【００２１】
検索結果ページは、メトロノームユーザインターフェースを含み得る。ユーザは、検索結果ページ内に含まれたユーザインターフェースと対話して、ある特定のテンポでのメトロノームの実装を要求することができる。たとえば、このテンポはユーザ選択可能であり得る。
【００２２】
本開示の一態様によれば、ユーザ入力に応じて、モバイルコンピューティングデバイスのブラウザアプリケーションは、選択されたテンポでオーディオクリップを動的に生成することができる。オーディオクリップは、一般的な音楽家の練習セッションに有用であるに十分な長さであり得る。
【００２３】
モバイルコンピューティングデバイスは、オーディオクリップを再生するために、モバイルコンピューティングデバイスのオーディオプレーヤアプリケーションを利用することができる。オーディオプレーヤアプリケーションは、デバイスの画面がオフであるとき、またはデバイスがロック画面状態に遷移したときですら、音楽および他のオーディオクリップを確実に再生することができる。より具体的には、オーディオプレーヤアプリケーションは、モバイルコンピューティングデバイスがオーディオクリップの再生中にロック画面状態に遷移するときに中断またはレイテンシを受けない。
【００２４】
したがって、オーディオクリップを再生するためのオーディオプレーヤアプリケーションの使用は、再生を制御する任務をブラウザアプリケーションから除き、それによって、一般にモバイルウェブブラウザを通したオーディオ再生に関連するレイテンシまたは他の問題を除去する。
【００２５】
いくつかの実装形態では、オーディオプレーヤアプリケーションは、モバイルコンピューティングデバイスのオペレーティングシステム内に含まれたネイティブオーディオプレーヤアプリケーションであり得る。したがって、一例として、ブラウザアプリケーションは、オーディオクリップを生成し、次いで、そのオーディオクリップの再生をサポートするようにネイティブオーディオプレーヤアプリケーションに呼びかけることができる。
【００２６】
いくつかの実装形態では、モバイルコンピューティングデバイスは、検索結果ウェブページ内に含まれたクライアントサイドJavaScript(登録商標)コードを実行することによって、オーディオクリップを生成することができる。たとえば、完全なオーディオクリップをオフラインでかつ/またはサーバコンピューティングデバイス上で生成することは、時として、許容不可能なほど大きなデータ転送を必要とすることがある。したがって、オーディオクリップの動的ローカル生成は、比較的大量の時間および/またはコンピューティングリソースを必要とするデータ転送に対するニーズを除去する。
【００２７】
いくつかの実装形態では、モバイルコンピューティングデバイスは、そのテンポを示すMP3符号化オーディオクリップを生成することができる。そのような実装形態では、モバイルコンピューティングデバイスは、オーディオクリップを再生するためにMP3オーディオプレーヤアプリケーションを使用することができる。具体的には、MP3はすべての主要ブラウザアプリケーションによって広く確実にサポートされているため、MP3符号化の使用は有益であり得る。さらに、MP3符号化オーディオクリップは比較的サイズ効率がよい。
【００２８】
いくつかの実装形態では、所与のテンポに対するオーディオクリップを生成するために、モバイルコンピューティングデバイスは、選択されたテンポに応じて2つの異なる手法のうちの1つを実装することができる。具体的には、いくつかの実装形態では、使用される特定の手法は、標準クリックオーディオフレームおよび標準無音オーディオフレームなどの標準オーディオフレームの連結を使用した所与のテンポに対するオーディオクリップの生成が達成可能であるかどうかの決定に基づいて選択され得る。
【００２９】
いくつかの実装形態では、標準フレームを使用したオーディオクリップの生成の達成可能性の決定は、特定のテンポのビート持続時間とオーディオ符号化フレーム持続時間(たとえば、ユニバーサルMP3フレーム持続時間)の比較に基づき得る。たとえば、選択されたテンポのビート持続時間がオーディオ符号化フレーム持続時間によって満足のいくように分割可能であるかどうかを決定することができる。
【００３０】
標準オーディオフレームを使用してオーディオクリップが達成可能な場合、モバイルコンピューティングデバイスは、そのテンポを示すオーディオクリップを生成するために標準オーディオフレーム(たとえば、標準クリックオーディオフレームおよび標準無音オーディオフレーム)を連結させることができる。いくつかの実装形態では、標準オーディオフレームは、タイニー(tiny)オフライン符号化MP3フレームである。いくつかの実装形態では、標準オーディオフレームは、検索結果ウェブページ内に含まれたJavaScript(登録商標)コード内にインライン方式で含まれ得る。標準フレームは、オーディオクリップを生成するために多数回連結され得る。
【００３１】
上述の第1の手法が1分当たりn個のビート数にフィットさせる際の許容誤差を達成しないテンポの場合、第2の手法を使用することができる。第2の手法では、そのようなテンポでの全ビートの考えられる最小倍数を符号化することができる(たとえば、オフラインおよびサーバコンピューティングデバイス内に記憶することができる)。その後、許容誤差で1分当たりn個のビート数を達成するために、ユーザによって要求される特定のテンポに対し考えられる最小倍数をモバイルコンピューティングデバイスのブラウザアプリケーション内で複製することができる。
【００３２】
第2の手法では、オフライン符号化は上述の第1の手法を用いては現実的に達成することができない方法でクリック音または他の周期音のフレーム整合をシフトすることができる。したがって、第2の手法は、テンポ設定の大きさが増大する(たとえば、「より速く」なる)につれてますます必要である比較的高い精度を実現することができる。
【００３３】
さらに、第2の手法でオフライン生成されたビートは、一般に、サーバコンピューティングデバイスからモバイルコンピューティングデバイスへの転送に望ましいよりも大きいため、オーディオ圧縮を超えた(たとえば、MP3圧縮を超えた)2つの圧縮段階を適用することができる。一例として、第2の手法を必要とするテンポのすべてに対するオーディオ符号化フレーム(たとえば、MP3フレーム)のすべてをハッシュすることができる。次に、全フレームセットからの複製ヘッダおよび複製ボディを容易に反転可能な(たとえば、JavaScript(登録商標)コードの実行によって容易に反転可能な)方法で除去することができる。最後に、得られたバイナリデータのデータセットをgzipし(または別の方法で圧縮し)、クリック同士の間で実質的に無音なものを圧縮することができる。この様式で圧縮されているオーディオコンテンツは、プレーンオーディオ符号化ファイル(たとえば、プレーンMP3ファイル)としてよりも、99%小さな形態で転送され得る。
【００３４】
したがって、いくつかの実装形態では、第2の手法が必要とされる各テンポに対して全ビートの考えられる最小倍数を含む単一のデータセットをモバイルコンピューティングデバイスに送信することができる。場合によっては、そのような考えられる最小倍数は、ビートユニット(beat unit)と呼ばれる場合がある。そのようなテンポのうちの1つを示すオーディオクリップが必要とされるとき、モバイルコンピューティングデバイスは、その特定のテンポに対して適切なビートユニットを検索し、次いで、その特定のテンポを示すオーディオクリップを生成するために、そのようなビートユニットを複製するか、別の方法で乗算する(multiply)ことができる。
【００３５】
したがって、本開示は、モバイルコンピューティングデバイスの画面がオフであるとき、またはモバイルコンピューティングデバイスがロック画面状態に変更するか、別の方法で状態を変更するときですら、確実に動作するウェブベースのメトロノームを可能にするシステムおよび方法を実現する。
【００３６】
本明細書で使用されるメトロノームは、いずれの反復トーンパターン生成器も含み、ここで、テンポは固定であり、トーンパターンは1つまたは複数のトーン要素からなる。一例として、クリックは1つのトーン要素と特徴づけることができる。クリックトーン要素を他のトーン要素と組み合わせて、たとえば、クリック、ヒス、および無音のトーンパターンを繰り返すパターンなどの、繰返しトーンパターンを提供することができる。さらに、音楽家によるメトロノームの使用を1つの使用例として挙げることができるが、本開示は、そのような例示的な使用に限定されない。具体的には、さらなる例として、運動、ダンス、または他の活動用の歩調計測などのメトロノーム用途も本開示によって企図される。
【００３７】
次に図を参照して、本開示の例示的な態様についてさらに詳細に論じる。
【００３８】
図1は、本開示の例示的な実施形態による、検索結果ページ102内に埋め込まれたメトロノームのある例示的なユーザインターフェース100を示す。具体的には、モバイルコンピューティングデバイス106のブラウザアプリケーションは、データを実行し、モバイルコンピューティングデバイス106のディスプレイ104上にウェブページ102を表示させた。
【００３９】
いくつかの実装形態では、モバイルコンピューティングデバイス106のブラウザアプリケーションは、メトロノームに関連するユーザクエリ108に応じて、検索結果ページ102を表示することができる。検索結果ページ102は、関連結果としてユーザインターフェース100を含むことができ、任意の数の追加結果(たとえば、追加検索結果110および追加検索結果112)を含むこともできる。
【００４０】
本開示の一態様によれば、ユーザは、検索結果ページ102内に含まれたユーザインターフェース100と対話して、特定のテンポでのメトロノームの実装を要求することができる。たとえば、ユーザインターフェース100は(たとえば、114において、1分当たり120個のビート数として示される)現在のテンポ設定を視覚的に表示する。ユーザインターフェース100は、ユーザが現在のテンポ設定を(たとえば、より速いテンポまたはより遅いテンポに)調整することを可能にするスライディングバー116をさらに含む。
【００４１】
ユーザインターフェース100はまた、ユーザが現在のテンポ設定でのメトロノームの実装を要求することを可能にする再生ボタン、アイコン、または他の特徴118を含む。具体的には、本開示の一態様によれば、再生ボタン118のユーザ選択に応じて、ブラウザアプリケーションは、モバイルコンピューティングデバイス106のオーディオプレーヤアプリケーションによって再生されるオーディオクリップを生成することができる。
【００４２】
図1に示す特定のユーザインターフェース100、ならびに関連するアイコン、ボタン、および特徴は、単なる例として提供されている。本開示のシステムおよび方法は、図1に示す特定のユーザインターフェース100に限定されず、代わりに、様々な設計、外観、特徴などを備えた多くの異なるユーザインターフェースを使用して実装され得る。
【００４３】
図2は、本開示の例示的な実施形態による、ある例示的なコンピューティングシステム200のブロック図を示す。このシステムは、ブラウザアプリケーション215を介してメトロノームを実装するモバイルコンピューティングデバイス202を含む。
【００４４】
モバイルコンピューティングデバイス202は、スマートフォン、タブレット、装着可能なコンピューティングデバイス(たとえば、眼鏡、リストバンド、ネックレスなどの中に埋め込まれたコンピューティングデバイス)、ハンドヘルドコンピューティングデバイス、車両内に埋め込まれたコンピューティングデバイスなど、任意の形態のモバイルデバイスであってよい。さらに、本開示のシステムおよび方法は、モバイルコンピューティングデバイスの文脈で適用されるときに特に有益であるが、これらはそのシナリオに限定されない。代わりに、本開示は、モバイルであれ、非モバイルであれ、いずれのコンピューティングデバイス上でも実装され得る。
【００４５】
モバイルコンピューティングデバイス202は、1つまたは複数のプロセッサ206とメモリ208とを含む。1つまたは複数のプロセッサ206は、たとえば、処理ユニット、マイクロプロセッサ、コントローラ、マイクロコントローラ、特定用途向け集積回路などを含めて、任意の形態の処理デバイスであってよい。メモリ208は、いずれかのコンピュータ可読媒体、たとえば、たとえばRAM(たとえば、DRAM)を含む非一時的コンピュータ可読媒体、ROM(たとえば、EEPROM)、光記憶装置、磁気記憶装置、フラッシュ記憶装置、固体記憶装置、ハードドライブ、またはそれらの何らかの組合せのうちの1つまたは複数を含み得る。メモリ208は、モバイルコンピューティングデバイス202によって実行されると、モバイルコンピューティングデバイス202に本開示に一致する動作を実行させる命令210の1つまたは複数のセットを記憶することができる。
【００４６】
モバイルコンピューティングデバイス202は、ブラウザアプリケーション215を含む。ブラウザアプリケーションは、1つまたは複数のプロセッサ206によって実装され得る。ブラウザアプリケーション215は、ワールドワイドウェブから情報リソースを検索すること、提示すること、およびトラバースすることができる。ブラウザアプリケーション215は、たとえば、iOS(商標)またはAndroid(商標)用のChrome(商標)モバイルウェブブラウザ、iOS(商標)用のSafari(商標)モバイルウェブブラウザ、iOS(商標)またはAndroid(商標)用のFirefox(商標)モバイルウェブブラウザなどのモバイルウェブブラウザであってよい。
【００４７】
モバイルコンピューティングデバイス202は、オーディオプレーヤアプリケーション216を含む。オーディオプレーヤアプリケーションは、1つまたは複数のプロセッサ206によって実装され得る。オーディオプレーヤアプリケーション216は、スピーカ222によってオーディオを再生させることができる。いくつかの実装形態では、オーディオプレーヤアプリケーション216は、モバイルコンピューティングデバイス202のオペレーティングシステム内に含まれるネイティブオーディオプレーヤアプリケーションであってよい。他の実装形態では、オーディオプレーヤアプリケーション216はサードパーティオーディオプレーヤアプリケーションであってよい。オーディオプレーヤアプリケーション216は、ブラウザアプリケーション215とは別個かつ異なってよいが、ブラウザアプリケーション215と相互運用可能であり得る。
【００４８】
本開示の一態様によれば、オーディオプレーヤアプリケーション216は、モバイルコンピューティングデバイス202のディスプレイ220がオフであるか、別の方法で電源が切られているときですら、オーディオクリップを確実に再生することができる。より具体的には、オーディオプレーヤアプリケーション216は、モバイルコンピューティングデバイス202がオーディオクリップの再生中にロック画面状態に遷移するときに中断またはレイテンシを受けない。
【００４９】
ブラウザアプリケーション215およびオーディオプレーヤアプリケーション216は各々、所望の機能を提供するために利用されるコンピュータ論理を含む。ブラウザアプリケーション215およびオーディオプレーヤアプリケーション216は各々、ハードウェア、ファームウェア、および/または汎用プロセッサを制御するソフトウェア内で実装され得る。たとえば、いくつかの実装形態では、ブラウザアプリケーション215およびオーディオプレーヤアプリケーション216は各々、メモリ内にロードされ、1つまたは複数のプロセッサによって実行されるプログラムファイルをコンピュータ可読記憶デバイス上に含む。他の実装形態では、ブラウザアプリケーション215およびオーディオプレーヤアプリケーション216は各々、RAMハードディスクまたは光媒体もしくは磁気媒体など、有形コンピュータ可読記憶媒体内に記憶されたコンピュータ実行可能命令の1つまたは複数のセットを含む。
【００５０】
モバイルコンピューティングデバイス202は、ネットワークインターフェース218と、ディスプレイ220と、スピーカ222とをさらに含み得る。ネットワークインターフェース218は、ネットワーク230を介した通信を可能にし得る。ネットワークインターフェース218は、ネットワーク化通信を提供するための任意の数の構成要素(たとえば、トランシーバ、アンテナ、コントローラ、カードなど)を含み得る。
【００５１】
ディスプレイ220は、たとえば、発光ダイオードディスプレイ(たとえば、有機発光ダイオードディスプレイ)、液晶ディスプレイ(たとえば、薄膜トランジスタ液晶ディスプレイ)、薄膜ダイオードディスプレイなど、異なるタイプのディスプレイ構成要素を含み得る。いくつかの実装形態では、ディスプレイ220は、タッチセンサー式であってもよい。たとえば、ディスプレイは、静電容量式タッチ画面、抵抗膜式タッチ画面、または他のタッチセンサー式技術であってよい。
【００５２】
スピーカ222は、当技術分野でよく知られているように、音を生成する電気機械デバイスであってよい。たとえば、スピーカ222は、電気信号を受信することができ、その電気信号に基づいて音を生成することができる。
【００５３】
いくつかの実装形態では、モバイルコンピューティングデバイス202は、ネットワーク230を介してサーバコンピューティングデバイス250と通信可能に接続することができる。サーバコンピューティングデバイス250は、1つまたは複数のプロセッサ252とメモリ254とを含み得る。1つまたは複数のプロセッサ252は、たとえば、処理ユニット、マイクロプロセッサ、コントローラ、マイクロコントローラ、特定用途向け集積回路などを含めて、任意の形態の処理デバイスであってよい。メモリ254は、いずれかのコンピュータ可読媒体、たとえば、たとえばRAM(たとえば、DRAM)を含む非一時的コンピュータ可読媒体、ROM(たとえば、EEPROM)、光記憶装置、磁気記憶装置、フラッシュ記憶装置、固体記憶装置、ハードドライブ、またはそれらの何らかの組合せのうちの1つまたは複数を含み得る。メモリ254は、サーバコンピューティングデバイス250によって実行されると、サーバコンピューティングデバイス250に本開示に一致する動作を実行させる命令256の1つまたは複数のセットを記憶することができる。
【００５４】
サーバコンピューティングデバイス250はさらに、いくつかの標準オーディオフレーム257を含むことができるか、またはそれらを記憶することができる。たとえば、標準オーディオフレーム257は、標準クリックオーディオフレームと標準無音オーディオフレームとを含み得る。いくつかの実装形態では、標準オーディオフレームは、タイニーオフライン符号化MP3フレームである。いくつかの実装形態では、標準オーディオフレームは、検索結果ウェブページの一部分として、モバイルコンピューティングデバイス202に提供されるJavaScript(登録商標)コード内にインライン方式で含まれ得る。
【００５５】
サーバコンピューティングデバイス250はさらに、複数のテンポビートユニット258を含むことができるか、またはそれらを記憶することができる。各テンポビートユニット258は、特定のテンポに対する全ビートの考えられる最小倍数に対応し得る。いくつかの実装形態では、テンポビートユニット258は、オフラインで生成され、サーバコンピューティングデバイス250において記憶され、次いで、必要なときに、ネットワーク230を介してモバイルコンピューティングデバイス202に提供される。
【００５６】
いくつかの実装形態では、テンポビートユニット258は、単一のデータセットまたはデータファイルに圧縮される。たとえば、オーディオ圧縮を超えた(たとえば、MP3圧縮を超えた)2段階の圧縮をテンポビートユニット258に適用することができる。一例として、テンポのセットに対するそれぞれのビートの考えられる最小倍数を表すオーディオ符号化フレーム(たとえば、MP3フレーム)のすべてをハッシュすることができる。次に、全フレームセットからの複製ヘッダおよび複製ボディを容易に反転可能な(たとえば、JavaScript(登録商標)コードの実行によって容易に反転可能な)方法で除去することができる。最後に、得られたバイナリデータのデータセットをgzipし、クリック同士の間で実質的に無音なものを圧縮することができる。この様式で圧縮されているテンポビートユニット258は、プレーンオーディオ符号化ファイル(たとえば、プレーンMP3ファイル)として圧縮されるよりも、99%小さな形態で転送され得る。
【００５７】
サーバコンピューティングデバイス250は、ネットワークインターフェース259をさらに含み得る。ネットワークインターフェース259は、ネットワーク230を介した通信を可能にし得る。ネットワークインターフェース259は、ネットワーク化通信を提供するための任意の数の構成要素(たとえば、トランシーバ、アンテナ、コントローラ、カードなど)を含み得る。
【００５８】
ネットワーク230は、ローカルエリアネットワーク(たとえば、イントラネット)、ワイドエリアネットワーク(たとえば、インターネット)、またはそれらの何らかの組合せなど、任意のタイプの通信ネットワークであってよく、任意の数のワイヤードリンクまたはワイヤレスリンクを含み得る。一般に、サーバコンピューティングデバイス250とモバイルコンピューティングデバイス202との間の通信は、多種多様な通信プロトコル(たとえば、TCP/IP、HTTP、SMTP、FTP)、符号化もしくはフォーマット(たとえば、HTML、XML)、および/または保護方式(たとえば、VPN、セキュアHTTP、SSL)を使用して、任意のタイプのワイヤードおよび/またはワイヤレス接続を介して搬送され得る。サーバコンピューティングデバイス250は、データを送受信することによって、ネットワーク230を介してモバイルコンピューティングデバイス202と通信することができる。
【００５９】
さらに、サーバコンピューティングデバイス250において記憶される、またはサーバコンピューティングデバイス250によって実行されるものとして説明するプロセス、動作、プログラム、アプリケーション、または命令のいずれも、代わりに、全部または部分的に、モバイルコンピューティングデバイス202において記憶されてよく、またはモバイルコンピューティングデバイス202によって実行されてよく、逆も同様である。
【００６０】
図3は、本開示の例示的な実施形態による、メトロノームを実装するためのある例示的な方法300のフローチャート図を示す。例示的な方法300について図2のシステム200を参照して論じるが、方法300はいずれの適切なコンピューティングデバイスによっても実装され得る。
【００６１】
302において、モバイルコンピューティングデバイス202は、メトロノームユーザインターフェースを含む検索結果ウェブページを表示する。たとえば、ブラウザアプリケーション215は、メトロノームに関連するユーザクエリの提出に応じて、サーバコンピューティングデバイスと対話して、検索結果ウェブページに対応するデータを受信することができる。ウェブページは、たとえば、図1に示したユーザインターフェース100など、メトロノームユーザインターフェースを含み得る。いくつかの実装形態では、ウェブページは、ブラウザアプリケーション215によって実行されると、ブラウザアプリケーション215に、ウェブページ内にメトロノームのユーザインターフェースを表示させるJavaScript(登録商標)コードを含み得る。
【００６２】
304において、モバイルコンピューティングデバイス202は、あるテンポでのメトロノームの実装を要求するユーザ入力を受信する。たとえば、ユーザはブラウザアプリケーション215と対話して、特定のテンポを選択し、次いで、そのようなテンポでのメトロノームの実装を要求することができる。
【００６３】
306において、モバイルコンピューティングデバイス202は、そのテンポを示すオーディオクリップを生成する。たとえば、ブラウザアプリケーション215は、ユーザ入力の受信に応じて、オーディオクリップを生成することができる。
【００６４】
いくつかの実装形態では、モバイルコンピューティングデバイス202は、オーディオクリップを生成するために、検索結果ウェブページ内に含まれたクライアントサイドJavaScript(登録商標)コードを実行することによって、306においてオーディオクリップを生成することができる。いくつかの実装形態では、モバイルコンピューティングデバイス202は、MP3符号化オーディオクリップを生成することによって、306においてオーディオクリップを生成することができる。
【００６５】
308において、モバイルコンピューティングデバイス202は、オーディオクリップを再生するためにオーディオプレーヤアプリケーションを使用する。オーディオプレーヤアプリケーションは、モバイルコンピューティングデバイスがオーディオクリップの再生中にロック画面状態に遷移したときに中断またはレイテンシを受けない。たとえば、モバイルコンピューティングデバイス202は、オーディオクリップを再生するためにオーディオプレーヤアプリケーション216を使用することができる。
【００６６】
いくつかの実装形態では、308においてオーディオクリップを再生するために、モバイルコンピューティングデバイス202は、モバイルコンピューティングデバイス202のオペレーティングシステム内に含まれたネイティブオーディオプレーヤアプリケーションを使用することができる。いくつかの実装形態では、308においてオーディオクリップを再生するために、モバイルコンピューティングデバイス202は、MP3オーディオプレーヤアプリケーションを使用することができる。
【００６７】
図4は、本開示の例示的な実施形態による、メトロノームを実装するためのある例示的な方法400のフローチャート図を示す。例示的な方法400について、図2のシステム200を参照して論じるが、方法400は、任意の適切なコンピューティングデバイスによって実装され得る。
【００６８】
402において、モバイルコンピューティングデバイス202は、メトロノームユーザインターフェースを含む検索結果ウェブページを表示する。たとえば、ブラウザアプリケーション215は、メトロノームに関連するユーザクエリの提出に応じて、サーバコンピューティングデバイスと対話して、検索結果ウェブページに対応するデータを受信することができる。ウェブページは、たとえば、図1に示すようなユーザインターフェース100など、メトロノームユーザインターフェースを含み得る。いくつかの実装形態では、ウェブページは、ブラウザアプリケーション215によって実行されると、ブラウザアプリケーション215にウェブページ内にメトロノームのユーザインターフェースを表示させるJavaScript(登録商標)コードを含み得る。
【００６９】
404において、モバイルコンピューティングデバイス202は、あるテンポでのメトロノームの実装を要求するユーザ入力を受信する。たとえば、ユーザは、ブラウザアプリケーション215と対話して、特定のテンポを選択し、次いで、そのようなテンポでのメトロノームの実装を要求することができる。
【００７０】
406において、モバイルコンピューティングデバイス202は、標準オーディオフレームの連結を使用したそのテンポを示すオーディオクリップの生成が達成可能であるかどうかを決定する。いくつかの実装形態では、406における、標準オーディオフレームの連結を使用したそのテンポを示すオーディオクリップの生成が達成可能であるかどうかを決定するステップは、そのテンポのビート持続時間をオーディオ符号化フレーム持続時間(たとえば、ユニバーサルMP3フレーム)と比較するステップを含み得る。たとえば、選択されたテンポのビート持続時間がオーディオ符号化フレーム持続時間によって満足のいくように分割可能であるかどうかを決定することができる。
【００７１】
406において、標準オーディオフレームの連結を使用したそのテンポを示すオーディオクリップの生成が達成可能であると決定された場合、方法400は408に進む。
【００７２】
408において、モバイルコンピューティングデバイス202は、そのテンポを示すオーディオクリップを生成するために標準オーディオフレームを連結させる。いくつかの実装形態では、標準オーディオフレームは、ウェブページ内に含まれたJavaScript(登録商標)コード内にインライン方式で含まれる。
【００７３】
410において、モバイルコンピューティングデバイス202は、オーディオクリップを再生するためにオーディオプレーヤアプリケーションを使用する。オーディオプレーヤアプリケーションは、モバイルコンピューティングデバイスがオーディオクリップの再生中にロック画面状態に遷移したときに中断またはレイテンシを受けない。たとえば、モバイルコンピューティングデバイス202は、オーディオクリップを再生するためにオーディオプレーヤアプリケーション216を使用することができる。
【００７４】
しかしながら、406において、標準オーディオフレームの連結を使用したそのテンポを示すオーディオクリップの生成が達成可能でないと決定された場合、方法400は412に進む。
【００７５】
412において、モバイルコンピューティングデバイス202は、複数の潜在的なテンポにそれぞれに関連する複数のビートユニットを含むデータセットを受信する。複数のビートユニットのうちの少なくとも1つは要求されたテンポに関連する。たとえば、特定のテンポに対する各ビートユニットは、そのようなテンポに対する全ビートの考えられる最小倍数に対応し得る。
【００７６】
414において、モバイルコンピューティングデバイス202は、要求されたテンポを示すオーディオクリップを生成するために、そのテンポに関連するビートユニットを複製するか、別の方法で乗算する。
【００７７】
416において、モバイルコンピューティングデバイス202は、オーディオクリップを再生するためにオーディオプレーヤアプリケーションを使用する。オーディオプレーヤアプリケーションは、モバイルコンピューティングデバイスがオーディオクリップの再生中にロック画面状態に遷移するときに中断またはレイテンシを受けない。たとえば、モバイルコンピューティングデバイス202は、オーディオクリップを再生するためにオーディオプレーヤアプリケーション216を使用することができる。
【００７８】
本明細書で論じた技術は、サーバ、データベース、ソフトウェアアプリケーション、および他のコンピュータベースシステム、ならびにそのようなシステムがとるアクションおよびそのようなシステムとの間を行き来する情報を参照する。コンピュータベースシステムの固有の柔軟性は、構成要素同士の間のタスクおよび機能の多種多様な考えられる構成、組合せ、および分割を可能にする。たとえば、本明細書で論じるサーバプロセスは、単一のサーバまたは組合せで動作する複数のサーバを使用して実装され得る。データベースおよびアプリケーションは、単一のシステム上で実装されてよく、または複数のシステムにわたって分散されてもよい。分散される構成要素は、連続的に動作してよく、または並列で動作してもよい。
【００７９】
本主題はその様々な特定の例示的な実施形態に関して詳細に説明されてきたが、それぞれの例示的な実施形態は、本開示の限定ではなく、説明のために提供される。当業者は、前述の理解を得るとすぐに、そのような実施形態の代替、それらの変形、およびそれらの均等物を容易に生成することができる。したがって、当業者に容易に明らかになるように、本主題の開示は、本主題に対するそのような修正、変形、および/または追加の包含を除外しない。たとえば、一実施形態または一実装形態の一部分として示した、または説明した特徴を別の実施形態または別の実装形態とともに使用して、またさらなる実施形態を生み出すことができる。したがって、本開示は、そのような代替、変形、および均等物を含む。
【００８０】
さらに、図3〜図4は、示し、論じるために特定の順序で実行されるステップを示すが、本開示の方法は特定の示した順序または構成に限定されない。図3〜図4に示した様々なステップは、本開示の範囲から逸脱せずに、様々な方法でそれぞれ省略、再構成、組合せ、および/または適応され得る。
【符号の説明】
【００８１】
100  ユーザインターフェース
102  検索結果ページ、ウェブページ
104  ディスプレイ
106  モバイルコンピューティングデバイス
108  ユーザクエリ
110  追加検索結果
112  追加検索結果
116  スライディングバー
118  再生ボタン、アイコン、または他の特徴
200  コンピューティングシステム
202  モバイルコンピューティングデバイス
206  プロセッサ
208  メモリ
210  命令
215  ブラウザアプリケーション
216  オーディオプレーヤアプリケーション
218  ネットワークインターフェース
220  ディスプレイ
222  スピーカ
230  ネットワーク
250  サーバコンピューティングデバイス
252  プロセッサ
254  メモリ
256  命令
257  標準オーディオフレーム
258  テンポビートユニット
259  ネットワークインターフェース
300  方法
400  方法
【図１】
2019512897.tif 000003
【図２】
2019512897.tif 000004
【図３】
2019512897.tif 000005
【図４】
2019512897.tif 000006
【国際調査報告】
2019512897.tif 000007
2019512897.tif 000008
2019512897.tif 000009