Skip to content

Instantly share code, notes, and snippets.

@deviceplususer
Created July 26, 2018 05:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save deviceplususer/0609e39d5d744a0b51b68b9ca35c7353 to your computer and use it in GitHub Desktop.
Save deviceplususer/0609e39d5d744a0b51b68b9ca35c7353 to your computer and use it in GitHub Desktop.
# -*- coding: utf-8 -*-
default_trans = 'ja-JP'
aiy_lang = ['en-US', 'en-GB', 'de-DE', 'es-ES', 'fr-FR', 'it-IT']
import urllib.request, urllib.parse, urllib.error
DEVICE = 0
CARD = 0
VOLUME = 50
aquest_dir = '/home/pi/AIY-projects-python/src/aquestalkpi/AquesTalkPi'
from google.cloud import translate
def translate_text(text, trans_lang):
if trans_lang == '':
return text
else:
target_lang = trans_lang.split("-")[0]
translate_client = translate.Client()
result = translate_client.translate(text, target_language=target_lang)
return result['translatedText']
def main(detect="", photo_file="", trans_lang=""):
print('Result: ' + result)
if trans_lang:
trans_text = translate_text(result, trans_lang)
trans_text = trans_text.replace("'","")
print('Trans: ' + trans_text)
if trans_lang in aiy_lang:
aiy.audio.say(trans_text, trans_lang)
elif trans_lang == "ja-JP":
os.system(aquest_dir + ' -g {} {} | aplay -D plughw:{},{}'.format(VOLUME, trans_text, CARD, DEVICE))
else:
aiy.audio.say('Nothing to trans!', 'en-US')
else: #trans_lang = null then default en-US
aiy.audio.say(result, 'en-US')
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--detect', nargs='?', default='', help='LABEL, FACE, LOGO and TEXT_DETECTION')
parser.add_argument('--image', nargs='?', default='', help='Image file name')
parser.add_argument('--trans', nargs='?', default='', help='If null no trans (en-US) or trans lang like ja-JP')
args = parser.parse_args()
main(args.detect, args.image, args.trans)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment