在Android中,synthesizeToFile失败了

时间:2018-01-10 02:22:45

标签: android text-to-speech

TextToSpeech在onCreate()

中初始化为this
var http = require('http');
var querystring = require('querystring');
var request = require('request');
var postData = querystring.stringify({
    msg: 'hello world'
});
var request = require('req')

var options = {
    hostname: 'localhost',
    port: 8000,
    method: 'POST',
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Content-Length': postData.length
    }
};

var req = http.request(options, function(res) {
    console.log('STATUS:', res.statusCode);
    console.log('HEADERS:', JSON.stringify(res.headers));

    res.setEncoding('utf8');

    res.on('data', function(chunk) {
        console.log('BODY:', chunk);
    });

    res.on('end', function() {
        console.log('No more data in response.');
    });
});

onInit这样编码。

tts = new TextToSpeech(this, this);

仅打印Proceed2。只有在我打电话

时才会打印
@Override
public void onInit(int status) {
    if (status == TextToSpeech.SUCCESS) {

        tts.setOnUtteranceProgressListener(new UtteranceProgressListener() {
            @Override
            public void onStart(String s) {
                Log.v(TAG, "onStart : " + s);
            }

            @Override
            public void onDone(String s) {
                tts.setLanguage(Locale.US);
                fabSpeak.setEnabled(true);
                Log.v(TAG, "Proceed");
            }

            @Override
            public void onError(String s) {
                Log.v(TAG, "onError : " + s);
            }
        });
        Log.v(TAG, "Proceed2");
    } else {
        Log.e(TAG, "Initilization Failed!");
    }
}

如果我在没有通话的情况下合成ToFile就像这样说话

tts.speak(text, TextToSpeech.QUEUE_FLUSH, null, "1");

此日志打印成功,但文件为空。如果我在调用speak后合成文件,则文件有数据。

但我想在没有通话的情况下合成ToFile。我不知道这里有什么问题。

0 个答案:

没有答案