転:iosではsoundtouchライブラリを使って変音を実現します。

2319 ワード

http://yarin.blog.51cto.com/1130898/640398
 
 
まずsoundtouchをダウンロードしてソースライブラリを開けます。公式サイトで探してみます。http://www.surina.net/soundtouch/。
 
次にオーディオファイルを修正したいですが、主に調整されたいくつかの関数は以下の通りです。
mSound Touch.set SampleRate(sampleRate);音のサンプリング周波数を設定します。 
  • mSoundTouch.set Chanels(chanels);サウンドのチャンネルを設定します。 
  • m_SoundTouch.set TempoChange(tempoDelta); //これは伝説の変速です。 
  • m_SoundTouch.setPitch SemiTones(pitchDelta)//音のマッチを設定します 
  • mSound Touch.set RateChange(rateDelta)//音のレートを設定します。 
  • / quickはブック変数で、USE_です。QUICK SEEKは具体的に何を使っているのかはまだ分かりません。 
  • mSound Touch.set Setting(SETTING_)USE_QUICK SEEK quick; 
  • / noAntiAliasはブール変数で、USE_です。AAFILERは具体的に何を使っているのか分かりません。 
  • mSound Touch.set Setting(SETTING_)USE_AAFILER、 !(noAntiAlias)最後に注意すべき二つの問題:
    すでにコンパイルを始めました。音がおかしくて、騒音も大きいです。やはり多くの時間をかけて原因を探しに来ましたが、結果がないです。前の話を思い出しました。32ビットの浮動点と16ビットの点を同時にサポートしています。デフォルトでは32ビットの浮動点を採用しています。16ビットの浮動小数点数に変更しました。SAMPLESマクロ、コメントを落とし、INTEGER_を開く。SAMPLESマクロは以下の通りです。
    同前 !(INTEGER_SAMPLES || FLOAT_SAMPLES) 
  •     
  •     /// Choose eigther 32 bit float ing ポイント or 16 bit インテグ sampletype 
  •     /// by チョイス one 保存先 the フォローウイング defines アンレス this セレクション  
  •     /// ハイ already been done in そして私 other file. 
  •     //// 
  •     /// Notes: 
  •     /// - In Windows environment、 chose the sample フォーマット with the 
  •     ///   フォローウイング defines. 
  •     /// - In GNU environment、 the float ing ポイント samples エリア アメリカ語 by  
  •     ///   default、 but インテグ samples can be チョセン by giving the  
  •     ///   フォローウイング スイッチ ト the configure スクリプト: 
  •     ///       ./configure --enabole-inter-samples 
  •     ///   However if あなた still prefer ト プロジェクト the sample フォーマット here  
  •     ///   also in GNU environment、 then please #undef the INTEGER_SAMPLE 
  •     ///   and FLOAT_SAMPLE defines ファースト as in comments above. 
  •     #define INTEGER_SAMPLES     1    // 
  •     //#define FLOAT_SAMPLES       1    // 
  •   
  •  #endif 
  • もう一つの問題はシミュレータでのテストが完全に間違っていません。この時は真機に置いて、直接エラーを報告して、プログラムを終了します。もう一つは時間がかかりました。最終的には、真機でチャネルをモノラルに変更する必要があります。以下のように自分で設定する時に使います。
    mSound Touch.set Chanels(2)/。1はモノラルです  もちろん成功しました。soundtouchライブラリを引き続き理解するなら、ここです。http://blog.csdn.net/leilu2008/article/details/6540575)また一連の参考資料。
     
    転載先:https://www.cnblogs.com/li-baibo/p/3753699.html