問題タブ [pitch-shifting]
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.
ios - OALSimple オーディオ チャネリング
私は OALSimpleAudio を使用しており、アプリで再生するサウンドのグループがあり、このサウンドのセットを「チャネル」にグループ化し、その特定のチャネルを介してグループのピッチに影響を与えようとしています。
-(IBAction)sample001 {
}
-(IBAction)sample002 {
}
このようなことができるようにするには、これらの両方のサウンドを 1 つのチャンネルに入れる必要があります。多分?
-(IBAction)channel1 {
}
できれば同時に鳴っている2つの音のピッチを変えたいのですが?どんな助けでも素晴らしいでしょう!
java - vlcj - オーディオ コールバック
vlcj がビデオ ファイルを再生している間にオーディオ データのコールバックが必要です。そして、そのオーディオに何らかのエフェクト(ピッチシフトなど)を追加して、サウンドを直接出力したいと考えています。vlcj ドキュメントで vedio バッファ コールバックが見つかりましたが、オーディオ コールバックは見つかりませんでした。
オーディオ コールバックを取得できれば、soundtouch などの他のライブラリを使用できます... または、vlcj などの他の代替手段を教えてください。
WindowsでnVLC + NAudioで成功しました。
vlcjで可能ですか?gstreamer (gstreamer-java) または MPlayer を使用する必要がありますか?
よろしく、-pph
ios - AudioUnitSampleType を変換して Dirac LE で使用する方法
私はこの問題に夢中になっています。Dirac LE を使用してピッチ シフトを実行していますが、ライブラリは常に結果の変換に多くのクリックを追加します。AudioUnit の Callback 関数内でリアルタイムで変換を行う必要があります。
変換を除いて、すべてのセットアップは正常に機能しています。
問題は、8.24 (AudioUnitSampleType) から short 型 (Dirac で使用) への変換と、8.24 への変換にあると考えています。
誰でも実際の例を投稿できますか? どうもありがとう!
signal-processing - FFT による周波数シフト
私は、周波数シフトのために見つけることができるいくつかの異なるテクニックを試してきました (具体的には、高周波数信号を低周波数にシフトしたい)。現時点では、私はこのテクニックを使用しようとしています -
元の信号 x(t) を次のように乗算します: cos(2 PI dF t), sin(2 PI dF t) R(t) = x(t) cos(2 PI dF t) I(t) = x(t) sin(2 PI dF t) ここで、dF はシフトするデルタ周波数です。これで、R(t) と I(t) の 2 つの時系列信号が得られました。R(t) を実部、I(t) を虚部として複素フーリエ変換を行います。結果は、周波数シフトされたスペクトルになります。
これを次のコードに解釈しました-
これにより、インターリーブされた real データと imag データと FFT を含む配列が構築されます。次にFFTを逆にしますが、得られる出力はかなり文字化けしています。結果は、私が考えているものと比較して巨大に見えます。周波数がシフトされた信号の痕跡がいくつかありますが、結果はほとんどかなりノイズが多いように見えるため、判断するのは困難です.
また、元の信号の標準 FFT の配列値を単純に回転させて周波数シフトを取得しようとしましたが、役に立ちませんでした。これを行うためのより良い方法はありますか?
c# - c# ウェーブファイルのピッチシフト
現在、このアルゴリズムを使用してウェーブ ファイルのピッチ シフトを実行しようとしています。
https://sites.google.com/site/mikescoderama/pitch-shifting
ここで、上記の実装を使用する私のコードですが、うまくいきません。出力された wave ファイルが壊れているか、有効ではないようです。
ピッチシフトアルゴリズムを除いて、コードは非常に単純です:)
- Wave ファイルをロードし、Wave ファイル データを読み取り、byte[] 配列に配置します。
- 次に、バイト データを -1.0f から 1.0f の形式に「正規化」します (ピッチ シフト アルゴリズムの作成者の要求に応じて)。
- ピッチ シフト アルゴリズムを適用し、正規化されたデータを bytes[] 配列に変換します。
- 最後に、元のウェーブ ファイルと同じヘッダーとピッチ シフトされたデータを使用して、ウェーブ ファイルを保存します。
何か不足していますか?
algorithm - MATLAB - オーディオ信号のピッチ シフト
私のグループは、コンピューターに接続または内蔵されたマイクからオーディオを録音し、信号を再生する単純な MATLAB グラフィカル ユーザー インターフェイス (GUI) を開発しています。ここまでで完了です。GUI は、サンプル (.wav ファイルなど) を読み込んで、GUI の同じ「再生」ボタンを使用して再生することもできます。Play、Record、Load、Save のプッシュ ボタンがあります。次に、ロードまたは録音されたサンプルのピッチシフトについて... 信号の基本周波数を見つけるために、ピークピッキングアルゴリズムが必要であることはわかっています。次に、これらの値のそれぞれに定数を掛けて、これらすべての周波数のピッチをシフトできると考えていました。このアルゴリズムを使用して、別のシフトを異なるプッシュボタンまたはラジオボタンに割り当てて、サンプルをロードできるようにすることを目的としています。ボタンを押してピッチを操作し、再生します。ピーク ピッキング アルゴリズムを使用すると、信号のピッチが十分にシフトされますか?それとも、再生中に信号が台無しになりますか?
(これはリアルタイム処理ではありません)
android - オーディオのピッチとテンポの変更
オーディオのピッチまたはテンポを変更する必要がありますが、個別に行う必要があります。そのためのAndroidの例、またはAndroidのサポートを提供するライブラリはありますか。
私はあまり得意ではないので、これに NDK/JNI を使用することは避けたいと思います。
すばらしいチュートリアルがありますが、すでに多くのライブラリを見てきましたが、それらをEclipse Androidプロジェクトにインポートできません。助けていただければ幸いです:-)
runtime - portaudioで実行時にピッチ(サンプルレート)を変更するには?
portaudio で実行時にピッチ (サンプルレート) を変更するには? どうもありがとう。