orate
Version:
The AI toolkit for speech.
2 lines (1 loc) • 1.24 kB
JavaScript
;var c=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var b=(t,e)=>{for(var r in e)c(t,r,{get:e[r],enumerable:!0})},h=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of d(e))!y.call(t,a)&&a!==r&&c(t,a,{get:()=>e[a],enumerable:!(i=w(e,a))||i.enumerable});return t};var A=t=>h(c({},"__esModule",{value:!0}),t);var g={};b(g,{Rev:()=>p});module.exports=A(g);var n=require("revai-node-sdk"),p=class{constructor(e){if(this.apiKey=e||process.env.REV_API_KEY||"",!this.apiKey)throw new Error("REV_API_KEY is not set")}createProvider(){return new n.RevAiApiClient({token:this.apiKey,deploymentConfig:n.RevAiApiDeploymentConfigMap.get(n.RevAiApiDeployment.US)})}stt(e="machine",r){let i=this.createProvider();return{generate:async f=>{let u=await f.arrayBuffer(),m=Buffer.from(u),s=await i.submitJobAudioData(m,f.name,{transcriber:e,...r});if(s.status==="failed")throw new Error(s.failure_detail);for(;;){let o=await i.getJobDetails(s.id);if(o.status==="transcribed")return await i.getTranscriptText(s.id);if(o.status==="failed")throw new Error(o.failure_detail);await new Promise(l=>setTimeout(l,1e3))}}}}};0&&(module.exports={Rev});