はじめての
iPhoneプログラミング

サポート情報
最終更新2012年06月13日

■ iOS5への対応 (更新2012年06月13日)

本書のサンプルを「Xcode4.3.2+iOS SDK 5.1」の環境で実行する場合、下記のように修正すると、ビルドし実機で実行できます。
また、以下に「Xcode 4.3.2+iOS SDK 5.1」用のサンプル・プログラムを用意したので、併せてご利用下さい。


  ・AnalogSynthesizer(iOS_SDK_5.1).zip
  ・AnalogSynthesizer_Chapter4(iOS_SDK_5.1).zip


■68ページ
上から8行目から18行目まで(rotation:メソッド全体)を差し替え

- (void)rotation:(CGFloat)y {
  CGFloat z = valueMax / 128.0f;
  if (z < 0.1f) z = 0.1f;

  float fv = beginValue + (beginY - y) * z + 0.5f;
  UInt32 v = (fv < 0.0) ? 0 : (UInt32)(fv);
  if (v > valueMax) v = valueMax;

  self.valueKnob = v;
  [self rotateView];
}


■106ページ
下から9行目からいちばん下までを差し替え

//オーディオデータフォーマット設定
outputFormat.mSampleRate = SAMPLE_RATE;
outputFormat.mFormatID = kAudioFormatLinearPCM;
outputFormat.mFormatFlags = kAudioFormatFlagsCanonical;
outputFormat.mBitsPerChannel = sizeof(AudioSampleType) * 8;
outputFormat.mChannelsPerFrame = 2;
outputFormat.mFramesPerPacket = 1;
outputFormat.mBytesPerFrame = outputFormat.mBitsPerChannel / 8 * outputFormat.mChannelsPerFrame;
outputFormat.mBytesPerPacket = outputFormat.mBytesPerFrame * outputFormat.mFramesPerPacket;


■107ページ
上から5行目
元: kAudioUnitScope_Global,
変: kAudioUnitScope_Input,

■112ページ
下から2行目
元: @property (nonatomic, setter=isPlay) BOOL play;
変: @property (nonatomic, setter=isPlay:) BOOL play;

■115ページ
下から6行目からいちばん下までを差し替え

//オーディオデータフォーマット設定
outputFormat.mSampleRate = SAMPLE_RATE;
outputFormat.mFormatID = kAudioFormatLinearPCM;
outputFormat.mFormatFlags = kAudioFormatFlagsCanonical;
outputFormat.mBitsPerChannel = sizeof(AudioSampleType) * 8;
outputFormat.mChannelsPerFrame = 2;
-----------------------------------------------------------


■116ページ
上から1行目から3行目までを差し替え

outputFormat.mFramesPerPacket = 1;
outputFormat.mBytesPerFrame = outputFormat.mBitsPerChannel / 8 * outputFormat.mChannelsPerFrame;
outputFormat.mBytesPerPacket = outputFormat.mBytesPerFrame * outputFormat.mFramesPerPacket;

上から8行目
元: kAudioUnitScope_Global,
変: kAudioUnitScope_Input,

下から8行目と7行目を差し替え

NSLog(@"bits = %lu", outputFormat.mBitsPerChannel);
NSLog(@"channels = %lu", outputFormat.mChannelsPerFrame);


■186ページ
下から6行目の次に、以下の文を追加

※「iOS 5.1」で確認したところ、左右で位相を反転すると、本体のスピーカー
から音が出なくなるようです。

■187ページ
上から14行目
元: *ptr2 = -sinewave; ++ptr2;
変: *ptr2 = sinewave; ++ptr2; // *ptr2 = -sinewave; ++ptr2; (疑似ステレオの場合)

■188ページ
上から5行目
元: *ptr = -sinewave; ++ptr;
変: *ptr = sinewave; ++ptr; // *ptr = -sinewave; ++ptr; (疑似ステレオの場合)


■ サンプル・プログラムのダウンロード (更新2010年07月26日)

 「はじめてのiPhoneプログラミング」の中で解説しているサンプル・プログラムです。


・AnalogSynthesizer_Chapter2.zip(更新2010年07月15日)
・AnalogSynthesizer_Chapter4.zip(更新2010年07月15日)
・AnalogSynthesizer_Chapter5.zip(更新2010年07月26日)
・AnalogSynthesizer_Chapter6.zip(更新2010年07月26日)
・AnalogSynthesizer(iPhone SDK 4).zip(更新2010年07月26日)


■ 訂正 (更新2010年07月26日)

 下記のとおり訂正させていただきます。

●166ぺージ 8行目 「float level = (0.0f - paramSustain) / release_sample;」の次の行に、以下のコードを追加。
if (level > -0.001f) level = -0.001f;

●199ぺージ 最下行
図6.13 「Icon-setting.png」ファイル
図6.13 「Icon-Small.png」ファイル

●211ぺージ 11行目の行末
…」→「Development」
…」→「Distribution」


■ 訂正 (更新2010年07月14日)

 下記のとおり訂正させていただきます。

●200ぺージ 9行目
NSUserDefaults *default = [NSUserDefaults standardUserDefaults];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
※「default」ではなく「defaults」
●200ぺージ 下から4行目
int wave_type = [NSUserDefaults integerForKey:@"vco_wave_type"];
int wave_type = [defaults integerForKey:@"vco_wave_type"];
※「default」ではなく「defaults」
●200ぺージ 9行目
多のではないでしょうか。
多いのではないでしょうか。
※「い」が抜けている

(株)工学社 第二I/O編集部


本書の内容に関するご質問/お問い合わせは、次の方法で工学社編集部宛にお願いします。

  1. 返信用の切手を同封した手紙
  2. 往復はがき
  3. FAX 03-5269-6031
  4. E-mail 問い合わせフォーム

なお、電話によるお問い合わせはご遠慮ください。

※ご質問/お問い合わせの際、お客様の使用・動作環境などに添えて、具体的な症状をできるだけ詳しくお知らせください。
※FAXでのご質問/お問い合わせの場合は、必ずお客様のFAX番号を明記してください。


戻る