(57)【要約】  本開示は、ロールスイッチ中にオーディオストリーミングを連続的に知覚できるロールスイッチを提供する。ロールスイッチは２段階で起こり、第１段階はホストリンクロールスイッチを含み、第２段階はリレーリンクロールスイッチを含む。たとえば、ホストリンクロールスイッチは各音声受信装置とホスト装置との関係に関し、マスタ装置はホストから音声を直接受信してスレーブに中継する。リレーリンクロールスイッチは音声受信装置間の関係に関する。たとえば、通信マスタは、マスタ装置とスレーブ装置との間でパケットを送信するなどのタイミングを制御する。２段階の手順の各段階は、約１００ｍｓ以下かかり得る。各段階の間に、マスタ装置およびスレーブ装置の音声バッファはリフィルする機会がある。
2021524210.tif 000002
【特許請求の範囲】
【請求項１】
マスタとして動作する第１の装置とスレーブとして動作する第２の装置との間のロールスイッチを実行するための方法であって、前記方法は、
前記第１の装置が、ホスト装置からパケットを受信することと、
受信した前記パケットを前記第１の装置から前記第２の装置に送ることと、
前記第１および第２の装置において第１段階ロールスイッチを実行することとを備え、前記第１段階ロールスイッチは、
前記第２の装置と前記ホスト装置との間に通信リンクを確立することと、
前記第２の装置が新たなマスタとして動作していることを前記ホスト装置に通知することとを備え、前記方法はさらに、
前記第２の装置が、前記ホスト装置からパケットを受信することと、
受信した前記パケットを予め設定されたスケジュールに従って前記第２の装置から前記第１の装置に送ることと、
前記第１の装置および前記第２の装置の受信した前記パケットの音声バッファが予め定められたレベルに達すると、前記第１および第２の装置において第２段階ロールスイッチを実行することとを備え、前記第２段階ロールスイッチは、前記第１の装置から前記第２の装置に、新たなマスタとしての前記第２の装置から新たなスレーブとしての前記第１の装置にパケットを送信するタイミングの制御を渡すことを備える、方法。
【請求項２】
前記第１段階ロールスイッチの前に、前記第１の装置および前記第２の装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させることと、
前記第２段階ロールスイッチの後に、前記第１および第２の装置における前記ＣＰＵクロックレートを低下させることとをさらに備える、請求項１に記載の方法。
【請求項３】
前記ＣＰＵクロックレートを増加させることは、前記ＣＰＵクロックを最大レート設定に設定することを備える、請求項２に記載の方法。
【請求項４】
前記第１段階ロールスイッチの前に前記第１の装置が、マスタの役割の前記第１の装置がスレーブの役割の前記第２の装置にパケットを送信するポーリングレートを低下させることと、
前記第２段階ロールスイッチの後に、新たなマスタの役割の前記第２の装置が新たなスレーブの役割の前記第１の装置にパケットを送信する前記ポーリングレートを増加させることとをさらに備える、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
前記第１段階ロールスイッチの前または最中に前記第１の装置が、前記ホスト装置からパケットを受信し続けながら前記第２の装置にロールスイッチ情報を送信することをさらに備える、前述の請求項のいずれか１項に記載の方法。
【請求項６】
前記予め設定されたスケジュールは、前記第１の装置のコントローラおよび前記第２の装置のコントローラ内にプログラムされる、前述の請求項のいずれか１項に記載の方法。
【請求項７】
前記音声バッファの前記予め定められたレベルは１００〜２５０ｍｓである、前述の請求項のいずれか１項に記載の方法。
【請求項８】
前記第２段階ロールスイッチはBluetoothロールスイッチである、前述の請求項のいずれか１項に記載の方法。
【請求項９】
前記第１および第２の装置は音声受信装置であり、特にイヤホンである、前述の請求項のいずれか１項に記載の方法。
【請求項１０】
システムであって、
第１の装置と、
前記第１の音声受信装置と無線でペアリングするように適合された第２の装置とを備え、
前記第１の装置および第２の装置は２段階のロールスイッチ動作を実行するように構成され、前記２段階のロールスイッチ動作は、
前記第１の装置が、ホスト装置からパケットを受信することと、
受信した前記パケットを前記第１の装置から前記第２の装置に送ることと、
前記第１および第２の装置において第１段階ロールスイッチを実行することとを備え、前記第１段階ロールスイッチは、
前記第２の装置と前記ホスト装置との間に通信リンクを確立することと、
前記第２の装置が新たなマスタとして動作していることを前記ホスト装置に通知することとを備え、前記２段階のロールスイッチ動作はさらに、
前記第２の装置が、前記ホスト装置からパケットを受信することと、
受信した前記パケットを予め設定されたスケジュールに従って前記第２の装置から前記第１の装置に送ることと、
前記第１の装置および前記第２の装置の受信した前記パケットの音声バッファが予め定められたレベルに達すると、前記第１および第２の装置において第２段階ロールスイッチを実行することとを備え、前記第２段階ロールスイッチは、前記第１の装置から前記第２の装置に、新たなマスタとしての前記第２の装置から新たなスレーブとしての前記第１の装置にパケットを送信するタイミングの制御を渡すことを備える、システム。
【請求項１１】
前記第１および第２の装置はさらに、
前記第１段階ロールスイッチの前に、前記第１の装置および前記第２の装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させ、
前記第２段階ロールスイッチの後に、前記第１および第２の装置における前記ＣＰＵクロックレートを低下させるように構成される、請求項１０に記載のシステム。
【請求項１２】
前記ＣＰＵクロックレートを増加させることは、前記ＣＰＵクロックを最大レート設定に設定することを備える、請求項１１１に記載のシステム。
【請求項１３】
前記第１および第２の装置はさらに、
前記第１段階ロールスイッチの前に前記第１の装置が、マスタの役割の前記第１の装置がスレーブの役割の前記第２の装置にパケットを送信するポーリングレートを低下させ、
前記第２段階ロールスイッチの後に、新たなマスタの役割の前記第２の装置が新たなスレーブの役割の前記第１の装置にパケットを送信する前記ポーリングレートを増加させるように構成される、請求項１０〜１２のいずれか１項に記載のシステム。
【請求項１４】
前記第１および第２の装置はさらに、
前記第１段階ロールスイッチの前または最中に前記第１の装置が、前記ホスト装置からパケットを受信し続けながら前記第２の装置にロールスイッチ情報を送信するように構成される、請求項１０〜１３のいずれか１項に記載のシステム。
【請求項１５】
前記予め設定されたスケジュールは、前記第１の装置のコントローラおよび前記第２の装置のコントローラ内にプログラムされる、請求項１０〜１４のいずれか１項に記載のシステム。
【請求項１６】
前記音声バッファの前記予め定められたレベルは１００〜２５０ｍｓである、請求項１０〜１５のいずれか１項に記載のシステム。
【請求項１７】
前記第１および第２の装置は音声受信装置であり、特にイヤホンである、請求項１０〜１６のいずれか１項に記載のシステム。
【請求項１８】
前記第１および第２の装置の各々は、
受信した前記音声パケットを一時的に格納するように適合された音声バッファと、
前記音声バッファに一時的に格納されている前記音声パケットを再生するように適合されたスピーカとを備える、請求項１０〜１７のいずれか１項に記載のシステム。
【請求項１９】
システムであって、
マスタの役割およびスレーブの役割で動作するように適合された第１の音声受信装置と、
マスタの役割およびスレーブの役割で動作するように適合された第２の音声受信装置とを備え、
前記第１および第２の音声受信装置の各々は、
無線接続を介して音声パケットを受信するように適合された無線通信インターフェースと、
受信した前記音声パケットを一時的に格納するように適合された音声バッファと、
前記音声バッファに一時的に格納されている前記音声パケットを再生するように適合されたスピーカと、
前記無線通信インターフェースと通信するプロセッサとを備え、前記プロセッサは２段階のロールスイッチ動作を実行するように構成され、前記２段階のロールスイッチ動作は、
前記第１の音声受信装置が、ホスト装置からパケットを受信することと、
受信した前記パケットを前記第１の音声受信装置から前記第２の音声受信装置に送ることと、
前記第１および第２の音声受信装置において第１段階ロールスイッチを実行することとを備え、前記第１段階ロールスイッチは、
前記第２の音声受信装置と前記ホスト装置との間に通信リンクを確立することと、
前記第２の音声受信装置が新たなマスタとして動作していることを前記ホスト装置に通知することとを備え、前記２段階のロールスイッチ動作はさらに、
前記第２の音声受信装置が、前記ホスト装置からパケットを受信することと、
受信した前記パケットを予め設定されたスケジュールに従って前記第２の音声受信装置から前記第１の音声受信装置に送ることと、
前記第１の音声受信装置および前記第２の音声受信装置の音声バッファが予め定められたレベルに達すると、前記第１および第２の音声受信装置において第２段階ロールスイッチを実行することとを備え、前記第２段階ロールスイッチは、前記第１の音声受信装置から前記第２の音声受信装置に、新たなマスタとしての前記第２の音声受信装置から新たなスレーブとしての前記第１の音声受信装置にパケットを送信するタイミングの制御を渡すことを備える、システム。
【請求項２０】
前記第１および第２の音声受信装置はイヤホンである、請求項１９に記載のシステム。
【請求項２１】
前記第１および第２の音声受信装置はさらに、
前記第１段階ロールスイッチの前に、前記第１の音声受信装置および前記第２の音声受信装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させ、
前記第２段階ロールスイッチの後に、前記第１および第２の音声受信装置における前記ＣＰＵクロックレートを低下させるように構成される、請求項１９または２０に記載のシステム。
【請求項２２】
前記第１および第２の音声受信装置はさらに、前記ＣＰＵクロックレートを増加させることは、前記ＣＰＵクロックを最大レート設定に設定することを備えるように構成される、請求項２１に記載のシステム。
【請求項２３】
前記第１および第２の音声受信装置はさらに、
前記第１段階ロールスイッチの前に前記第１の音声受信装置が、マスタの役割の前記第１の音声受信装置がスレーブの役割の前記第２の音声受信装置にパケットを送信するポーリングレートを低下させ、
前記第２段階ロールスイッチの後に、新たなマスタの役割の前記第２の音声受信装置が新たなスレーブの役割の前記第１の音声受信装置にパケットを送信する前記ポーリングレートを増加させるように構成される、請求項１９〜２２のいずれか１項に記載のシステム。
【請求項２４】
前記第１の音声受信装置はさらに、前記第１段階ロールスイッチの前または最中に、前記ホスト装置からパケットを受信し続けながら前記第２の音声受信装置にロールスイッチ情報を送信するように構成される、請求項１９〜２３のいずれか１項に記載のシステム。
【請求項２５】
前記第１および第２の音声受信装置の各々は、前記予め設定されたスケジュールを格納するメモリをさらに備える、請求項１９〜２４のいずれか１項に記載のシステム。
【請求項２６】
前記音声バッファの前記予め定められたレベルは１００〜２５０ｍｓである、請求項１９〜２５のいずれか１項に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
関連出願の相互参照
本願は、２０１８年１０月２３日に出願された米国特許出願第１６／１６８，４７４号の継続出願であり、その開示を本明細書に引用により援用する。
【０００２】
背景
フルワイヤレスイヤホンは、互いに無線接続する２つのイヤホンである。一般に、そのようなフルワイヤレスイヤホンは、リレーフォーマット（relay format）またはスニフフォーマット（sniff format）に従う。リレーフォーマットでは、片方のイヤホンがマスタの役割を果たし、もう片方のイヤホンがスレーブの役割を果たす。マスタイヤホンは、たとえば携帯電話または他の音声再生装置などのホストから音声を受信した後、この音声をスレーブイヤホンに中継する。スニフフォーマットでは、片方のイヤホンが主イヤホンであり、もう片方のイヤホンが副イヤホンである。主イヤホンはホストから音声パケットを受信して確認応答するのに対して、副イヤホンは音声を受信する、または「スニフ」するのみであり、パケットを確認応答しない。副イヤホンは、パケットを失うと、主イヤホンにパケットの再送信を要求する。
【０００３】
２つのイヤホン間のロールスイッチはイヤホンの役割が変わるときに起こる。たとえば、リレーフォーマットイヤホンの場合、マスタがスレーブになり、スレーブがマスタになる。スニフフォーマットイヤホンの場合、主イヤホンが副イヤホンになり、副イヤホンが主イヤホンになる。ロールスイッチは、たとえば、スレーブイヤホンの方が受信信号強度が良好である場合、マスタイヤホンがスレーブよりも低バッテリで動作している場合、マスタイヤホンがユーザの耳から取外されたりケースに入れられた場合等に起こり得る。
【０００４】
リレーフォーマットのワイヤレスイヤホンは一般に、ホスト装置とマスタイヤホンとの間に第１の非同期コネクションレス（asynchronous connection-less：ＡＣＬ）リンクを有しており、マスタイヤホンはこのＡＣＬリンクにおけるBluetooth（登録商標）スレーブである。マスタイヤホンとスレーブイヤホンとの間に第２のＡＣＬリンクが存在する。この第２のＡＣＬにおいて、マスタイヤホンはBluetoothマスタであり、スレーブイヤホンはBluetoothスレーブである。
【０００５】
このフォーマットでは、シームレスなロールスイッチを達成することは非常に困難である。たとえば、ロールスイッチの後に新たなマスタイヤホンが音声パケットを受信し続けることができるように、マスタイヤホンとホスト装置との間のＡＣＬ内のプロファイルのすべてではないにしても大部分をスレーブイヤホンにサイレントに転送する必要がある。さらに、古いマスタイヤホンが新たなスレーブイヤホンになり、古いスレーブイヤホンが新たなマスタイヤホンになるので、Bluetoothロールスイッチも必要である。なぜなら、マスタイヤホンはBluetooth伝送において効率的であるようにBluetoothマスタでもあるべきであるからである。
【発明の概要】
【課題を解決するための手段】
【０００６】
簡単な概要
マスタおよびスレーブとして動作する第１および第２の装置のロールスイッチを「シームレス」にするための解決策が提供される。この解決策は特に、リレーフォーマットのフルワイヤレスイヤホンのロールスイッチを「シームレス」にするのに適用され得る。そのため、ロールスイッチが起こっても音声グリッチは知覚できない。提供される解決策はまた、スニフモードのフルワイヤレスイヤホンに、したがって、主（ゆえに「マスタ」）装置および副（ゆえに「スレーブ」）装置のロールスイッチに関連して用いられ得る。
【０００７】
本開示の一局面は、マスタとして動作する第１の装置とスレーブとして動作する第２の装置との間のロールスイッチを実行するための方法を提供する。上記方法は、第１の装置が、ホスト装置からパケットを受信することと、受信したパケットを第１の装置から第２の装置に送ることと、第１の装置および第２の装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させることと、第１段階ロールスイッチを実行することと、第２段階ロールスイッチを実行することとを含む。第１段階ロールスイッチは、第２の装置とホスト装置との間に通信リンクを確立することと、第２の装置が新たなマスタとして動作していることをホスト装置に通知することとを含む。第１段階と第２段階との間に、第２の装置はホスト装置からパケットを受信し、受信したパケットを予め設定されたスケジュールに従って第２の装置から第１の装置に送る。第１の装置および第２の装置の音声バッファが予め定められたレベルに達すると、第１および第２の装置において第２段階ロールスイッチを実行する。第２段階ロールスイッチは、第１の装置から第２の装置に、新たなマスタとしての第２の装置から新たなスレーブとしての第１の装置にパケットを送信するタイミングの制御を渡すことを含む。第２段階が完了すると、第１および第２の装置におけるＣＰＵクロックレートを低下させてもよい。
【０００８】
本開示の別の局面は、マスタの役割およびスレーブの役割で動作するように適合された第１の音声受信装置と、マスタの役割およびスレーブの役割で動作するように適合された第２の音声受信装置とを含むシステムを提供する。第１および第２の音声受信装置の各々は、無線接続を介して音声パケットを受信するように適合された無線通信インターフェースと、受信した音声パケットを一時的に格納するように適合された音声バッファと、音声バッファに一時的に格納されている音声パケットを再生するように適合されたスピーカと、無線通信インターフェースと通信するプロセッサとを含む。プロセッサは２段階のロールスイッチ動作を実行するように構成されてもよく、２段階のロールスイッチ動作は、第１の装置が、ホスト装置からパケットを受信することと、受信したパケットを第１の装置から第２の装置に送ることと、第１の装置および第２の装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させることと、第１および第２の装置において第１段階ロールスイッチを実行することとを含み、第１段階ロールスイッチは、第２の装置とホスト装置との間に通信リンクを確立することと、第２の装置が新たなマスタとして動作していることをホスト装置に通知することとを含む。プロセッサはさらに、第２の装置が、ホスト装置からパケットを受信し、受信したパケットを予め設定されたスケジュールに従って第２の装置から第１の装置に送り、第１の装置および第２の装置の音声バッファが予め定められたレベルに達すると、第１および第２の装置において第２段階ロールスイッチを実行するように構成されてもよく、第２段階ロールスイッチは、第１の装置から第２の装置に、新たなマスタとしての第２の装置から新たなスレーブとしての第１の装置にパケットを送信するタイミングの制御を渡すことを備え、プロセッサはさらに、第１および第２の装置におけるＣＰＵクロックレートを低下させるように構成されてもよい。
【０００９】
本開示のさらに別の局面は、第１の音声受信装置と、第１の音声受信装置と無線でペアリングするように適合された第２の音声受信装置とを含むシステムを提供する。第１の音声受信装置および第２の音声受信装置は２段階のロールスイッチ動作を実行するように構成され、２段階のロールスイッチ動作は、第１の装置が、ホスト装置からパケットを受信することと、受信したパケットを第１の装置から第２の装置に送ることと、第１の装置および第２の装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させることと、第１および第２の装置において第１段階ロールスイッチを実行することとを含み、第１段階ロールスイッチは、第２の装置とホスト装置との間に通信リンクを確立することと、第２の装置が新たなマスタとして動作していることをホスト装置に通知することとを含み、２段階のロールスイッチ動作はさらに、第２の装置が、ホスト装置からパケットを受信することと、受信したパケットを予め設定されたスケジュールに従って第２の装置から第１の装置に送ることと、第１の装置および第２の装置の音声バッファが予め定められたレベルに達すると、第１および第２の装置において第２段階ロールスイッチを実行することとを含み、第２段階ロールスイッチは、第１の装置から第２の装置に、新たなマスタとしての第２の装置から新たなスレーブとしての第１の装置にパケットを送信するタイミングの制御を渡すことを備え、２段階のロールスイッチ動作はさらに、第１および第２の装置におけるＣＰＵクロックレートを低下させることを含む。
【図面の簡単な説明】
【００１０】
【図１】本開示の局面に係る例示的なシステムを示すブロック図である。
【図２】図１のシステムの例示的な絵図である。
【図３Ａ】本開示の局面に係るロールスイッチを示すブロック図である。
【図３Ｂ】本開示の局面に係るロールスイッチを示すブロック図である。
【図３Ｃ】本開示の局面に係るロールスイッチを示すブロック図である。
【図３Ｄ】本開示の局面に係るロールスイッチを示すブロック図である。
【図３Ｅ】本開示の局面に係るロールスイッチを示すブロック図である。
【図３Ｆ】本開示の局面に係るロールスイッチを示すブロック図である。
【図４】本開示の局面に係る例示的なシステムを示す機能ブロック図である。
【図５】本開示の局面に係る例示的な方法を示すタイミング図である。
【図６】本開示の局面に係る例示的な方法を示すフロー図である。
【発明を実施するための形態】
【００１１】
詳細な説明
本開示は、ロールスイッチ中にオーディオストリーミングを連続的に知覚できるロールスイッチを提供する。ロールスイッチは２段階で起こり、第１段階はホストリンクロールスイッチを含み、第２段階はリレーリンクロールスイッチを含む。たとえば、ホストリンクロールスイッチは各音声受信装置とホスト装置との関係に関し、マスタ装置はホストから音声を直接受信してスレーブに中継する。リレーリンクロールスイッチは音声受信装置間の関係に関する。たとえば、通信マスタは、マスタ装置とスレーブ装置との間でパケットを送信するなどのタイミングを制御する。２段階の手順の各段階は、約１００ｍｓ、またはそれ以上もしくはそれ以下かかり得る。各段階の間に、マスタ装置およびスレーブ装置の音声バッファはリフィルする機会がある。この手順は本明細書では主にイヤホンに関して説明するが、この手順はマスタおよびスレーブの役割を有するその他の無線でペアリングされる装置にも適用され得ることを理解すべきである。
【００１２】
マスタの役割の第１の装置は、携帯電話などのホスト装置から、第１の装置とホストとの間の非同期コミュニケーションレス（asynchronous communication less：ＡＣＬ）リンクなどの通信リンク上で音声を受信する。第１の装置はこの音声をスレーブの役割の第２の装置に中継する。第１および第２の装置は、マスタが干渉を被っているのに対してスレーブがホストとの良好な信号強度を有しているなどのいくつかの場合に、マスタ／スレーブのロールをスイッチしてもよい。ロールスイッチの前に、第１および第２の装置の両方がそれらの内部クロックレートを増加させる。たとえば、第１および第２の装置はそれらの中央処理装置（ＣＰＵ）クロックレートを最大設定に設定してもよい。さらに、これらの装置は、マスタの役割の第１の装置がスレーブの役割の第２の装置にパケットを送信することを試みるポーリングレートを低下させてもよい。たとえば、これらの装置はこのレートを約２．５ｍｓに低下させてもよい。
【００１３】
マスタの役割の第１の装置は、Bluetoothプロファイルなどのロールスイッチ情報を第２の装置に送信し始める。このプロセスの間、第１の装置はホスト装置から音声を受信してこの音声を第２の装置に中継し続ける。第２の装置はその通常動作を継続する。
【００１４】
第１および第２の装置はホストリンクロールスイッチを開始する。ホストリンクロールスイッチは、Bluetoothコントローラなどのこれらの装置の通信コントローラにおいて開始してもよい。第１の装置は、そのコントローラからバッファをポーリングして、スレーブの役割の第２の装置に音声バッファを中継してもよい。第１の装置は、フロービットをオフにすること、コントローラにおいてアクセスアドレスを変更すること、またはパケットが第１の装置によって受信されないという結果を達成するための多数のその他のタスクのうちのいずれかを実行することなどによって、ホストからの音声パケットの受信を停止してもよい。ホストリンクロールスイッチはコントローラにおいて完了する。たとえば、第２の装置は、第１の装置とホストとの間の通信リンクを引継いでもよく、第２の装置が新たなマスタであることをホストに通知してもよい。いくつかの例では、第１の装置は、第２の装置が通信リンクの確立に成功したという確認を第２の装置から受信してもよく、第１の装置は、第１の装置が新たなスレーブであることをホストに通知してもよい。第１および第２の装置は、それぞれ新たなスレーブおよび新たなマスタとして、それらの内部のBluetoothホストプロファイルを再現する。たとえば、これらの装置は、それらの内部のBluetoothプロファイルおよび状態のメモリを再構築することができる。
【００１５】
ホストリンクロールスイッチの後、新たなホストリンクマスタとして機能する第２の装置はホスト装置および第１の装置に対してBluetoothスレーブのままである。ホスト装置は、新たなマスタの役割の第２の装置に音声パケットを送信する。第２の装置は第１の装置に対してリレーリンクスレーブのままであるので、特別なスケジューリングがBluetoothコントローラにおいて設定され、受信した音声パケットを第２の装置から第１の装置に中継するために用いられてもよい。たとえば、特別なスケジューリングは、パケットの受信をいつ予期すべきかの指示を第１の装置に与えてもよい。特別なスケジューリングを用いたそのようなパケットの中継は、第１および第２の装置の音声バッファが予め定められたレベルに達するまで継続してもよい。たとえば、それは、音声バッファが約１５０ｍｓ〜２５０ｍｓまたはそれ以上の「正常」範囲に達するまで継続してもよい。
【００１６】
音声バッファが予め定められたレベルに達すると、第１および第２の装置はリレーリンクロールスイッチをトリガする。したがって、新たなホストリンクマスタの役割を果たす第２の装置は新たなリレーリンクマスタにもなり、第１の装置と第２の装置との間のパケット送信のタイミングを制御する。新たな装置スレーブとして機能する第１の装置は新たなリレーリンクスレーブにもなる。ＣＰＵクロックレートおよびポーリング時間は、２段階のロールスイッチ手順のために変更される前に、それらの前の値に戻されてもよい。
【００１７】
このように２段階のロールスイッチを実行することで、リレー解決策のためのシームレスなロールスイッチが提供される。これは、スレーブイヤホンの接続性がマスタイヤホンの接続性よりも良好である状況などにおいて、音声品質を改善するのに役立つ。また、バッテリ寿命の向上にも役立つ。たとえば、マスタイヤホンはスレーブイヤホンよりも多くの電力を消費し得る。したがって、ロールをスイッチすることにより、これらの装置が負担を移して両装置の使用時間を延ばすことができる。さらなる例では、ロールスイッチは、片方のイヤホンがユーザの耳から取外された場合、またはケースに入れられた場合等、片方のイヤホンがなくなると実行され得る。ロールスイッチはシームレスであるため、これらの利点を音声品質に目立った影響を与えることなく達成することにより、改善されたユーザ体験を提供することができる。
【００１８】
図１は、マスタアクセサリ装置１１０に通信するように結合されたホスト装置１０５を含む例示的なシステム１００を示す。マスタアクセサリ装置１１０は、イヤホン、ワイヤレススピーカ等の１対のアクセサリ装置の片方であってもよい。そのため、マスタ装置１１０はさらにスレーブアクセサリ装置１２０に通信するように結合される。１つのスレーブ装置１２０のみが図１に示されているが、複数のスレーブ装置がマスタ装置１１０に通信するように結合されてもよいことを理解すべきである。
【００１９】
装置１０５、１１０、１２０の間の接続は、たとえば、Bluetoothなどの近距離無線ペアリングであってもよい。たとえば、ホスト装置１０５は、第１のＡＣＬリンクなどのホスト通信リンク１５２を介してマスタ装置１１０に結合されてもよい。マスタ装置１１０は、第２のＡＣＬリンクなどのリレー通信リンク１５４を介してスレーブ装置１２０に結合されてもよい。
【００２０】
図２は図１のシステムの例を示しており、ホスト装置は携帯電話２０５であり、マスタアクセサリは第１のイヤホン２１０であり、スレーブアクセサリは第２のイヤホン２２０である。ホスト通信リンク２５２が電話２０５と第１のイヤホン２１０との間に存在し、リレー通信リンク２５４が第１のイヤホン２１０と第２のイヤホン２２０との間に存在する。
【００２１】
この例のホスト装置は携帯電話として示されているが、ホスト装置は音声信号を送信するように適合されたさまざまな種類の装置のうちのいずれかであってもよいことを理解すべきである。たとえば、ホスト装置は、タブレット、スマートウォッチ、ゲーム機、音楽プレーヤ、ラップトップ、携帯情報端末装置、またはその他のコンピューティングデバイスであってもよい。同様に、第１および第２のアクセサリは、ここではイヤホン２１０、２２０として示されているが、他の例ではスピーカまたは他の音声装置、映像出力ディスプレイ等のいずれかの組合わせであってもよい。第１および第２のアクセサリは、製造時にペアリングされてもよいし、別個に販売されて後でユーザによってペアリングされてもよい。
【００２２】
場合によっては、第１および第２のアクセサリがロールをスイッチすることが望ましい場合がある。たとえば、マスタの役割を果たすイヤホンは、ホストとスレーブの役割の装置との間の可能な接続と比較して、ホストとの品質信号強度接続が低い場合がある。そのような状況の例を図２に示す。第１のイヤホン２１０は、ホスト装置１０５がユーザの身体の反対側に保持されているため、ホスト装置１０５に対して身体交差干渉を受ける。対照的に、第２のイヤホン２２０はユーザの身体のホスト装置１０５と同じ側にある。したがって、第２のイヤホン２２０が受ける身体交差干渉は第１のイヤホン２１０よりも小さい。
【００２３】
マスタ／スレーブのロールをスイッチすることが望ましい場合がある別の例は、第１および第２の装置のバッテリレベルに関連する。マスタの役割を果たす装置は、スレーブの役割を果たす装置よりも多くの電力を消費し得る。したがって、たとえばマスタ装置のバッテリが予め定められたレベルまで消耗すると、スレーブ装置とロールをスイッチすることが望ましい場合がある。
【００２４】
ロールをスイッチするために、２段階の手順が用いられ得る。たとえば、第１段階では、新たなホストリンクマスタがホストとの通信リンクを確立するように、ホスト装置に対するロールスイッチが起こり得る。第２段階では、新たなリレーリンクマスタが再生装置間のリレーリンク上でパケットを送信するタイミングを制御するように、再生装置に対するロールスイッチが起こり得る。この２段階の手順では、音声送信および再生におけるギャップはすべて、ユーザによって知覚されないほど十分短くすることができる。たとえば、２段階の手順の各段階は、いずれのギャップも約１００ｍｓ以下であるように、約１００ｍｓ以内に完了し得る。
【００２５】
図３Ａ〜図３Ｆは２段階のロールスイッチ手順の例を示す。これらの図はロールスイッチ手順のいくつかの動作を示しているが、さらなる動作が実行されてもよいことを理解すべきである。
【００２６】
図３Ａにおいて、第１および第２の装置１１０、１２０は、それらの内部ＣＰＵクロック１３１、１４１のレートをそれぞれ増加させる。たとえば、第１および第２の装置１１０、１２０はクロックレートを最大可能レートに増加させてもよい。クロックレートは、サポートしているチップセットに基づいて異なり得る。ＣＰＵクロックレートを増加させることによって、ＣＰＵ速度によって制限される動作が、ＣＰＵクロックレートの増加に比例して高速化される。たとえば、マスタ装置上のプロファイル状態の保存、またはスレーブ装置上のプロファイルの復元などの動作は、未調整のＣＰＵクロックレートよりも、増加したＣＰＵクロックレートの方が迅速に実行され得る。
【００２７】
第１および第２の装置１１０、１２０はまた、ポーリング時間１３２、１４２を短縮してもよい。たとえば、これらの装置は、マスタ装置１１０がスレーブ装置１２０にパケットを送信するｔＰｏｌｌ時間を短縮してもよい。このようにポーリング時間を調整することによって、Bluetoothパケットは第２の装置から第１の装置により高速に送信される。BluetoothスレーブからBluetoothマスタにパケットが送信される時はいつでも、デフォルトで約２５ｍｓなどのｔＰｏｌｌの値までのランダムな遅延がある。ｔＰｏｌｌ時間を短縮することにより、ロールスイッチの第２段階の時間を大幅に減らすことができる。たとえば、第２段階ロールスイッチの間、第１および第２の装置はスイッチ時間をネゴシエートし、スイッチ時間が経過する前に両方がその時間に合意すべきである。ｔＰｏｌｌを変更することにより、スイッチ時間をより早い時間に設定することができる。
【００２８】
図３Ｂにおいて、第１の装置１１０は第２の装置１２０にロールスイッチ情報を送信し始める。そのような情報は、たとえば、Bluetoothプロファイルなどの無線通信プロトコルプロファイル１１２を含んでもよい。そのようなプロファイルの例として、オーディオ／ビデオリモートコントロールプロファイル（ＡＶＲＣＰ）、ハンズフリープロファイル（ＨＦＰ）、アドバンストオーディオ配信プロファイル（Ａ２ＤＰ）、属性プロファイル（ＡＴＴ）、デバイスＩＤプロファイル（ＤＩＰ）、近接プロファイル（ＰＸＰ）、同期プロファイル（ＳＹＮＣＨ）、無線周波数通信（ＲＦＣＯＭＭ）、またはBluetoothローエナジー（ＢＬＥ）などが挙げられる。プロファイル１１２は、マスタ装置１１０がどのように動作するかを命令してもよい。たとえば、プロファイルは、他のフォーマットへの依存性、提案されるユーザインターフェースフォーマット、プロファイルが使用するプロトコルスタックの部分等に関連する情報を含んでもよい。いくつかの例では、プロファイルは、マスタ装置１１０がホスト装置１０５とどのように通信するかを決定してもよい。単なる例として、プロファイルのうちの１つ以上は、非同期コミュニケーションレス（ＡＣＬ）リンクなどの通信リンク１５２を用いてもよい。他の例では、プロファイルは、どのように音声がホスト装置１０５からマスタ装置１１０に、および／またはマスタ装置１１０からスレーブ装置１２０にストリームされるかを規定してもよい。スレーブ装置１２０は、無線プロファイル１２２などの受信したロールスイッチ情報を格納する。ロールスイッチ情報の他の例として、たとえば、周波数ホッピングシーケンス、汎用接続パラメータ、装置識別子などのＡＣＬ接続情報が挙げられ得る。さらなる例として、ログ、アップタイム等の、接続とは無関係の装置状態が挙げられる。
【００２９】
ロールスイッチ情報を送信するプロセスの間、第１の装置１１０は、通常動作時と同様に、ホスト装置１０５から音声パケットを受信して当該音声パケットを第２の装置１２０に中継し続けてもよい。したがって、第１の装置１１０は、受信した音声パケットを音声バッファ１１４に一時的に格納してもよい。第２の装置１２０も、受信した音声パケットを音声バッファ１２４に格納してもよい。
【００３０】
図３Ｃにおいて、第１および第２の装置１１０、１２０はロールスイッチの第１段階を実行する。この第１段階では、第２の装置１２０はホスト装置１０５へのリンクを確立してホストリンクマスタになる。したがって、第２の装置１２０はホスト１０５からパケットを受信して第１の装置１１０に中継する。しかしながら、図３Ｄに関連してさらに述べるように、第２の装置１２０は第１の装置１１０に対してリレーリンクスレーブのままである。
【００３１】
第１および第２の装置１１０、１２０は、それらのBluetoothコントローラなどの各自の通信コントローラにおいて第１段階ロールスイッチを開始してもよい。たとえば、マスタの役割の第１の装置１１０は、そのコントローラからすべてのバッファをポーリングし、その音声バッファ１１４を第２の装置１２０に中継してもよい。たとえば、第１の装置１１０によって最近受信されてバッファ１１４に格納されている任意の音声パケットが、第２の装置１２０に送信されてスレーブバッファ１２４に格納されてもよい。この点に関して、第２の装置１２０は同一のバッファ内容を有しており、マスタの役割にスイッチすると遅延なしに音声の再生を開始することができる。この例では音声バッファ内の音声パケットのみが示されているが、映像または画像バッファなどの他の種類のバッファも同期されてもよいことを理解すべきである。
【００３２】
そして第１の装置１１０はホスト装置１０５からの音声パケットの受信を停止してもよい。これはさまざまな方法で行なうことができる。単なる例として、第１の装置１１０はフロービットをオフにしてもよいし、その通信コントローラにおいてアクセスアドレスを変更するなどしてもよい。
【００３３】
そして第１および第２の装置１１０、１２０は第１段階ロールスイッチを終了してもよい。第２の装置１２０は、ホスト装置１０５との新たな通信リンク１５６を確立し、第２の装置１２０がホスト１０５からパケットを直接受信すべき新たなマスタであることをホスト装置１０５に通知してもよい。いくつかの例によれば、第１および第２の装置１１０、１２０は、Bluetoothコントローラ層などの通信コントローラ層において第１段階ロールスイッチを終了してもよい。たとえば、各装置１１０、１２０は、その通信コントローラにコマンドを送信して第１段階ロールスイッチを開始してもよい。第１の装置１１０は、そのリンクマネージャプロトコル（ＬＭＰ）状態を、ＬＭＰソケットを受信する第２の装置１２０に送信してもよい。第２の装置１２０は、新たなＡＣＬリンクを開始してホスト装置１０５と同期してもよい。ＡＣＬリンクの確立が成功すると、第２の装置１２０は第１の装置１１０に成功ＬＭＰパケットを送信し、第２の装置１２０が新たなマスタであることをホスト装置１０５に通知してもよい。第１の装置１１０も、ＬＭＰ成功パケットを受信すると、第１の装置１１０が新たなスレーブであることをホスト１０５に通知してもよい。
【００３４】
第１および第２の装置１１０、１２０は、それぞれ新たなスレーブの役割およびマスタの役割において、それらの内部のBluetoothホストプロファイルを再現する。これは非常に迅速に行なわれ得る。第１および第２の装置１１０、１２０は、それらの内部のBluetoothプロファイルおよび状態のメモリを再構築してもよい。たとえば、新たなマスタとしての第２の装置１２０は、前のマスタであった第１の装置１１０から構造体を受信してもよい。第２の装置１２０はこの構造体を用いて、アプリケーション側でそのBluetoothプロファイルを再現してもよい。第１の装置１１０も同様に、新たなスレーブとして、第２の装置１２０から構造体を受信し、この構造体を用いてそのBluetoothプロファイルを再現してもよい。これは一例であるが、内部のBluetoothプロファイルを再現する他の方法を用いてもよいことを理解すべきである。
【００３５】
第１段階ロールスイッチの間、音声の再生は継続する。したがって、第１および第２の装置はホストからパケットを受信していないので、第１および第２の装置の音声バッファは排出される。再生中に知覚可能なグリッチを防止するために、第１段階ロールスイッチは音声バッファのサイズ未満の時間内に完了すべきである。
【００３６】
第１段階ロールスイッチを完了すると、第２の装置１２０はホスト装置１０５との通信リンク１５６をすでにセットアップしており、ホスト装置１０５に対してスレーブとして機能している。第２の装置１２０は、送信にキャッチアップしようとしているホスト装置１０５から音声パケットを受信する。たとえば、音声は一時停止されず、ホストはロールスイッチが起ころうとしていることを必ずしも通知されるとは限らないため、ホスト装置はバッファリングしてパケットの送信を試み続ける。この点に関して、送信は、第１段階ロールスイッチが起こった期間にわたってキャッチアップする。
【００３７】
第２の装置１２０は、装置ロールスイッチを完了して装置マスタになるが、第１の装置１１０に対してリレーリンクスレーブのままである。たとえば、第２の装置１２０はホスト装置とのリンクを引継ぐが、第２の装置１２０は第１の装置１１０とのリンク１５４上でスレーブのままである。この例では、第１の装置１１０は、パケットを送信するタイミングの制御においてBluetoothマスタのままであってもよい。そのため、第２の装置１２０が第１の装置にパケットを中継すると効率が低下する可能性がある。そのような非効率性を補償するために、特別なスケジューリングをパケットリレーに用いてもよい。
【００３８】
図３Ｄに示されるように、第１の装置１１０および第２の装置１２０の各々は、第１段階ロールスイッチは完了しているが第２段階ロールスイッチは完了していない状態でパケットを送受信するための特別なタイミングスケジュール１１６、１２６をそれぞれ格納している。タイミングスケジュール１１６、１２６は、たとえば、各装置１１０、１２０のBluetoothコントローラ内にプログラムされてもよい。タイミングスケジュール１１６、１２６は製造時に予め設定されてもよく、および／またはホスト装置１０５を通じて提供されるソフトウェアもしくはファームウェア更新によって更新されてもよい。タイミングスケジュール１１６、１２６は、第２の装置１２０がパケットを送信すべき時、および第１の装置１１０がそれらの受信を予期すべき時を指示することによって、第１および第２の装置１１０、１２０間の結束性を提供してもよい。例として、タイミングスケジュール１１６、１２６は、新たなマスタの役割の第２の装置１２０が２ｍｓごとにパケットを送信するべきであること、および新たなスレーブの役割の第１の装置１１０が２ｍｓごとにパケットをリッスンすべきであることを指示してもよい。これは例にすぎず、任意のタイミングスキームが可能であることを理解すべきである。
【００３９】
第２の装置１２０は、第１および第２の装置における音声バッファ１１４、１２４が正常範囲にキャッチアップするまで、特別なタイミングスケジュール１１６、１２６に従ってホスト装置１０５から第１の装置１１０にパケットを中継し続けてもよい。この時点の前に、オーディオ再生が第１段階ロールスイッチ中に起こり続けていたためにバッファは排出されている。たとえば、第１および第２の装置の音声バッファ１１４、１２４は、約１５０ｍｓ〜２５０ｍｓまたはそれ以上もしくはそれ以下の再生用音声を格納する範囲に入ってもよい。この時点で、第１および第２の装置１１０、１２０はロールスイッチの第２段階をトリガしてもよい。
【００４０】
図３Ｅはロールスイッチの第２段階を示しており、第２の装置１２０は第１の装置１１０と第２の装置１２０との間の通信リンク１５４上でマスタになる。たとえば、第２の装置１２０が第１の装置１１０にクロックオフセットを送信し、スイッチを実行する時間がスケジュールされ、スイッチが起こる。この段階の間、第２の装置１２０は、第１の装置１１０と第２の装置１２０との間の送信のタイミングの制御１２８を行なう。音声バッファが正常範囲に達したため、第２段階ロールスイッチ中に音声グリッチは聞こえないはずである。
【００４１】
図３Ｆにおいて、第１および第２の装置１１０、１２０はそれらの内部タイミングを前の設定に戻す。たとえば、前に増加させたＣＰＵクロックレート１３１、１４１を調整前のレベルに戻す。さらに、前に低下させたポーリングレート１３２、１４２をそれらの調整前のレベルに戻す。いくつかの例では、調整前のレベルは、装置がロールスイッチを受けていない時のデフォルトレベルまたは通常動作レベルであってもよい。
【００４２】
図４は、第１の装置１１０および第２の装置１２０の内部コンポーネントの例を示す。多数の内部コンポーネントが示されているが、より多いまたはより少ないコンポーネントが含まれてもよいことを理解すべきである。単なる例として、装置は、スピーカ、マイクロフォン等の、再生装置内に典型的に見られるコンポーネントを含んでもよい。装置は、たとえば、イヤホン、スピーカ、ディスプレイ等のワイヤレスアクセサリであってもよい。装置は、主に第１の装置１１０に関して以下に説明する。第２の装置１２０は、ある例では第１の装置１１０と同様または同一であってもよく、他の例では第２の装置１２０は異なる種類の装置であってもよい。これに加えて、またはこれに代えて、第２の装置１２０は異なる内部コンポーネントを有してもよい。
【００４３】
第１の装置１１０は、１つ以上のプロセッサ４１６、１つ以上のメモリ４１２、および他のコンポーネントを含んでもよい。たとえば、コンピューティングデバイス１１０は、１つ以上のセンサ４１８、無線ペアリングインターフェース４１９、およびバッテリ４１７を含んでもよい。
【００４４】
メモリ４１２は、１つ以上のプロセッサ４１６によって実行またはそうでなければ使用され得るデータ４１４命令４１５を含む、１つ以上のプロセッサ４１６がアクセス可能な情報を格納してもよい。たとえば、メモリ４１２は、コンピューティングデバイス可読媒体、または、揮発性メモリ、不揮発性メモリ、ならびに他の書込み可能メモリおよび読出し専用メモリなど、電子装置を用いて読出され得るデータを格納する他の媒体を含む、プロセッサがアクセス可能な情報を格納可能ないずれの種類であってもよい。単なる例として、メモリ４１２は高速ルックアップを提供するように構成されたスタティックランダムアクセスメモリ（ＳＲＡＭ）であってもよい。システムおよび方法は上記の異なる組合わせを含んでもよく、それによって、命令およびデータの異なる部分は異なる種類の媒体に格納される。
【００４５】
データ４１４は、命令４１５に従って１つ以上のプロセッサ４１６によって取出されてもよいし、格納されてもよいし、修正されてもよい。たとえば、データ４１４は、Bluetoothプロファイルなどの近距離無線通信プロファイルを含んでもよい。データ４１４はさらに、ホスト装置から受信したパケットを有する音声バッファなどの、バッファリングされたパケットを含んでもよい。特許請求の範囲に記載の主題はいずれの特定のデータ構造によっても限定されないが、データは、複数の異なるフィールドおよびレコード、ＸＭＬ文書またはフラットファイルを有するテーブルとしてリレーショナルデータベース内のコンピューティングデバイスレジスタに格納されてもよい。データはまた、任意のコンピューティングデバイス可読フォーマットでフォーマットされてもよい。
【００４６】
命令４１５は、１つ以上のプロセッサ４１６によって直接的に（機械コードなど）または間接的に（スクリプトなど）実行される任意の一組の命令であってもよい。たとえば、命令は、コンピューティングデバイス可読媒体上にコンピューティングデバイスコードとして格納されてもよい。その点に関して、「命令」および「プログラム」という用語は本明細書では同じ意味で用いられ得る。命令は、プロセッサによる直接処理のためのオブジェクトコードフォーマットで、または、要求に応じて解釈されるかもしくは予めコンパイルされる独立したソースコードモジュールのスクリプトもしくは集合を含むその他のコンピューティングデバイス言語で格納されてもよい。命令の機能、方法およびルーチンを以下により詳細に説明する。
【００４７】
１つ以上のプロセッサ４１６は、装置１１０自体内にハードワイヤードされたマイクロプロセッサ、論理回路（たとえば、論理ゲート、フリップフロップ等）であってもよいし、専用の特定用途向け集積回路（ＡＳＩＣ）であってもよい。１つ以上のプロセッサ４１６はハードワイヤード論理回路に限定されず、任意の市販の処理ユニット、またはフィールドプログラマブルゲートアレイ（ＦＰＧＡ）などの任意のハードウェアベースのプロセッサも含んでもよいことを理解すべきである。いくつかの例では、１つ以上のプロセッサ４１６は状態機械を含んでもよい。プロセッサ４１６は命令４１５を実行して、たとえば図５〜図６に関連して以下に説明するような方法を実行するように構成されてもよい。
【００４８】
プロセッサ４１６は、第１の装置１１０の動作のタイミングを制御する内部クロックを含んでもよい。たとえば、このクロックは、マスタ装置上のプロファイル状態の保存、またはスレーブ装置上のプロファイルの復元などの動作のタイミングを制御してもよい。
【００４９】
１つ以上のセンサ４１８は、ロールスイッチに関連する条件を検出するためのさまざまな機械センサまたは電気機械センサのうちのいずれかを含んでもよい。そのようなセンサは、たとえば、加速度計、ジャイロスコープ、スイッチ、光センサ、気圧計、音声センサ（たとえば、マイクロフォン）、振動センサ、熱センサ、無線周波数（ＲＦ）センサ等を含んでもよい。この点に関して、装置１１０は、装置１１０がそのペアリングされた装置とロールをスイッチすべきであることを示す条件を検出してもよい。一例として、センサは受信信号強度を検出してもよく、その受信信号強度をペアリングされた装置の受信信号強度と比較してもよい。装置１１０およびそのペアリングされた装置はしたがって、ロールをスイッチするか否かをネゴシエートしてもよい。別の例として、センサは、バッテリ寿命、信号品質、移動、電流バッファレベル等、その他のパラメータを検出してもよい。
【００５０】
近距離無線ペアリングインタフェース４１９を用いて、ペアリングされた第２の装置１２０などの他の装置、または音声パケットを提供する携帯電話などのホスト装置との接続を形成してもよい。この接続は、たとえば、Bluetooth接続またはその他の種類の無線ペアリングであってもよい。単なる例として、各接続はＡＣＬリンクを含んでもよい。
【００５１】
図４は、プロセッサ、メモリ、および装置１１０の他の要素を同一のブロック内にあるものとして機能的に示しているが、プロセッサおよびメモリは実際には同一の物理的ハウジング内に格納されてもされなくてもよい複数のプロセッサおよびメモリを含んでもよいことが当業者によって理解されるであろう。たとえば、メモリ４１２は、コンピューティングデバイス１１０の筐体とは異なる筐体内に位置する揮発性メモリまたは他の種類のメモリであってもよい。さらに、上述のさまざまなコンポーネントは１つ以上の電子装置の一部であってもよい。
【００５２】
この例では、第２の装置１２０は装置１１０と同様の内部アーキテクチャを有する。たとえば、第２の装置１２０は、１つ以上のプロセッサ４２６によって実行され得るデータ４２４および命令４２５を格納するメモリ４２２を含む。第２の装置１２０はさらに、バッテリ４２７、センサ４２８、Bluetoothインターフェースなどの通信インターフェース４２９等を含む。第２の装置１２０は第１の装置１１０の命令４１とは異なる１組の命令４２５を実行するものとして示されているが、両装置１１０、１２０はマスタからスレーブへの、およびスレーブからマスタへのロールスイッチを実行するようにプログラムされてもよいことを理解すべきである。
【００５３】
上述のように、命令４１５および４２５が実行されて第１の装置１１０と第２の装置１２０との間の２段階のロールスイッチ動作が行なわれてもよい。両装置は、それらの内部ＣＰＵクロックレートを増加させる。第１の装置１１０は第２の装置１２０にロールスイッチ情報を送信する。たとえば、第１の装置１１０は、その無線通信プロファイルおよびそのバッファ内容を第２の装置１２０に送信してもよい。第１の装置１１０はホストからのパケットの受信を停止し、第２の装置１２０はホストとの通信リンクを確立する。第２の装置１２０は、第２の装置１２０が新たなマスタであることをホストに通知してパケットの受信を開始し、第２の装置１２０は当該パケットを特別なタイミングスケジュールに従って第１の装置１１０に送信する。予め定められたバッファレベルに達すると、装置は第２段階ロールスイッチを実行してもよく、装置間の接続を介して第１の装置１１０がスレーブになり第２の装置１２０がマスタになる。そして装置はそれらのクロックレートを前の設定に戻す。
【００５４】
図５は、２段階のロールスイッチの前、最中、および後の装置間の通信を示す例示的なタイミング図を提供する。ホスト装置は、最初にマスタの役割を果たす第１の装置１１０に第１の近距離無線接続を介してパケットを送信する。第１および第２の装置は無線でペアリングされ、第１の装置１１０は、第１の装置１１０と第２の装置１２０との間の第２の近距離無線接続を介して受信パケットを中継する。これは装置の通常動作またはデフォルト動作であってもよい。図示されるタイミングは例にすぎず、他の例では動作は重複してもよいし異なるシーケンスで起こってもよいことを理解すべきである。
【００５５】
ロールスイッチを実行する場合、第１および第２の装置はそれらの内部ＣＰＵクロックを高速化し、第１の装置は第２の装置にロールスイッチ情報を送信する。そのようなロールスイッチ情報は、無線通信プロファイル、バッファ内容等を含んでもよい。第１の装置１１０は通常時と同様に、そのようなロールスイッチ情報を送信しながら、ホスト装置１０５からパケットを受信し続けてもよい。
【００５６】
ロールスイッチ情報を送信した後、装置はロールスイッチの第１段階を実行してもよい。この段階では、第１の装置がパケットの受信を停止する。ホスト１０５と第１の装置１１０との間の通信リンクが切断され、第２の装置１２０がホスト１０５との新たな通信リンクを確立する。第２の装置１２０はこの新たな通信リンクを用いて、第２の装置１２０が新たなマスタであることをホスト１０５に通知してもよい。
【００５７】
第２の装置１２０はしたがって、ホスト１０５からパケットを直接受信し始めてもよい。第１段階ロールスイッチの後、第２の装置は、ホスト１０５からのパケットをリッスンし、かつ第１の装置１１０からのパケットをリッスンするように構成され続けるという点で、ホストおよび第１の装置の両方に対してBluetoothスレーブである。これを克服するために、第２の装置１２０は、ホスト１０５から受信したパケットを特別なスケジュールに従って第１の装置１１０に中継する。そのような特別なスケジュールは、第１および第２の装置１１０、１２０の各々の通信コントローラに格納されてもよい。
【００５８】
第１および第２の装置１１０、１２０は、受信した音声パケットをバッファリングし続ける。バッファが予め定められたレベルに達すると、第２段階ロールスイッチが実行されてもよい。予め定められたレベルは、たとえば、１００ｍｓの再生用のデータ、３００ｍｓの再生用のデータ等、再生用のデータ量であってもよい。他の例では、データの量はビットまたはその他の単位で測定されてもよい。
【００５９】
第２段階ロールスイッチの間、第２の装置は、第１の装置と第２の装置との間の通信リンク上でBluetoothマスタになる。そのため、第２の装置１１０は第１の装置１１０からタイミング制御を引継ぐ。第２段階ロールスイッチが完了すると、装置はそれらのＣＰＵクロックをそれらのロールスイッチ前の設定に戻す。
【００６０】
図６は、第１のワイヤレスアクセサリと第２のワイヤレスアクセサリとの間の２段階のロールスイッチの例示的な方法６００を示すフロー図である。動作は特定の順序で図示および説明するが、順序は変更されてもよく、動作は追加または省略されてもよいことを理解すべきである。
【００６１】
ブロック６０５において、第１のアクセサリは第１の通信リンク上でホスト装置から情報を受信する。たとえば、第１のアクセサリは第１のＡＣＬリンク上でホスト装置から音声パケットを受信してもよい。第１のアクセサリは、マスタとして機能しており、受信した情報を第２のＡＣＬリンクの第２のアクセサリに中継する（ブロック６１０）。ブロック６０５および６１０は、ブロック６１５においてロールスイッチが必要であるまたは有益であると判定されるまで繰返されてもよい。
【００６２】
ロールスイッチを実行する場合、第１および第２のアクセサリはブロック６２０においてそれらの内部ＣＰＵクロックを高速化する。アクセサリはさらに、それらのポーリングレートを低下させてもよい。
【００６３】
ブロック６２５において、第１のアクセサリは第２のアクセサリにロールスイッチ情報を送信する。そのようなロールスイッチ情報は、Bluetoothプロファイル、バッファ内容、または第２のアクセサリがマスタとして機能してホスト装置からパケットを直接受信するために必要とし得るその他の情報を含んでもよい。第２のアクセサリはそのような情報を用いて、たとえば、そのBluetoothプロファイルの再構築、そのバッファの更新等を行なう。
【００６４】
ブロック６３０において、第１のアクセサリはパケットの受信を停止し、第２のアクセサリはホストとのリンクを確立する。たとえば、第１のアクセサリは第１のＡＣＬリンクを放棄してもよく、第２のアクセサリはホストとの新たなＡＣＬリンクを確立してもよい。そして第２のアクセサリはブロック６３５において、ホストからパケットを直接受信してそのようなパケットを第１のアクセサリに中継し始めてもよい。この時点では第２の装置はロールスイッチの第１段階しか完了していないので、第２の装置は第２のＡＣＬリンク上で第１の装置に対してBluetoothスレーブのままである。たとえば、第１のアクセサリは第２のＡＣＬリンク上のBluetooth送信のタイミングを管理し続けているため、第２の装置はいつリレーパケットを送信すべきかが分からない。したがって、第１および第２の装置は、リレーパケットを送受信するための予め定められたスケジュールを用いる。
【００６５】
第２の装置は、ブロック６４０においてバッファ閾値に達するまで、パケットを受信して当該パケットをスケジュールに従って第１の装置に中継し続けてもよい。たとえば、閾値は、予め定められた再生用のデータ量であってもよい。そのような量は、再生が知覚できるほど遅延されないように設定され得る。バッファが閾値に達すると、装置は第２段階ロールスイッチを実行し、第２のアクセサリは第２のＡＣＬリンク上でタイミング制御を引継ぐ（ブロック６４５）。第１および第２のアクセサリはしたがって、ロールスイッチ全体を完了すると、それらの前のクロック速度およびポーリングレートに戻ってもよい。
【００６６】
上述のシステムおよび方法は、シームレスなロールスイッチを提供するという点で有利である。たとえば、ロールスイッチ手順は、ユーザが音声グリッチをまったく検出せずに実行され得る。そのため、ロールスイッチは、ホストとマスタとの間の高い信号強度接続を維持するために、または装置のバッテリ寿命を延ばすために、またはユーザ体験を犠牲にすることなくその他の理由で、実行され得る。
【００６７】
特に記載のない限り、上述の代替例は相互に排他的ではなく、固有の利点を達成するためにさまざまな組合わせで実現され得る。上記に述べた特徴のこれらのおよび他の変形および組合わせは、特許請求の範囲によって規定される主題から逸脱することなく利用可能であるため、実施形態の上述の説明は、特許請求の範囲によって規定される主題の限定としてではなく例示として解釈されるべきである。また、本明細書に記載される例の提供、ならびに「など」および「含む」などとして表現されている節は、特許請求の範囲の主題を特定の例に限定するものとして解釈されるべきではない。むしろ、これらの例は多くの可能な実施形態のうちの１つのみを例示することを意図している。さらに、異なる図面における同一の参照番号は同一または同様の要素を特定し得る。
【図１】
2021524210.tif 000003
【図２】
2021524210.tif 000004
【図３Ａ】
2021524210.tif 000005
【図３Ｂ】
2021524210.tif 000006
【図３Ｃ】
2021524210.tif 000007
【図３Ｄ】
2021524210.tif 000008
【図３Ｅ】
2021524210.tif 000009
【図３Ｆ】
2021524210.tif 000010
【図４】
2021524210.tif 000011
【図５】
2021524210.tif 000012
【図６】
2021524210.tif 000013
【手続補正書】
【提出日】令和2年11月24日(2020.11.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マスタとして動作する第１の装置とスレーブとして動作する第２の装置との間のロールスイッチを実行するための方法であって、前記方法は、
前記第１の装置が、ホスト装置からパケットを受信することと、
受信した前記パケットを前記第１の装置から前記第２の装置に送ることと、
前記第１および第２の装置において第１段階ロールスイッチを実行することとを備え、前記第１段階ロールスイッチは、
前記第２の装置と前記ホスト装置との間に通信リンクを確立することと、
前記第２の装置が新たなマスタとして動作していることを前記ホスト装置に通知することとを備え、前記方法はさらに、
前記第２の装置が、前記ホスト装置からパケットを受信することと、
受信した前記パケットを予め設定されたスケジュールに従って前記第２の装置から前記第１の装置に送ることと、
前記第１の装置および前記第２の装置の受信した前記パケットの音声バッファが予め定められたレベルに達すると、前記第１および第２の装置において第２段階ロールスイッチを実行することとを備え、前記第２段階ロールスイッチは、前記第１の装置から前記第２の装置に、新たなマスタとしての前記第２の装置から新たなスレーブとしての前記第１の装置にパケットを送信するタイミングの制御を渡すことを備える、方法。
【請求項２】
前記第１段階ロールスイッチの前に、前記第１の装置および前記第２の装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させることと、
前記第２段階ロールスイッチの後に、前記第１および第２の装置における前記ＣＰＵクロックレートを低下させることとをさらに備える、請求項１に記載の方法。
【請求項３】
前記ＣＰＵクロックレートを増加させることは、前記ＣＰＵクロックレートを最大レート設定に設定することを備える、請求項２に記載の方法。
【請求項４】
前記第１段階ロールスイッチの前に前記第１の装置が、マスタの役割の前記第１の装置がスレーブの役割の前記第２の装置にパケットを送信するポーリングレートを低下させることと、
前記第２段階ロールスイッチの後に、新たなマスタの役割の前記第２の装置が新たなスレーブの役割の前記第１の装置にパケットを送信する前記ポーリングレートを増加させることとをさらに備える、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
前記第１段階ロールスイッチの前または最中に前記第１の装置が、前記ホスト装置からパケットを受信し続けながら前記第２の装置にロールスイッチ情報を送信することをさらに備える、請求項１〜４のいずれか１項に記載の方法。
【請求項６】
前記予め設定されたスケジュールは、前記第１の装置のコントローラおよび前記第２の装置のコントローラ内にプログラムされる、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記音声バッファの前記予め定められたレベルは１００〜２５０ｍｓである、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記第２段階ロールスイッチはBluetoothロールスイッチである、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記第１および第２の装置は音声受信装置であり、特にイヤホンである、請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
システムであって、
第１の装置と、
前記第１の装置と無線でペアリングするように適合された第２の装置とを備え、
前記第１の装置および第２の装置は２段階のロールスイッチ動作を実行するように構成され、前記２段階のロールスイッチ動作は、
前記第１の装置が、ホスト装置からパケットを受信することと、
受信した前記パケットを前記第１の装置から前記第２の装置に送ることと、
前記第１および第２の装置において第１段階ロールスイッチを実行することとを備え、前記第１段階ロールスイッチは、
前記第２の装置と前記ホスト装置との間に通信リンクを確立することと、
前記第２の装置が新たなマスタとして動作していることを前記ホスト装置に通知することとを備え、前記２段階のロールスイッチ動作はさらに、
前記第２の装置が、前記ホスト装置からパケットを受信することと、
受信した前記パケットを予め設定されたスケジュールに従って前記第２の装置から前記第１の装置に送ることと、
前記第１の装置および前記第２の装置の受信した前記パケットの音声バッファが予め定められたレベルに達すると、前記第１および第２の装置において第２段階ロールスイッチを実行することとを備え、前記第２段階ロールスイッチは、前記第１の装置から前記第２の装置に、新たなマスタとしての前記第２の装置から新たなスレーブとしての前記第１の装置にパケットを送信するタイミングの制御を渡すことを備える、システム。
【請求項１１】
前記第１および第２の装置はさらに、
前記第１段階ロールスイッチの前に、前記第１の装置および前記第２の装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させ、
前記第２段階ロールスイッチの後に、前記第１および第２の装置における前記ＣＰＵクロックレートを低下させるように構成される、請求項１０に記載のシステム。
【請求項１２】
前記ＣＰＵクロックレートを増加させることは、前記ＣＰＵクロックレートを最大レート設定に設定することを備える、請求項１１に記載のシステム。
【請求項１３】
前記第１および第２の装置はさらに、
前記第１段階ロールスイッチの前に前記第１の装置が、マスタの役割の前記第１の装置がスレーブの役割の前記第２の装置にパケットを送信するポーリングレートを低下させ、
前記第２段階ロールスイッチの後に、新たなマスタの役割の前記第２の装置が新たなスレーブの役割の前記第１の装置にパケットを送信する前記ポーリングレートを増加させるように構成される、請求項１０〜１２のいずれか１項に記載のシステム。
【請求項１４】
前記第１および第２の装置はさらに、
前記第１段階ロールスイッチの前または最中に前記第１の装置が、前記ホスト装置からパケットを受信し続けながら前記第２の装置にロールスイッチ情報を送信するように構成される、請求項１０〜１３のいずれか１項に記載のシステム。
【請求項１５】
前記予め設定されたスケジュールは、前記第１の装置のコントローラおよび前記第２の装置のコントローラ内にプログラムされる、請求項１０〜１４のいずれか１項に記載のシステム。
【請求項１６】
前記音声バッファの前記予め定められたレベルは１００〜２５０ｍｓである、請求項１０〜１５のいずれか１項に記載のシステム。
【請求項１７】
前記第１および第２の装置は音声受信装置であり、特にイヤホンである、請求項１０〜１６のいずれか１項に記載のシステム。
【請求項１８】
前記第１および第２の装置の各々は、
受信した音声パケットを一時的に格納するように適合された音声バッファと、
前記音声バッファに一時的に格納されている前記音声パケットを再生するように適合されたスピーカとを備える、請求項１０〜１７のいずれか１項に記載のシステム。
【請求項１９】
システムであって、
マスタの役割およびスレーブの役割で動作するように適合された第１の音声受信装置と、
マスタの役割およびスレーブの役割で動作するように適合された第２の音声受信装置とを備え、
前記第１および第２の音声受信装置の各々は、
無線接続を介して音声パケットを受信するように適合された無線通信インターフェースと、
受信した前記音声パケットを一時的に格納するように適合された音声バッファと、
前記音声バッファに一時的に格納されている前記音声パケットを再生するように適合されたスピーカと、
前記無線通信インターフェースと通信するプロセッサとを備え、前記プロセッサは２段階のロールスイッチ動作を実行するように構成され、前記２段階のロールスイッチ動作は、
前記第１の音声受信装置が、ホスト装置からパケットを受信することと、
受信した前記パケットを前記第１の音声受信装置から前記第２の音声受信装置に送ることと、
前記第１および第２の音声受信装置において第１段階ロールスイッチを実行することとを備え、前記第１段階ロールスイッチは、
前記第２の音声受信装置と前記ホスト装置との間に通信リンクを確立することと、
前記第２の音声受信装置が新たなマスタとして動作していることを前記ホスト装置に通知することとを備え、前記２段階のロールスイッチ動作はさらに、
前記第２の音声受信装置が、前記ホスト装置からパケットを受信することと、
受信した前記パケットを予め設定されたスケジュールに従って前記第２の音声受信装置から前記第１の音声受信装置に送ることと、
前記第１の音声受信装置および前記第２の音声受信装置の音声バッファが予め定められたレベルに達すると、前記第１および第２の音声受信装置において第２段階ロールスイッチを実行することとを備え、前記第２段階ロールスイッチは、前記第１の音声受信装置から前記第２の音声受信装置に、新たなマスタとしての前記第２の音声受信装置から新たなスレーブとしての前記第１の音声受信装置にパケットを送信するタイミングの制御を渡すことを備える、システム。
【請求項２０】
前記第１および第２の音声受信装置はイヤホンである、請求項１９に記載のシステム。
【請求項２１】
前記第１および第２の音声受信装置はさらに、
前記第１段階ロールスイッチの前に、前記第１の音声受信装置および前記第２の音声受信装置の各々における中央処理装置（ＣＰＵ）クロックレートを増加させ、
前記第２段階ロールスイッチの後に、前記第１および第２の音声受信装置における前記ＣＰＵクロックレートを低下させるように構成される、請求項１９または２０に記載のシステム。
【請求項２２】
前記第１および第２の音声受信装置はさらに、前記ＣＰＵクロックレートを最大レート設定に設定することで前記ＣＰＵクロックレートを増加させるように構成される、請求項２１に記載のシステム。
【請求項２３】
前記第１および第２の音声受信装置はさらに、
前記第１段階ロールスイッチの前に前記第１の音声受信装置が、マスタの役割の前記第１の音声受信装置がスレーブの役割の前記第２の音声受信装置にパケットを送信するポーリングレートを低下させ、
前記第２段階ロールスイッチの後に、新たなマスタの役割の前記第２の音声受信装置が新たなスレーブの役割の前記第１の音声受信装置にパケットを送信する前記ポーリングレートを増加させるように構成される、請求項１９〜２２のいずれか１項に記載のシステム。
【請求項２４】
前記第１の音声受信装置はさらに、前記第１段階ロールスイッチの前または最中に、前記ホスト装置からパケットを受信し続けながら前記第２の音声受信装置にロールスイッチ情報を送信するように構成される、請求項１９〜２３のいずれか１項に記載のシステム。
【請求項２５】
前記第１および第２の音声受信装置の各々は、前記予め設定されたスケジュールを格納するメモリをさらに備える、請求項１９〜２４のいずれか１項に記載のシステム。
【請求項２６】
前記音声バッファの前記予め定められたレベルは１００〜２５０ｍｓである、請求項１９〜２５のいずれか１項に記載のシステム。
【国際調査報告】
2021524210.tif 000014
2021524210.tif 000015