4

I'm trying to publish an AudioUnit generator on iOS. When I call

- (void)publishOutputAudioUnit {

    AudioComponentDescription desc = { kAudioUnitType_RemoteGenerator, 'anap', 'cwcw', 0, 0 };
    OSStatus status = AudioOutputUnitPublish(&desc, CFSTR("My app"), 1, m_au);

    if (status) {
        DLog(@"Couldn't publish audio unit");
    }
}

I get the console message:

ERROR:     [0x39d1518c] 225: error -66748 from registration server

with -66748 as the status. Google isn't helping me and neither are the docs.

I'm getting no other errors setting up my audio session, and using all the latest (iOS 7) AVAudioSession APIs.

Is there some secret I'm missing?

buildsucceeded
  • 4,203
  • 4
  • 34
  • 72

2 Answers2

1

What I needed to do was add an entry into the Info.plist:

AudioComponents (Array)
     (item 0) (Dictionary)
          version
          manufacturer
          name
          type
          subtype

Or, in raw form:

<array>
    <dict>
        <key>version</key>
        <integer>1</integer>
        <key>manufacturer</key>
        <string>cwcw</string>
        <key>name</key>
        <string>My amazing app</string>
        <key>type</key>
        <string>aurg</string>
        <key>subtype</key>
        <string>shkr</string>
    </dict>
</array>
</plist>
buildsucceeded
  • 4,203
  • 4
  • 34
  • 72
1

I've also hit the same problem. Even when I had AudioComponents in the Info.plist, calling AudioComponentDescription(..) failed with the same error -66748 (kAudioComponentErr_NotPermitted)

Finally, I determined that it's also necessary to have CFBundleDisplayName item in the Info.plist file.

chb
  • 1,727
  • 7
  • 25
  • 47