分享

基于讯飞开放平台的安卓语音开发

 gearss 2018-02-20
public class MainActivity extends Activity { // 语音合成对象 private SpeechSynthesizer mTts; // 播放进度 private int mPercentForPlaying = 0; // 缓冲进度 private int mPercentForBuffering = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 初始化即创建语音配置对象,只有初始化后才可以使用MSC的各项服务 SpeechUtility.createUtility(MainActivity.this, SpeechConstant.APPID + "= 595baeb7"); // 初始化合成对象 mTts = SpeechSynthesizer.createSynthesizer(MainActivity.this, mTtsInitListener); findViewById(R.id.bt).setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub String text = ((EditText) findViewById(R.id.et)).getText() .toString(); mTts.startSpeaking(text, mTtsListener); } }); } /** * 初始化监听器。 */ private InitListener mTtsInitListener = new InitListener() { @Override public void onInit(int code) { if (code != ErrorCode.SUCCESS) { Toast.makeText(MainActivity.this, "初始化失败,错误码:" + code, Toast.LENGTH_LONG).show(); } } }; /** * 合成回调监听。 */ private SynthesizerListener mTtsListener = new SynthesizerListener() { @Override public void onSpeakBegin() { // 开始播放 } @Override public void onSpeakPaused() { // 暂停播放 } @Override public void onSpeakResumed() { // 继续播放 } @Override public void onBufferProgress(int percent, int beginPos, int endPos, String info) { // 合成进度 mPercentForBuffering = percent; } @Override public void onSpeakProgress(int percent, int beginPos, int endPos) { // 播放进度 mPercentForPlaying = percent; } @Override public void onCompleted(SpeechError error) { } @Override public void onEvent(int eventType, int arg1, int arg2, Bundle obj) { } }; }

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多