JPS6288027A - 音声バッファ・システム - Google Patents

音声バッファ・システム

Info

Publication number
JPS6288027A
JPS6288027A JP61185389A JP18538986A JPS6288027A JP S6288027 A JPS6288027 A JP S6288027A JP 61185389 A JP61185389 A JP 61185389A JP 18538986 A JP18538986 A JP 18538986A JP S6288027 A JPS6288027 A JP S6288027A
Authority
JP
Japan
Prior art keywords
buffer
block
audio
application
record
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
JP61185389A
Other languages
English (en)
Other versions
JPH0476131B2 (ja
Inventor
ジユアン・ナイ・フアム
ジヨン・ハイデン・ウイルソン
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS6288027A publication Critical patent/JPS6288027A/ja
Publication of JPH0476131B2 publication Critical patent/JPH0476131B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は、音声バッファの管理を行うシステムに関する
ものであり、さらに詳しくは、リアル・タイムで音声メ
ツセージをバッファリングするシステムであって、バッ
ファリングされた音声メツセージのプロデューサおよび
コンシューマが異なるレコード・サイズの音声メツセー
ジを操作するものに関する。
B、従来技術 今日の情報処理環境においては、音声入力および音声出
力を行うことは、ますます普及しつつある。情報処理シ
ステムに音声を入力する能力があれば、そのような処理
システムの用途に広がる。
例えば、ユーザーが遠くから電話に向かってしゃべるだ
けでデータを入力することが可能になる。
電話のキーバッドを使う精巧なコーディング設計はいら
なくなる。さらに、システムに入力されるデータ量が、
キーバッドを用いてコード・インできるデータ量による
制限を受けなくなるので、大幅に増える。さらに音声入
力によってもたらされる利益は、キーボードを楽に扱え
ないユーザでも。
極めて簡単に、データのキーバンチの仕方を習うのに法
外な時間をかけることなく、データを入力できることで
ある。
情報処理システムに音声能力を提供する一つの方策は、
ホスト・プロセッサとともに信号プロセッサを用いて、
データの入出力とシステム内のデータの処理の両方を制
御することである。アナログ・オーディオ情報の入力、
デジタルへの変換。
利得制御および圧縮は、すべて信号プロセッサの制御下
で行われる。そこで問題となるのは、システムに入力中
のデジタル化された音声メツセージのバッファリングを
どうするかということである。
そのような問題は、信号プロセッサのバッファ・メモリ
の量が比較的少なく、小さなデータのブロックを極めて
頻繁にホスト・システムに転送する必要がある一方、ホ
スト・システムには相当量の使用可能なメモリがあり、
媒体の実行特性と整合させるため、大きなデータのブロ
ックを少ない頻度で記憶媒体に転送する必要のあるシス
テムにおいて、起こる。そこで、音声を入力からディス
ク・ファイルヘバツファリングする手段が求められる。
このようなバッファリングは、リアル・タイムで行われ
なければならない、ユーザーが話すと同時に、システム
上で実行されるアプリケーション・プログラムがバッフ
ァリングされた音声をディスクに記憶でき、その結果、
システムに入力できる音声データの量を制限せずに、連
続的な音声を許容できるようにするためである。一時に
音声メツセージの全体を受信するように制限されている
バッファによれば、システムに音声データを入力する方
策は不自然なものになる。有用であるためには、音声バ
ッファリングのための方策は、音声データを設定長に制
限することなく、入力されるままに音声データを受信可
能とするものでなければならない。
ディスク記憶媒体に対するこのようなリアル・タイム・
バッファリング能力をもたらすためには、バッファリン
グ機構は、アプリケーションによってディスクに転送さ
れるブロックのサイズを構成できるほど、フレキシブル
なものでなければならない。さらに、バッファリング機
構は、以前の転送が、リアル・タイムで行われる音声デ
ータの生成に遅れていないかについて、絶えずアプリケ
ーションにフィードバックできるものでなければならな
い。
米国特許第4193123号明細書には、音声セグメン
トを表わすデジタル・ワードと用いられるファースト・
イン・ファースト・アウト式のバッファが開示されてい
る。デジタル・ワードは、バッファに第一の速度で入力
され、バッファからは第一の速度より遅い第二の速度で
読み取られ、そしてD/A変換器に印加される。第一の
ビットがバッファに書き込まれた後は、一定時間がたつ
まで、音声を表わすビットはバッファから読み取られな
い、誤り信号は、バッファが空になったときと、バッフ
ァが一杯になったときに1発生する。
しかしながら、リアル・タイムで音声データのバッファ
リングを行う概念は開示されていない。
米国特許第3727204号明細書には、非同期式のバ
ッファリング装置が開示されている。該装置のバッファ
は、情報シフト・レジスタと、ブックキーピング・レジ
スタとを含む。このバッファリングの方策は、シフト・
レジスタの情報シフト速度とブック・キーピング・レジ
スタの情報シフト速度を相互に適合させるものである。
すなわち、該方策によれば、二つのレジスタはタイミン
グのとれた関係に置かれる。しかしながら、該装置では
、二つのレジスタの情報がそれぞれの速度で走り、かつ
バッファへのデータの流れに適応することはできない。
米国特許第3166715号明細書には、記録媒体に応
じた様々な速度で、そして様々な記録密度で鉤作する非
同期式のシフト・レジスタが記載されている。しかしな
がら、バッファリングされたデータのコンシューマとプ
ロデューサが、異なる速度で動作するという概念は開示
されていない。
C0発明が解決しようとする問題点 このように、バッファを操作する資源が異なる速度で走
り、異なるレコード・サイズを要求するような状況を、
音声バッファ管理システムが扱えるようになる必要があ
る。このような必要性が生じるのは、信号処理環境にお
いて、音声メツセージは予期せぬ時に生成、消費され、
しかも様々な記憶媒体に記憶されるのが通例だからであ
る。結果として、バッファのスペースをめぐる競合と待
合せの管理は困難なものになる。
そこで1本発明は、バッファリング技術の改良を目的と
している。
本発明の他の目的は、音声メツセージをリアル・タイム
でバッファリングするシステムを提供することにある。
本発明のさらに他の目的は、バッファリングされたデー
タのプロデューサとコンシューマが、異なる速度で、そ
して異なるレコード・サイズで動作する信号処理システ
ムにおける、バッファの管理システムを提供することに
ある。
D9問題点を解決するための手段 このような目的を達成するために、ディジタル化された
音声信号が入っている固定長レコードが高速度で繰り返
しバッファに入力されるとともに、入力レコードの倍数
分からなるブロックが十分低速度で取り出される音声バ
ッファ管理システムが提供される。ディジタル化された
音声データのプロデューサは、入力アナログ・オーディ
オ信号を圧縮されたディジタル信号に変換する信号処理
システムである。バッファリングされたデジタル音声デ
ータのコンシューマは、アブヶーション・プログラムで
あり、これによって、データ・レコードの倍数分からな
るブロックがバッファから取り出され、他の媒体へ転送
される。
E、実施例 概要 以下に述べる好ましい実施例において、バッファとは、
全部でNレコードからなり1Mレコードで1ブロツクを
形成するリング型のバッファをいう。したがって、バッ
ファはN/Mブロックを有する。バッファの動作の制御
に用いられるポインタは二つある。すなわち、プロデュ
ーサ・ポインタは、ブロックの中の次に書き込みが行わ
れるレコードを指示する一方、コンシューマ・ポインタ
は、バッファの中の次に読み取りが行われるブロックを
指示する。
信号処理システムは、音声データの記録と記憶を制御す
るいくつかの機能を提供する。音声記録が開始されると
、信号処理システムは、バッファを先頭から音声データ
・レコードで充てんし始める。バッファが終わりになる
まで、バッファは充てんされ続ける。バッファが終わり
になったときは、バッファの先頭のブロックが使用可能
になれば、また先頭から充てんが始まる。このような音
声バッファの充てんの循環過程の際に、ソフトウェア・
アプリケーションは、提供されている機能の一つを用い
て、未処理で、かつ最も古い完全な音声レコードのブロ
ックのアドレスを得る。次に、ソフトウェア・アプリケ
ーションは、このアドレスを用いて、音声データのブロ
ックをどこでも記録の記憶を望む所に書き込む。この機
能は、ほかに二つの目的を果たす。第一には、該機能に
より、信号処理システムに対して、前ブロックが今は解
放されており、より多くの音声データ・レコードを保持
できることを示す。第二には、一杯になっているブロッ
クの数を戻す。この数は、アプリケーションによって、
リアル・タイムのデータ速度に遅れていないかどうかの
指示として用いられる。
また、次に、信号処理システムから来るレコードを記憶
するスペースがバッファにないときは、いつでもアプリ
ケーションに割り込みかがけられる。
このレコード、そして続くレコードはすべて、アプリケ
ーションがバッファから古いデータを移動してしまうま
で、放棄される。これらの放棄されたレコードは、再生
時の音声の不連続の原因となり得る。
本実施例で開示されるバッファリングの方策は。
反対方向(オーディオ再生)にも用いられる。この反対
モードでは、アプリケーションによる制御の下、バッフ
ァは記憶済の音声データのレコードによって充てんされ
ている。再生が開始されると、デジタル化された音声デ
ータを信号プロセッサに渡すために、信号処理システム
はバッファの先頭からレコードを用い始める。信号処理
システムは、バッファが終わりになるまでバッファから
レコードを使い続ける。バッファが終わりになったとき
は、バッファの先頭のブロック1を新しいオーディオレ
コードが入っている限り、また先頭から始める。音声バ
ッファの再生過程の際に、アプリケーションは、提供さ
れているもう一つの機能を用いて、既に再生浴の、最も
古い音声レコードのブロックのアドレスを得る。次に、
アプリケーションは、このアドレスを用いて、次のレコ
ードのセットを記録済ファイルからバッファに読み取る
記録時と同様にして、この機能を用いることによって、
酸ブロックが今は新しいデータで一杯であることが信号
処理システムに示される8また、空のブロックの数が戻
される。この数は、アプリケーションによって、データ
を送る速度がリアル・タイムの要求に遅れない程度に速
いかどうかの指示として用いられる。万一バッファが空
になると、アプリケーションに割り込みがかけられ、ア
プリケーションがバッファにもつと音声レコードを与え
るまで、信号処理システムは沈黙する。
最良の実施態様 第1図に示されるように、デジタル化された音声サンプ
ルは、回線34を通して信号処理システム50の記録バ
ッファ15に入力される。記録バッファ15は、ピンポ
ン型のバッファであり1個別のバッファ17.18から
成り立っている。回線34を通して入力されるデジタル
化された音声サンプルは、バッファ17または18のど
ちらが空いている方へ向けられる。第1図に示されるよ
うに、バッファ18が充てん済のとき、バッファ17は
空である。デジタル化された音声サンプルは、実質的に
エンドレスのストリームであり1本質的に連続的な明瞭
な音声メツセージを表現する。
ストリームは、音声がシステム50に入力中である限り
続く。システム5oに久方可能な音声データの量は予め
制限されてはいない。
次に、矢印19で記されるように、デジタル化された音
声サンプルは、記録バッファ15がらハードウェア°イ
ンタフェース44を越え、ホスト・システム12に常駐
するバッファ20に伝送される。バッファ20は8個の
レコードがら成る。バッファ20の最初の二つのレコー
ドは、レコード22.25である。レコード22.25
は一緒になってブロック26を構成する。一般に、信号
処理システム50によれば、アプリケーション10がバ
ッファ20の中のレコードの数および1ブロツクの中の
レコードの数を指定することができる。
本実施例では、バッファ20の中の二つのレコードによ
って一つのブロックが形成されている。ポインタ23は
、デジタル化された音声が、矢印19に従って、記録バ
ッファ15からバッファ20の次に使用可能なレコード
へ転送されるのを管理する。この例では、ポインタ23
によって、ブロック26のレコード22が、次にデータ
が入力される使用可能なレコードであることが示されて
いる。バッファ20はリング型のバッファであり、左か
ら右へ、ページを越えて充てんされる。記録バッファ1
5は、一時に一つのレコードをバッファ20へ転送する
。したがって、ブロック26のようなバッファ20の1
ブロツクを充てんするには、レコードの転送を二度行う
ことになる。
第1図に示されるように、ブロック27は音声データに
よって充てん済である。矢印29は、情報がブロック2
7からアプリケーション・プログラミング・インタフェ
ース11を越えて転送されることを記している。アプリ
ケーション・プログラミング・インタフェース11を越
える転送は。
すべて1ブロツクずつ行われる。ポインタ28は、次に
インタフェース11を越えて転送されるブロックの始ま
りを示すのに用いられる。プログラミング・インタフェ
ース11を越える情報の転送は、プログラミング・イン
タフェース11を用いるホスト12の上で走るソフトウ
ェア・アプリケーション10(第5図参照)の制御の下
で行われる。
アプリケーション10、アプリケーション・プログラミ
ング・インタフェース11、ホスト12および信号処理
システム50の間の対話については、後で第5〜7図を
参照しつつ、より詳細に説明する。
第2図は逆の処理、すなわち、オーディオ再生について
示す。この場合、1ブロツクのデータは。
矢印31に従って、インタフェース11を越えて転送さ
れる。ここでも、インタフェース11を越える転送は、
すべて1ブロツクずつ行われる・ボインタ23は、バッ
ファ20の中の情報がインタフェース11を越えて入力
される次のブロックを示す。この場合、情報はブロック
27に入力される。ポインタ28は、今度は、ホスト1
2のバッファ20からハードウェア・インタフェース4
4を越えて記録バッファ15へ転送される次のレコード
を指示する。そのような転送は、矢印32によって示さ
れている。この場合、バッファ17は既に充てん済なの
で、レコード33は記録バッファ15のバッファ18へ
転送される。そして、音声情報は2回@34を通して出
力される。
第3図のフロチャートには、記録バッファ15からバッ
ファ2oへの情報の転送が記述されている。第3図用に
、バッファ20をAPI(アプリケーション・プログラ
ム・インタフェース)バッファと計うことにする。すな
わち、これら二つの用語は交換可能である。APIバッ
ファ、つまりバッファ20がホスト12に常駐すること
は強調されなければならない。判断ブロック81では、
APIバッファが一杯か否かについて判断される6バツ
フア20が一杯の場合、記録バッファ15からハードウ
ェア・インタフェース44を越えてデータが転送される
ことはない。しかしながら、APIバッファが一杯でな
い場合、すなわち、少なくとも一つのレコードが空の場
合、バッファ17またはバッファ18の一方の内容はA
PIバッファへ転送される。バッファ17または18の
一方の情報の転送については、ステップ82.83゜8
4に記されている。矢印19に従って転送が行われた後
、ステップ85に従い、ポインタ23は1ブロツク用増
加される。この場合、ポインタ23が増加して、レコー
ド22はもう一杯であり、次に充てんされるレコードは
レコード25であることが示される。最後に、ステップ
86に示されるように、APIバッファ20の中の充て
ん済のレコード数のカウントが、1だけ増加する。レコ
ードのカウントを増す、または、そもそも保存する理由
は、第4図に関連してより明確に説明される。
第4図のフローチャートには、APIバッファ20から
インタフェース11を越えて行われる情報の転送が記さ
れている。ステップ87では、バッファ20の中に、イ
ンタフェース11を越えて転送するための、使用可能な
充てん済のブロックがあるか否かについて判断される。
この判断は、まず、保存中のレコード・カウントが、ブ
ロック・カウント以上であるかについて判断することに
よって行われる。ここで、ブロック・カウントは、1ブ
ロック当りのレコードの数に等しい。本実施例では、1
ブロック当りのレコードの数は2である。したがって、
バッファ20からインタフェース11を越えて行われる
ブロックの転送は、レコード・カウントが少なくとも2
に等しいときに起こる。第4図に示されるように、レコ
ード・カウントがブロック・カウントよりも小さいとき
は。
インタフェース11を越えて転送が起こることはない。
しかしながら、一旦レコード・カウントがブロック・カ
ウント以上になると、転送が行われるとともに、ステッ
プ88に示されるように、ポインタ28は2(ブロック
・カウント、つまり1ブロック当り2レコードというこ
と)だけ増加される。その結果、ポインタ28は、バッ
ファ20からインタフェースを越えて転送される次のブ
ロックを示す。この場合、ポインタ28は、ブロック2
7の直ぐ右のブロックを指示する。さらに、ステップ8
9に示されるように、レコード・カウントは、ブロック
・カウント、つまり2だけ減らされる。そのようにする
理由は、バッファ20からインタフェース11を越えて
ブロックが転送される度に、二つのレコードが転送され
るからである。例えば、転送前に、バッファ20の中で
、4レコード、したがって、2ブロツクが充てん済であ
ったとすれば、記t−★バッファ15から新たな転送が
行われる前に、バッファ20の中で充てん済のままにな
るのは2レコードだけになるのである。
第5図は、単純化された機能ブロックの形で、アプリケ
ーション10および信号処理システム50の、入出力コ
マンドおよび割込みを示す。アプリケーション10は、
プログラミング、インタフェース11を越えて、それぞ
れホスト・システム12に位1aされるドライバ41、
インプレメンテ−ジョン・コード42およびハードウェ
ア割込みルータ43と対話する。ハードウェア・インタ
フェース44は、ホスト処理システム12と信号処理シ
ステム50との境界を形成する。アプリケーション・コ
マンドは一命令メモリ21の区画24で終わる一方、割
込みは区画24で始まる。区画24は、信号ヅロセツサ
制御プログラムを含む。
この制御プログラムは、区画92.93.94の命令メ
モリ21を管理して、区画92.93.94の信号処理
コードが同時に走ることを可能にし。
その結果、信号処理システム50の資源の共用を図る。
プログラミング・インタフェース11を規定するコマン
ドおよび割込みは、第6図および第7図を参照して、よ
り詳細に説明する。
第6図は、アプリケーション10からインタフェース1
1を越え、ホスト12を通って信号処理システム50に
至るコマンドの流れを詳しく説明している。アプリケー
ション10からインタフェース11に入力されるコマン
ドには、二つのタイプの識別が含まれている。第一のタ
イプの識別は、使用されるべき機能セットについてであ
り、この識別により、適当な制御ブロック51が選択さ
れる。制御ブロック51は、インプレメンテ−ジョン・
コード42をアクセスする。第二のタイプの識別は、与
えられた機能セットの中の特定コマンドについてである
。ドライバ41は、これらのコマンドを取り出し、次い
で、これらをインプレメンテ−ジョン・コード42の適
当な位置へ回す。
インタフェース11およびドライバ41に入力されるコ
マンドの一部である制御ブロック選択情報は、特定の制
御ブロック51を識別する。この制御ブロック51は、
コマンド・ベクトル・ブロック52の始まりを指示する
ポインタ・ブロック71を含む。コマンドに含まれるコ
マンド・コード情報は1回線72を通して出力される。
ポインタ・ブロック71からのポインタ情報と一緒にな
って、コマンド・コードは、このコマンド・コードに該
当するコマンド・ベクトル52の特定位置を指示または
索引づけする。実行後、コマンド・ベクトル52は、コ
マンド・プロセッサ53の中の特定のインプレメンテ−
ジョン・コードを指示する。
必要とされるこの特定のコードを見つけた後、ドライバ
41は、必要とされるコードを含むこのコマンド・プロ
セッサ53に制御権を渡す。事実上コマンド・ベクトル
52は、回線72およびポインタ・ブロック71を通し
て出されるコマンド・コードとともに、アドレス指定機
能を営む。したがって、コマンド・プロセッサ53は、
アプリケーション10から信号処理システム50へ出力
される特定のコマンドを実現する。
第7図は、信号処理システム50からホスト12へ帰っ
てインタフェース11へ、そしてアプリケーション10
の中のアプリケーション割込みルーチン61へ至る割込
みの流れを詳細に示す。割込みは信号処理システム50
によって起こされ、ハードウェア・インタフェース44
を越えて、回線73を通してハードウェア割込みルータ
43へ出力される。割込みは、区画情報と割込みのタイ
プについての情報とを両方含む。区画情報は、制御ブロ
ック66を識別するのに用いられる。制御ブロック66
は、割込みベクトル67の開始点を指示するポインタ7
2を含む。割込みのタイプは、回線75を通して入力さ
れる。ポインタ72と一緒になって、割込みベクトル・
ブロック67の正しい開始点がアクセスされる。実行後
、割込みベクトル67は、割込みハンドラ68の入力点
を指示する。次にハードウェア割込みルータ43は、割
込みハンドラ68に対する割込みの経路指定を行う。次
に1割込みハンドラ68は、アプリケーション割込みベ
クトル64を通じてアプリケーション割込みルーチン6
1に至るまでの割込みを実行して回す。回線63を通し
てアプリケーション割込みルーチン61に提供される情
報には、どの割込みが起きて、アプリケーション10に
割込み処理の制御権を渡すかについての情報が含まれる
アプリケーション10に制御権が渡された後、状況読取
りコマンドが、アプリケーション1oから出力される。
次に、状況読取り情報は、回線62を通して1割込み状
況ブロック65からアプリケ−ジョン割込みルーチン6
1に入力される。この信号は、送られたばかりの割込み
に関してより多くの情報を提供するものであり、かつ、
以前の状況読取りコマンド以後に起こったすべての割込
みを、アプリケーション割込みルーチン61に知らせる
。割込み状況ブロック65は、ハードウェア割込みルー
タ43によって割込みハンドラ68がアクセスされる度
に、割込みハンドラ68によって更新される。
記録または再生機能セットのように機能セットは、二つ
のソフトウェア・ファイルを含む。一つはホス1〜処理
システム12のためのものであり、もう一つは信号処理
システム50のためのものである。機能セットが活動化
されると1両方のファイルはホスト12のメモリ(図示
省B!s)にロードされ、次いで、信号処理コードが命
令メモリ21にダウンロードされる。このダウンローデ
ィングは、基本的には、ベース区画94によって行われ
るメモリ対メモリの移動である。このダウンローディン
グは、他の区画、すなわち、92.93の一方が実行さ
れている間に行うことができる。
動作中に、デジタル化された音声をバッファ20に転送
する必要が生じると、アプリケーション10はBUFF
INIT (バッファ初期設定)コマンドを出し、音声
データが転送されるホスト12の中のバッファを指定す
る。BUFFINITコマンドの目的は、バッファ20
をRECORD(記録)機能セットを結びつけ、バッフ
ァ20での音声データのバッファリングを可能にするこ
とにある。このとき、新しい空のバッファが設定される
。次に、アプリケーション10によって5TART (
開始)コマンドが出され、バッファ20への音声データ
の入力が開始される。もし、これがBUFFINITの
後の最初の5TARTコマンドならば、RECORD機
能セットは、バッファ20が空であると解し、バッファ
の先頭、つまりレコード22へ、音声データを記録し始
める。
バッファ20への音声データの入力は、5TOP(終了
)コマンドによって停止される。バッファ20の充てん
過程の際、アプリケーション10は、LISTEN(リ
スン)コマンドを用いて、未処理、すなわちインタフェ
ース11を越えて転送されていなくて、かつ最も古い完
全な音声レコードのブロックのアドレスを得る。該アド
レスは、完全なブロック(その点から使用可能なブロッ
ク)の数と一緒に戻される。次に、アプリケーション1
0は、この情報を用いて、どこでも音声データの記憶を
望む所へ、インタフェース11を越えて音声データで転
送された後に、ブロックを書き込む。次にアプリケーシ
ョン10によって出力されるLISTENコマンドは、
RECORD機能セットに対して、このブロックが今は
解放されてより多くの音声データを保持できることを示
す。
また、アプリケーション1oは、L I 5TENによ
って戻された完全なブロックの数を用いて、音声データ
の生成に遅れていないか、つまり、音j!#データはバ
ッファリング中であって失われていないかどうかの指示
とすることができる。バッファ20が一杯になり、かつ
依然として音声データを記録バッファ15から受信中の
場合は、5PEECU  LO5T(音声損失)割込み
条件が生じ。
過剰の音声データのレコードは、次のL I 5TEN
がバッファ20のスペースを解放するまで、放棄される
。そのようなことが起こると、記録は不連続なものにな
ってしまう。第二の割込み条件は、REC()RD (
記録)条件テ;J> ’) 、 RE CORD(記8
)条件は、各処理済レコードの先頭で生じる。割込み条
件の最後は、5ILENCE (沈黙)条件であり、記
録動作中に、沈黙が一定期間を越えた場合に生しる。こ
のような事態になると、5TOPコマンドが出され、記
録は終わる。RECORD機能セットで用いられるコマ
ンドの最後は、に)Δ1’AEND(データ・エンド)
コマン1(である。DATAENDコマンドは、5TO
r’コマンドによってRECORD機能が終了した後、
残っているデータをバッファ15から出し尽くし、最後
のブロックのバッファ20への記録を完了させる。
第2図に示されるように再生機能では、BUFFINI
Tコマンドは、バッファ20をPLAYBACK (再
生)機能セラ1〜と結びつけるのに用いられる。このコ
マンドは、インタフェース11を越えてホスト12の中
の選択されたバッファに転送される音声データが通るバ
ッファを与えるのに用いられる。BUFFINITコマ
ンドが出されるときに、ホス1−12の中でバッファが
現に設定されていて動作中であるときは、インタフェー
ス11の下の他のどんなバッファリング済音声データと
も一緒に放棄される。S T A RTコマンドは、イ
ンタフェース11を越えてバッファ20へ、そして信号
処理システム50の中の記録バッファ15へ、音声デー
タの転送を開始する。5TOPコマン1〜は、音声デー
タがバッファ20がらハードウェア・インタフェース4
4を越えて記録バッファ15へ転送されるのを終了する
のに用いられる。
インタフェース11を越えてバッファ20へ。
そしてインタフェース44を越えて記録バッファ15へ
、という音声データの転送の循環過程の際に、アプリケ
ーション10は、5PEAK (スピーク)コマンドを
用い、既に再生済の、最も古い完全な音声レコードのブ
ロックのアドレスを得る。
このブロックのアドレスは、その点からの使用可能な空
のブロックの数と一緒に戻される。そして、アプリケー
ション10は、このアドレスを用いて、次のレコードの
セットをバッファ2oに読み取る。
次に51)E A Kを用いると、再生機能セラ1−に
は、このブロックが今は新しいレコトードで一杯であっ
て、再生可能であることが示される。アプリケーション
[Oは、5PCAKによって戻された空のブロックの数
を用いて、再生速度に遅れていないかどうかの指示とす
ることができる。バッファ20が空になり、かつ、再生
、つまり記録バッファ15への音声データの転送が終了
した場合は、5PEECII  Loss (音声損失
)割込み条件が生じる。この結果、再生に不連続が生じ
る。RECORD  PROCESS (記録処理)割
込み条件は、各処理済レコードの先頭で生じる。この割
込みによって、ポインタ28の増加が図られる。
5TARTおよび5TOPコマンドは、再生機能セラ1
−において、前記RE CORD 機能セットの場合と
同様の使い方をされる。違う点は、音声データの流れが
逆向きだということである。
以−1;1本発明をその好ましい実施例について説明し
たが、本発明の要旨を逸脱しない範囲で、種々の変形が
1耳能であることは:1うまでもない。
F2発明の効果 本発明の音声バッファ管理システムによれば、(1)音
声メツセージをリアル・タイムでバッファリングするこ
とが可能である。
(2)バッファリングされた音声メツセージのプロデュ
ーサとコンシューマが、異なる速度で動作することが可
能である という優れた効果が得られろ。
【図面の簡単な説明】
第1図は本発明の一実施例における音声バッファ・シス
テムの機能ブロック図であり、記録モードを示す。 第2図は同実施例の音声バッファ・システムの機能ブロ
ック図であり、再生モードを示す。 第3図はフロチャートであり、信号処理システムからホ
スト・システムへの情報の転送を記す。 第4図はフロチャートであり、ソフトウェア・アプリケ
ーションによる制御の下での、ホスト・システムからフ
ァイルへの情報の転送を示す。 第5図は単純化した機能ブロック図であり、本実施例の
全体のシステムを示す。 第6図は単純化した機能ブロック図であり、アプリケー
ション・プログラムからプログラミング・インタフェー
スを越え、ホスト処理システムを通って信号処理システ
ムへ至るコマンドの流れを示す。 第7図は単純化した機能ブロック図であり、信号処理シ
ステムからホスト処理システムを通ってアプリケーショ
ン・プログラムに帰る割込みの流れを示す。

Claims (1)

  1. 【特許請求の範囲】 本質的に連続的な、明瞭な音声メッセージを表現する、
    実質的にエンドレスの音声データのストリームを受信す
    る手段と、 受信した実質的にエンドレスの音声データのストリーム
    を記憶する手段と、 前記音声メッセージがもとのまま残つている前記記憶さ
    れた音声データのストリームを、リアル・タイムで出力
    する手段 とを含むことを特徴とする音声バッファ管理システム。
JP61185389A 1985-10-11 1986-08-08 音声バッファ・システム Granted JPS6288027A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/786,914 US4841574A (en) 1985-10-11 1985-10-11 Voice buffer management
US786914 1985-10-11

Publications (2)

Publication Number Publication Date
JPS6288027A true JPS6288027A (ja) 1987-04-22
JPH0476131B2 JPH0476131B2 (ja) 1992-12-02

Family

ID=25139935

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61185389A Granted JPS6288027A (ja) 1985-10-11 1986-08-08 音声バッファ・システム

Country Status (7)

Country Link
US (1) US4841574A (ja)
EP (1) EP0218073A3 (ja)
JP (1) JPS6288027A (ja)
KR (1) KR870004373A (ja)
CN (1) CN1004031B (ja)
AR (1) AR242675A1 (ja)
BR (1) BR8604621A (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2201862B (en) * 1987-02-10 1990-11-21 Dictaphone Corp Digital dictation system with voice mail capability
US5103467A (en) * 1989-10-31 1992-04-07 Motorola, Inc. Asynchronous voice reconstruction for a digital communication system
US5239387A (en) * 1989-11-30 1993-08-24 Hewlett-Packard Company Buffering control for accommodating variable data exchange rates
US5126982A (en) * 1990-09-10 1992-06-30 Aaron Yifrach Radio receiver and buffer system therefore
US5301274A (en) * 1991-08-19 1994-04-05 Multi-Tech Systems, Inc. Method and apparatus for automatic balancing of modem resources
US5329320A (en) * 1992-12-03 1994-07-12 Aharon Yifrach TV receiver and buffer system therefor
DE69427212T2 (de) * 1993-07-30 2001-11-15 Texas Instruments Inc., Dallas Modulare Audiodaten-Verarbeitungsarchitektur
US5533103A (en) * 1994-04-28 1996-07-02 Electronic Information Systems, Inc. Calling system and method
US5619554A (en) * 1994-06-08 1997-04-08 Linkusa Corporation Distributed voice system and method
US5463599A (en) * 1994-08-23 1995-10-31 Yifrach; Aharon Radio receiver and buffer system therefor
US5497337A (en) * 1994-10-21 1996-03-05 International Business Machines Corporation Method for designing high-Q inductors in silicon technology without expensive metalization
WO1996021185A1 (en) * 1995-01-04 1996-07-11 Philips Electronics N.V. A speech-actuated control system for use with a consumer product
US5787231A (en) * 1995-02-02 1998-07-28 International Business Machines Corporation Method and system for improving pronunciation in a voice control system
US5797042A (en) * 1995-03-16 1998-08-18 Intel Corporation Method and apparatus for adjusting the buffering characteristic in the pipeline of a data transfer system
US5867559A (en) * 1996-02-20 1999-02-02 Eis International, Inc. Real-time, on-line, call verification system
EP0907161B1 (en) * 1997-09-18 2001-07-11 Victor Company Of Japan, Ltd. Apparatus for processing audio signal
MY118991A (en) * 1997-09-22 2005-02-28 Victor Company Of Japan Apparatus for processing audio signal
US6519686B2 (en) * 1998-01-05 2003-02-11 Intel Corporation Information streaming in a multi-process system using shared memory
WO1999065026A2 (en) * 1998-06-12 1999-12-16 Koninklijke Philips Electronics N.V. Transferring compressed audio via a playback buffer
KR100283173B1 (ko) * 1998-12-23 2001-03-02 윤종용 보코더의 지터 처리 버퍼링 방법
US6389032B1 (en) * 1999-02-11 2002-05-14 International Business Machines Corporation Internet voice transmission
US7100000B1 (en) * 1999-05-28 2006-08-29 International Business Machines Corporation System and methods for processing audio using multiple speech technologies
US6650630B1 (en) 1999-06-25 2003-11-18 Telefonaktiebolaget Lm Ericsson (Publ) Resource management and traffic control in time-division-duplex communication systems
US6574266B1 (en) 1999-06-25 2003-06-03 Telefonaktiebolaget Lm Ericsson (Publ) Base-station-assisted terminal-to-terminal connection setup
US6671292B1 (en) * 1999-06-25 2003-12-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for adaptive voice buffering
US7406102B2 (en) * 2002-07-03 2008-07-29 Freescale Semiconductor, Inc. Multi-mode method and apparatus for performing digital modulation and demodulation
US9154617B2 (en) 2013-04-19 2015-10-06 International Business Machines Corporation Recording and playing back portions of a telephone call

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6022239A (ja) * 1983-07-18 1985-02-04 Fujitsu Ltd 音声デ−タ編集方式

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL297562A (ja) * 1962-09-06
US3676846A (en) * 1968-10-08 1972-07-11 Call A Computer Inc Message buffering communication system
NL7105512A (ja) * 1971-04-23 1972-10-25
US4003027A (en) * 1974-10-04 1977-01-11 Dynell Electronics Corporation Arrangement for varying the rate of recording of information
US4121058A (en) * 1976-12-13 1978-10-17 E-Systems, Inc. Voice processor
US4193123A (en) * 1978-03-20 1980-03-11 Bell Telephone Laboratories, Incorporated Fault detection in data rate conversion systems using a first-in, first-out buffer
US4412098A (en) * 1979-09-10 1983-10-25 Interstate Electronics Corporation Audio signal recognition computer
US4292470A (en) * 1979-09-10 1981-09-29 Interstate Electronics Corp. Audio signal recognition computer
FR2496314A1 (fr) * 1980-12-12 1982-06-18 Texas Instruments France Procede et dispositif pour permettre l'echange d'information entre des systemes de traitement d'information a vitesses de traitement differentes
EP0054590A1 (en) * 1980-12-19 1982-06-30 J.T. Eaton & Company, Inc. Trap for rats, mice and other vermin
US4549047A (en) * 1982-07-22 1985-10-22 Voicemail International, Inc. Digitized voice message storage system
US4507760A (en) * 1982-08-13 1985-03-26 At&T Bell Laboratories First-in, first-out (FIFO) memory configuration for queue storage
US4631746A (en) * 1983-02-14 1986-12-23 Wang Laboratories, Inc. Compression and expansion of digitized voice signals
US4523055A (en) * 1983-11-25 1985-06-11 Pitney Bowes Inc. Voice/text storage and retrieval system
US4663777A (en) * 1984-12-17 1987-05-05 Charles Szeto Apparatus for controlling digital voice recording and playback over telephone lines and adapted for use with standard host computers
US4646346A (en) * 1985-01-22 1987-02-24 At&T Company Integrated message service system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6022239A (ja) * 1983-07-18 1985-02-04 Fujitsu Ltd 音声デ−タ編集方式

Also Published As

Publication number Publication date
EP0218073A2 (en) 1987-04-15
CN86106497A (zh) 1987-06-10
EP0218073A3 (en) 1988-02-24
JPH0476131B2 (ja) 1992-12-02
BR8604621A (pt) 1987-05-26
US4841574A (en) 1989-06-20
AR242675A1 (es) 1993-04-30
CN1004031B (zh) 1989-04-26
KR870004373A (ko) 1987-05-09

Similar Documents

Publication Publication Date Title
JPS6288027A (ja) 音声バッファ・システム
US4375083A (en) Signal sequence editing method and apparatus with automatic time fitting of edited segments
US5386493A (en) Apparatus and method for playing back audio at faster or slower rates without pitch distortion
JPS59135542A (ja) 情報処理システム
JPH0250673B2 (ja)
US6131151A (en) Processing high-speed digital datastreams with reduced memory
US8166194B2 (en) Lock-free shared audio buffer
CN103974013B (zh) 进行视频录像回放的方法及视频录像设备
US8185815B1 (en) Live preview
US6044431A (en) Data buffer using dummy data
US8369456B2 (en) Data processing apparatus and method and encoding device
US6088742A (en) Command queuing apparatus and method of optical disk data reproduction system
US6801961B2 (en) Method for solving intermission of streaming data and associated device thereof
WO1991018345A1 (en) Voice message decoding and buffering system
CA1293059C (en) Voice buffer management
CN116881496B (zh) 一种高效的语音播放方法、装置、系统
US7092773B1 (en) Method and system for providing enhanced editing capabilities
CN107301868B (zh) 音频解码系统及音频解码方法
KR100333646B1 (ko) 동영상 전문가 그룹 오디오 레이어 3 디코더의 입력 버퍼
JP2722933B2 (ja) 少なくとも音響情報のデータと画像情報のデータとを含む時系列的なデータから個別のデータを分離して再生する装置
US20020054543A1 (en) Apparatus and method for reproducing stream data and recording medium therefor
US7285711B2 (en) Music player
US20020054542A1 (en) Apparatus and method for reproducing stream data and recording medium therefor
WO2005104125A1 (ja) 記録再生装置、同時記録再生制御方法、および同時記録再生制御プログラム
CN100399293C (zh) 音讯储存播放的方法及装置

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term