プロパティを使用して、iOS 5 でこれを行うことができます。
kAudioSessionProperty_InputSource
kAudioSessionProperty_OutputDestination
可能な値 (デバイスで使用できるソースと宛先) については、AudioSessionGetProperty とプロパティを使用します。
kAudioSessionProperty_InputSources
kAudioSessionProperty_OutputDestinations
iOS 3.1 以降では、PlayAndRecord オーディオ セッション カテゴリを使用していると想定します。kAudioSessionProperty_OverrideCategoryDefaultToSpeaker を true に設定してみてください。例えば、
UInt32 defaultToSpeaker = 1;
status = AudioSessionSetProperty (kAudioSessionProperty_OverrideCategoryDefaultToSpeaker,
sizeof (defaultToSpeaker),
&defaultToSpeaker
);
まさにあなたが探しているものではないかもしれませんが、iOS 5 より前に近づくことはできないと思います。