問題タブ [audio-processing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2291 参照

android - 画像処理のOpenCVのようなAndroidのオーディオ処理用のライブラリはありますか?

OpenCV は、画像処理をプログラミングするための事実上のライブラリであることを理解しています。オーディオ処理にそのような C または C++ ライブラリが 1 つあるのだろうか。私は基本的に、マイクからの生の波をフィルタリングし、いくつかの機械学習アルゴリズムで分析したいと考えています。この Q & Aを見つけましたが、それは私の質問に対する答えではありませんでした。アドバイスをいただければ幸いです。

編集: Signal Processing から非常に良い回答を得ましたが、主に悪名高いオーディオ遅延の問題が原因で、Android でそれらを使用できるかどうかはわかりません。

0 投票する
1 に答える
2151 参照

c++ - FMOD で MIDI または WAV/MP3 ファイルのテンポを変更する

FMOD を使用して MIDI または WAV/MP3 ファイルのテンポを変更することはできますか? FMOD と一緒に C++ を使用していますが、アプリケーションの C 部分で受け取った変数からオーディオ ファイルのテンポを制御できる関数が見つからないようです。私は自分で書いたオーディオを使用しているので、すべてのトラックのテンポを同じにするつもりなので、何かの bpm を計算する関数の使用/作成について心配する必要はありません。

0 投票する
4 に答える
9890 参照

python - Python: オーディオ ファイルのピッチを変更する

これは、スタックに関する私の最初の投稿です。これまでのところ、このサイトは非常に役に立ちましたが、私は初心者であり、Python でのオーディオのピッチシフトに関連する問題について明確な説明が必要です。現在のモジュールがインストールされています: numpy、scipy、pygame、および scikits の「samplerate」API。

私の目標は、ステレオ ファイルを取得し、できるだけ少ない手順で異なるピッチで再生することです。現在、pygame.sndarray を使用してファイルを配列にロードし、scikits.samplerate.resample を使用してサンプルレート変換を適用し、pygame を使用して再生用に出力をサウンド オブジェクトに戻します。問題は、スピーカーからガベージ オーディオが出力されることです。確かに、いくつかの手順が欠けています (数学とオーディオについて何も知らないことに加えて)。

ありがとう。

0 投票する
1 に答える
669 参照

audio - AFSK を使用してデジタル データをオーディオに変調する

デジタルデータをオーディオに変調したい。次に、任意の音声チャネルを介して通信し、宛先で音声からデータに再び復調します。これを行うには、ハードウェア実装を使用せずに、コンピューターのサウンド カードとソフトウェア モデムを使用したいと考えています。インターネットで、これは Audio Frequency-Shift Keying (AFSK) と呼ばれる手法によるものであることがわかりました。AFSK から 1200bps を超えるビット レートを取得できるか、取得できない場合、この制限の背後にある理由を知りたいです。この目的で AFSK よりも効率的な手法はありますか?

0 投票する
2 に答える
2517 参照

android - 信号の音量を決定する最良の方法は?

オーディオ信号の音量を測定したい。

私は2つのオプションを見つけました:

  1. 振幅の二乗平均平方根を計算する
  2. 最大振幅を見つける

#1 または #2 を使用する利点はありますか?

これが私がやろうとしていることです: 私の Android にマイクからのオーディオを分析させたいのです。デバイスに大きなノイズを検出させたい。入力は短い [] です。

0 投票する
1 に答える
2482 参照

php - PHP-CLIスクリプトを高速化する可能性はありますか?

2つのオーディオ(.WAV PCM)ファイル(いくつかの計算が含まれる)を混合するPHP-CLIスクリプトを作成したので、PHPは、で数千(数百万ではないにしても)のサンプルを処理しunpack()、それらで計算を行い、で保存する必要がありpack()ます。

タイトルが示すように、スクリプトが10秒のオーディオ出力を生成するのに30秒の処理時間を必要とするため、ミキシングの方法などに関する実際の情報は必要ありません。このプロセスを高速化する可能性を探しています。

私が試したこと:

  • オーディオファイルをメモリにキャッシュし、/substr()の代わりにを使用して処理します。パフォーマンスの向上:3秒。fseek()fread()
  • 出力ファイルを5000サンプルのチャンクで書き込みます。パフォーマンスの向上:10秒。

これらの最適化の後、10秒のオーディオ出力で約17秒の処理時間になりました。私を悩ませているのは、他のツールが2つのファイルをリアルタイムで、またはさらに高速にミキシングするなどの単純なオーディオ操作を実行できることです。

私が持っていたもう1つのアイデアは並列化でしたが、発生する追加の問題(フォーク/スレッドの正しいシーク位置の計算など)のためにそれを控えました。

それで、私は何かを見逃していますか、それともこれはPHP-CLIスクリプトにとって実際に良いパフォーマンスですか?

0 投票する
1 に答える
488 参照

actionscript-3 - AS3クライアント+grailsサーバー-クライアントでオーディオを処理し、サーバーに送り返します

MP3ファイルをダウンロードしてSoundオブジェクトに変換し、生データを取得して処理(サウンドの追加、オクターブの変更など)を行うことができるフラッシュアプ​​リケーションを作成しています。処理後、データをチャンクでサーバーに送り返したいので、サーバーはデータを接着して、新しく生成されたファイルを回復できます。問題は、サーバーに「wav」サウンドを送信すると、生成されたファイルに問題なくそれらを接着できることです。ただし、各wavピースをmp3ファイルに変換して(サーバーに小さなファイルを送信できるように)、サーバーでmp3ファイルを結合すると、マージポイントで問題が発生するサウンドになります。

これは、サーバーからmp3ファイルをロードする方法です。

これは、mp3の各部分をbytearrayとwavに変換する方法です。

各mini-wavファイルをサーバーに送り返すと(たとえば、ソケットを使用して)、問題なくそれらを接着することができます。ただし、次のコードを使用して各wavバイト配列を変換する場合:

ファイルを結合した後、作成されたmp3ファイルには、「マージ」ポイントで多くのサウンドの問題があります。

どうすればそのような音の問題を回避できますか?

クライアント側のテクノロジー:AS3サーバー側のテクノロジー:grails

0 投票する
13 に答える
416653 参照

ffmpeg - ffmpeg を使用してビデオからオーディオを抽出するにはどうすればよいですか?

ビデオからオーディオを抽出するために次のコマンドを試しました。

しかし、次の出力が得られます

誰でも助けてもらえますか?

0 投票する
4 に答える
12916 参照

python - Python NumPy-FFTと逆FFT?

私はFFTを使用していて、現在FFTを使用してファイルからサウンド波形を取得しようとしていますが(最終的には変更します)、変更した波形をファイルに出力します。音波のFFTを取得し、その上で逆FFT関数を使用しましたが、出力ファイルがまったく正しく聞こえません。波形のフィルタリングは行っていません。周波数データを取得してファイルに戻すことをテストしているだけです。同じように聞こえるはずですが、大きく異なります。

それ以来、私はこのプロジェクトに少し取り組んできましたが、まだ望ましい結果が得られていません。出力されたサウンドファイルはノイズが多く(元のファイルには存在しなかった余分なノイズと、より大きなノイズの両方)、一方のチャネルからのサウンドがもう一方のチャネルにリークしました(以前は無音でした)。入力サウンドファイルはステレオの2チャンネルファイルで、1つのチャンネルからのみサウンドが聞こえます。これが私のコードです:

なぜこれが機能しないのかよくわかりません。

ここで問題を解決するのに役立つ場合は、問題の.pyファイルとオーディオファイルを圧縮しました。