免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2252 | 回复: 0
打印 上一主题 下一主题

Text-To-Speech on Android [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-08-03 21:23 |只看该作者 |倒序浏览

                               TTS
1 Introduction
The Text-To-Speech (TTS) library is allows developers to add speech
to their applications. Developers give the TTS object a text string,
and the TTS will take care of converting that string to text and
speaking it to the user.
The TTS library is designed such that different underlying speech
engines can be used without affecting the higher level application
logic. Currently, a port of the
eSpeak engine
is available.
2 Requirements
Using the eSpeak engine requires the user to have an SD card with
free space available that the phone can access. The voice data for
eSpeak will be downloaded and unzipped onto the SD card when the TTS is
first run.
Note that if the SD card is mounted on the computer, it will not be
accessible to the phone. You must unmount the SD card from the computer
before the TTS will work properly.
3 Setting Up an Eclipse Project That Uses the TTS

  • Setup an Android project as you would normally.
  • Go to Project > Properties > Java Build Path > Libraries and click on "Add External JARs..."  Then add in the
    TTS_library_stub.jar
    file.
  • Start coding!
    4 A Step-By-Step Tutorial To Get You Started
    This tutorial will take you step-by-step through writing a simple Hello World application.
    It assumes that you have Eclipse setup to work with the Android SDK already.

  • Get the TTS_library_stub.jar file from the downloads area.
    If you want to develop against the upcoming release, get the release
    candidate version by grabbing the _rc.jar and installing the _rc.apk on
    your phone. If you want to develop against the version of the TTS that
    is currently on Market, get the _market.jar and install the TTS from
    the Android Market. You should always build your app using the _market
    version before you release it on the Market; otherwise, there is a high
    probability that your app will not work correctly as most users will be
    on the Market version of the TTS and not the release candidate.
  • Start Eclipse. Go to "File" > "New Project" > "Project..."
    and choose "Android Project" under "Android". Fill out the information
    and click "Finish" to generate the skeleton for a project. The rest of
    this tutorial assumes that you named your application "HelloWorldTTS".
  • Select your project in the "Package Explorer", then go to "Project"
    > "Properties". Select "Java Build Path" and click on the
    "Libraries" tab. Click on "Add external JARs..." and select the
    TTS_library_stub.jar from step 1.
  • You should see two Java files in your project: HelloWorldTTS.java
    and R.java. Open HelloWorldTTS.java and do the following: -In the
    imports section at the top of the file, add this line:
    import com.google.tts.TTS;
    -After the line "public class HelloWorldTTS extends Activity {", add this line:
    private TTS myTts;
    -Add the following as the last line of the onCreate method:
    myTts = new TTS(this, ttsInitListener, true);
    -After the onCreate method, add these lines:
        private TTS.InitListener ttsInitListener = new TTS.InitListener() {
            public void onInit(int version) {
              myTts.speak("Hello world", 0, null);
            }
          };

  • Now you should have a HelloWorldTTS.java that looks something like this.
  • Build this app, install it on your Android device, and run it. You
    should hear the TTS say "hello world" if you have the TTS library
    installed on the phone and your SD card contains the needed voice data
    files.
    • If you do not have the TTS library installed on the phone, you will be prompted to install it.
    • If this is the first time you have used an app that uses the TTS,
      you will hear the TTS spell out "h e l l o w o r l d" very fast and see
      a screen that says your device is downloading the voice data files; if
      you rerun the app, you will hear the TTS say "hello world" as it should.

  • Congratulations! You just wrote your first TTS-enabled Android app! Please
    see the documentation on the TTS
    and
    look at other apps in the eyes-free project
    to learn more about how to use the TTS.
    Notes:
    • The TTS constructor takes 3 parameters: the application Context,
      the TTS.InitListener to call upon successful initialization of the TTS,
      and whether or not to show a message prompting the user to install the
      TTS from the Market if they have not done so already.
    • The speak call takes 3 parameters: the String of text to be spoken,
      an int that indicates the queuing strategy (0 for no queuing, 1 for
      fifo queuing), and an array of Strings that are parameters for how to
      speak the text.
    • The first time you run an app that uses the TTS, if you do not
      already have the necessary voice data files on your SD card, they will
      be downloaded automatically.

    5 Tips and Tricks on Using the TTS in Your App
    For some tips and tricks on using the TTS in your app, please see the usage notes here.




    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/64117/showart_2016650.html
  • 您需要登录后才可以回帖 登录 | 注册

    本版积分规则 发表回复

      

    北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
    未成年举报专区
    中国互联网协会会员  联系我们:huangweiwei@itpub.net
    感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

    清除 Cookies - ChinaUnix - Archiver - WAP - TOP