itri-tts-async
TypeScript icon, indicating that this package has built-in type declarations

1.0.3 • Public • Published

npm version

ITRI TTS async for Node.js

This tool let you use Node.js to operate ITRI TTS Web service.You must register a account of the service before using this tool.

The service uses the UTF-8 format and Simple Object Access Protocol (SOAP), and provides a synthetic audio file for downloading.

When TTS converting success, you can browse the Synthetic history in offcial site.

這個工具讓你使用Node.js來操作工研院文字轉語音Web服務。在使用此工具之前,您需要註冊該服務的帳戶。

該服務使用UTF-8格式和簡單物件存取協定(SOAP),並提供用於下載的合成音頻文件。

當TTS轉換成功時,您可以在官方網站瀏覽合成歷史記錄

install

npm i itri-tts-async

Reference

Documentation

Check out Documentation

Description

All Method are async function.You can use Promise.prototype.then(), or use await in your async function.

Fist you must use your account to create a Promise to request SOAP Client then passing TTSClient object :

require('dotenv').config()
const {ITRITTS} = require('itri-tts-async');
 
//Return Promise
let tts = ITRITTS.create(process.env.Account,process.env.Password)
tts.then((ttsClient)=>{
  console.log(ttsClient)
})
 
//OR return TTSClient object
async function main () {
  let ttsClient = await ITRITTS.create(process.env.Account,process.env.Password)
  console.log(ttsClient)
}

Now you can use TTSClient converting Text to Speech. If fulfilled, you will get TTSResult object :

...
...
//Return Promise
tts.then((ttsClient)=>{
  return ttsClient.ConvertSimple("Hello,world.我是Bruce!這是一個Node.js測試。")
}).then((ttsResult) => {
  console.log(ttsResult)
})
 
//OR return TTSResult object
async function main () {
  ...
  ...
  let ttsResult = await ttsClient.ConvertSimple("Hello,world.我是Bruce!這是一個Node.js測試。")
  console.log(ttsResult)
}

If TTSResult.resultCode is 0 (Success), use TTSResult.GetConvertStatus() method to get TTSStatus object :

...
...
//Return Promise
tts.then((ttsClient)=>{
  return ttsClient.ConvertSimple("Hello,world.我是Bruce!這是一個Node.js測試。")
}).then((ttsResult) => {
  return ttsResult.GetConvertStatus()
}).then((ttsStatus)=>{
  console.log(ttsStatus)
})
 
//OR return TTSStatus object
async function main () {
  ...
  ...
  let ttsStatus = ttsResult.GetConvertStatus()
  console.log(ttsStatus)
}

if TTSStatus.statusCode is 2 (completed), the speech file url will in TTSStatus.result.

This tool provides TTSStatus.GetConvertStatus() method helping you to track the status by yourself :

...
...
//Return Promise
tts.then((ttsClient)=>{
  return ttsClient.ConvertSimple("Hello,world.我是Bruce!這是一個Node.js測試。")
}).then((ttsResult) => {
  return ttsResult.GetConvertStatus()
}).then((ttsStatus)=>{
  console.log(ttsStatus)
  return  ttsStatus.GetConvertStatus()
}).then((newStatus)=>{
  console.log(newStatus)
})
 
//OR return TTSStatus object
async function main () {
  ...
  ...
  let newStatus = ttsStatus.GetConvertStatus()
  console.log(newStatus)
}

Package Sidebar

Install

npm i itri-tts-async

Weekly Downloads

5

Version

1.0.3

License

MIT

Unpacked Size

14.7 kB

Total Files

5

Last publish

Collaborators

  • shentengtu