【开源公告】面对面翻译小程序正式开源

>>>> 开源地址:

https://github.com/Tencent/Face2FaceTranslator

近期我们发布了微信同声传译小程序插件,免费开放微信AI团队在机器翻译,智能语音领域的业界领先成果,使开发者简便地在小程序中加入机器翻译,智能语音能力。

现在我们开源完全基于微信同声传译插件实现的面对面翻译小程序,以进一步降低小程序开发者使用门槛。

小程序开发者参考面对面翻译开源实现,只需要调用几个简单API,就可以完成一个翻译应用。

我们的终极目标是:0门槛搞定! !

插件功能

  • 语音输入
  • 语音合成
  • 文本翻译

下面将展示如何使用插件“0门槛”5步轻松实现面对面翻译小程序。

step 1:添加插件

在使用前,需要登录官网 设置 → 第三方服务 → 添加插件

搜索 【微信同声传译】并添加

在需要使用插件的小程序 app.json 中执行需要使用的插件版本等信息

// app.json
{
  ...
  "plugins": {
    ...
    "WechatSI": {
      "version": "0.0.6",
      "provider": "wx069ba97219f66d99"
  }
}

按下来,在index.js引入插件,获取全局唯一的语音识别管理器recordRecoManager

// index.js
const plugin = requirePlugin("WechatSI")
const manager = plugin.getRecordRecognitionManager()

step 2:语音输入

希望做到的效果是按住某个按钮,开始识别语音,松开按钮就结束识别

<!-- index.wxml -->
<view  catchtouchstart="streamRecord" catchtouchend="endStreamRecord">中文</view>
// index.js
Page({
  data: {},
  streamRecord: function() {
    manager.start({
      lang: 'zh_CN',
    })
  },
  streamRecordEnd: function() {
    manager.stop()
  }
})

step 3:绑定录音回调事件

<!-- index.wxml -->
<!-- 可以在页面上实时输出语音识别结果 -->
<view>语音识别内容:{{currentText}}</view>
// page.js
Page({
  data: {
    currentText: '',
  },
  initRecord: function() {
    //有新的识别内容返回,则会调用此事件
    manager.onRecognize = (res) => {
      let text = res.result
      this.setData({
        currentText: text,
      })
    }
    // 识别结束事件
    manager.onStop = (res) => {
      let text = res.result
      if(text == '') {
        // 用户没有说话,可以做一下提示处理...
        return
      }
      this.setData({
        currentText: text,
      })
      // 得到完整识别内容就可以去翻译了
      this.translateTextAction()
    }
  },
  translateTextAction: function() {},
  onLoad: function() {
    this.initRecord()
  }
})

step 4:文本翻译

<!-- index.wxml -->
<view>翻译结果:{{translateText}}</view>
// page.js
Page({
  data: {
    currentText: '',
    translateText: '',
  },
  translateTextAction: function() {
    let lfrom =  'zh_CN'
    let lto = 'en_US'
    plugin.translate({
      lfrom: lfrom,
      lto: lto,
      content: this.data.currentText,
      tts: true, // 需要合成语音
      success: (resTrans)=>{
        // 翻译可以得到 翻译文本,翻译文本的合成语音,合成语音的过期时间
        let text = resTrans.result
        this.setData({
          translateText: text,
        })
        // 得到合成语音让它自动播放出来
        wx.playBackgroundAudio({
          dataUrl: resTrans.filename,
          title: '',
        })
      },
    })
  },
})

step 5:语音合成

plugin.translate得到的语音文件是有过期时间,可以download到本地,如果像面对面翻译一样需要存比较多历史记录的话,也可以选择过期之后调用plugin.textToSpeech再去重新合成一次

  plugin.textToSpeech({
    lang: 'zh_CN',
    content: '我想重新进行语音合成',
    success: resTrans => {
      // 可以重新得到语音合成文件和过期时间
    },
})

小程序开发者参考面对面翻译开源实现,只需要调用几个简单API,就可以完成一个包含有语音输入、语音合成、文本翻译的应用。

0门槛搞定! !

想尝试微信语音输入、微信翻译的小程序开发同学们,赶紧行动吧!

开发团队

微信翻译

微信翻译是微信AI团队于2017年推出的全新机器翻译引擎,基于业界最前沿的神经网络机器翻译技术研发。现阶段微信翻译支持英汉及汉英的翻译,在翻译质量上均达到业界领先水平。目前服务于微信对话翻译、朋友圈翻译,后续会陆续用于更多的场景,为亿级微信用户提供优质的翻译服务,实现无障碍的跨语言沟通体验。

微信智聆语音

微信智聆是微信AI团队基于深度学习理论自研的语音识别技术。从2013年开始,微信智聆就服务于广大的腾讯用户,在微信、QQ、游戏、搜索等数十个产品中得到广泛应用;经历了腾讯亿级用户的考验,是目前业界领先的通用语音识别技术。近两年随着技术不断提升,微信智聆也扩展出更多应用场景,联合腾讯翻译君推出会场同传服务,联合腾讯云推出电话客服质检服务、音频关键字检索服务、英文口语发音评估服务和面向远场环境的智能硬件语音平台小微,为个人和企业用户输出高质量的语音识别服务。微信智聆,助力用户出口成章。

原文发布于微信公众号 - 腾讯开源(tencentopen)

原文发表时间:2018-05-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏鹅厂网事

大数据在服务器运营中的应用

前言 腾讯公司从2012年开始,通过对服务器运营流程、工具系统的建设,服务器从一线到三线的运营基本转入线上自动化。在服务器静态配置、动态的运行状态和生命周期各个...

2517
来自专栏SDNLAB

ONF开源白皮书:SDN解决方案案例——SDN/NFV

译者简介:蒋暕青@上海宽带技术及应用工程研究中心:SDN技术实践者,大四北上思博伦实习半年,现工作地点上海 6.1 CORD:将交换中心重新设计为数据中心 世...

2827
来自专栏web前端教室

学习本身就是孤独的事,尤其是学前端

image.png 在多数公司里,前端都是单兵作战的,一般就一二个前端人员的配置。在这种情况下,基本不用管什么配合多啊,多人协作之类的,就自己定个前端规范,然后...

1959
来自专栏Java架构

高并发风控技术解密(上)

1623
来自专栏互联网数据官iCDO

深入探寻Engagement奥秘 - 6个核心指标

本文长度为3170字,预估阅读时间9分钟。 引言:本文分享了6个须在整个渠道中衡量的Engagement指标。 ? 翻译 | 张雨新 审校 | 陈明艳 编辑 ...

3569
来自专栏CSDN技术头条

Get 技术领域最新趋势!

ThoughtWorks 每年都会出品两期技术雷达,这是一份关于技术趋势的报告,由 ThoughtWorks 技术战略委员会(TAB)经由多番正式讨论给出,它以...

773
来自专栏短信平台

吉信通:怎样提高企业短信发送平台转化率?

受惠于短信群发的大中小型企业很多,可若是你对短信群发一点都不了解,什么都不知道,再加上没有选择一个正规的短信平台,就贸然进行短信群发操作,那么再好的...

882
来自专栏CSDN技术头条

如何在三年内快速成长为一名技术专家

作者 | 清英 文章来源GitChat,CSDN独家合作发布,查看交流实录:http://gitbook.cn/books/59b69dc608f7233e6...

1666
来自专栏

c/c++程序员的技术栈

在当今的互联网时代, java,  安卓, ios, 大行其道,而c/c++却显得越来越落寞。 其实这并不是c/c++程序员本身的问题,而是这是一个产品快速响应...

32310
来自专栏编程坑太多

『高级篇』docker容器来说微服务优势和不足(四)

1103

扫码关注云+社区