Speech based search solution

Cool Coder
  • Cool Coder

    Cool Coder - 2013-11-18

    I got a project to integrate Speech recognition with existing search solution i.e. we have an existing full text search solution and we would like to have speech based search like google speech based search works. Though I have executed numerous java based project, I have never come across any such speech based search solution. With little effort, I decided to go ahead with sphinx speech recognition library as it is based on Java. However as a layman into such domain, I am looking ahead where to start etc... Also I am looking ahead any information to help me on execution.


  • Nickolay V. Shmyrev

    To get a reasonable advice on your subject you need to provide more information. What kind of solution do you want to implement. Is it a desktop application or web service or mobile application? What exactly your software should do, should it listen for microphone and start a search or should it refine the result using speech? The more details you provide the more high quality answer you will get.

    To get started with CMUSphinx read the tutorial


  • Cool Coder

    Cool Coder - 2013-11-27

    @Nickolay, thanks for your suggestion. At first, its going to be a web application and later will be mobile app. Let me put it briefly on how it should work. We have a search solution searching all product/service documentations( mostly help related). We would like to implement voice based search solution that includes
    - Listen in microphone. Refine further whatever User said.
    - Suggest possible related solutions e.g. If customer looks for "iPhone" then it should suggest something "iPhone5 price", iPhone5 jailbreak, "iPhone5 vs. Samsung Galaxy" etc...
    - Based on User's confirmation through voice, it would display search result in a web app.

    So first to understand whatever User says, refine it, suggest possible keywords and then show search result. Does this make sense?
    I am still at preliminary stage and I would definitely look for any suggestion to further strengthen the approach.

  • Nickolay V. Shmyrev

    You have two choices - impelement everything on client or impelement client-server speech recognition. Each has its own advantages and disadvantages.

    For client side recognition in the browser you can use a browser plugin which will not work for most of your users or you can implement javascript-only solution with pocketsphinx.js (http://syl22-00.github.io/pocketsphinx.js/). Both solutions
    are not really stable and probably will not work in some browsers, for example pocketsphinx.js will only work in recent Chrome or Firefox and will not work in IE.

    For server-side speech recognition you can use browser plugin again, flash (that was implemented in http://speechapi.com) or you can use modern HTML5 audio technology with javascript. The last solution is most modern and promising one but again its is not supported fully. To get an example how to get user's audio you can check


    After audio is passed to a server, it can be handled by a java-based HTTP server with sphinx4 inside. Sphinx4 setup is pretty straightforward, you just put in the data receieved and retrieve the answer.

    Overall speech recognition in the web is not really mature and at this point of time it's not going to work for every user. So if you don't want to confuse your users with experiments you should probably wait for the mature technology.

    Last edit: Nickolay V. Shmyrev 2013-11-29

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks