Wie spielt man Audio über Lautsprecher anstatt über die viel schwächeren Ohrlautsprecher?

Ich lerne Core Audio. Aus irgendeinem Grund wird der Klang des Verarbeitungsdiagramms nur über die schwachen "Ohrlautsprecher" wiedergegeben (wenn Sie das Gerät an Ihr Ohr halten), nicht jedoch über die normalen Lautsprecher des iPhones.

Dies ist der Code, der die Audiositzung einrichtet, aber ich kann nicht sehen, wo er die Audioroute konfiguriert:

- (void) setupAudioSession {

    AVAudioSession *mySession = [AVAudioSession sharedInstance];

    // Specify that this object is the delegate of the audio session, so that
    //    this object's endInterruption method will be invoked when needed.
    [mySession setDelegate: self];

    // Assign the Playback category to the audio session.
    NSError *audioSessionError = nil;
    [mySession setCategory: AVAudioSessionCategoryPlayAndRecord//AVAudioSessionCategoryPlayback
                     error: &audioSessionError];

    if (audioSessionError != nil) {

        NSLog (@"Error setting audio session category.");
        return;
    }

    // Request the desired hardware sample rate.
    self.graphSampleRate = 44100.0;    // Hertz

    [mySession setPreferredHardwareSampleRate: graphSampleRate
                                        error: &audioSessionError];

    if (audioSessionError != nil) {

        NSLog (@"Error setting preferred hardware sample rate.");
        return;
    }

    // Activate the audio session
    [mySession setActive: YES
                   error: &audioSessionError];

    if (audioSessionError != nil) {

        NSLog (@"Error activating audio session during initial setup.");
        return;
    }

    // Obtain the actual hardware sample rate and store it for later use in the audio processing graph.
    self.graphSampleRate = [mySession currentHardwareSampleRate];

    // Register the audio route change listener callback function with the audio session.
    AudioSessionAddPropertyListener (
        kAudioSessionProperty_AudioRouteChange,
        audioRouteChangeListenerCallback,
        self
    );
}

An welchem ​​Punkt in Core Audio sagen Sie "über Lautsprecher abspielen", wenn Sie Sounds mit Audiogeräten abspielen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage