TravelMonkey icon indicating copy to clipboard operation
TravelMonkey copied to clipboard

Add Speech-to-Speech Translation With Translation Text Display

Open ElishaMisoi opened this issue 4 years ago • 2 comments

What does this PR do?

  • Adds Speech-to-Speech Translation and displays translation text in a 'chat-like' ListView

Description of Task(s) to be completed?

  • Given two users communicating in different languages, one user should be able to speak in their native language and the other user should be able to hear the translation in a language they can comprehend.
  • A user should be able to hear the translation in audio format.
  • A user should be able to be displayed with both the original text and the translated text.

How should this be manually tested?

  • [x] Clone this repository on local machine and CD into project folder

$ git clone https://github.com/jfversluis/TravelMonkey.git

$ cd TravelMonkey

  • [x] Check out to the PR's branch

$ git checkout feature/speech-to-speech-translation

  • [x] Pull the branch

  • [x] Install app dependencies by restoring Nuget Packages

  • [x] Add your Azure Region and SpeechAPIKey in APIKeys class

  • [x] Rebuild and Deploy Solution

Screenshot

  • You obviously won't hear the audio 🙃

translationGif

Thoughts On Azure Microsoft.CognitiveServices.Speech and Xamarin.Forms

  • I struggled using Stream... I could not get a good example or workaround for using Stream with Microsoft.CognitiveServices.Speech.
  • The SDK has not been optimized for Xamarin and hence can be painfully slow.
  • This service is pretty cool though 🙃
  • Aand... Xamarin rocks!!! 😎

What went Well

  • I was able to successfully implement speech-to-speech translation

What did not go so well

  • I struggled using stream when sending speech, ended up using .wav files which can be quite slow 😪.
  • My UI... It's not the best out there 😅

ElishaMisoi avatar Apr 25 '20 15:04 ElishaMisoi