(57)【特許請求の範囲】
【請求項１】
ＩＥＥＥ１３９４規格に準拠したバスを介してアイソクロナス伝送を行う電子機器であって、
バスを介して他の機器から送られたオーディオデータ、ＳＹＴ（シンクタイム）及び、サイクルタイムを受信する受信手段と、
前記受信手段が受信したＳＹＴを間引いて取得する取得手段と、
前記受信手段が受信したオーディオデータを一時的に記憶するバッファと、
前記取得手段が取得したＳＹＴ及び、前記受信手段が受信したサイクルタイムの比較結果に従って再生タイミングを生成し、前記バッファに記憶されたオーディオデータを再生する再生手段と、
バス上に発生したバスリセットを検出する検出手段と、を備え、
前記受信手段は、前記検出手段によりバスリセットが検出されると、通常時よりデータ量の多いオーディオデータ及び、間引かれたＳＹＴを受信し、
前記再生手段は、前記検出手段によりバスリセットが検出されると、前記受信手段が受信した間引かれたＳＹＴ及びサイクルタイムの比較結果に従って再生タイミングを生成し、前記バッファに記憶されたオーディオデータを再生する、
ことを特徴とする電子機器。
【請求項２】
ＩＥＥＥ１３９４規格に準拠したバスを介してアイソクロナス伝送を行う電子機器におけるデータ伝送方法であって、
バスを介して他の機器から送られたオーディオデータ、ＳＹＴ及び、サイクルタイムを受信する受信ステップと、
前記受信ステップにて受信されたＳＹＴを間引いて取得する取得ステップと、
前記受信ステップにて受信されたオーディオデータを所定のバッファに一時的に格納する格納ステップと、
前記取得ステップにて取得されたＳＹＴ及び、前記受信ステップにて受信されたサイクルタイムの比較結果に従って再生タイミングを生成し、前記格納ステップにてバッファに格納されたオーディオデータを再生する再生ステップと、
バス上に発生したバスリセットを検出する検出ステップと、を備え、
前記受信ステップは、前記検出ステップにてバスリセットが検出されると、通常時よりデータ量の多いオーディオデータ及び、間引かれたＳＹＴを受信し、
前記再生ステップは、前記検出ステップにてバスリセットが検出されると、前記受信ステップにて受信された間引かれたＳＹＴ及びサイクルタイムの比較結果に従って再生タイミングを生成し、前記格納ステップにてバッファに格納されたオーディオデータを再生する、
ことを特徴とするデータ伝送方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＩＥＥＥ１３９４バス等を介して伝送されたオーディオデータを受信して再生する電子機器に関し、特に、音切れの発生を適切に防止することのできる電子機器及びデータ伝送方法に関する。
【０００２】
【従来の技術】
近年、オーディオ機器及びビデオカメラ機器等の電子機器を相互に接続することのできるインタフェース規格として、ＩＥＥＥ（Institute of Electrical and Electronics Engineers）１３９４規格が知られている。このＩＥＥＥ１３９４規格は、データの伝送速度が速く、拡張性に富む等の特徴を有することから、多くの家庭用電子機器に採用されつつある。
そして、ＩＥＥＥ１３９４規格には、オーディオデータ等の伝送に適した「Audio and Music Data Transmission Protocol」（以下、「Ａ＆Ｍ」と略して記述する。）というプロトコルが規定されている。
例えば、ＩＥＥＥ１３９４バスを介して接続された２つの電子機器の間では、このＡ＆Ｍを用いて、リアルタイムにオーディオデータの伝送が行われる。この際、伝送されるオーディオデータがデジタルデータであるため、ノイズ等の影響を受けにくく、受信側の電子機器（オーディオ機器等）にて高音質の楽曲音を発することができる。
【０００３】
以下、このようなＩＥＥＥ１３９４バスを介して接続された電子機器間において行われるデータ伝送について図面を参照して説明する。
図３は、ノンブロッキング方式によるオーディオデータ伝送の様子を説明するための模式図であり、また、図４は、ブロッキング方式によるオーディオデータ伝送の様子を説明するための模式図である。
【０００４】
ノンブロッキング方式は、図３に示すように、送信側にて、１アイソクロナス（Isochronous）期間に得られたオーディオデータ毎にパケットが生成される。そして、各パケットにＣＩＰ（Common Isochronous Packet）ヘッダが付加され、ＩＥＥＥ１３９４バスを介して受信側に送られる。
一方、受信側は、パケットの抽出を行い、得られたオーディオデータに従って、オーディオ再生を行い、楽曲音を発する。
【０００５】
また、ブロッキング方式は、図４に示すように、送信側にて、決められた量のオーディオデータ毎にパケットが生成される。なお、１アイソクロナス期間に１パケット分のオーディオデータが得られなかった場合には、空のパケット（図中の「Ｅｍｐ」パケット）が生成される。そして同様に、各パケットにＣＩＰヘッダが付加され、ＩＥＥＥ１３９４バスを介して受信側に送られる。
一方の受信側は、同様にパケットの抽出を行い、得られたオーディオデータに従って、オーディオ再生を行って楽曲音を発する。
【０００６】
上述のオーディオデータの伝送は、両方式共に、時間同期がなされている。すなわち、図３及び図４に示す送信側の時間Ｔtxと受信側の時間Ｔrxとは、同期が取られている。具体的には、ＩＥＥＥ１３９４バス上におけるアイソクロナス・リソース・マネージャ（サイクルマスタ）からサイクルスタートパケットを受信し、そのパケットに含まれる時間情報（サイクルタイム）が強制的にセットされるため、時間Ｔtxと時間Ｔrxとの同期が保たれる。
【０００７】
また、Ａ＆ＭのＣＩＰヘッダには、ＳＹＴ（シンクタイム）が含まれている。このＳＹＴは、受信側におけるオーディオデータの再生タイミングを規定する時間データ（タイムスタンプ）である。
具体的にＳＹＴは、送信側にて、オーディオデータに同期して、一定間隔でサンプリングされた時間（図３，図４中のｔ0，ｔ1，ｔ2，・・・）に、それぞれ一定のディレイ（遅延時間△ｔ）が加算されて生成される。なお、このサンプリング間隔は、Ａ＆Ｍの規格書にて定義されている。
また、この遅延時間△ｔは、送信側にて入力されたオーディオデータが、受信側にて再生・出力されるまでの時間を示している。
【０００８】
これらのことから、ＳＹＴは、ＩＥＥＥ１３９４上においてオーディオデータを蓄えておくための総バッファ量を示すものとも言える。なお、バッファは、送信側と受信側とが協力して受け持つものであり、どちらか一方が受け持つものではない。
具体的には、送信側と受信側とがバッファを持ち、図５に示すように、それぞれのバッファのデータ量が推移して行く。なお、図５は、ノンブロッキング方式によるオーディオデータ伝送時における両バッファのデータ量の推移を示す模式図である。
【０００９】
【発明が解決しようとする課題】
ところで、ＩＥＥＥ１３９４バス上において、電子機器の電源投入・切断時、新たな電子機器の接続時、及び、電子機器の切り離し時に、バスリセットが発生する。このバスリセットが発生した場合では、一定時間、送信側からアイソクロナスでのデータ伝送ができなくなる。
そのため、Ａ＆Ｍの規格書では、ＩＥＥＥ１３９４にて発生するバスリセット（ショートバスリセット）を考慮した遅延時間（推奨値）が設定されている。
具体的には、ノンブロッキング方式において、遅延時間として「３５２μｓ」が設定され、ブロッキング方式において、オーディオサンプリング周波数Ｆsに依存した時間「（３０２＋Ｎ×１０００／Ｆs）μｓ」が設定されている。
【００１０】
このため、ショートバスリセットが発生しても、その分を考慮した量のデータがバッファに蓄積されているため、図６に示すように、音切れ等の発生を防止することができる。すなわち、図示するように、受信バッファのデータ量は、ショートバスリセットの発生と共に、急激に減少するが、その後、徐々に回復しながら正常値に復帰する。この減少から復帰までの期間をバッファリカバリー期間という。
【００１１】
しかしながら、このようなショートバスリセットが、１回又は、たまに発生する程度であれば、音切れの発生を防ぐことができるが、バッファリカバリー期間内に、連続して多発する場合には、音切れを生じてしまう場合があった。
すなわち、図７に示すように、バッファリカバリー期間内において、更に、ショートバスリセットが発生すると、受信バッファのデータ量が全て消費され、ある時点（バッファが空になったとき）にて、音切れが発生してしまう。
また、図７に示すバッファリカバリー期間は、図６のそれと比較して長くなり、その期間において、バスリセットに対する耐性が低下する。つまり、新たなバスリセットにより、更に、音切れが生じる割合が高くなる。
【００１２】
これは、Ａ＆Ｍにおいて、１アイソクロナス期間に伝送できるデータ量が少なく、ショートバスリセットの発生時に消費したバッファのデータが、元の適正量まで復帰するのに時間が掛かることに起因している。
【００１３】
この発明は、上記実状に鑑みてなされたもので、音切れの発生を適切に防止することのできる電子機器及びデータ伝送方法に関する。
【００１８】
【課題を解決するための手段】
上記目的を達成するため、本発明の第１の観点に係る電子機器は、
ＩＥＥＥ１３９４規格に準拠したバスを介してアイソクロナス伝送を行う電子機器であって、
バスを介して他の機器から送られたオーディオデータ、ＳＹＴ及び、サイクルタイムを受信する受信手段と、
前記受信手段が受信したＳＹＴを間引いて取得する取得手段と、
前記受信手段が受信したオーディオデータを一時的に記憶するバッファと、
前記取得手段が取得したＳＹＴ及び、前記受信手段が受信したサイクルタイムの比較結果に従って再生タイミングを生成し、前記バッファに記憶されたオーディオデータを再生する再生手段と、
バス上に発生したバスリセットを検出する検出手段と、を備え、
前記受信手段は、前記検出手段によりバスリセットが検出されると、通常時よりデータ量の多いオーディオデータ及び、間引かれたＳＹＴを受信し、
前記再生手段は、前記検出手段によりバスリセットが検出されると、前記受信手段が受信した間引かれたＳＹＴ及びサイクルタイムの比較結果に従って再生タイミングを生成し、前記バッファに記憶されたオーディオデータを再生する、
ことを特徴とする。
【００１９】
上記目的を達成するため、本発明の第２の観点に係るデータ伝送方法は、
ＩＥＥＥ１３９４規格に準拠したバスを介してアイソクロナス伝送を行う電子機器におけるデータ伝送方法であって、
バスを介して他の機器から送られたオーディオデータ、ＳＹＴ及び、サイクルタイムを受信する受信ステップと、
前記受信ステップにて受信されたＳＹＴを間引いて取得する取得ステップと、
前記受信ステップにて受信されたオーディオデータを所定のバッファに一時的に格納する格納ステップと、
前記取得ステップにて取得されたＳＹＴ及び、前記受信ステップにて受信されたサイクルタイムの比較結果に従って再生タイミングを生成し、前記格納ステップにてバッファに格納されたオーディオデータを再生する再生ステップと、
バス上に発生したバスリセットを検出する検出ステップと、を備え、
前記受信ステップは、前記検出ステップにてバスリセットが検出されると、通常時よりデータ量の多いオーディオデータ及び、間引かれたＳＹＴを受信し、
前記再生ステップは、前記検出ステップにてバスリセットが検出されると、前記受信ステップにて受信された間引かれたＳＹＴ及びサイクルタイムの比較結果に従って再生タイミングを生成し、前記格納ステップにてバッファに格納されたオーディオデータを再生する、
ことを特徴とする。
【００２４】
【発明の実施の形態】
本発明の実施の形態にかかる電子機器について、以下図面を参照して説明する。なお、この電子機器は、ＩＥＥＥ（Institute of Electrical and Electronics Engineers）１３９４バスを介して他の電子機器と接続され、他の電子機器からＩＥＥＥ１３９４バスを介して伝送されるオーディオデータを受信し、受信したオーディオデータを再生するオーディオ機器である。
【００２５】
図１は、この発明の実施の形態に適用される電子機器の構成（要部）の一例を示すブロック図である。この電子機器は、図示するように、ＣＩＰ処理部１と、ＦＩＦＯ２と、ＳＹＴ差分検出部３と、差分保持部４と、ＳＷ５と、ＦＩＦＯ残量監視部６と、ＦＩＦＯ制御部７と、ＳＷ制御部８と、サイクルタイム再生部９と、比較部１０と、オーディオクロック再生部１１と、バスリセット検出部１２とを含んで構成される。
【００２６】
ＣＩＰ（Common Isochronous Packet）処理部１は、図示せぬＩＥＥＥ１３９４バスを介して受信したアイソクロナスパケットデータからパケット抽出を行うことにより受信データ（オーディオデータ）を取得し、取得したオーディオデータをＦＩＦＯ２に供給する。
また、ＣＩＰ処理部１は、パケットデータに付加されていたＣＩＰヘッダからＳＹＴ（シンクタイム）を抜き出し、ＳＹＴ差分検出部３及びＳＷ５に供給する。
【００２７】
ＦＩＦＯ（First-In First-Out）２は、所定容量の先入れ先出し方式のバッファ等からなり、ＣＩＰ処理部１から供給された受信データ（オーディオデータ）を一時的に記憶する。
【００２８】
ＳＹＴ差分検出部３は、ＣＩＰ処理部１から順次供給されるＳＹＴに従って、ＳＹＴの差分である△ＳＹＴを検出する。具体的にＳＹＴ差分検出部３は、数式１に示すように、△ＳＹＴを求める。
【００２９】
【数１】
△ＳＹＴ＝（ＳＹＴｎ）−（ＳＹＴｎ−１）
【００３０】
ＳＹＴ差分検出部３は、検出した△ＳＹＴ及び、その時点のＳＹＴであるＳＹＴｎを差分保持部４に順次供給する。
【００３１】
差分保持部４は、バスリセット検出部１２から供給される検出信号に応答して、ＳＹＴ差分検出部３から供給されるその時点の△ＳＹＴ等を保持すると共に、擬似的なＳＹＴであるＳＹＴｘを生成する。具体的に差分保持部４は、数式２に示すように、ＳＹＴｘを求める。
【００３２】
【数２】
ＳＹＴｘ＝ＳＹＴｎ＋（ｎ×△ＳＹＴ）
ｎ：１，２，３・・・
【００３３】
差分保持部４は、生成したＳＹＴｘをＳＷ５を介して比較部１０に供給する。
【００３４】
ＳＷ（スイッチ）５は、ＳＷ制御部８に制御され、比較部１０との接続を、ＣＩＰ処理部１又は、差分保持部４に切り換える。
【００３５】
ＦＩＦＯ残量監視部６は、ＦＩＦＯ２におけるオーディオデータの残量を監視する。例えば、ＦＩＦＯ残量監視部６は、バスリセット発生後に、オーディオデータの残量が正常値に復帰したことを検出すると、その旨を示す復帰信号をＳＷ制御部８に供給する。
【００３６】
ＦＩＦＯ制御部７は、オーディオクロック再生部１１から供給されるオーディオクロックに従って、ＦＩＦＯ２からオーディオデータを読み出し、図示せぬオーディオ再生部に供給する。そして、オーディオ再生部は、オーディオデータに従った楽曲音を発する。
【００３７】
ＳＷ制御部８は、ＳＷ５の接続を適宜切り換える。具体的にＳＷ制御部８は、バスリセット検出部１２から検出信号が供給されると、差分保持部４と比較部１０とが接続されるようにＳＷ５を制御する。また、ＦＩＦＯ残量監視部６から復帰信号が供給されると、ＣＩＰ処理部１と比較部１０とが接続されるようにＳＷ５を制御する。
【００３８】
サイクルタイム再生部９は、アイソクロナススタートパケットデータを検出すると、サイクルタイムをセットして、送信側と同期した計時を開始する。
【００３９】
比較部１０は、サイクルタイム再生部９が計時する時間（サイクルタイム）と、ＳＷ５を介して供給されるＳＹＴ又はＳＹＴｘ（擬似的なＳＹＴ）とを比較して、比較結果をオーディオクロック再生部１１に供給する。
【００４０】
オーディオクロック再生部１１は、比較部１０の比較結果に従って、オーディオクロックを生成し、ＦＩＦＯ制御部７等に供給する。
【００４１】
バスリセット検出部１２は、ＩＥＥＥ１３９４バス上に発生したバスリセット（ショートバスリセット）を検出すると、所定の検出信号を生成し、差分保持部４及びＳＷ制御部８に供給する。
【００４２】
以下、この発明の実施の形態にかかる電子機器の動作について、図面を参照して説明する。
従来、Ａ＆Ｍによるオーディオデータの伝送では、１アイソクロナス期間に送信できるオーディオデータのデータ量が決められていた。このデータ量は、タイムスタンプ（ＳＹＴ）のサンプリングに起因する。そして、１つのパケットには、１つのＳＹＴしか定義できない。このため、１アイソクロナス期間に送信できるデータ量が自ずと決定されてしまっていた。
具体的には、上述の図３に示したように、送信側にて、オーディオデータ４個に１つの割合で、ＳＹＴがサンプリングされる。このため、４個を超えるデータを１つのパケットにすると、ＳＹＴに関連するオーディオデータが２つ存在することになり、結果として、受信側において、ＳＹＴとオーディオデータとの関連付けができなくなり、オーディオデータの再生に支障を来すこととなる。
【００４３】
そこで、この発明の実施の形態にかかる電子機器は、図２に示すように、バスリセットが発生したときに、一時的にＳＹＴとオーディオデータの関連付けを中止し、その代わりに、オーディオデータを大量に伝送するものである。
すなわち、送信側は、バスリセットが発生すると、通常時より多いデータを１パケットとしたデータを伝送する。
【００４４】
一方、受信側の電子機器は、以下のようにオーディオデータを再生する。
まず、バスリセット検出部１２にてバスリセットが検出されると、差分保持部４等に検出信号が供給される。差分保持部４は、ＳＹＴの差分等を用いた上述の数式２により、擬似的なＳＹＴであるＳＹＴｘを生成する。
また同時に、検出信号が供給されたＳＷ制御部８により、ＳＷ５が制御され、差分保持部４と比較部１０とが接続される。そして、差分保持部４により生成されるＳＹＴｘが比較部１０に供給され、アイソクロナススタートパケットデータを基準として計時されたサイクルタイムとの比較が行われる。この比較結果がオーディオクロック再生部１１に供給されることにより、オーディオデータの再生が行われる。
【００４５】
そして、ＦＩＦＯ２内のオーディオデータ量が正常値に復帰し、ＦＩＦＯ残量監視部６により復帰信号がＳＷ制御部８に供給されると、再度、ＳＷ制御部８によってＳＷ５が制御され、ＣＩＰ処理部１と比較部１０とが接続され、通常の再生動作に戻る。
なお、擬似的なＳＹＴであるＳＹＴｘによる再生動作は、ＦＩＦＯ２内の残量が正常値に復帰した後、最初のＳＹＴが供給されるまで続けられる。
【００４６】
このように、バスリセット発生後に、大量の（通常時より多い）オーディオデータが伝送され、速やかにＦＩＦＯ２内のデータ量が正常値に復帰する。その際、差分保持部４にて擬似的に生成されるＳＹＴ（ＳＹＴｘ）により、オーディオデータの再生タイミングが作られるため、オーディオデータの再生に支障を来すことがない。
つまり、バッファリカバリー期間を短くすることができ、ある程度バスリセットが連続して発生したとしても、ＦＩＦＯ２内のオーディオデータが全て消費されてしまう確率が減少することとなる。
この結果、受信側の電子機器において、音切れの発生を適切に防止することができる。
【００４７】
上記の実施の形態では、差分保持部４にて生成した擬似的なＳＹＴ（ＳＹＴｘ）により、オーディオデータの再生タイミングを作り再生したが、送信側から送られるＳＹＴを間引いて取得し、この間引いたＳＹＴを用いてサイクルタイムとの比較等を行いオーディオデータを再生してもよい。
以下、この発明の他の実施の形態に係る電子機器等の動作について簡単に説明する。
【００４８】
バスリセットが発生していない通常時において、送信側は、Ａ＆Ｍの規格に従って、ＳＹＴのサンプリング、オーディオデータの送信を行う。
そして、受信側では、受信したパケットから得られるＳＹＴを間引いて、１つおきに出力し、サイクルタイムとの比較及び、受信データとの関連付けを行い、オーディオデータの再生を行う。
【００４９】
一方、バスリセットが発生すると、送信側は、通常の２倍のデータを送信する。このとき、送信側は、バスリセット発生直後から、ＳＹＴを１つおきにサンプリングし、間引いたＳＹＴをパケットのＣＩＰヘッダに挿入する。
そして、受信側では、自己が行うＳＹＴの間引きを停止して、送信側からＳＹＴを１つおきに間引いて挿入されたＳＹＴを取得し、そのまま、サイクルタイムとの比較及び、受信データとの関連付けを行い、オーディオ信号の再生を行う。
【００５０】
この場合も、バッファリカバリー期間を短くすることができ、ある程度バスリセットが連続して発生したとしても、バッファ内のオーディオデータが全て消費されてしまう確率が減少することとなる。
この結果、受信側の電子機器において、音切れの発生を適切に防止することができる。
【００５１】
また、上記の実施の形態では、バスリセット発生後に、擬似的なＳＹＴや間引いたＳＹＴを用いることにより、データ伝送量を増加させたが、ノンブロッキング方式におけるデータ伝送を一時的にブロッキング方式におけるデータ伝送に切り換えることにより、１パケットで伝送できるデータ量を増加させてもよい。
すなわち、送信側及び受信側が、ノンブロッキング方式によりデータ伝送を行っている状態において、バスリセットの発生を検出すると、送信側及び受信側の双方が、ブロッキング方式におけるデータ伝送に切り換える。
【００５２】
上述の図３及び図４を比較すると明らかなように、ブロッキング方式の方がノンブロッキング方式に比べて、１パケットにて伝送できるデータ量が多い。このため、バッファリカバリー期間を短くすることができ、ある程度バスリセットが連続して発生したとしても、バッファ内のオーディオデータが全て消費されてしまう確率が減少することとなる。
この結果、受信側の電子機器において、音切れの発生を適切に防止することができる。
【００５３】
上記の実施の形態では、擬似的なＳＹＴを用いてデータ伝送量を増加させたり、間引いたＳＹＴを用いてデータ伝送量を増加させたり、また、ブロッキング方式に切り換えてデータ伝送量を増加させることにより、バッファリカバリー期間を短くしたが、これらを個別に行うのでなく、任意に組み合わせて行ってもよい。
【００５４】
上記の実施の形態では、オーディオデータを伝送する場合を一例として説明したが、伝送するデータは、オーディオデータに限られず任意である。例えば、動画データを伝送する場合にも適宜適用可能である。
【００５５】
さらに、上記の実施の形態においては、ＩＥＥＥ１３９４規格のバスを一例として説明したが、電子機器を接続するバスは、ＩＥＥＥ１３９４バスに限られるものではなく、バスリセットの発生する所定のバスにおいても適宜適用可能である。
【００５６】
【発明の効果】
以上説明したように、本発明によれば、音切れの発生を適切に防止することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る電子機器の構成（要部）の一例を示すブロック図である。
【図２】データ伝送における正常時とバスリセット発生時とを比較して説明するための模式図である。
【図３】ノンブロッキング方式によるオーディオデータ伝送の様子を説明するための模式図である。
【図４】ブロッキング方式によるオーディオデータ伝送の様子を説明するための模式図である。
【図５】ノンブロッキング方式によるオーディオデータの伝送時における両バッファのデータ量の推移を示す模式図である。
【図６】単発のバスリセット発生時における両バッファのデータ量の推移を示す模式図である。
【図７】連続するバスリセット発生時における両バッファのデータ量の推移を示す模式図である。
【符号の説明】
１    ＣＩＰ処理部
２    ＦＩＦＯ
３    ＳＹＴ差分検出部
４    差分保持部
５    ＳＷ
６    ＦＩＦＯ残量監視部
７    ＦＩＦＯ制御部
８    ＳＷ制御部
９    サイクルタイム再生部
１０  比較部
１１  オーディオクロック再生部
１２  バスリセット検出部
【図１】
0003757125.tif 000002
【図２】
0003757125.tif 000003
【図３】
0003757125.tif 000004
【図４】
0003757125.tif 000005
【図５】
0003757125.tif 000006
【図６】
0003757125.tif 000007
【図７】
0003757125.tif 000008