2011-07-29 8 views
11

Theo như tôi có thể nói, hiện nay có được 7 con suối âm thanh trong Android:Dòng âm thanh mặc định của TTS là gì?

STREAM_ALARM   (for alarms) 
STREAM_DTMF   (for DTMF Tones) 
STREAM_MUSIC   (for music playback) 
STREAM_NOTIFICATION (for notifications) 
STREAM_RING   (for the phone ring) 
STREAM_SYSTEM  (for system sounds) 
STREAM_VOICE_CALL (for phone calls) 

tôi cũng biết rằng nó có thể rõ ràng nói động cơ TTS mà suối để sử dụng:

params.put(TextToSpeech.Engine.KEY_PARAM_STREAM, String.valueOf(audioManager.STREAM_ALARM); 

Điều tôi không thể tìm thấy, tuy nhiên, luồng nào được sử dụng theo mặc định khi tôi không chỉ định luồng âm thanh.

Luồng âm thanh mặc định từ công cụ TextToSpeech của Android là gì?

Có cách nào để truy vấn luồng nào là hiện tại đang được sử dụng bởi công cụ TextToSpeech của Android không?

UPDATE:TextToSpeech.Engine có một hằng số định nghĩa là DEFAULT_STREAM nhưng không rõ của 7 suối nó được đề cập đến. Tuy nhiên, nó có cùng giá trị hex (0x3) như STREAM_MUSIC. Phải không?

Trả lời

16

STREAM_MUSIC là mặc định trong nguồn AOSP, quy định tại TextToSpeech.java (dòng 164 như các văn bản này) trong frameworks/base.git:

/** 
* Default audio stream used when playing synthesized speech. 
*/ 
public static final int DEFAULT_STREAM = AudioManager.STREAM_MUSIC; 
+0

Wow! Cảm ơn nhiều. +51. Bạn cũng có biết câu trả lời cho câu hỏi liên quan này không? [TTS đầu ra luôn luôn đi đến A2DP] (http://stackoverflow.com/questions/6963461/tts-output-always-going-to-a2dp) – an00b

+3

Không biết off-hand, nhưng tôi đã thêm một tiền thưởng để câu hỏi. –