JP2014059606A - 信号処理システムおよびプログラム - Google Patents

信号処理システムおよびプログラム Download PDF

Info

Publication number
JP2014059606A
JP2014059606A JP2012202797A JP2012202797A JP2014059606A JP 2014059606 A JP2014059606 A JP 2014059606A JP 2012202797 A JP2012202797 A JP 2012202797A JP 2012202797 A JP2012202797 A JP 2012202797A JP 2014059606 A JP2014059606 A JP 2014059606A
Authority
JP
Japan
Prior art keywords
signal processing
signal
data
audio
processing engine
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.)
Pending
Application number
JP2012202797A
Other languages
English (en)
Inventor
Akihiro Miwa
明宏 三輪
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.)
Yamaha Corp
Original Assignee
Yamaha 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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP2012202797A priority Critical patent/JP2014059606A/ja
Priority to CN201380048057.2A priority patent/CN104718535A/zh
Priority to PCT/JP2013/074241 priority patent/WO2014042122A1/ja
Priority to EP13837979.7A priority patent/EP2897050A4/en
Publication of JP2014059606A publication Critical patent/JP2014059606A/ja
Priority to US14/658,022 priority patent/US20150186108A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/162Interface to dedicated audio devices, e.g. audio drivers, interface to CODECs
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Communication Control (AREA)

Abstract

【課題】 リアルタイム用途の音声信号処理を汎用のPCで動作するアプリケーションで実行する場合においても、ノイズを極力生じさせない。
【解決手段】 入出力機器(I/O)13から音声データを受け取ると、受け取った音声データをPC10(第1処理エンジン)およびPC11(第2処理エンジン)に並列に伝送する。PC10では第1処理エンジンが信号処理を行うと共に、PC11では第2処理エンジン信号処理を行い、信号処理した音声データをネットワークSW12に返すようになる。ネットワークSW12は、PC10およびPC11から受け取った音声データが正常であるか否かを判定し、正常であると判定された音声データを、選択的に入出力機器13へ転送する。
【選択図】 図1

Description

この発明は、リアルタイム用途の信号処理において、ノイズの発生を抑えることができる信号処理システムおよびプログラムに関する。
最近、CPU(Central Processing Unit:中央処理装置)やソフトウェアの性能向上により、汎用のパーソナルコンピュータ(PC)で動作するWindows(登録商標)等の汎用オペレーションシステム(OS)上のアプリケーションソフトウェアにて、音声信号処理を行えるようになってきている(非特許文献1参照)。
Steinberg Media Technologies GmbH 「cubase/details」 ,[online], [平成24年 9月 9日検索],インターネット<http://japan.steinberg.net/jp/products/cubase/details.html>
リアルタイム用途の音声信号の信号処理においては、信号処理がその信号を出力すべきタイミングに間に合わないと音声信号が不連続となってノイズとなる。そのため、音声信号処理には安定性や継続性が求められる。リアルタイム用途の信号処理を汎用のPCで動作するソフトウェアで実行する場合は、各種割込処理が信号処理とは無関係に発生するため、その信号処理は、通常のPCの使用状態であれば問題が生じない程度のレイテンシと処理負荷に抑える必要がある。しかしながら、割込処理や他のプロセスの処理負荷の関係で、上位である信号処理ソフトウェアの処理が待機され、信号処理に無視できない遅延が生じる場合がある。この際、ソフトウェアで実行されている信号処理が、その信号を出力すべきタイミングまでに完了しない場合には、信号が不連続となりノイズの原因となると云う問題点があった。
そこで、本発明は、リアルタイム用途の音声信号処理を汎用のPCで動作するソフトウェアで実行する場合においても、ノイズが極力生じることのない信号処理システムおよびプログラムを提供することを目的としている。
上記目的を達成するために、本発明の信号処理システムは、複数の信号処理エンジンに出力装置が接続されている信号処理システムにおいて、前記各信号処理エンジンは、前記各信号処理エンジンに並列に送られた同一の信号に信号処理を施して出力装置に出力する際に、正常に信号処理が完了したか否かを示す情報を付加し、前記出力装置は、前記各信号処理エンジンから受け取った信号データのうち、正常に処理が完了したことを示す前記情報が付加された信号データを選択的に使用するようにしたことを最も主要な特徴としている。
本発明は、信号処理エンジンを冗長化(多重化)し、出力装置にて“正常に処理が完了した信号データ”を出力するようにしている。これにより、リアルタイム用途の信号処理において、ノイズの発生を抑えることができ、信頼性を向上させることができる。すなわち、割込み処理等に起因する、信号処理には関係の無い処理負荷が、複数の信号処理エンジンで同時に発生する可能性が低いことから、いずれかの信号処理エンジンの信号処理が間に合えばノイズは発生しないようになる。
また、信号処理エンジンを冗長化しているため、例えば1つの信号処理エンジンが一時的あるいは恒常的に機能停止したとしても、信号処理動作を継続することができ、可用性(障害耐性)も向上するようになる。
さらに、外部からは出力装置に対してアクセスすることになり、見掛け上1つの信号処理エンジンとして利用できる。
本発明の実施例の信号処理システムの構成を示すブロック図である。 本発明にかかる信号処理システムにおけるPCのハードウェア構成を示すブロック図である。 本発明にかかる信号処理システムにおけるパケットのデータ構造を示す図である。 本発明にかかる信号処理システムの動作を示すシーケンス図である。
本発明の実施例の信号処理システムの構成を示すブロック図を図1に示す。
図1に示す信号処理システム1は、第1信号処理エンジンとして機能している汎用のパーソナルコンピュータ(PC)10と、第2信号処理エンジンとして機能している汎用のパーソナルコンピュータ(PC)11と、この2台のPC10,11とレコーダ等の入出力機器13との間に配置されたネットワークSW12とから構成されている。2台のPC10,11と、ネットワークSW12と、入出力機器13とは、例えばEthernet(登録商標)などの通信ネットワークで接続されている。そして、2台のPC10,11と、ネットワークSW12と、入出力機器13とには、オーディオパケットをリアルタイムで伝送可能なオーディオI/Oの機能を有するネットワークオーディオカード10a,11a,12a,13aがそれぞれ設けられており、相互に任意の通信プロトコル(例えば、Dante, Cobranet, EtherSound等)に従った信号データの授受をすることができる。この場合、少なくとも各PC10,11(第1信号処理エンジンおよび第2信号処理エンジン)とネットワークSW12とは、信号データ授受を管理・制御するためのクロックおよびタイムスタンプが同期している。具体的には、ネットワークオーディオカード10a,11aとネットワークオーディオカード12aとのクロックが同期している。なお、この実施例においては、ネットワークオーディオカード12aは、3つ以上の入出力ポートを有しているものとする。また、第1信号処理エンジンおよび第2信号処理エンジンは、PC10,11で動作するWindows(登録商標)等の汎用オペレーションシステム(OS)上で実行されるソフトウェアである。
PC10とPC11のハードウェア構成は同じ構成とされており、代表としてPC10のハードウェア構成を図2に示す。
図2に示すようにPC10は、CPU(Central Processing Unit)20でWindows(登録商標)等の汎用オペレーションシステム(OS)が実行されており、このOS上において信号処理エンジンのソフトウェアを実行することができる。信号処理エンジンのソフトウェアが実行されると、PC10は信号処理エンジンとして機能するようになる。メモリ21は、RAM/ROM/HDD/フラッシュメモリ等の各種記憶デバイスを適宜採用することができ、OSおよび信号処理エンジン等のソフトウェアや他のアプリケーションソフトウェア、ネットワークオーディオカード10aを介してオーディオデータの送受信を行うためのオーディオドライバ等の各種ソフトウェアや、各種設定データ,ファイルを記憶している。また、メモリ21には信号処理やデータ伝送のための一時記憶領域とされる記憶領域が設定されている。オーディオI/O22は、オーディオ伝送のための機能を備えたネットワークオーディオカード10aで実現されており、PC11、ネットワークSW12、入出力機器13が接続されている通信ネットワーク25に接続されている。オーディオI/O22は、設定されたサンプリング周期やフレームサイズに応じた時間間隔で周期的にCPU20に対して割込みをかけ、通信ネットワーク25に接続されている他のオーディオ用の機器と音声信号データの入出力をリアルタイムで行うようにしている。この実施例では、オーディオI/O22はPC10の備えるクロック(不図示)とは独立した独自のクロック発振源を有しており、当該クロック発振源のクロックは他の装置のオーディオI/O22のクロックと同期しているものとする。その他23は、マウス,キーボード,モニタ等やUSB等のその他の通信デバイス等であり、PC10の目的・仕様・機能に応じて適宜設けられている。各部はバス24を介してデータの授受を行っている。
ネットワークSW12のハードウェア構成は、図2に示すPC10のハードウェア構成と同様とされているので、その説明は省略するが、ネットワークSW12のハードウェア構成においては、メモリ21にはネットワークSWプログラムや後述する判定のためのプログラムが記憶されると共に、一時記憶領域が設定されている。また、ネットワークSW12のオーディオI/O22は通信ネットワークに接続されるが、複数の入出力ポートを有している。
オーディオI/O22から通信ネットワーク25に伝送される音声データはパケットで伝送される。図3にパケットのデータ構造を示す。
図3に示すように、パケット30は、例えばTCP(Transmission Control Protocol)パケットやUDP(User Datagram Protocol)パケットとされ、ヘッダ30aとデータ部30bとから構成されている。パケット30におけるヘッダ30aは、送信元および送信先の情報やデータ部30bの属性情報などからなり、データ部30bは、音声データの通信プロトコルに従った音声データとされる。この音声データは、例えば1サンプルのデータ長が32bitとされ、サンプリング周波数が44.1kHzとされる。ここでは、1パケットに格納される音声データのサイズは、第1信号処理エンジン,第2信号処理エンジンやオーディオI/O22におけるフレームサイズ(例えば128サンプル)と同じとされている。なお、パケットは通信ネットワーク25を介して伝送されるが、その伝送遅延は、以下の説明では無視できるものとしている。
次に、本発明の信号処理システム1における音声データの1サイクルの流れを図4に示すシーケンス図を参照しながら説明する。
本発明の信号処理システム1においては、少なくとも、PC10(第1処理エンジン)およびPC11(第2処理エンジン)にそれぞれ備えられているオーディオI/O22は、ネットワークSW12に備えられているオーディオI/Oとクロック同期している。ネットワークSW12は、通信ネットワーク25を介して接続されている入出力機器(I/O)13からパケット化された1フレームサイズ分の音声データを受け取る(ステップS10)と、受け取った音声データのパケットをPC10(第1処理エンジン)およびPC11(第2処理エンジン)に並列に伝送する(ステップS11,S12)。この場合、同じオーディオデータがPC10とPC11のそれぞれのオーディオI/O22に並行して送られるようになる。PC10(第1処理エンジン)およびPC11(第2処理エンジン)とが、ネットワークSW12から受け取った音声データに対してそれぞれ実行する信号処理は、同一の処理内容に予め設定・構成されているものとする。PC10(第1処理エンジン)およびPC11(第2処理エンジン)とネットワークSW12はクロック同期しているので、各PC10(第1処理エンジン)およびPC11(第2処理エンジン)は、ほぼ同じタイミングで、ネットワークSW12からの音声データ受取り、PC10の第1処理エンジンでの信号処理、PC11の第2処理エンジンでの信号処理、信号処理された音声データのネットワークSW12への送出等の各種処理が行われるようになる(ステップS13,S14)。ただし、第1処理エンジンと第2処理エンジンはいずれも汎用OS上で実行されるソフトウェアであり、それぞれが動作するPC10あるいはPC11にて発生する各種割込処理や他のプロセスの処理負荷の状況等により、信号処理が完了するタイミングやネットワークSW12への送出タイミング等は必ずしも一致しない。また、汎用OSは、その設計あるいは構造上レイテンシの保証が無い(あるいはレイテンシの保証が困難)ことから、上記各種割込処理や他のプロセスの処理負荷の状況次第では第1処理エンジンや第2処理エンジンでの信号処理に無視できない遅延が生じる場合がある。ネットワークSW12は、PC10(第1処理エンジン)およびPC11(第2処理エンジン)から受け取った音声データが正常であるか否かを判定し、正常であると判定された1フレーム分の音声データ(パケット)を選択的に入出力機器13へ転送する(ステップS15)。
割込み処理等に起因する信号処理には関係の無い処理負荷が、第1信号処理エンジンが動作するPC10および第2信号処理エンジンが動作するPC11で同時に発生する可能性が低いことから、複数の信号処理エンジンにて並行して信号処理を行い、そのうち正常であると判定された音声データを選択的に入出力装置13へ転送することにより、いずれかの信号処理エンジンの信号処理が間に合えばノイズの発生を防止することができるようになる。また、信号処理エンジンを冗長化しているため、例えば1つの信号処理エンジンが一時的あるいは恒常的に不安定化あるいは機能停止したとしても、信号処理動作を継続することができ、可用性(障害耐性)も向上するようになる。さらに、入出力機器13からは単一のネットワークSW12に対してアクセスすることから、入出力機器13からは見掛け上1つの信号処理エンジンとして利用できる。
上記したPC10(第1処理エンジン)およびPC11(第2処理エンジン)の信号送受信に関する動作、および、ネットワークSW12の信号送受信ないし転送処理の動作は同期したクロックに従い周期的に行われている。
PC10,PC11における「処理」と「応答」についてさらに説明する。それぞれのオーディオI/O22は自身のクロック発振源が生成するクロックに従い周期的にCPU20に割込みをかける。これに応じて、CPU20で実行されているオーディオドライバは、オーディオI/O22にて受信されている音声データを取り込んで第1信号処理エンジン、第2信号処理エンジンに渡す処理や、第1信号処理エンジン、第2信号処理エンジンから信号処理した音声データを取得しオーディオI/O22から送信する処理を行う。PC10,11におけるCPU20で実行されるソフトウェアである第1信号処理エンジン、第2信号処理エンジンは、渡された音声データに対してフィルタ処理,EQ処理,ミキシング処理等の各種信号処理を施して、オーディオドライバに返す。オーディオドライバは“処理完了フラグ”を持っており、オーディオドライバは、1の割込みに応じた信号データが次の割込みのタイミングより前に第1信号処理エンジン、第2信号処理エンジンから取得できたとき、すなわち、正常状態の場合(間に合っている場合)は、処理完了フラグを“0”に、取得できなかった場合(間に合わなかった場合)は処理完了フラグを“1”にセットする。また、オーディオドライバは、第1信号処理エンジン、第2信号処理エンジンにおける信号処理が間に合えばその信号処理後の音声データを、間に合わなかった場合は出力すべき音声データが無いことから、ダミーデータをネットワークSW12に返す処理を行う。この場合、間に合わなくても、ともかく所定のタイミングで音声データを返すが、返すダミーデータは、例えばオール“0”のデータや受信したデータそのもの等とされる。
ネットワークSW12のオーディオI/O22の動作についてさらに説明する。ネットワークSW12のオーディオI/O22は、複数の入出力ポートを有しており、各入出力ポートに何が接続されているかを認識している。図1に示す信号処理システム1では、第1信号処理エンジンが動いているPC10および第2信号処理エンジンが動いているPC11と、レコーダ等の入出力機器(I/O)13とが、各入出力ポートに接続されていることを認識している。そして、オーディオI/O22は周期的にネットワークSW12のCPU20に割込みをかける。これに応じて、ネットワークSW12のCPU20は、入出力機器13が接続されている入出力ポートから受け取った1フレームの音声データ(パケット)を第1信号処理エンジンのPC10が接続されている入出力ポートと、第2信号処理エンジンのPC11が接続されている入出力ポートとに並列して伝送する。また、第1信号処理エンジンのPC10が接続されている入出力ポート、第2信号処理エンジンのPC11が接続されている入出力ポートから戻ってきた音声データが正常であるか否かを判定し、正常であると判定された音声データを選択的に入出力機器13へ転送する。
ここで、第1信号処理エンジンと第2信号処理エンジンとからいずれも正常な(間に合った)パケットが伝送されて来なかった場合は、出力すべき音声データが無いことから、ネットワークSW12はダミーデータを入出力機器13に送る。このダミーデータは、例えばオール“0”のデータや受信したデータそのもの等とされる。
ネットワークSW12における「判定」のポリシーには次に述べる先着優先と後着優先とがあり、いずれでも採用することが可能とされている。
(1)先着優先
パケットを受信する毎に逐次判定を行い、正常と判定された音声データのパケットを直ちに転送する。以降は、他の信号処理エンジンから受信する(同タイミングの)音声データのパケットは破棄する(受け取っても転送はしない)。
(2)後着優先
全ての信号処理エンジン(PC)から音声データのパケットを受信した時点で、各パケットを判定し、正常と判定された音声データのパケットを転送する。正常と判定されたパケットが複数ある場合は、先着順あるいは予め設定された優先順位で採用された音声データのパケットを転送する。
上記した処理完了フラグはパケット30のヘッダ30aに添付して伝送することができる。この場合は、第1信号処理エンジンのPC10および第2信号処理エンジンのPC11の各オーディオI/O22はオーディオドライバから音声データとともに“処理完了フラグ”を取得する。“処理完了フラグ”を取得したオーディオI/Oは、パケット30のヘッダ30a中の所定位置に処理完了フラグを添付してネットワークSW12に音声データのパケット30を送る。なお、ここで言うヘッダとは、データ部30bの音声データ本体より前に記述されている情報を指しており、TCPヘッダやUDPヘッダに限らず、音声データの通信プロトコルにて規定されているデータヘッダも含む。
そして、ネットワークSW12は受け取ったパケット30のヘッダ30aを解析し、受け取ったパケットが正常の処理が出来ていた音声データを含むものか否かを判別する。ヘッダの解析では、処理完了フラグはヘッダの所定位置に格納されていることから、当該所定位置の情報が“0”か“1”かを検出することで、パケットが正常の処理が出来ていた音声データを含むものか否かを判別することができる。ネットワークSW12は、第1信号処理エンジンのPC10および第2信号処理エンジンのPC11のから受け取った音声データのパケット30のうちの正常を示す処理完了フラグが付された音声データのパケット30を、選択的に入出力機器13へ送る。
また、処理完了フラグは伝送する音声データを利用して伝送することができる。この場合は、第1信号処理エンジンのPC10および第2信号処理エンジンのPC11のオーディオドライバは、“間に合わなかった”場合、伝送する音声データのサンプルの最下位ビットを“1”にする。例えば、サンプルのビット数が32bitの場合は、31bitを本来の音声データに、最下位の1bitを処理完了フラグとして使う。この場合、最下位の1bitを処理完了フラグとして使うのは、全サンプルデータでも良いし、一部の(例えば、先頭の)サンプルデータのみの最下位の1bitを処理完了フラグとして用い、他のサンプルデータは32bitの全てを音声データとしてもよい。
そして、ネットワークSW12は、受け取ったパケット30のデータ部30bを解析し、受け取ったパケット30が正常の処理が出来ていた音声データを含むものか否かを判別する。次いで、ネットワークSW12は、第1信号処理エンジンのPC10および第2信号処理エンジンのPC11から受け取った音声データのパケット30のうちの正常を示す処理完了フラグが付された音声データのパケット30を、選択的に入出力機器13へ送る。
以上説明した本発明の信号処理システムにおいては、第1信号処理エンジンと第2信号処理エンジンの2台としたが、これに限ることはなく信号処理エンジンは3台以上を用意しても良い。また、PCやネットワークSWやその他の装置は、それぞれ仮想マシンであってもよい。例えば、信号処理エンジンを、1台のPCを仮想化して構築した複数の仮想PCでそれぞれ動作させてもよい。あるいは各PCを、複数の物理的なコンピュータ装置にて提供される仮想サーバ上に構築して、各仮想サーバにて信号処理エンジンを動作させてもよい。
また、本発明にかかる通信ネットワークの伝送路も物理的なケーブルで接続された伝送路に限らず、仮想化された伝送路であってよい。例えば、複数の仮想PC間での物理メモリを介したデータ転送等の仮想伝送路であってもよい。さらに、1パケットのフレームサイズを、信号処理エンジンやオーディオI/Oにおけるフレームサイズとは独立に設定してよい。例えば、1パケットのフレームサイズを8サンプルとし、信号処理エンジンあるいはオーディオI/Oのフレームサイズを128サンプル等としてもよい。
以上説明した本発明の信号処理システムでは、オーディオI/Oが周期的にCPUに割込みをかける例を示したが、これに限らず、CPUがオーディオI/Oの状態をポーリングしてもよい。また、信号処理が間に合ったかどうかの判定や音声データのパケットに処理完了フラグを添付させる処理等をPCのCPUで行う例を示したが、これに限らず、その一部あるいはすべての処理をオーディオI/Oにて行っても良い。あるいは、PCのCPUとオーディオI/OのCPUとの両方で処理させてもよい。このようにすると、PCのCPUがハングアップした場合でも、オーディオI/O側で一部あるいは全ての処理が行えるようになる。
また、本発明の信号処理システムでは、通信ネットワークの伝送遅延は、無視できるものとしたが、通信ネットワークの伝送遅延を考慮する場合は、例えば、パケットに付加されているタイムスタンプをみて、同じタイムスタンプのついているパケットについて、以上説明したパケットの判定および選択する処理を行うようにしてもよい。なお、本発明の信号処理システムで採用することのできるオーディオ伝送プロトコルでは、多くの場合、伝送するオーディオデータを含むパケット等にはタイムスタンプが付加されており、これを用いることができる。
さらに、本発明の信号処理システムでは、Ethernet 、および、Ethernet を介してデータの伝送を行う通信プロトコルを前提としたが、通信規格やプロトコルはこれに限ることはなく、S/PDIF(Sony Philips Digital Interface)や AES/EBU(Audio Engineering Society/European Broadcasting Union )等、他の通信規格やプロトコルを用いることができる。データの伝送路は電気的に信号を伝達するケーブル線のほか、光ファイバあるいは無線を用いても良い。また、処理完了フラグを付加する単位をパケット単位としたが、これに限ることはなく、例えば、転送フレーム(例えばEthernetのフレーム)単位で処理完了フラグを付加してもよい。さらにまた、伝送する信号は音声データに限らず映像データであってもよく、リアルタイム用途の信号・データ伝送および処理を行うシステムであれば適用が可能である。
さらにまた、本発明の信号処理システムにおいては、ネットワークSWで行うとした“判定”を、例えば、レコーダ等の入出力機器において行っても良い。この場合は、ネットワークSWは汎用のネットワークスイッチとすることができ、レコーダ等の入出力機器が、直接複数の信号処理エンジン(PC)と音声データの授受を行うことになる。
さらにまた、本発明にかかるパケットに付加される処理完了フラグのバリエーションとして、次のような態様がある。
(1)音声サンプルデータの値をオール“0”等の所定のパターンのデータとすることで、“間に合っていない状態”を表現する。すなわち、間に合っていないときに伝送されるダミーデータ自体が、処理完了フラグとなる。
(2)音声データのサンプルをカットし、パケットのデータ部の本体データが“0”であることにより、“間に合っていない状態”を表現する。この場合は、ヘッダに記述されるパケットのデータ長がヘッダ分しかないことになる。すなわち、データ長が0であることが処理完了フラグとなる。
(3)ステガノグラフィな処理完了フラグを含む所定のコード情報を、音声データに埋め込む。この場合、埋め込むデータは1ビットのデータに限らず、処理完了フラグやその他の状態情報等を電子透かしとして埋め込むようにする。
さらにまた、本発明の信号処理システムでは、各パケットの処理完了フラグの状態やパケット自体の到達状況をモニタすることで各信号処理エンジンの動作状態を間接的にモニタすることができる。例えば、ある信号処理エンジン(PC)にて“間に合っていない状態”や、パケットを受信していない状態が継続するような場合(例えば1分以上)、その信号処理エンジンは何らかのトラブルや設定ミス等が発生している可能性が高いと判断できる。ネットワークSWがこういった状況をモニタし、必要に応じて警告等を行うようにしてもよい。
さらにまた、本発明の信号処理システムでは、伝送される音声データはデジタル信号であり、パケット転送されるものとして説明したが、アナログ信号であってもよい。この場合、PCやネットワークSWや入出力機器間は単方向通信を行う伝送路にて各双方向の接続を行う。処理完了フラグは本出願人が提案する国際公開第2010/016589号パンフレットに記載したような音響透かしとして所定の時間間隔(例えば10ms)を単位としてアナログ音響信号に重畳し、各装置ではこれの符号化・復号化を行うようにすればよい。ネットワークSW12は、アナログ音響信号から音響透かしとして付加された処理完了フラグを復号(抽出)し、これに基づきPC10からのアナログ音響信号とPC11からのアナログ音響信号とを択一的に出力する信号選択スイッチとして構成すればよい。
1 信号処理システム、10,11 PC、10a,11a,12a,13a ネットワークオーディオカード、12 ネットワークSW、13 入出力機器、20 CPU、21 メモリ、22 オーディオI/O、23 その他、24 バス、25 通信ネットワーク、30 パケット、30a ヘッダ、30b データ部

Claims (6)

  1. 複数の信号処理エンジンに出力装置が接続されている信号処理システムにおいて、
    前記各信号処理エンジンは、前記各信号処理エンジンに並列に送られた同一の信号に信号処理を施して出力装置に出力する際に、正常に信号処理が完了したか否かを示す情報を付加し、前記出力装置は、前記各信号処理エンジンから受け取った信号データのうち、正常に処理が完了したことを示す前記情報が付加された信号データを選択的に使用することを特徴とする信号処理システム。
  2. 前記各信号処理エンジンと前記出力装置とは、相互に通信ネットワークで接続されており、前記出力装置はネットワークスイッチとされて、前記各信号処理エンジンから受け取った信号データのうち正常に処理が完了したことを示す前記情報が付された信号データを、選択的に他の装置へ転送することを特徴とする請求項1記載の信号処理システム。
  3. 前記出力装置は、前記複数の信号処理エンジンから前記信号データを受け取り、該受け取った信号データそれぞれに付加された情報に基づき、各信号データが正常なものかどうかを判定して、正常と判定された信号データを出力することを特徴とする請求項1または2記載の信号処理システム。
  4. 前記信号処理エンジンは、周期的に信号処理を行うとともに信号処理を行った信号データを出力しており、信号処理が正常に完了したか否かを判定して、その判定結果を出力する信号データに付加することを特徴とする請求項1ないし3のいずれかに記載の信号処理システム。
  5. 複数の信号処理エンジンと出力装置とが接続された信号処理システムにおける前記出力装置として機能しているコンピュータに、
    前記複数の信号処理エンジンから前記信号データを受け取る受け取りステップと、
    該受け取りステップで受け取った信号データそれぞれに付加された情報に基づき、各信号データが正常なものかどうかを判定する判定ステップと、
    該判定ステップにおいて、正常と判定された信号データを選択的に使用するステップと、
    を実行させることを特徴とするプログラム。
  6. 複数の信号処理エンジンと出力装置とが接続された信号処理システムにおける前記信号処理エンジンとして機能しているコンピュータに、
    周期的に信号処理を行う信号処理ステップと、
    該信号処理ステップにおいて、信号処理が正常に完了したか否かを判定して、その判定結果を信号データに付加する判定ステップと、
    該判定ステップにおいて前記判定結果が付加された信号データを出力する出力ステップと、
    を実行させることを特徴とするプログラム。
JP2012202797A 2012-09-14 2012-09-14 信号処理システムおよびプログラム Pending JP2014059606A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2012202797A JP2014059606A (ja) 2012-09-14 2012-09-14 信号処理システムおよびプログラム
CN201380048057.2A CN104718535A (zh) 2012-09-14 2013-09-09 信号处理系统和计算机程序
PCT/JP2013/074241 WO2014042122A1 (ja) 2012-09-14 2013-09-09 信号処理システムおよびプログラム
EP13837979.7A EP2897050A4 (en) 2012-09-14 2013-09-09 SIGNAL PROCESSING SYSTEM AND PROGRAM
US14/658,022 US20150186108A1 (en) 2012-09-14 2015-03-13 Signal processing system and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012202797A JP2014059606A (ja) 2012-09-14 2012-09-14 信号処理システムおよびプログラム

Publications (1)

Publication Number Publication Date
JP2014059606A true JP2014059606A (ja) 2014-04-03

Family

ID=50278233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012202797A Pending JP2014059606A (ja) 2012-09-14 2012-09-14 信号処理システムおよびプログラム

Country Status (5)

Country Link
US (1) US20150186108A1 (ja)
EP (1) EP2897050A4 (ja)
JP (1) JP2014059606A (ja)
CN (1) CN104718535A (ja)
WO (1) WO2014042122A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11166167B2 (en) * 2014-06-18 2021-11-02 Texas Instruments Incorporated Audio stream identification by a wireless network controller
CN106792350A (zh) * 2016-12-16 2017-05-31 深圳市声菲特科技技术有限公司 一种兼容多种音频信号处理的装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4713757A (en) * 1985-06-11 1987-12-15 Honeywell Inc. Data management equipment for automatic flight control systems having plural digital processors
JPH0536293A (ja) * 1991-07-10 1993-02-12 Hitachi Ltd デイジタル信号受け渡しシステムとデイジタル音声信号処理回路及び信号変換回路
JP2003008621A (ja) * 2001-06-19 2003-01-10 Fujitsu Ltd 系構成制御装置
JP4483535B2 (ja) * 2004-11-05 2010-06-16 株式会社日立製作所 ネットワーク装置
US20060224763A1 (en) * 2005-03-18 2006-10-05 Sharp Laboratories Of America, Inc. Switching and simultaneous usage of 802.11a and 802.11g technologies for video streaming
US7849211B2 (en) * 2006-05-12 2010-12-07 Broadcom Corporation Method and system for reliable multicast datagrams and barriers
US7940644B2 (en) * 2007-03-14 2011-05-10 Cisco Technology, Inc. Unified transmission scheme for media stream redundancy
JP5125457B2 (ja) * 2007-12-03 2013-01-23 ヤマハ株式会社 制御装置、音響信号処理システムおよび音響信号処理装置並びに制御用プログラム
US8539092B2 (en) * 2008-07-09 2013-09-17 Apple Inc. Video streaming using multiple channels
CN101933242A (zh) 2008-08-08 2010-12-29 雅马哈株式会社 调制装置以及解调装置
US8879464B2 (en) * 2009-01-29 2014-11-04 Avaya Inc. System and method for providing a replacement packet
JP5532638B2 (ja) * 2009-03-13 2014-06-25 ヤマハ株式会社 データ配信システム
US8056080B2 (en) * 2009-08-31 2011-11-08 International Business Machines Corporation Multi-core/thread work-group computation scheduler
CN101840374B (zh) * 2010-04-28 2012-06-27 福建星网锐捷网络有限公司 处理装置、信息查找系统及信息查找方法

Also Published As

Publication number Publication date
US20150186108A1 (en) 2015-07-02
WO2014042122A1 (ja) 2014-03-20
EP2897050A1 (en) 2015-07-22
CN104718535A (zh) 2015-06-17
EP2897050A4 (en) 2016-05-04

Similar Documents

Publication Publication Date Title
US8254248B2 (en) Method and system for implementing redundancy for streaming data in audio video bridging networks
US9300599B2 (en) Packet capture
US20160006526A1 (en) Systems and methods of network clock comparison
CN107172037B (zh) 一种多路多通道高速数据流的实时分包解析方法
CN103136163A (zh) 可配置实现fc-ae-asm和fc-av协议的协议处理器芯片
WO2014042122A1 (ja) 信号処理システムおよびプログラム
EP3281317A1 (en) Multi-layer timing synchronization framework
WO2016095323A1 (zh) 一种基于串口服务器的数据传输方法及装置
CN103179162A (zh) 一种输出日志的方法及系统
TW201436533A (zh) 資料流傳輸系統及方法
US20210021622A1 (en) Network traffic monitoring device
WO2009125664A1 (ja) 通信プロトコル処理回路及び通信プロトコル処理方法ならびに通信端末
JP2007520096A (ja) アイソクロナスオーディオネットワークソフトウェアインターフェース
US20090260047A1 (en) Blade center kvm distribution
US8643655B2 (en) Method and system for communicating with external device through processing unit in graphics system
JP2009077024A (ja) Tcpパケット通信装置およびその関連技術
JP4514487B2 (ja) パケット処理装置
CN114051047B (zh) 一种会话消息的备份方法、装置、网络设备和存储介质
EP4191969A1 (en) Communication control device, information processing device, communication control method, and information processing method
JP4519090B2 (ja) 送信装置、受信装置およびそれらの方法
WO2011140798A1 (zh) 一种处理ieee1588v2报文的方法及装置
JP5906078B2 (ja) データ転送装置及びデータ転送方法
US9405719B2 (en) Circuitry to generate and/or use at least one transmission time in at least one descriptor
JP6126259B1 (ja) 監視装置、監視方法、及びプログラム
CN111988081A (zh) 一种激光雷达数据的冗余处理方法及系统