2009-06-30 67 views

Trả lời

10

Tôi không chắc chắn làm thế nào bạn đang làm phát lại âm thanh của bạn, nhưng cố gắng có một cái nhìn tại "Chuyển hướng đầu ra âm thanh" của Audio Session Programming Guide

Nó trông giống như sau:

UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker; // 1 
AudioSessionSetProperty ( 
    kAudioSessionProperty_OverrideAudioRoute,       // 2 
    sizeof (audioRouteOverride),          // 3 
    &audioRouteOverride            // 4 
); 
+1

Điều này có thay đổi lộ trình cho đầu vào không? Tôi muốn lấy đầu vào từ micrô bên ngoài và muốn sử dụng loa trong cho đầu ra. Tôi có thể làm điều đó bằng phương pháp này không? – Namratha

+0

Tôi không chắc chắn, khi bạn nói micrô bên ngoài, bạn có nghĩa là micrô của thiết bị thay vì micrô tai nghe không? – slf

+2

Không, không có nghĩa là micrô được cắm vào bên ngoài. Đầu vào phải được lấy từ đó. Tôi đã giải quyết được vấn đề của mình. Tìm thấy bài đăng của bạn rất hữu ích! – Namratha

0

Trên thực tế tôi nghĩ rằng điều này là không thể, như có vẻ là một số loại chuyển đổi cơ khí, mà chỉ ra một plugged trong tai nghe do đó ngăn chặn đầu ra loa khi đây là trường hợp. (đọc here)

Một số gợi ý khác có thể được tìm thấy trong các mô tả về kAudioSessionProperty_OverrideCategoryDefaultToSpeaker: "Xác định có hay không để định tuyến âm thanh đến loa (thay vì để người nhận) khi không có đường âm thanh khác, chẳng hạn như một tai nghe , đã kết nối."

Các vấn đề liên quan