2011-06-21 14 views
1

私はiPhone用のピッチ補正ソフトウェアを製作中です。私は現在、楽しいオーディオキューの部分にいると私はピッチを変更するためのいくつかの質問があります。ピッチを上げる私の現在のアイデアは、サンプリングレートを2倍にし、他のすべてのフレームを削除することです。私はそれをファイルに記録し、そのファイルからLPCM形式で再生するように設定しました。私が正しく理解するならば、lpcmはパケットごとに1つのフレームを持っているので、他のすべてのフレームを削除することはケーキの一片でなければなりません。 lpcmを使用すると、コードのこの部分に取り組もうとしていますが、ファイルのさまざまな部分でサンプリングレートを変えることはできますか?ファイルの異なる部分で複数のサンプリングレートをサポートする別のフォーマットがある場合は、iPhoneオーディオキューのサンプルレートの質問

+1

警告:これはおそらくひどく聞こえるでしょう。これはスピーチ、音楽、または何のためですか? –

+0

これはどちらの音でも動作するはずの音の音程を変えるためのものです。ピッチを握っているとこのようにチューニングすることができます(私はここで推測しています)。このコードは実験です。しかし、私は、スピーチよりもうまく動作する音楽のピッチを変更する方法があると確信しています。 –

+0

下記の私の答えを参照してください - ピッチシフト、PSOLA、フェーズボコーダなどSOに関する多くの以前の質問と回答を参照してください –

答えて

1

まず、適切な環境(たとえば、MATLAB/Octave、またはデスクトップシステムの好みの言語など)でピッチシフトアルゴリズム自体を試してみるとよいでしょう。演奏だけでなく音楽にも対応する必要がある場合は、phase vocoderの実装を検討することをお勧めします。

+0

私はそれを検討しますが、私はスピードアップするために私の元の質問に対する答えを知る必要があります/サンプリングレートを変更して、オーディオファイルのさまざまな部分でオーディオファイルを遅くします。 –

+0

@Daniel:これはおそらく間違ったアプローチだと思います。フェーズボコーダーは、ピッチシフトと時間圧縮/ストレッチの両方を行うことができるので、サンプルをいじるなどの疑わしいハッキングに頼るのではなく、飛行速度は、おそらくいくつかの厄介な人工物を導入するでしょう。 –

+0

確かに私はそれをやっと終わらせます。私は迷惑ではありませんが、実際にサンプルレートを混乱させるのは、実際のlpcmファイルがサンプルレートを制御しないということですか?もしそうなら、このようにすべてのオーディオフォーマットがありますか?私はオーディオソフトウェアに慣れています。 lpcmリンゴの名前はwavなのですか(私はちょうどサウンドファイルの種類を捨てましたか?)私はlpcmのRFCを見つけることができません。 iOSデベロッパーライブラリのAudio Data Format Identifiers列挙からlpcmを取得しています。私は正直なところ、これが標準のファイルタイプであるかどうかは分かりません。私はpcmについて聞いたことがある。 –