JP2006227110A - オーディオ入出力制御装置及びオーディオ入出力制御方法 - Google Patents

オーディオ入出力制御装置及びオーディオ入出力制御方法 Download PDF

Info

Publication number
JP2006227110A
JP2006227110A JP2005038102A JP2005038102A JP2006227110A JP 2006227110 A JP2006227110 A JP 2006227110A JP 2005038102 A JP2005038102 A JP 2005038102A JP 2005038102 A JP2005038102 A JP 2005038102A JP 2006227110 A JP2006227110 A JP 2006227110A
Authority
JP
Japan
Prior art keywords
address
read address
read
audio data
output control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005038102A
Other languages
English (en)
Other versions
JP2006227110A5 (ja
JP4406838B2 (ja
Inventor
Shinya Okada
慎也 岡田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2005038102A priority Critical patent/JP4406838B2/ja
Priority to US11/352,884 priority patent/US7711444B2/en
Priority to CN200610007653A priority patent/CN100583274C/zh
Publication of JP2006227110A publication Critical patent/JP2006227110A/ja
Publication of JP2006227110A5 publication Critical patent/JP2006227110A5/ja
Application granted granted Critical
Publication of JP4406838B2 publication Critical patent/JP4406838B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N5/926Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation
    • H04N5/9265Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation with processing of the sound signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】
本発明は、オーディオデータの信号処理量を低減しつつ当該オーディオデータの品位を保持できるようにする。
【解決手段】
本発明は、オーディオデータD1のリングバッファ10に対する書込速度と、当該リングバッファ10に蓄積されたオーディオデータD1を一定速度で読み出す際の読出速度との速度差を算出し、当該速度差に応じて読出アドレスを強制的に変更する際、変更前の読出アドレスに対応したオーディオデータD1の信号レベルと、変更後の読出アドレスに対応したオーディオデータD1の信号レベルとの間で信号レベル変化が少ないアドレス位置を変更後の読出アドレスとして決定することにより、読出アドレスを強制的に変更するだけなので信号処理量を大幅に低減し得ると共に、アドレス変更前とアドレス変更後の信号レベルの変化が少ないためオーディオデータD1の品位を保つことができる。
【選択図】 図8

Description

本発明は、オーディオ入出力制御装置及びオーディオ入出力制御方法に関し、例えば放送局で用いられる業務用のビデオテープレコーダに適用して好適なものである。
従来、業務用のビデオテープレコーダにおいては、収録した通常の1時間番組にコマーシャルを入れて55分間の番組として放送したいときや、1時間5分の番組として放送したいといった要求に応えることができるようになされている。
このような場合、ビデオテープレコーダでは当該番組のビデオに関しては人間に不自然な印象を与えない範囲でフレーム間引きやフレーム補間等によって55分間又は1時間5分となるような変速再生処理を行うようになされている(例えば、特許文献1参照)。
しかしながらビデオテープレコーダでは、変速再生処理を行う場合、オーディオに関しては連続性が保たれないのでデータ間引きやデータ補間を行うことができず、ビデオの変速再生速度に合わせてオーディオ出力した場合には音程が変化しユーザに不自然な印象を与えてしまう。
このような場合に対応するべくビデオテープレコーダではいわゆるプログラムプレイと呼ばれる機能が設けられている。このプログラムプレイとは、番組のビデオに関してフレーム間引きやフレーム補間を行うことに対して、オーディオの連続性を保ったまま音程を変化させないようにするための調整機能である。
特開2000-23105公報
ところでかかる構成のビデオテープレコーダにおいては、プログラムプレイ機能を動作させる場合にオーディオの連続性を保ったまま音程を変化させないようにするためには膨大な信号処理が必要となり、通常再生の場合に比べてオーディオデータの品位を保ち難いという問題があった。
本発明は以上の点を考慮してなされたもので、オーディオデータの信号処理量を低減しかつ当該オーディオデータの品位を保持し得るオーディオ入出力制御装置及びオーディオ入出力制御方法を提案しようとするものである。
かかる課題を解決するため本発明においては、外部から入力するオーディオデータのメモリに対する書込速度と、当該メモリに蓄積されたオーディオデータを一定速度で読み出す際の読出速度との速度差を算出し、当該速度差に応じて読出アドレスを強制的に変更する際、変更前の読出アドレスに対応したオーディオデータの信号レベルと、変更後の読出アドレスに対応したオーディオデータの信号レベルとの間で信号レベル変化が少ないアドレス位置を変更後の読出アドレスとして決定するようにしたことにより、速度差に応じて読出アドレスを強制的に変更するだけなので信号処理量を大幅に低減し得ると共に、オーディオデータそのものを変化させることなく読出アドレスの変更前と変更後における信号レベルの変化を少なく抑えることができるためオーディオデータの品位を保持することができる。
本発明によれば、速度差に応じて読出アドレスを強制的に変更するだけなので信号処理量を大幅に低減し得ると共に、オーディオデータそのものを変化させることなく読出アドレスの変更前と変更後における信号レベルの変化を少なく抑えることができるためオーディオデータの品位を保つことができ、かくしてオーディオデータの信号処理量を低減しつつ当該オーディオデータの品位を保持し得るオーディオ入出力制御装置及びオーディオ入出力制御方法を実現することができる。
以下、図面について、本発明の一実施の形態を詳述する。
(1)本発明の原理
本発明においては、ビデオテープレコーダでのプログラムプレイ機能を動作させる際に、ビデオテープから読み出した番組のビデオに関してはフレーム間引きやフレーム補間等による変速再生処理を行うにも拘らず、オーディオの音程を変えないためのオーディオ入出力制御装置の原理について最初に説明する。
図1に示すように、オーディオ入出力制御装置においてはオーディオデータが計2048スロットのリングバッファ10に例えば書込速度48[kHz]で書き込まれ、当該リングバッファ10から一定の読出速度48[kHz]で当該オーディオデータが読み出される標準再生処理の場合には、オーディオデータに基づいて出力されるオーディオの音程が変化することはない。
しかしながらオーディオ入出力制御装置では、ビデオテープレコーダのプログラムプレイ機能が動作した場合、ビデオの変速再生処理に合わせてオーディオデータを書込速度48[kHz]±5%でリングバッファ10に書き込み、当該リングバッファ10からは一定の48[kHz]で当該オーディオデータを読み出すようになされている。
ここでオーディオデータの読み出しを一定速度の48[kHz]で行うのは、当該読み出されたオーディオデータに基づいて出力されるオーディオの音程を変化させないようにするためである。
この場合のオーディオデータの読み出しは、当該オーディオデータの書込速度に±5%の変動があるため書込タイミングと読出タイミングとの間でずれが生じ、書込速度48[kHz]−5%のときは読出データが書込データをいずれ追い越すことになり、書込速度48[kHz]+5%のときは書込データが読出データをいずれ追い越すことになる。
図2に示すように、オーディオデータが書込速度48[kHz]−5%のときは読出速度48[kHz]が一定であるため書込速度よりも読出速度の方が速くなり、読出データD(p)が1周(2048スロット)進む間に書込データD(r)が1945スロット又は1946スロット(2048スロット×0.95=1945.6スロット)進むため、約20周(2048÷(2048−1945.6)=20)毎に読出データD(p)が書込データD(r)に追い付き追い越すことになる。
また図3に示すように、オーディオデータが書込速度48[kHz]+5%のときは読出速度48[kHz]が一定であるため読出速度よりも書込速度の方が速くなり、読出データD(p)が一周(2048スロット)進む間に書込データD(r)が2150スロット又は2151スロット(2048スロット×1.05=2150.4スロット)進むため、約20周(2048÷(2150.4−2048)=20周)毎に書込データD(r)が読出データD(p)に追い付き追い越すことになる。
このように読出データD(p)が書込データD(r)を追い越す場合や、書込データD(r)が読出データD(p)を追い越す場合には、その時点で読出データD(p)の連続性が維持できなくなって出力する音声にノイズが発生してしまう。
そこで図4に示すように、オーディオ入出力制御装置では例えば書込データD(r)が読出データD(p)を追い越す場合、リングバッファ10の他に256ステップすなわち256スロット分のクロスフェードバッファを別に用意しておき、書込データD(r)に追い付かれる前の読出データD(p)を当該クロスフェードバッファに256ステップ分だけコピーし、書込データD(r)に追い付かれたときから当該コピーした読出データD(p)を次第にフェードアウトさせながら書き込まれた直後の読出データD(p)をフェードインさせることにより、いわゆるクロスフェード処理を実行し得るようになされている。
すなわち図5(A)〜(D)に示すように書込アドレスが読出アドレスを追い越すときのクロスフェード処理では、オーディオ入出力制御装置は、まず図5(A)に示すように読出データD(p)が書込データD(r)に追い付かれる直前に当該読出データD(p)をクロスフェードバッファに256スロット分だけコピーする。
次にオーディオ入出力制御装置は、図5(B)に示すように、クロスフェードバッファから読み出す読出データD(p)の信号レベルを通常のレベルから徐々にフェードアウトしていくと共に、リングバッファ10から読み出す読出データD(p)の信号レベルを0から徐々にフェードインしていく。
ここでオーディオ入出力制御装置は、図5(C)に示すように、リングバッファ10において書込データD(r)が読出データD(p)を追い抜き、この時点以降、リングバッファのまだ読み出されていない読出データD(p)を書込データD(r)により上書きしていく(図中の斜線部分)。
このとき、リングバッファ10上の読出データD(p)は追い抜かれた箇所において不連続となるものの、この時点ではまだリングバッファ10から読み出した読出データD(p)の信号レベルが十分に小さく、また同時にクロスフェードバッファから読み出す連続した読出データD(p)の信号レベルが十分に大きいため、オーディオ入出力部はこのような不連続な読出データD(p)を読み出してもオーディオを聴取するユーザに違和感を与えることはない。
続いてオーディオ入出力制御装置は、これまでリングバッファ10から読み出していた読出データD(p)と連続したクロスフェードバッファの読出データD(p)を徐々にフェードアウトしながら、これまでリングバッファ10から読み出していた読出データD(p)と不連続となる、先ほど書き込まれた直後の書込データD(r)を「1周先の」読出データD(p)として読み出して徐々にフェードインしていくことによりクロスフェード処理を進めていき、クロスフェードバッファの読出データD(p)から徐々にリングバッファ10の「1周先の」読出データD(p)に切り換えていく。
その後オーディオ入出力制御装置は、図5(D)に示すようにクロスフェード処理を完了し、書込データD(r)により上書きされた直後の書込データD(r)を読出データD(p)として通常の信号レベルで読み出す。
この場合、オーディオ入出力制御装置ではクロスフェード処理によって書込データD(r)が読出データD(p)を追い越す際に生じるノイズを防止できるため、リングバッファ10に蓄積されたオーディオデータを1周分捨てる(データ間引きした)ことになるにも拘らず、ユーザの聴感的にはオーディオデータの連続性を維持し得るようになされている。
また図6(A)〜(D)に示すように読出アドレスが書込アドレスを追い越すときのクロスフェード処理では、オーディオ入出力制御装置は、まず図6(A)に示すように書込データD(r)が読出データD(p)に追い付かれる前に当該読出データD(p)をクロスフェードバッファに256スロット分だけコピーする。
次にオーディオ入出力制御装置は、図6(B)に示すように、リングバッファ10に書込データD(r)として書き込まれた直後の読出データD(p)を読み出して出力する際の信号レベルを通常のレベルから徐々にフェードアウトしていくと共に、既に1回読み出している読出データD(p)(図中斜線で示す)をクロスフェードバッファから2回目に読み出して出力する際の信号レベルを0から徐々にフェードインしていく。
このときクロスフェードバッファ上の読出データD(p)は「1周前の」ものであるため、これまでリングバッファ10から読み出していた読出データD(p)とは不連続であるものの、この時点ではまだクロスフェードバッファから読み出す読出データD(p)の信号レベルが十分に小さく、またこれまでリングバッファ10から読み出していた読出データD(p)に連続した当該リングバッファ10から読み出す読出データD(p)の信号レベルが十分に大きいため、オーディオ入出力部はこのような不連続な読出データD(p)を読み出してもオーディオを聴取するユーザに違和感を与えることはない。
続いてオーディオ入出力制御装置は、これまでリングバッファ10から読み出していた読出データD(p)と連続した読出データD(p)を徐々にフェードアウトしながら、これまでリングバッファ10から読み出していた読出データD(p)とは不連続な「1周前の」読出データD(p)を徐々にフェードインしていくことによりクロスフェード処理を進めていき、リングバッファ10の読出データD(p)から徐々にクロスフェードバッファの「1周前の読出データD(p)」に切り換えていく。
その後オーディオ入出力制御装置は、図6(C)に示すように、リングバッファ10において読出データD(p)が書込データD(r)を追い抜き、この時点以降、当該リングバッファ10の既に1回読み出した読出データD(p)を2回目に読み出す。(図中の斜線部分)。
このとき、リングバッファ10上の読出データD(p)は追い抜かれた箇所において不連続となるものの、この時点では既にリングバッファ10から読み出した読出データD(p)の信号レベルが十分に小さく、また同時にクロスフェードバッファから読み出す「1周前の」読出データD(p)の信号レベルが既に十分に大きいため、オーディオ入出力部はこのような不連続な読出データD(p)を読み出してもオーディオを聴取するユーザに違和感を与えることはない。
このクロスフェード処理の完了後、オーディオ入出力制御装置は、図6(D)に示すように、2回目の読み出しとなる読出データD(p)をリングバッファ10から通常の信号レベルで読み出していく。
この場合、オーディオ入出力制御装置ではクロスフェード処理によって読出データD(p)が書込データD(r)を追い越す際に生じるノイズを防止できるため、リングバッファ10に蓄積された同一のオーディオデータを再度読み出してデータ補間することになるにも拘らず、ユーザの聴感的にはオーディオデータの連続性を維持し得るようになされている。
なお、この場合には読出データD(p)が書込データD(r)を追い越すので、256ステップのクロスフェード処理が終了した時点では、書込データD(r)が読出データD(p)の直後に位置することになって、書込データD(r)がリングバッファ10を約20周進む間は読出データD(p)に追い付かれることはない。
このようにビデオテープレコーダでは、書込データD(r)が読出データD(p)に追い越される場合や、読出データD(p)が書込データD(r)に追い越される場合、クロスフェード処理を行うようになされているが、12個のオーディオトラックを用いてオーディオデータの信号処理を行っているためクロスフェード処理に応じた信号処理量が膨大となり効率的ではない。またクロスフェード処理では、2種類のオーディオデータを重ね合わせるため、どうしてもオーディオの品位が低下してしまう。
そこで図7に示すように、オーディオ入出力制御装置では書込速度と読出速度との速度差によって、例えば書込データD(r)が読出データD(p)に追い付くことになった場合、読出アドレスを書込アドレスの後ろへ強制的に変更することにより、読出アドレスジャンプ処理を実行するようになされている。
このときオーディオ入出力制御装置では、読出アドレスを書込アドレスの後ろへ強制的に変更するのだが、何ら考慮せずに読出アドレスジャンプ処理を実行した場合、アドレス変更前の読出アドレス時におけるオーディオデータとアドレス変更後の読出アドレス時におけるオーディオデータとの間では信号レベルに大きな差が生じ、当該オーディオデータの連続性が保てずノイズを発生させかねない。
そこでオーディオ入出力制御装置では、アドレス変更前の読出アドレス時におけるオーディオデータとアドレス変更後の読出アドレス時におけるオーディオデータとの間で、当該オーディオデータの信号レベル差が少ない位置を変更後の読出アドレスとして決定するようになされている。
具体的には、図8に示すようにオーディオ入出力制御装置は、オーディオデータの信号レベルがゼロレベルをクロスするゼロクロス近傍のとき、現在の読出アドレスを書込アドレスの後ろへ強制的にアドレスジャンプさせるようになされている。
すなわちオーディオ入出力制御装置は、例えば書込アドレスが読出アドレスに追い付いてくると、現時点におけるアドレス変更前の読出アドレスからリングバッファ10の約1周分先の書込アドレスの後ろであって、当該オーディオデータの信号レベルがゼロクロス近傍となる位置をアドレス変更後の読出アドレスとして決定する。
このときオーディオ入出力制御装置では、ゼロクロス直前の読出アドレスから、ゼロクロス直後の読出アドレスへとアドレスジャンプさせるようになされており、これによりアドレスジャンプ前とアドレスジャンプ後との間においてオーディオデータの連続性を維持してオーディオの品位を低下させないようになされている。
但しオーディオ入出力制御装置では、必ずしもこれに限る必要はなく、ゼロクロス直前の読出アドレスからゼロクロス直前の読出アドレスへアドレスジャンプさせ、又はゼロクロス直後の読出アドレスからゼロクロス直後の読出アドレスへアドレスジャンプさせ、或いはゼロクロス直後の読出アドレスからゼロクロス直前の読出アドレスへアドレスジャンプさせるようにしても良い。
ところで図9に示すようにオーディオ入出力制御装置は、2048スロットを有するリングバッファ10を用いているため、例えばオーディオデータの書込速度が読出速度よりも速い場合には書込データが読出データを追い越した瞬間に最小ディレイとなり、その後次第にディレイ量が増えていく。
また図10に示すようにオーディオ入出力制御装置は、例えばオーディオデータの読出速度が書込速度よりも速い場合には読出データが書込データを追い越した瞬間に最小ディレイとなり、その後次第にディレイ量が増えていく。
そのためオーディオ入出力制御装置では、オーディオデータの書込アドレスに対して読出アドレスをリングバッファ10の半分の値(1024スロット分)だけ離した位置に設定し、書込データD(r)の書込タイミングと読出データD(p)の読出タイミングとの間でリングバッファ10の半周分に相当する1024スロットの初期ディレイ(21.3msec)をディレイ量として保持するようにしたい。
しかしながらオーディオ入出力制御装置は、例えば書込速度が読出速度よりも速い場合には読出データが書込データに追い付かれる前に読出アドレスを書込アドレスの後ろへアドレスジャンプさせるが、このときはディレイ量が最も大きくなってしまうので1024スロットの初期ディレイから大きく外れることのない一定範囲(例えば1024スロット±100スロット)に制御するようになされている。
具体的には図11(A)に示すようにオーディオ入出力制御装置は、書込速度が読出速度よりも速い場合、読出アドレスがいずれ書込アドレスに追い付かれてしまうので、読出アドレスと書込アドレスとの差分値kを算出し、k<1024となった場合に読出アドレスを少し先に進めた位置へ強制的にアドレスジャンプさせるようになされている。
これによりオーディオ入出力制御装置は、書込速度が読出速度よりも速い場合であっても読出アドレスと書込アドレスとの差分値kをある程度一定に保つことができるため、1024スロットの初期ディレイから大きく外れることがない一定範囲のディレイ量を維持し得るようになされている。
また図11(B)に示すようにオーディオ入出力制御装置は、読出速度が書込速度よりも速い場合、読出アドレスと書込アドレスとの差が拡がって、いずれ書込アドレスが読出アドレスに追い付かれるので、読出アドレスと書込アドレスとの差分値kを算出し、k>1024となった場合に読出アドレスを現時点よりも少し戻した位置へ強制的にアドレスジャンプさせるようになされている。
これによりオーディオ入出力制御装置は、読出速度が書込速度よりも速い場合であっても読出アドレスと書込アドレスとの差分値kをある程度一定に保つことができるため、1024スロットの初期ディレイから大きく外れることがない一定範囲のディレイ量を維持し得るようになされている。
因みにオーディオ入出力制御装置は、アドレスジャンプ前の読出アドレスと、アドレスジャンプ後の読出アドレスとの間で、オーディオデータの信号レベル差が少ないゼロクロス近傍同士でアドレスジャンプさせるようになされている。
ところで、リングバッファ10にスロット単位で書き込まれるオーディオデータは、図12に示すように、MSB(Most Significant Bit)からLSB(Least Significant Bit)で示される実データと、当該実データの前段に記述されたヘッダとから構成されている。
オーディオデータのヘッダにおいては、「Jump」としてゼロクロス近傍であるか否かに基づいてアドレスジャンプすべきオーディオデータがあるときは現在のアドレスがジャンプアドレス(詳しくは後述する)であることを表すフラグ情報が記述され、「GroupID2」、「GroupID1」、「GroupID0」として12トラックのうち所望のトラック同士を関連付けて1つのグループとした際のグループを識別するグループIDが記述され、「Offset」としてアナログディジタル変換後のオーディオデータに重畳している直流成分を除去するためのオフセット量が記述される。
図13に示すようにオーディオデータに直流成分が重畳している場合、波形全体の信号レベルが直流成分によって上がり、直流成分が重畳されていない本来のオーディオデータにおけるゼロクロスが検出できなくなってしまう。
そこでオーディオ入出力制御装置は、直流成分を除去するためのオフセット量を予め検出し、それをオーディオデータのヘッダ情報における「Offset」に記述するようになされている。従ってオーディオ入出力制御装置は、直流成分が重畳しているオーディオデータについては当該直流成分を予め除去したバーチャルゼロクロスを検出することにより、直流成分が重畳していない本来のオーディオデータにおけるゼロクロスを検出し得るようになされている。
またオーディオデータのヘッダ(図12)においては、「Low level」としてオーディオデータが例えば−60[dB]以下のローレベルであるときにその旨が記述され、「zcFlag1」としてオーディオデータがゼロクロス直前(図8)であるときにフラグ情報が記述され、「zcFlag0」としてオーディオデータがゼロクロス直後(図8)であるときにフラグ情報が記述されるようになされている。
従ってオーディオ入出力制御装置では、2048スロット毎のオーディオデータにおけるヘッダを参照して「zcFlag1」や「zcFlag0」のフラグ情報を確認することにより、オーディオデータの信号レベルがゼロクロス直前であるのか、ゼロクロス直後であるのかを瞬時に判別し得るようになされている。
またオーディオデータのヘッダでは、直流成分の重畳されているオーディオデータについては、「オフセットzcFlag1」として直流成分が重畳されていない本来のオーディオデータがゼロクロス直前であるときにフラグ情報が記述され、「オフセットzcFlag0」として直流成分が重畳していない本来のオーディオデータがゼロクロス直後であるときにフラグ情報が記述されるようになされている。
ところでオーディオ入出力制御装置は、図8に示したように、オーディオデータの信号レベルをリングバッファ10のスロット単位で監視しており、その結果、オーディオデータの信号レベルがゼロレベル以下のときは符号ビットとして「1」をセットし、ゼロレベルを超えるときには符号ビットとして「0」をセットするようになされている。
従ってオーディオ入出力制御装置は、例えばゼロクロス直前の時点(記号Wで示す)で書き込まれたオーディオデータの信号レベルがゼロレベル以下であるため符号ビットとして「1」をセットし、その1時点前(記号aで示す)のオーディオデータの信号レベルもゼロレベル以下であるため符号ビットとして「1」をセットし、そのゼロクロス直前の時点に対して1時点後(記号bで示す)のオーディオデータの信号レベルがゼロレベルを超えるため符号ビットとして「0」をセットする。
また同様にオーディオ入出力制御装置は、例えばゼロクロス直後の時点(記号Wで示す)で書き込まれたオーディオデータの信号レベルがゼロレベルを超えるため符号ビットとして「0」をセットし、その1時点前(記号aで示す)のオーディオデータの信号レベルはゼロレベル以下であるため符号ビットとして「1」をセットし、そのゼロクロス直後の時点に対して1時点後(記号bで示す)のオーディオデータの信号レベルがゼロレベルを超えるため符号ビットとして「0」をセットする。
従ってオーディオ入出力制御装置は、この符号ビットをスロット毎に監視しておくことにより、符号ビットが「1」→「0」に変化するタイミングをゼロクロス時と判断することができ、そのときの符号ビットが「1」を示しているスロットをゼロクロス直前のオーディオデータとして把握し得ると共に「zcFlag1」のフラグ情報として「1」をセットし、符号ビットが「0」を示しているスロットをゼロクロス直後のオーディオデータとして把握し得ると共に「zcFlag0」のフラグ情報として「0」をセットするようになされている。
なおオーディオ入出力制御装置は、「オフセットzcFlag1」及び「オフセットzcFlag0」のフラグ情報についても、「zcFlag1」及び「zcFlag0」と同様に符号ビットに基づいて「1」又は「0」をセットするようになされている。
(2)オーディオ入出力制御装置の構成
実際上、図14に示すようにオーディオ入出力制御装置1は、2048スロット構成のリングバッファ10に合わせて2048サンプル毎のオーディオデータD1をローレベル検出器2、ゼロクロス検出器3及びリングバッファ10に入力する。
ローレベル検出器2は、CPU(Central Processing Unit)構成でなる制御部4でゼロクロスを判断するために、オーディオデータD1の信号レベルが−60[dB]以下のローレベルであることを検出するようになされており、検出結果を制御部4へ出力する。
実際上、ローレベル検出器2は、図15に示すようにルーチンRT1の開始ステップから入って次のステップSP1へ移り、リングバッファ10に書き込むオーディオデータD1の信号レベルがローレベルであるか否かを判定する。
ここで否定結果が得られるとローレベル検出器2は、次のステップSP2へ移り、ローレベルフラグとして「0」をセットし、次のステップSP4へ移って処理を終了する。一方、ステップSP1で肯定結果が得られると、ローレベル検出器2は次のステップSP3へ移り、ローレベルフラグとして「1」をセットし、次のステップSP4へ移って処理を終了する。
ゼロクロス検出器3は、オーディオデータD1の信号レベルを監視することにより、当該オーディオデータの信号レベルが「0」レベルをクロスするか否かを検出し、その検出結果を制御部4へ出力する。
実際上、ゼロクロス検出器3は図16に示すようにルーチンRT2の開始ステップから入って次のステップSP11へ移り、オーディオデータD1に直流成分が重畳しているか否かをオフセット検出器5の検出結果に基づいて判別する。
ここで図17に示すようにオフセット検出器5は、リングバッファ10の2048スロットに順次書き込むオーディオデータD1の信号レベルの合計値を2048で除算することにより平均値を算出し、当該平均値を直流成分のオフセット量として検出するようになされている。
ステップSP11で否定結果が得られると、ゼロクロス検出器5はオーディオデータD1に直流成分が重畳していないので何ら処理を施すことなく次のステップSP13へ移る。
一方ステップSP11で肯定結果が得られると、ゼロクロス検出器5はオーディオデータD1に直流成分が重畳しているのでリングバッファ10に書き込むオーディオデータD1から直流成分がないものと仮定したバーチャルゼロクロスを基準にして以降判断し、次のステップSP13へ移る。
ステップSP13においてゼロクロス検出器5は、図8に示したように、現時点(記号Wで示す)におけるオーディオデータD1の次の時点(記号bで示す)における符号ビットが「0」であるか否かを判定し、否定結果が得られると、次のステップSP16へ移るのに対し、肯定結果が得られると次のステップSP14へ移る。
ステップSP14においてゼロクロス検出器5は、現時点(記号Wで示す)におけるオーディオデータD1の符号ビットが「1」であるか否かを判定し、否定結果が得られると記号Wbの並びとなる符号ビットが「00」となっていること、すなわちゼロクロスしていないことを表しており、このとき次のステップSP16へ移る。
一方ステップSP14で肯定結果が得られると、記号Wbの並びとなる符号ビットが「10」となっていること、すなわちゼロクロスしていることを表しており、このときゼロクロス検出器5は次のステップSP15へ移り、ゼロクロス直前における「zcFlag1」のフラグ情報として「1」をセットした後、ステップSP19へ移って処理を終了する。
ステップSP16においてゼロクロス検出器5は、現時点(記号Wで示す)におけるオーディオデータD1の前時点(記号aで示す)における符号ビットが「1」であるか否かを判定し、否定結果が得られると、ステップSP19へ移って処理を終了するのに対し、肯定結果が得られると次のステップSP17へ移る。
ステップSP17においてゼロクロス検出器5は、現時点(記号Wで示す)におけるオーディオデータD1の符号ビットが「0」であるか否かを判定し、否定結果が得られると記号aWの並びとなる符号ビットが「11」となっていること、すなわちゼロクロスしていないことを検出し、ステップSP19へ移って処理を終了する。
一方ステップSP17で肯定結果が得られると、記号aWの並びとなる符号ビットが「10」となっていること、すなわちゼロクロスしていることを表しており、このときゼロクロス検出器5は次のステップSP18へ移り、ゼロクロス直後における「zcFlag0」のフラグ情報として「1」をセットした後、ステップSP19へ移って処理を終了する。
ところでリングバッファ10は、上述した通り、2048スロット構成でなり、入力されたオーディオデータD1をライトアドレスジェネレータ6から供給される書込アドレスに従い書込速度48[kHz]±5%でスロット毎に書き込み、当該オーディオデータD1をリードアドレスジェネレータ7から供給される読出アドレスに従い一定の読出速度48[kHz]で読み出して出力するようになされている。
このときライトアドレスジェネレータ6及びリードアドレスジェネレータ7は、書込アドレス及び読出アドレスをライトスピード検出器8へ送出すると共に、制御部4へ送出するようになされている。
ライトスピード検出器8は、読出アドレスと書込アドレスとの差分値kを算出することにより、書込速度と読出速度との速度差を検出するようになされており、その差分値kを制御部4へ送出する。
制御部4は、書込アドレス、読出アドレス及び当該読出アドレスと当該書込アドレスとの差分値kに基づいて、現時点におけるアドレス変更前の読出アドレスを何処にアドレスジャンプさせるべきかを判断してアドレスジャンプ先となるアドレス変更後の読出アドレスを決定し、当該アドレス変更後の読出アドレスをリングバッファ10に指示するようになされている。
(3)アドレスジャンプ処理手順
次に、オーディオ入出力制御装置1の制御部4がリングバッファ10に対する書込速度と読出速度との速度差に応じて読出アドレスをアドレスジャンプさせるアドレスジャンプ処理手順について、書込速度が読出速度よりも速い場合と、読出速度が書込速度よりも速い場合とに分けて説明する。
(3−1)書込速度が読出速度よりも速い場合の読出アドレスジャンプ処理手順
オーディオ入出力制御装置1の制御部4は、アプリケーションプログラムであるアドレスジャンプ処理プログラムに従い、ビデオテープレコーダのプログラムプレイ機能が動作する際にビデオの変速再生処理に応じてオーディオデータの書込速度が読出速度よりも速い場合にオーディオの音程変化を起こさせることなく、かつオーディオの連続性を維持するための読出アドレスジャンプ処理手順について図18のフローチャートを用いて具体的に説明する。
実際上、オーディオ入出力制御装置1の制御部4は、ルーチンRT3の開始ステップから入ってステップSP21へ移り、リングバッファ10から読み出すべき現時点における読出アドレスに「1」を加算することにより次の読出アドレスへ移行し、次のステップSP22へ移る。
ステップSP22において制御部4は、次の読出アドレスに相当するリングバッファ10のスロットに書き込まれているオーディオデータD1のヘッダを参照し、当該ヘッダの「zcFlag1」又は「zcFlag0」のフラグ情報として「1」がセットされているか否かを判定する。
ここで肯定結果が得られると、このことは「zcFlag1」又は「zcFlag0」のフラグ情報として「1」がセットされていること、すなわち次の読出アドレスから読み出すべきオーディオデータD1がゼロクロス直前又はゼロクロス直後のデータであることを表しており、このとき制御部4は次のステップSP23へ移る。
ステップSP23において制御部4は、ライトスピード検出器8により読出アドレスと書込アドレスとの差分値kを算出し、その差分値kが256(スロット)未満であるか、差分値kが1024(スロット)よりも大きいか、或いは差分値kが256(スロット)以上1024(スロット)以下の範囲であるかを判定する。
ここで図19に示すように、差分値kが1024(スロット)よりも大きい場合、このことは読出アドレスが書込アドレスに追い付かれるまでには相当の時間的余裕があることを表しており、このとき制御部4はステップSP32へ移って読出アドレスジャンプ処理を行うことなく終了する。
また差分値kが256(スロット)以上1024(スロット)以下の範囲である場合、このことは読出アドレスに書込アドレスが次第に追い付いてきており、読出アドレスと書込アドレスとの差が初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が出てきたことを表しており、このとき制御部4は次のステップSP24へ移る。
ステップSP24において制御部4は、読出アドレスをアドレスジャンプさせる際に、オーディオデータD1の信号レベル変化が少ないゼロクロス近傍で、かつ読出アドレスから近い先に位置するアドレスジャンプ予定の読出アドレスをフォワードゼロクロスアドレスとし、当該フォワードゼロクロスアドレスと読出アドレスとの差fkを算出する。
そして制御部4は、その差fkが1024(スロット)以上の場合、フォワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせてしまうと、初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が高いのでステップSP32へ移って読出アドレスジャンプ処理を行うことなく終了する。
一方、制御部4は差fkが1024(スロット)よりも小さい場合、フォワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせても、初期ディレイの一定範囲(例えば1024スロット±100スロット)に収まる可能性が高いので読出アドレスジャンプ処理を行うべく次のステップSP26へ移る。
ステップSP23において差分値kが256(スロット)よりも小さい場合、このことは読出アドレスが書込アドレスに追い付かれる直前の状態にあることを表しており、このとき制御部4は次のステップSP25へ移る。
ステップSP25において制御部4は、読出アドレスをアドレスジャンプさせる際に、オーディオデータD1の信号レベル変化が少ないゼロクロス近傍で、かつ読出アドレスから遠い先に位置するアドレスジャンプ予定の読出アドレスをモアフォワードゼロクロスアドレスとし、読出アドレスと当該モアフォワードゼロクロスアドレスとの差mkを算出する。
そして制御部4は、その差mkが1024(スロット)以上の場合、モアフォワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせてしまうと、初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が高いのでステップSP32へ移って読出アドレスジャンプ処理を行うことなく終了する。
一方、制御部4は差mkが1024(スロット)よりも小さい場合、モアフォワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせても、初期ディレイの一定範囲(例えば1024スロット±100スロット)に収まる可能性が高いので読出アドレスジャンプ処理を行うべく次のステップSP26へ移る。
ステップSP26において制御部4は、読出アドレスをフォワードゼロクロスアドレス若しくはモアフォワードゼロクロスアドレスへアドレスジャンプさせることによりオーディオデータD1をデータ間引きして読出アドレスが書込アドレスに追い付かれることを予め防止すると共に、アドレスジャンプ前に読み出したオーディオデータD1とアドレスジャンプ後に読み出すオーディオデータD1との連続性を保持し、次のステップSP32へ移って処理を終了する。
これに対してステップSP22で否定結果が得られると、このことは「zcFlag1」又は「zcFlag0」のフラグ情報として「0」がセットされていること、すなわちゼロクロスとは無関係のオーディオデータD1であることを表しており、このとき制御部4は次のステップSP27へ移る。
ここで制御部4は、例えオーディオデータD1がゼロクロスとは無関係であっても当該オーディオデータD1に直流成分が重畳しているためにゼロクロスを検出できていない可能性もあるため、次のステップSP27以降の処理へ移るようになされている。
ステップSP27において制御部4は、当該オーディオデータD1のヘッダを参照し、当該ヘッダの「オフセットzcFlag1」又は「オフセットzcFlag0」のフラグ情報として「1」がセットされているか否かを判定する。
ここで否定結果が得られると、このことは「zcFlag1」又は「zcFlag0」と、「オフセットzcFlag1」又は「オフセットzcFlag0」のフラグ情報として何れも「0」がセットされていること、すなわち直流成分が重畳していないオーディオデータD1及び直流成分が重畳しているオーディオデータD1の双方共にゼロクロスしていないため、読出アドレスジャンプ処理を行うタイミングではないことを表しており、このとき制御部4はステップSP32へ移って処理を終了する。
一方ステップSP27で肯定結果が得られると、このことは直流成分が重畳しているオーディオデータD1について、直流成分が除去されたオーディオデータD1として考えた場合にバーチャルゼロクロス(図13)を検出し得たことを表しており、このとき制御部4は次のステップSP28へ移る。
ステップSP28において制御部4は、ライトスピード検出器8により読出アドレスと書込アドレスとの差分値kを算出し、その差分値kが256(スロット)未満であるか、差分値kが1024(スロット)よりも大きいか、或いは差分値kが256(スロット)以上1024(スロット)以下の範囲であるかを判定する。
ここで差分値kが1024(スロット)よりも大きい場合、このことは読出アドレスが書込アドレスに追い付かれるまでには相当の時間的余裕があることを表しており、このとき制御部4は上述のステップSP23と同様にステップSP32へ移って読出アドレスジャンプ処理を行うことなく終了する。
また差分値kが256(スロット)以上1024(スロット)以下の範囲である場合、このことは読出アドレスに書込アドレスが追い付いてきており、読出アドレスと書込アドレスとの差が初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性があることを表しており、このとき制御部4は次のステップSP29へ移る。
ステップSP29において制御部4は、読出アドレスをアドレスジャンプさせる際に、オーディオデータD1の信号レベル変化が少ないゼロクロス近傍で、かつ読出アドレスから近い先に位置するアドレスジャンプ予定の読出アドレスをフォワードオフセットゼロクロスアドレスとし、当該フォワードオフセットゼロクロスアドレスと現時点の読出アドレスとの差fokを算出する。
そして制御部4は、その差fokが1024(スロット)以上の場合、フォワードオフセットゼロクロスアドレスへ読出アドレスをアドレスジャンプさせてしまうと、初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が高いのでステップSP32へ移って読出アドレスジャンプ処理を行うことなく終了する。
一方、制御部4は差fokが1024(スロット)よりも小さい場合、フォワードオフセットゼロクロスアドレスへ読出アドレスをアドレスジャンプさせても、初期ディレイの一定範囲(例えば1024スロット±100スロット)に収まる可能性が高いので読出アドレスジャンプ処理を行うべく次のステップSP30へ移る。
さらにステップSP28における差分値kが256(スロット)よりも小さい場合、このことは読出アドレスが書込アドレスに追い付かれる直前の状態にあることを表しており、このとき制御部4は次のステップSP31へ移る。
ステップSP31において制御部4は、読出アドレスをアドレスジャンプさせる際に、オーディオデータD1の信号レベルの変化が少ないゼロクロス近傍で、かつ読出アドレスから遠い先に位置するアドレスジャンプ予定の読出アドレスをモアフォワードオフセットゼロクロスアドレスとし、当該モアフォワードオフセットゼロクロスアドレスと現時点の読出アドレスとの差mokを算出する。
そして制御部4は、その差mokが1024(スロット)以上の場合、モアフォワードオフセットゼロクロスアドレスへ読出アドレスをアドレスジャンプさせてしまうと、初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が高いのでステップSP32へ移って読出アドレスジャンプ処理を行うことなく終了する。
一方、制御部4は差mokが1024(スロット)よりも小さい場合、モアフォワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせても、初期ディレイの一定範囲(例えば1024スロット±100スロット)に収まる可能性が高いので読出アドレスジャンプ処理を行うべく次のステップSP30へ移る。
ステップSP30において制御部4は、読出アドレスをフォワードオフセットゼロクロスアドレス若しくはモアフォワードオフセットゼロクロスアドレスへアドレスジャンプさせることにより直流成分が重畳しているオーディオデータD1をデータ間引きして読出アドレスが書込アドレスに追い付かれることを予め防止すると共に、アドレスジャンプ前に読み出した直流成分が重畳しているオーディオデータD1とアドレスジャンプ後に読み出す直流成分が重畳しているオーディオデータD1との連続性を保持し、次のステップSP32へ移って処理を終了する。
(3−2)読出速度が書込速度よりも速い場合の読出アドレスジャンプ処理手順
オーディオ入出力制御装置1の制御部4は、アプリケーションプログラムであるアドレスジャンプ処理プログラムに従い、ビデオテープレコーダのプログラムプレイ機能が動作する際にビデオの変速再生処理に応じてオーディオデータD1の読出速度が書込速度よりも速い場合にオーディオの音程変化を起こさせることなく、かつオーディオの連続性を維持するための読出アドレスジャンプ処理手順について図20のフローチャートを用いて具体的に説明する。
実際上、オーディオ入出力制御装置1の制御部4は、ルーチンRT4の開始ステップから入ってステップSP41へ移り、リングバッファ10から読み出すべき現時点における読出アドレスに「1」を加算することにより次の読出アドレスへ移行し、次のステップSP42へ移る。
ステップSP42において制御部4は、次の読出アドレスに相当するリングバッファ10のスロットに書き込まれているオーディオデータD1のヘッダを参照し、当該ヘッダの「zcFlag1」又は「zcFlag0」のフラグ情報として「1」がセットされているか否かを判定する。
ここで肯定結果が得られると、このことは「zcFlag1」又は「zcFlag0」のフラグ情報として「1」がセットされていること、すなわち次の読出アドレスから読み出すべきオーディオデータD1がゼロクロス直前又はゼロクロス直後のデータであることを表しており、このとき制御部4は次のステップSP43へ移る。
ステップSP43において制御部4は、ライトスピード検出器8により書込アドレスと読出アドレスとの差分値k´を算出し、その差分値k´が256(スロット)未満であるか、差分値k´が1024(スロット)よりも大きいか、或いは差分kが256(スロット)以上1024(スロット)以下の範囲であるかを判定する。
ここで図21に示すように、差分値k´が1024(スロット)よりも大きい場合、このことは書込アドレスが読出アドレスに追い付かれるまでには相当の時間的余裕があることを表しており、このとき制御部4はステップSP52へ移って読出アドレスジャンプ処理を行うことなく終了する。
また差分値k´が256(スロット)以上1024(スロット)以下の範囲である場合、このことは書込アドレスに読出アドレスが次第に追い付いてきており、書込アドレスと読出アドレスとの差が初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が出てきたことを表しており、このとき制御部4は次のステップSP44へ移る。
ステップSP44において制御部4は、読出アドレスをアドレスジャンプさせる際に、オーディオデータD1の信号レベル変化が少ないゼロクロス近傍で、かつ読出アドレスから少し戻した先に位置するアドレスジャンプ予定の読出アドレスをバックワードゼロクロスアドレスとし、読出アドレスと当該バックワードゼロクロスアドレスとの差bk´を算出する。
そして制御部4は、その差bk´が1024(スロット)以上の場合、バックワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせてしまうと、初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が高いので、ステップSP52へ移って読出アドレスジャンプ処理を行うことなく終了する。
一方、制御部4は差bk´が1024(スロット)よりも小さい場合、バックワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせても、初期ディレイの一定範囲(例えば1024スロット±100スロット)に収まる可能性が高いので読出アドレスジャンプ処理を行うべく次のステップSP46へ移る。
さらにステップSP43における差分値k´が256(スロット)よりも小さい場合、このことは書込アドレスが読出アドレスに追い付かれる直前の状態にあることを表しており、このとき制御部4は次のステップSP45へ移る。
ステップSP45において制御部4は、読出アドレスをアドレスジャンプさせる際に、オーディオデータD1の信号レベルの変化が少ないゼロクロス近傍で、かつ読出アドレスから大きく戻した先に位置するアドレスジャンプ予定の読出アドレスをモアバックワードゼロクロスアドレスとし、当該モアバックワードゼロクロスアドレスと読出アドレスとの差mk´を算出する。
そして制御部4は、その差mk´が1024(スロット)以上の場合、モアバックワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせてしまうと、初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が高いのでステップSP52へ移って読出アドレスジャンプ処理を行うことなく終了する。
一方、制御部4は差mk´が1024(スロット)よりも小さい場合、モアバックワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせても、初期ディレイの一定範囲(例えば1024スロット±100スロット)に収まる可能性が高いので読出アドレスジャンプ処理を行うべく次のステップSP46へ移る。
ステップSP46において制御部4は、読出アドレスをバックワードゼロクロスアドレス若しくはモアバックワードゼロクロスアドレスへアドレスジャンプさせることにより、同一のオーディオデータD1を再度読み出しながらデータ補間して書込アドレスが読出アドレスに追い付かれることを予め防止すると共にし、アドレスジャンプ前に読み出したオーディオデータD1とアドレスジャンプ後に読み出すオーディオデータD1との連続性を保持し、次のステップSP52へ移って処理を終了する。
これに対してステップSP42で否定結果が得られると、このことは「zcFlag1」又は「zcFlag0」のフラグ情報として「0」がセットされていること、すなわちゼロクロスとは無関係のオーディオデータD1であることを表しており、このとき制御部4は次のステップSP47へ移る。
ここで制御部4は、例えオーディオデータD1がゼロクロスとは無関係であっても当該オーディオデータD1に直流成分が重畳しているためにゼロクロスを検出できていない可能性もあるため、次のステップSP47以降の処理へ移るようになされている。
ステップSP47において制御部4は、当該オーディオデータD1のヘッダを参照し、当該ヘッダの「オフセットzcFlag1」又は「オフセットzcFlag0」のフラグ情報として「1」がセットされているか否かを判定する。
ここで否定結果が得られると、このことは「zcFlag1」又は「zcFlag0」と、「オフセットzcFlag1」又は「オフセットzcFlag0」のフラグ情報として何れも「0」がセットされていること、すなわち直流成分が重畳していないオーディオデータD1及び直流成分が重畳しているオーディオデータD1の双方共にゼロクロスしていないため、読出アドレスジャンプ処理を行うタイミングではないことを表しており、このとき制御部4はステップSP52へ移って処理を終了する。
一方ステップSP47で肯定結果が得られると、このことは直流成分が重畳しているオーディオデータD1について、直流成分が除去されたオーディオデータD1として考えた場合にバーチャルゼロクロスを検出し得たことを表しており、このとき制御部4は次のステップSP48へ移る。
ステップSP48において制御部4は、ライトスピード検出器8により書込アドレスと読出アドレスとの差分値k´を算出し、その差分値k´が256(スロット)未満であるか、差分値k´が1024(スロット)よりも大きいか、或いは差分値k´が256(スロット)以上1024(スロット)以下の範囲であるかを判定する。
ここで差分値k´が1024(スロット)よりも大きい場合、このことは書込アドレスが読出アドレスに追い付かれるまでには相当の余裕があることを表しており、このとき制御部4は上述のステップSP43と同様にステップSP52へ移って読出アドレスジャンプ処理を行うことなく終了する。
またステップSP48における差分値k´が256(スロット)以上1024(スロット)以下の範囲である場合、このことは書込アドレスに読出アドレスが追い付いてきており、書込アドレスと読出アドレスとの差が初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が出てきたことを表しており、このとき制御部4は次のステップSP49へ移る。
ステップSP49において制御部4は、読出アドレスをアドレスジャンプさせる際に、オーディオデータD1の信号レベルの変化が少ないゼロクロス近傍で、かつ読出アドレスから少し戻した先に位置するアドレスジャンプ予定の読出アドレスをバックワードオフセットゼロクロスアドレスとし、読出アドレスと当該バックワードオフセットゼロクロスアドレスとの差bok´を算出する。
そして制御部4は、その差bok´が1024(スロット)以上の場合、バックワードオフセットゼロクロスアドレスへ読出アドレスをアドレスジャンプさせてしまうと、初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が高いのでステップSP52へ移って読出アドレスジャンプ処理を行うことなく終了する。
一方、制御部4は差bok´が1024(スロット)よりも小さい場合、バックワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせても、初期ディレイの一定範囲(例えば1024スロット±100スロット)に収まる可能性が高いので読出アドレスジャンプ処理を行うべく次のステップSP50へ移る。
さらにステップSP48における差分値k´が256(スロット)よりも小さい場合、このことは書込アドレスが読出アドレスに追い付かれる直前の状態にあることを表しており、このとき制御部4は次のステップSP51へ移る。
ステップSP51において制御部4は、読出アドレスをアドレスジャンプさせる際に、オーディオデータD1の信号レベルの変化が少ないゼロクロス近傍で、かつ読出アドレスから遠く戻す先に位置するアドレスジャンプ予定の読出アドレスをモアバックワードオフセットゼロクロスアドレスとし、当該モアバックワードオフセットゼロクロスアドレスと読出アドレスとの差mok´を算出する。
そして制御部4は、その差mok´が1024(スロット)以上の場合、モアバックワードオフセットゼロクロスアドレスへ読出アドレスをアドレスジャンプさせてしまうと、初期ディレイの一定範囲(例えば1024スロット±100スロット)から外れる可能性が高いのでステップSP52へ移って読出アドレスジャンプ処理を行うことなく終了する。
一方、制御部4は差mok´が1024(スロット)よりも小さい場合、モアバックワードゼロクロスアドレスへ読出アドレスをアドレスジャンプさせても、初期ディレイの一定範囲(例えば1024スロット±100スロット)に収まる可能性が高いので読出アドレスジャンプ処理を行うべく次のステップSP50へ移る。
ステップSP50において制御部4は、読出アドレスをバックワードオフセットゼロクロスアドレス若しくはモアバックワードオフセットゼロクロスアドレスへアドレスジャンプさせることにより、直流成分が重畳しているオーディオデータD1を再度読み出しながらデータ補間して書込アドレスが読出アドレスに追い付かれることを予め防止すると共に、アドレスジャンプ前に読み出した直流成分が重畳しているオーディオデータD1とアドレスジャンプ後に読み出す直流成分が重畳しているオーディオデータD1との連続性を保持し、次のステップSP52へ移って処理を終了する。
(4)動作及び効果
以上の構成において、オーディオ入出力制御装置1の制御部4は、リングバッファ10にオーディオデータD1を書込速度48[kHz]±5%で書き込み、当該リングバッファ10から一定の読出速度48[kHz]で読み出す際、書込速度と読出速度との速度差を検出し、当該検出した速度差に応じて書込アドレスが読出アドレスを追い越したり、読出アドレスが書込アドレスを追い越すことがないように、読出アドレスを強制的にアドレスジャンプさせる。
このときオーディオ入出力制御装置1の制御部4は、ゼロクロス直前の読出アドレスと、ゼロクロス直後の読出アドレスとを結ぶようにアドレスジャンプさせることにより、アドレスジャンプ前の読出アドレスに対応したオーディオデータD1と、アドレスジャンプ後の読出アドレスに対応したオーディオデータD1との間で信号レベルの変化を極力少なくすることができるため、実際上アドレスジャンプによってオーディオデータD1の連続性が途切れても、ユーザの聴感的にはオーディオデータD1の連続性を維持しているかのような印象を与え、かつ音程変化のない音声を出力することができる。
またオーディオ入出力制御装置1の制御部4は、読出アドレスをアドレスジャンプさせることにより、当該読出アドレスを先に進ませる場合には当該オーディオデータD1をデータ間引きすることになり、当該読出アドレスを後ろに戻す場合には同じオーディオデータD1を再度読み出してデータ補間することになるため、変速再生処理したビデオに対してオーディオを時間的に合わせることができる。
このようにオーディオ入出力制御装置1の制御部4は、読出アドレスのアドレスジャンプを行うだけで上述の効果を奏するようになされており、かくして多くの加算や乗算等の演算が必要なクロスフェード処理を行う場合と比較して格段に信号処理量を低減することができる。
さらにオーディオ入出力制御装置1の制御部4は、読出アドレスと書込アドレスとの差として1024スロット±100スロット程度の一定範囲からなる初期ディレイを保持するように制御していることにより、書込アドレスが読出アドレスを追い越したり、読出アドレスが書込アドレスを追い越すといったリスクを予め回避することができる。
以上の構成によれば、オーディオ入出力制御装置1の制御部4は、ビデオテープレコーダがプログラムプレイ機能を動作させ、ビデオの変速再生処理に合わせて音程を変化させることなく音声を出力する場合、信号処理量を大幅に低減しつつ当該オーディオデータD1の品位についても保持することができる。
(5)他の実施の形態
なお上述の実施の形態においては、2048スロットのリングバッファ10を用いるようにした場合について述べたが、本発明はこれに限らず、オーディオの品位を考慮して4096スロットのリングバッファを用いたり、初期ディレイを少なくする点を考慮して1048スロットのリングバッファを用いるようにしても良い。
また上述の実施の形態においては、オフセット検出器5として、リングバッファ10の2048スロットに順次書き込むオーディオデータD1の信号レベルの合計値を2048で除算することにより平均値を算出し、当該平均値を直流成分のオフセット量として検出するようにした場合について述べたが、本発明はこれに限らず、オーディオデータD1の最大値と最小値の中間値を直流成分のオフセット量として検出するようにしても良い。
さらに上述の実施の形態においては、オーディオデータD1を書込速度48[kHz]±5%でスロット毎に書き込む場合に本発明を適用するようにした場合について述べたが、本発明はこれに限らず、オーディオデータD1のリングバッファ10に対する書込速度が48[kHz]±5%に固定されるのではなく変動する場合に本発明を適用するようにしても良い。
さらに上述の実施の形態においては、プログラムプレイ機能を動作させる際にビデオの変速再生処理に合わせてオーディオデータD1の入出力を制御するようにした場合について述べたが、本発明はこれに限らず、ビデオの変速再生処理とは無関係にオーディオデータD1の入出力を制御するようにしても良い。
さらに上述の実施の形態においては、本発明の入出力制御装置1をビデオテープレコーダに搭載するようにした場合について述べたが、本発明はこれに限らず、ビデオ編集装置やボイスレコーダ、オーディオ録音装置、パーソナルコンピュータ、ハードディスクレコーダ又は携帯電話機等のその他種々の電子機器に搭載するようにしても良い。
さらに上述の実施の形態においては、本発明のオーディオ入出力制御装置をメモリとしてのリングバッファ10、アドレス変更手段及び読出アドレス決定手段としての制御部4によって構成するようにした場合について述べたが、本発明はこれに限らず、その他種々の構成でなるメモリ、アドレス変更手段及び読出アドレス決定手段によってオーディオ入出力制御装置を構成するようにしても良い。
本発明のオーディオ入出力制御装置及びオーディオ入出力制御方法は、例えばオーディオデータを高品位のまま時間伸張又は時間圧縮する用途に適用することができる。
リングバッファ上における書込データと読出データの位置関係を示す略線図である。 読出データが書込データを追い越す様子を示す略線図である。 書込データが読出データを追い越す様子を示す略線図である。 クロスフェード処理の説明に供する略線図である。 書込アドレスが読出アドレスを追い越すときのクロスフェード処理の説明に供する略線図である。 読出アドレスが書込アドレスを追い越すときのクロスフェード処理の説明に供する略線図である。 読出アドレスジャンプ処理の説明に供する略線図である。 ゼロクロスを用いた読出アドレスジャンプ処理の説明に供する略線図である。 書込速度が読出速度よりも速い場合のディレイ量の変化を示す略線図である。 読出速度が書込速度よりも速い場合のディレイ量の変化を示す略線図である。 読出アドレスのジャンプタイミングを示す略線図である。 オーディオデータのデータ構造を示す略線図である。 直流成分が重畳したオーディオデータの波形を示す略線図である。 オーディオ入出力制御装置の回路構成を示す略線的ブロック図である。 ローレベル検出処理手順の説明に供するフローチャートである。 ゼロクロス検出処理手順の説明に供するフローチャートである。 オフセット検出器の構成を示す略線図である。 書込速度が読出速度よりも速い場合の読出アドレスジャンプ処理手順を示すフローチャートである。 読出速度が書込速度よりも速い場合の読出アドレスジャンプ処理手順を示すフローチャートである。 書込速度が読出速度よりも速い場合のアドレスジャンプイメージを示す略線図である。 読出速度が書込速度よりも速い場合のアドレスジャンプイメージを示す略線図である。
符号の説明
1……オーディオ入出力制御装置、2……ローレベル検出器、3……ゼロクロス検出器、4……制御部、5……オフセット検出器、6……ライトアドレスジェネレータ、7……リードアドレスジェネレータ、8……ライトスピード検出器、10……リングバッファ。

Claims (12)

  1. 外部から入力するオーディオデータを蓄積するメモリと、
    上記オーディオデータの上記メモリに対する書込速度と、上記メモリに蓄積された上記オーディオデータを一定速度で読み出す際の読出速度との速度差に応じて読出アドレスを強制的に変更するアドレス変更手段と、
    上記アドレス変更手段による変更前の読出アドレスに対応した上記オーディオデータの信号レベルと、変更後の読出アドレスに対応した上記オーディオデータの信号レベルとの間で信号レベル変化が少ないアドレス位置を上記変更後の読出アドレスとして決定する読出アドレス決定手段と
    を具えることを特徴とするオーディオ入出力制御装置。
  2. 上記読出アドレス決定手段は、
    上記変更前の読出アドレスに対応した上記オーディオデータの信号レベルと、上記変更後の読出アドレスに対応した上記オーディオデータの信号レベルとの間で信号レベル変化が少ないゼロクロス近傍のアドレス位置を上記変更後の読出アドレスとして決定する
    を具えることを特徴とする請求項1に記載のオーディオ入出力制御装置。
  3. 上記オーディオ入出力制御装置は、
    上記書込速度を検出する書込速度検出手段
    を具えることを特徴とする請求項1に記載のオーディオ入出力制御装置。
  4. 上記読出アドレス変更手段は、
    上記速度差によって上記書込アドレス又は上記読出アドレスが当該読出アドレス又は当該書込アドレスに追い付く前に上記読出アドレスを強制的に変更する
    ことを特徴とする請求項1に記載のオーディオ入出力制御装置。
  5. 上記読出アドレス変更手段は、
    上記書込アドレスと上記読出アドレスとの差が所定値を越えるときには上記読出アドレスの変更を行わず、上記差が所定値以下のときには上記読出アドレスを強制的に変更する
    ことを特徴とする請求項4に記載のオーディオ入出力制御装置。
  6. 上記読出アドレス決定手段は、
    上記オーディオデータに不要な直流成分が重畳していることを検出したときは、当該直流成分を除去した状態で上記変更後の読出アドレスを決定する
    ことを特徴とする請求項1に記載のオーディオ入出力制御装置。
  7. 外部から入力するオーディオデータのメモリに対する書込速度と、上記メモリに蓄積された上記オーディオデータを一定速度で読み出す際の読出速度との速度差を算出する速度差算出ステップと、
    上記速度差に応じて読出アドレスを強制的に変更するアドレス変更ステップと、
    上記アドレス変更ステップによる変更前の読出アドレスに対応した上記オーディオデータの信号レベルと、変更後の読出アドレスに対応した上記オーディオデータの信号レベルとの間で信号レベル変化が少ないアドレス位置を上記変更後の読出アドレスとして決定する読出アドレス決定ステップと
    を具えることを特徴とするオーディオ入出力制御方法。
  8. 上記読出アドレス決定ステップでは、
    上記変更前の読出アドレスに対応した上記オーディオデータの信号レベルと、上記変更後の読出アドレスに対応した上記オーディオデータの信号レベルとの間で信号レベル変化が少ないゼロクロス近傍のアドレス位置を上記変更後の読出アドレスとして決定する
    を具えることを特徴とする請求項7に記載のオーディオ入出力制御方法。
  9. 上記オーディオ信号入出力制御方法は、
    上記書込速度を検出する書込速度検出ステップ
    を具えることを特徴とする請求項7に記載のオーディオ入出力制御方法。
  10. 上記読出アドレス変更ステップでは、
    上記速度差によって上記書込アドレス又は上記読出アドレスが当該読出アドレス又は当該書込アドレスに追い付く前に上記読出アドレスを強制的に変更する
    ことを特徴とする請求項7に記載のオーディオ入出力制御方法。
  11. 上記読出アドレス変更ステップでは、
    上記書込アドレスと上記読出アドレスとの差が所定値を越えるときには上記読出アドレスの変更を行わず、上記差が所定値以下のときには上記読出アドレスを強制的に変更する
    ことを特徴とする請求項10に記載のオーディオ入出力制御方法。
  12. 上記読出アドレス決定ステップでは、
    上記オーディオデータに不要な直流成分が重畳していることを検出したときは、当該直流成分を除去した状態で上記変更後の読出アドレスを決定する
    ことを特徴とする請求項7に記載のオーディオ入出力制御方法。
JP2005038102A 2005-02-15 2005-02-15 オーディオ入出力制御装置及びオーディオ入出力制御方法 Expired - Fee Related JP4406838B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005038102A JP4406838B2 (ja) 2005-02-15 2005-02-15 オーディオ入出力制御装置及びオーディオ入出力制御方法
US11/352,884 US7711444B2 (en) 2005-02-15 2006-02-13 Audio input/output control apparatus and audio input/output control method
CN200610007653A CN100583274C (zh) 2005-02-15 2006-02-15 音频输入/输出控制装置和音频输入/输出控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005038102A JP4406838B2 (ja) 2005-02-15 2005-02-15 オーディオ入出力制御装置及びオーディオ入出力制御方法

Publications (3)

Publication Number Publication Date
JP2006227110A true JP2006227110A (ja) 2006-08-31
JP2006227110A5 JP2006227110A5 (ja) 2006-10-12
JP4406838B2 JP4406838B2 (ja) 2010-02-03

Family

ID=36923456

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005038102A Expired - Fee Related JP4406838B2 (ja) 2005-02-15 2005-02-15 オーディオ入出力制御装置及びオーディオ入出力制御方法

Country Status (3)

Country Link
US (1) US7711444B2 (ja)
JP (1) JP4406838B2 (ja)
CN (1) CN100583274C (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011197598A (ja) * 2010-03-24 2011-10-06 J&K Car Electronics Corp 高調波生成方法、高調波生成装置、及び、プログラム
KR101410523B1 (ko) 2007-11-16 2014-06-20 삼성전자주식회사 음성 데이터를 처리하는 버퍼 제어 장치 및 방법
WO2014115696A1 (ja) * 2013-01-28 2014-07-31 シナノケンシ株式会社 音声データ再生速度変換方法および音声データ再生速度変換装置
US10242655B1 (en) 2017-09-27 2019-03-26 Casio Computer Co., Ltd. Electronic musical instrument, method of generating musical sounds, and storage medium
US10474387B2 (en) 2017-07-28 2019-11-12 Casio Computer Co., Ltd. Musical sound generation device, musical sound generation method, storage medium, and electronic musical instrument
CN112423120B (zh) * 2020-01-22 2023-09-01 上海哔哩哔哩科技有限公司 音频时延的检测方法及系统

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4692610B2 (ja) * 2008-11-26 2011-06-01 ソニー株式会社 信号伝送システム、インターフェース装置、及び信号伝送方法
TWI648732B (zh) * 2016-05-13 2019-01-21 景相科技股份有限公司 聲音同步存取方法以及使用其之聲音播放系統
JP7299864B2 (ja) * 2020-09-24 2023-06-28 Tvs Regza株式会社 受信装置、コンピュータプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6175396A (ja) 1984-09-20 1986-04-17 ティーオーエー株式会社 音程変換装置
JP3189587B2 (ja) 1994-09-14 2001-07-16 松下電器産業株式会社 音声時間軸変換装置
US5920842A (en) * 1994-10-12 1999-07-06 Pixel Instruments Signal synchronization
JPH08202391A (ja) 1995-01-30 1996-08-09 Sanyo Electric Co Ltd 話速変換装置
US5850572A (en) * 1996-03-08 1998-12-15 Lsi Logic Corporation Error-tolerant video display subsystem
JP2000138591A (ja) 1998-10-29 2000-05-16 Sanyo Electric Co Ltd オーディオ再生装置
US6304924B1 (en) * 1999-02-02 2001-10-16 International Business Machines Corporation Two lock-free, constant-space, multiple-(impure)-reader, single-writer structures
JP3420210B2 (ja) 1999-12-02 2003-06-23 松下電器産業株式会社 映像記録装置、映像記録方法
SE517156C2 (sv) * 1999-12-28 2002-04-23 Global Ip Sound Ab System för överföring av ljud över paketförmedlade nät
US6977897B1 (en) * 2000-05-08 2005-12-20 Crossroads Systems, Inc. System and method for jitter compensation in data transfers
JP2002232846A (ja) 2001-02-05 2002-08-16 Matsushita Electric Ind Co Ltd 映像音声処理装置および映像音声処理方法
US7659904B2 (en) * 2003-04-07 2010-02-09 Ati Technologies Ulc System and method for processing high priority data elements

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101410523B1 (ko) 2007-11-16 2014-06-20 삼성전자주식회사 음성 데이터를 처리하는 버퍼 제어 장치 및 방법
JP2011197598A (ja) * 2010-03-24 2011-10-06 J&K Car Electronics Corp 高調波生成方法、高調波生成装置、及び、プログラム
WO2014115696A1 (ja) * 2013-01-28 2014-07-31 シナノケンシ株式会社 音声データ再生速度変換方法および音声データ再生速度変換装置
US9361905B2 (en) 2013-01-28 2016-06-07 Shinano Kenshi Kabushiki Kaisha Voice data playback speed conversion method and voice data playback speed conversion device
US10474387B2 (en) 2017-07-28 2019-11-12 Casio Computer Co., Ltd. Musical sound generation device, musical sound generation method, storage medium, and electronic musical instrument
US10242655B1 (en) 2017-09-27 2019-03-26 Casio Computer Co., Ltd. Electronic musical instrument, method of generating musical sounds, and storage medium
CN112423120B (zh) * 2020-01-22 2023-09-01 上海哔哩哔哩科技有限公司 音频时延的检测方法及系统

Also Published As

Publication number Publication date
US20060193601A1 (en) 2006-08-31
CN100583274C (zh) 2010-01-20
CN1822188A (zh) 2006-08-23
US7711444B2 (en) 2010-05-04
JP4406838B2 (ja) 2010-02-03

Similar Documents

Publication Publication Date Title
JP4406838B2 (ja) オーディオ入出力制御装置及びオーディオ入出力制御方法
US20030113095A1 (en) After-recording method and apparatus for digital recording medium and reproduction method and apparatus for the digital recording medium
JP7201033B2 (ja) 音データ処理装置、音データ処理方法及びプログラム
JP4864460B2 (ja) 再生装置、再生方法およびプログラム
JP4247685B2 (ja) 複数トラックオーディオ制御装置及び複数トラックオーディオ制御方法
US7385129B2 (en) Music reproducing system
JP2001103401A (ja) 信号再生方法および信号再生装置
JP2005259201A (ja) コンテンツ記録システム
JPS61255575A (ja) 録音システム
JP2008076847A (ja) 復号器及び信号処理システム
JP3173678B2 (ja) メモリ制御回路及びデイスク再生装置
JP2006262045A (ja) コンテンツ再生装置
JP2004220638A (ja) 映像記録再生装置
JP2006301507A (ja) 再生単位分割装置及び再生単位分割方法
JP2722764B2 (ja) メモリ再生装置
JP2005353181A (ja) 情報処理装置
JP2001177803A (ja) オーディオ信号処理方法、オーディオ信号再生装置、ハイファイビデオ装置、ディジタルビデオ装置、8mmビデオ装置
JP2008097781A (ja) 音声再生装置
JP4081735B2 (ja) ビデオ編集に付随するオーディオ編集方法
JP2000348473A (ja) 音声記録装置
JP2002171479A (ja) 複合情報記録装置
JP2006185527A (ja) ファイル再生装置、制御方法及びプログラム
JP2007157263A (ja) 記録再生装置及びつなぎ記録方法
JPH09282800A (ja) ディジタルオーディオ信号の再生方法およびそれを使用した再生装置
JP2004064390A (ja) パケット補間装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060711

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060711

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090303

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090511

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091015

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091028

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121120

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees