UNPKG

tts-narrator

Version:

Generate narration with Text-To-Speech technology

35 lines 1.69 kB
import { ConsoleLineLogger } from '@handy-common-utils/misc-utils'; import { NarrationParagraph, NarrationScript } from './narration-script'; import { ScriptProcessor } from './script-processor'; import { ScriptProcessorFlags } from './script-processor-flags'; import { TtsService } from './tts-service'; /** * Class for generating narration. * Instance of this class can be used to generate narration audio for scripts by calling the `narrate(...)` method. * * @example * const ttsService = new AzureTtsService(...); * const ttsNarrator = new TtsNarrator(ttsService, './output-folder'); * const script = await loadScript('./my-script.yml'); * await ttsNarrator.narrate(script); * console.log(`One of the generated audio file is: ${script.chapters[0].sections[0].paragraphs[0].audioFilePath}`); */ export declare class TtsNarrator extends ScriptProcessor { protected audioFileFolder: string; /** * Constructor * @param ttsService The TTS service to be used for generating audio * @param audioFileFolder The folder that generated audio files will be placed * @param options Optional settings * @param cliConsole Optional logger */ constructor(ttsService: TtsService, audioFileFolder: string, options?: Partial<ScriptProcessorFlags>, cliConsole?: ConsoleLineLogger); protected determineAudioFilePath(ssmlHash: string, _paragraph: NarrationParagraph): Promise<string>; /** * Generate narration for the script * @param script the input script which will also be modified for recording audioFilePath * @returns nothing */ narrate(script: NarrationScript): Promise<void>; } //# sourceMappingURL=tts-narrator.d.ts.map