@ai-stack/payloadcms
Version:
<p align="center"> <img alt="Payload AI Plugin" src="assets/payload-ai-intro.gif" width="100%" /> </p>
27 lines (26 loc) • 911 B
JavaScript
import OpenAI from 'openai';
import { resolveProviderConfig } from '../../providers/resolveProviderConfig.js';
export const generateVoice = async (text, options)=>{
const { providerConfig = resolveProviderConfig().openai } = options;
const openai = new OpenAI({
apiKey: providerConfig.apiKey,
baseURL: providerConfig.baseURL,
defaultHeaders: providerConfig.headers,
organization: providerConfig.organization,
project: providerConfig.project
});
const mp3 = await openai.audio.speech.create({
input: text,
model: options.model,
response_format: options.response_format,
speed: options.speed,
voice: options.voice
});
if (mp3.ok) {
const audioBuffer = Buffer.from(await mp3.arrayBuffer());
return {
buffer: audioBuffer
};
}
};
//# sourceMappingURL=generateVoice.js.map