PollyVoice

Amazon Polly text-to-speech for Blueprints and C++: text and SSML to playable sounds, viseme lip sync and subtitles from speech marks, an SSML builder, lexicons, memory …

Malware-scannedSigned licence keyInstant downloadUpdates included
PollyVoice β€” screenshot 1
PollyVoice β€” screenshot 2
PollyVoice β€” screenshot 3
PollyVoice β€” screenshot 4
PollyVoice β€” screenshot 5
PollyVoice β€” screenshot 6
PollyVoice β€” screenshot 7
PollyVoice β€” screenshot 8
PollyVoice β€” screenshot 9
PollyVoice β€” screenshot 10
PollyVoice β€” screenshot 11
PollyVoice β€” screenshot 12
PollyVoice β€” screenshot 13
PollyVoice β€” screenshot 14
PollyVoice β€” screenshot 15
PollyVoice β€” screenshot 16
PollyVoice β€” screenshot 17
PollyVoice β€” screenshot 18
1 / 18
Synthesize Speech: text or SSML to a playable sound wave (Standard, Neural, Long-Form,…
Synthesize With Speech Marks and Get Speech Marks: viseme, word, sentence and SSML marks
Synthesize And Play 2D / At Location, Synthesize To File (MP3, Ogg Vorbis, PCM, WAV),…
Lip Sync component: viseme morph targets with blending, events for visemes, words,…
Timeline helpers, default viseme map, morph weight evaluation, curve baking, SRT…
17 SSML builder nodes, Escape Text For SSML, Strip SSML Tags, Count Billable Characters
$79.99

PollyVoice gives your game a voice for any text, including text that only exists at runtime: player names, procedural quests, AI-generated dialogue, accessibility narration, or thousands of lines you do not want to record.

Synthesize Speech turns text or SSML into a sound wave that plays like any other sound - Play Sound 2D, audio components, attenuation, looping and sound classes all work. Choose any Polly voice and the Standard, Neural, Long-Form or Generative engine, set language codes for bilingual voices and apply pronunciation lexicons. Synthesize And Play speaks a line in 2D or at a world location in one node, Synthesize To File writes MP3, Ogg Vorbis, raw PCM or WAV files, and Preload Phrases fills the cache for a whole level on the loading screen.

Synthesize With Speech Marks adds viseme, word, sentence and SSML mark timings. The PollyVoice Lip Sync component plays the speech and drives your character's mouth morph targets with smooth blending between shapes, and fires On Viseme, On Word, On Sentence, On SSML Mark and On Finished for subtitles, word highlighting, gestures and camera cuts. Timeline helpers return the viseme, word or sentence at any time, bake morph curves for Sequencer or Animation Blueprints, and export SRT subtitles.

Seventeen pure SSML builder nodes create breaks, emphasis, prosody, maximum duration, say-as, phonemes, aliases, foreign phrases, paragraphs, sentences, marks, whispering, dynamic range compression and newscaster or conversational styles - no tag typing required.

Every line is cached in memory and on disk, keyed by text and voice settings, so it is paid for once and then plays instantly, even after a restart. Get Cached Sound plays preloaded lines without any network access.

Describe Voices, Get Voice Info and Find Voices For Language build voice pickers. Put, Get, List and Delete Lexicon manage pronunciations, and speech synthesis tasks render long text (up to 100,000 characters) into an S3 bucket with optional SNS notification. Load WAV As Sound Wave, Save PCM As WAV and Create Sound Wave From PCM handle your own audio too.

Players get credentials from an Amazon Cognito identity pool, as guests or signed in through Set Login Token; static keys and the default AWS credential chain are available for development, editor tools and servers. Requests run on background worker threads with automatic retries and every result arrives on the game thread.

PollyVoice is part of the Alpha XP AWS collection for Unreal Engine 4.27 and 5.8. It includes the AWS SDK for C++ prebuilt for Win64, Linux and Android and ships with styled HTML documentation.

68Blueprint nodes
10Events
23Project settings
2Engine builds

Key features

  • Synthesize Speech: text or SSML to a playable sound wave (Standard, Neural, Long-Form,
  • Synthesize With Speech Marks and Get Speech Marks: viseme, word, sentence and SSML marks
  • Synthesize And Play 2D / At Location, Synthesize To File (MP3, Ogg Vorbis, PCM, WAV),
  • Lip Sync component: viseme morph targets with blending, events for visemes, words,
  • Timeline helpers, default viseme map, morph weight evaluation, curve baking, SRT
  • 17 SSML builder nodes, Escape Text For SSML, Strip SSML Tags, Count Billable Characters
  • Memory and disk cache with size budgets; Get Cached Sound for offline playback
  • Voices, pronunciation lexicons and asynchronous S3 synthesis tasks
  • WAV load and save, sound waves from your own PCM
  • Amazon Cognito identity pools, static keys and the default AWS credential chain
  • 85 Blueprint nodes, cancellable latent nodes, C++ API with a native callback

Blueprint & C++ API

The API is organised into these entry points:

ClassTypeNodesUse it for
PollyVoiceLibraryFunction library24Configuration, identity, defaults, cache and audio helpers for PollyVoice.
PollyVoiceSsmlLibraryFunction library17Static nodes β€” callable from anywhere, no object needed.
PollyVoiceLipSyncLibraryFunction library11Speech-mark timelines, viseme-to-morph mapping, curves and subtitles.
PollyVoiceLipSyncComponentActor component10Plays speech and keeps a character's mouth and your UI in sync with it: drives viseme morph targets on a skeletal mesh and fires events for every viseme, word…
PollyVoiceSoundWaveSound Wave Procedural4A sound built at runtime from 16-bit PCM (speech from Polly, a WAV file or your own samples).
Async action nodesLatent Blueprint nodes2Latent node with success / failure output pins.

Callable runs when executed Β· Pure no exec pin, returns a value Β· LatentAsync finishes later and fires its outputs

PollyVoice 2
NodeTypeAvailable onDescription
CancelAsyncAsyncStops waiting for this request: none of its output pins fire any more. The request itself may still complete on AWS.
Is FinishedAsyncAsyncTrue after Cancel was called or the node finished.
Config 7
NodeTypeAvailable onDescription
Set Region(Region: String)CallableStaticSwitches the AWS region used by every following request.
Set Credential Mode(Mode: Polly Voice Credential Mode)CallableStaticOverrides the credential mode from the project settings at runtime.
Is Configured() β†’ Boolean, ProblemPureStaticChecks the settings and returns false with a reason when requests cannot work yet.
Set Default Voice(Voice Id: String)CallableStaticVoice used when a request leaves Voice empty, for example "Matthew". Empty = back to the project setting.
Set Default Engine(Engine: Polly Voice Engine)CallableStaticEngine used when a request asks for "Project Default".
Set Default Language(Language Code: String)CallableStaticLanguage code used when a request leaves Language Code empty, for example "en-GB" for a bilingual voice. Empty = the voice's own language.
Set Default Sample Rate(Sample Rate: Integer)CallableStaticSample rate in Hz used when a request leaves Sample Rate at 0: 8000 or 16000 for sounds, up to 24000 for MP3 / Ogg files.
Identity 5
NodeTypeAvailable onDescription
Set Login Token(Provider: String, Token: String)CallableStaticSigns the player in to the Cognito identity pool with a token from an identity provider.
Clear Login TokensCallableStaticForgets all login tokens and the cached identity (the player becomes a guest again).
Set Static Credentials(Access Key Id: String, Secret Access Key: String, Session Token: String)CallableStaticUses these credentials from now on (Static Keys mode), for example temporary keys handed out by your own backend.
Get Identity Id() β†’ StringPureStaticThe Cognito identity id of this player, empty until credentials were resolved once.
Make User Pool Provider Name(Region: String, User Pool Id: String) β†’ StringPureStaticBuilds the identity-pool login key of a Cognito user pool: cognito-idp.<region>.amazonaws.com/<user pool id>.
Cache 7
NodeTypeAvailable onDescription
Get Cached Sound(Text: String, Options: Polly Voice Synthesis Options) β†’ Polly Voice Sound WaveCallableStaticReturns the cached sound of this line without contacting AWS, or None when it is not cached yet (reads the disk cache synchronously - lines are small).
Is Cached(Text: String, Options: Polly Voice Synthesis Options) β†’ BooleanPureStaticTrue when the audio of this line is in the memory or disk cache.
Remove From Cache(Text: String, Options: Polly Voice Synthesis Options)CallableStaticForgets one line (memory and disk), for example after you changed a lexicon.
Clear Cache(Memory: Boolean, Disk: Boolean)CallableStaticEmpties the memory cache, the disk cache or both.
Set Cache Directory(Directory: String)CallableStaticMoves the disk cache to another folder (relative = below Saved). Empty = back to the project setting.
Set Cache Limits(Memory MB: Integer, Disk MB: Integer)CallableStaticChanges the cache budgets in MB; 0 keeps the current value. Older lines are removed when a budget is exceeded.
Get Cache Stats() β†’ Polly Voice Cache StatsPureStaticNumber of lines and bytes in the memory and disk caches.
Audio 3
NodeTypeAvailable onDescription
Create Sound Wave From Pcm(Pcm: Array of Byte, Sample Rate: Integer, Num Channels: Integer) β†’ Polly Voice Sound WaveCallableStaticMakes a playable sound from interleaved 16-bit signed little-endian samples (mono or stereo).
Save PCM As WAV(Pcm: Array of Byte, Sample Rate: Integer, Num Channels: Integer, File Path: String) β†’ BooleanCallableStaticWrites 16-bit PCM as a WAV file. Relative paths are below the project's Saved folder. Returns false when the file cannot be written.
Load WAV As Sound Wave(File Path: String) β†’ Polly Voice Sound Wave, ProblemCallableStaticLoads a WAV file (PCM 8/16/24/32-bit or 32-bit float, mono or stereo) as a playable sound. None + Problem on failure.
Voices 1
NodeTypeAvailable onDescription
Find Voices For Language(Voices: Array of Polly Voice Voice Info, Language Code: String, Engine: Polly Voice Engine, Gender: Polly Voice Gender, Include Bilingual: Boolean) β†’ Array of Polly Voice Voice InfoPureStaticFilters a voice list (from Describe Voices) to the voices that speak a language.
Synthesis 1
NodeTypeAvailable onDescription
Count Billable Characters(Text: String) β†’ IntegerPureStaticCharacters Polly bills for this text: every character of plain text, only the spoken text of SSML (tags are free).
LipSync 21
NodeTypeAvailable onDescription
Play Speech(Sound: Sound Base, Marks: Array of Polly Voice Speech Mark) β†’ Audio ComponentCallableComponentPlays a sound and lip-syncs it. Marks empty = the speech marks stored in a PollyVoice sound.
Play Timeline(Timeline: Polly Voice Timeline)CallableComponentRuns the lip sync and events of a timeline without playing audio, for example when the sound plays elsewhere.
StopCallableComponentStops the speech and the lip sync, resets the mouth and fires On Finished.
Is Playing() β†’ BooleanPureComponentTrue while speech or a timeline is running.
Get Current Viseme() β†’ StringPureComponentThe viseme code currently shown ("sil" while silent).
Get Current Word() β†’ String, Word IndexPureComponentThe word currently spoken and its index; empty in pauses.
Get Playback Time() β†’ FloatPureComponentSeconds since the speech started.
Set Target Mesh(Mesh: Skeletal Mesh Component)CallableComponentDrives this mesh instead of the owner's first skeletal mesh (for example a separate head mesh).
Set Viseme Map(New Map: Array of Polly Voice Viseme Mapping)CallableComponentReplaces the viseme map and resets morph targets of the old map.
Get Morph Weights() β†’ Array of Polly Voice Morph WeightPureComponentThe morph weights applied this frame (also useful to drive an animation blueprint yourself).
Build Timeline(Marks: Array of Polly Voice Speech Mark, Duration: Float) β†’ Polly Voice TimelinePureStaticTurns speech marks into viseme / word / sentence / SSML-mark timelines with end times. Duration 0 = estimated from the last mark.
Get Viseme At Time(Timeline: Polly Voice Timeline, Time: Float) β†’ Boolean, Viseme, ProgressPureStaticThe viseme active at Time and how far through it playback is (0..1). False before the first and after the last viseme.
Get Word At Time(Timeline: Polly Voice Timeline, Time: Float) β†’ Boolean, Word, Word IndexPureStaticThe word spoken at Time and its index in Timeline.Words. False in pauses.
Get Sentence At Time(Timeline: Polly Voice Timeline, Time: Float) β†’ Boolean, SentencePureStaticThe sentence spoken at Time, for example for a subtitle line. False when there is none.
Parse Speech Marks(Json Lines: String) β†’ Boolean, MarksPureStaticReads speech marks in Polly's JSON-lines format, for example the output file of a speech synthesis task.
Make Default Viseme Map(Prefix: String) β†’ Array of Polly Voice Viseme MappingPureStaticA viseme map onto the common viseme morph target names PP, FF, TH, DD, kk, CH, SS, RR, aa, E, ih, oh, ou (named Prefix + name, for example "viseme_PP"; silence…
Map Viseme To Morph Targets(Viseme: String, Viseme Map: Array of Polly Voice Viseme Mapping) β†’ Array of Polly Voice Morph WeightPureStaticThe morph targets and weights a viseme drives in a viseme map.
Evaluate Morph Weights(Timeline: Polly Voice Timeline, Viseme Map: Array of Polly Voice Viseme Mapping, Time: Float, Blend Time: Float, Intensity: Float) β†’ Array of Polly Voice Morph WeightPureStaticMorph weights at Time with smooth transitions: each viseme fades into the next over Blend Time seconds.
Build Viseme Curves(Outer: Object, Timeline: Polly Voice Timeline, Viseme Map: Array of Polly Voice Viseme Mapping, Blend Time: Float) β†’ Array of Polly Voice Morph CurveCallableStaticBakes one float curve per morph target (time -> weight), for example for a timeline, Sequencer or an animation blueprint.
Apply Morph Weights(Mesh: Skeletal Mesh Component, Weights: Array of Polly Voice Morph Weight)CallableStaticSets the morph targets on a skeletal mesh (weights from Evaluate Morph Weights).
Export Subtitles SRT(Timeline: Polly Voice Timeline, Max Characters: Integer) β†’ StringPureStaticSubtitles in SRT format from the sentence marks (or words grouped into lines of up to Max Characters when there are no sentence marks).
Sound 4
NodeTypeAvailable onDescription
Get Pcm Data() β†’ Array of BytePureSound Wave ProceduralThe raw audio: interleaved 16-bit signed little-endian samples (see Save PCM As WAV).
Get Sound Speech Marks() β†’ Array of Polly Voice Speech MarkPureSound Wave ProceduralSpeech marks that came with this sound (empty when none were requested).
Get Timeline() β†’ Polly Voice TimelinePureSound Wave ProceduralThe speech marks as viseme / word / sentence timelines with start and end times.
Get Spoken Text() β†’ String, Voice IdPureSound Wave ProceduralThe text (or SSML) this sound was synthesized from, and the voice that spoke it.
SSML 17
NodeTypeAvailable onDescription
Make SSML Document(Body: String) β†’ StringPureStaticWraps a fragment in <speak>...</speak> (unchanged when it already is a document). Send the result with Text Type Auto or SSML.
SSML Break(Strength: Polly Voice Break Strength, Time Ms: Integer) β†’ StringPureStaticA pause: Time Ms > 0 gives an exact length (up to 10000 ms), otherwise the Strength is used.
SSML Emphasis(Text: String, Level: Polly Voice Emphasis) β†’ StringPureStaticStresses the words (standard voices; neural voices ignore it).
SSML Prosody(Text: String, Rate Percent: Integer, Pitch Percent: Integer, Volume Db: Float) β†’ StringPureStaticSpeaking rate, pitch and volume. Rate 100 = normal (20..200), Pitch in percent (-33..+50, standard voices only), Volume in dB (-6 = half, +6 = double).
SSML Max Duration(Text: String, Seconds: Float) β†’ StringPureStaticMakes Polly speak the text in at most this many seconds, for example to fit a line to an animation (standard and neural voices).
SSML Say As(Text: String, Interpret As: Polly Voice Say As, Format: String) β†’ StringPureStaticHow to read the text: characters, numbers, dates, times, addresses, phone numbers or bleeped. Format is used for dates, for example "mdy".
SSML Phoneme(Text: String, Phonetic: String, X Sampa: Boolean) β†’ StringPureStaticPronounces the text with a phonetic spelling in IPA (or X-SAMPA), for example names of fantasy places.
SSML Sub(Text: String, Alias: String) β†’ StringPureStaticSpeaks Alias instead of Text, for example "W3C" -> "World Wide Web Consortium".
SSML Language(Text: String, Language Code: String) β†’ StringPureStaticSpeaks the words in another language with the current voice, for example "fr-FR" for a French phrase.
SSML Paragraph(Text: String) β†’ StringPureStaticA paragraph (adds the longer pause between paragraphs).
SSML Sentence(Text: String) β†’ StringPureStaticA sentence (adds the pause between sentences and produces a sentence speech mark).
SSML Mark(Name: String) β†’ StringPureStaticA named mark: with SSML speech marks Polly reports when it is reached (the lip-sync component fires On SSML Mark).
SSML Amazon Effect(Text: String, Effect: Polly Voice Effect) β†’ StringPureStaticWhispered speech, soft phonation or dynamic range compression (louder, clearer speech for noisy scenes).
SSML Speaking Style(Text: String, Style: Polly Voice Speaking Style) β†’ StringPureStaticNewscaster or conversational speaking style (neural voices that support it, for example Matthew, Joanna, Lupe).
Escape Text For SSML(Text: String) β†’ StringPureStaticEscapes &, <, >, " and ' so any text can be placed inside SSML.
Append SSML(Document: String, Fragment: String) β†’ StringPureStaticAdds a fragment to a document: inside the closing </speak> when Document is one, otherwise appended with a space.
Strip SSML Tags(Ssml: String) β†’ StringPureStaticThe spoken text of an SSML document without tags, for example for subtitles.

Events & delegates

Bind these in Blueprint (drag off the object β†’ Bind Event) or with AddDynamic in C++.

EventParametersFires onWhen it fires
On SuccessSpeech (Polly Voice Speech), Error (Polly Voice Error)PollyVoiceSynthesizeAction
On FailureSpeech (Polly Voice Speech), Error (Polly Voice Error)PollyVoiceSynthesizeAction
On StartedAudio Component (Audio Component), Speech (Polly Voice Speech), Error (Polly Voice Error)PollyVoicePlayActionPlayback started: Audio Component plays the sound (stop or fade it like any audio component).
On ProgressDone (Integer), Total (Integer)PollyVoicePreloadAction
On CompletedLoaded Count (Integer), Failed Texts (Array of String), First Error (Polly Voice Error)PollyVoicePreloadAction
On VisemeViseme (String), Duration (Float)PollyVoiceLipSyncComponentA new viseme (mouth shape) starts; Duration is how long it lasts.
On WordWord (String), Word Index (Integer)PollyVoiceLipSyncComponentA word starts (for karaoke text or word highlighting).
On SentenceText (String)PollyVoiceLipSyncComponentA sentence starts (for subtitles).
On Ssml MarkText (String)PollyVoiceLipSyncComponentAn SSML <mark name="..."/> is reached (trigger gestures, camera cuts or gameplay at exact points of a line).
On Finishedβ€”PollyVoiceLipSyncComponentThe speech ended or Stop was called.

Project settings

Configure once under Project Settings β€Ί Plugins β€Ί PollyVoice β€” values are saved to the project's config .ini, so they travel with the project and your build.

SettingSectionTypeWhat it does
RegionConnectionStringAWS region used for Polly and the identity pool, for example "us-east-1" or "eu-west-1".
Credential ModeCredentialsCredential ModeWhere request credentials come from.
Identity Pool IdCredentialsStringCognito identity pool, for example "us-east-1:01234567-89ab-cdef-0123-456789abcdef".
Allow Guest AccessCredentialsBooleanAllow unauthenticated (guest) identities before Set Login Token is called. The pool must allow guest access too.
Access Key IdCredentialsStringAccess key for Static Keys mode. Keys saved here end up in DefaultGame.ini - use them for development and servers only.
Secret Access KeyCredentialsStringSecret key for Static Keys mode.
Allow Static Keys In ShippingCredentialsBooleanStatic keys are refused in Shipping builds unless this is enabled (for example on a dedicated server).
Endpoint OverrideConnectionStringCustom endpoint, for example a local emulator. Empty = the regional AWS endpoint.
Request Timeout MsConnectionIntegerTotal time a request may take, in milliseconds.
Connect Timeout MsConnectionIntegerTime allowed to open the connection, in milliseconds.
Max RetriesConnectionIntegerAutomatic retries with exponential back-off for throttled and transient failures.
Worker ThreadsConnectionIntegerWorker threads that run requests in the background (requests never block the game thread).
Verify SSLConnectionBooleanVerify TLS certificates. Only disable for a local emulator.
Log Sdk WarningsConnectionBooleanForward SDK warnings and errors to the Output Log (LogPollyVoice).
Default VoiceSynthesisStringVoice used when a node leaves Voice empty, for example "Joanna", "Matthew", "Amy", "Vicki" or "Takumi".
Default EngineSynthesisEngineEngine used when a node asks for "Project Default" (Standard, Neural, Long-Form or Generative; the voice must support it).
Default Language CodeSynthesisStringLanguage code applied when a node leaves Language Code empty, for bilingual voices ("en-US", "es-ES"). Empty = the voice's own language.
Default Sample RateSynthesisIntegerSample rate in Hz of synthesized sounds when a node leaves Sample Rate at 0: 8000 or 16000 (PCM); MP3 / Ogg files also allow 22050 and 24000.
Memory CacheCacheBooleanKeep synthesized speech in memory so the same line is never requested twice while the game runs.
Max Memory Cache MBCacheIntegerMemory cache budget in MB (16 kHz mono speech takes about 1.9 MB per minute).
Disk CacheCacheBooleanKeep synthesized speech on disk so lines survive restarts (saved as WAV + speech marks next to it).
Cache DirectoryCacheStringDisk cache folder; relative paths are below the project's Saved folder.
Max Disk Cache MBCacheIntegerDisk cache budget in MB; the least recently used lines are removed first.

Options & enums

EnumValues
Credential ModeCognito Identity Pool Static Keys Default Credential Chain
EngineProject Default Standard Neural Long-Form Generative
Text TypeAuto Plain Text SSML
File FormatMP3 Ogg Vorbis PCM (raw) WAV
Mark TypeSentence Word Viseme SSML Mark
GenderAny Female Male
Task StatusUnknown Scheduled In Progress Completed Failed
Break StrengthNone Extra Weak Weak Medium Strong Extra Strong
EmphasisStrong Moderate Reduced
Say AsCharacters Spell Out Cardinal Ordinal Digits Fraction Unit Date Time Address Expletive Telephone
EffectWhispered Dynamic Range Compression Soft Phonation
Speaking StyleNewscaster Conversational

Compatibility

UE 4.27PollyVoice 4.27.zipUE 5.8PollyVoice 5.8.zip

One ready-made build per engine version is included in the download β€” copy the one that matches your project.

PlatformSupported in
WindowsEditor & packaged
LinuxEditor & packaged
AndroidPackaged builds
ModuleTypeLoading phase
PollyVoiceRuntimeDefault

Technical details

Code modulesPollyVoice (Runtime), PollyVoiceSdk (External, Source/ThirdParty - prebuilt AWS SDK for C++)
Blueprints0 Β· C++ classes: 20
Network replicatedNo
Development platformsWindows: Yes, Mac: No, Linux: Yes
Target build platformsWin64, Linux, Android
Third-party softwareYes - AWS SDK for C++ 1.11.916 (Apache-2.0), with the AWS Common Runtime libraries, in Source/ThirdParty/PollyVoiceSdk
Engine versionsUnreal Engine 4.27 Β· 5.8 β€” a build for each is included
C++ classes20 + 13 structs
Blueprint nodes68
Events10
DocumentationDocumentation.html (in the download)
DownloadPollyVoice.zip Β· 35 MB
Versionv1.0.0

What's in the download

FileWhat it is
PollyVoice 4.27.zipPlugin build for Unreal Engine 4.27
PollyVoice 5.8.zipPlugin build for Unreal Engine 5.8
Documentation.htmlDocumentation (open in a browser)

Quick start

  1. Unzip the download and pick the build that matches your engine (4.27 Β· 5.8).
  2. Copy the PollyVoice folder into your project's Plugins/ folder (create it if needed).
  3. Open the project, enable PollyVoice under Edit β€Ί Plugins and restart the editor.
  4. Fill in Project Settings β€Ί Plugins β€Ί PollyVoice.
  5. Right-click in any Blueprint graph and search PollyVoice β€” or include the public headers from C++.
  6. Package for your target platform (Windows, Linux, Android).

Good to know

Built for Unreal Engine 4.27 and 5.8. Requires an AWS account; Amazon Polly usage is billed by AWS per character (cached lines are free). On Linux and Android the SDK uses the engine's libcurl and OpenSSL and the engine's certificate store. On Win64 the SDK is one DLL with a plugin-specific name, so PollyVoice can be installed next to other AWS-based plugins. Never ship long-term access keys in a game client: use a Cognito identity pool for players. Developed and maintained by Alpha XP.

Everything included

  • Synthesize Speech: text or SSML to a playable sound wave (Standard, Neural, Long-Form,…
  • Synthesize With Speech Marks and Get Speech Marks: viseme, word, sentence and SSML marks
  • Synthesize And Play 2D / At Location, Synthesize To File (MP3, Ogg Vorbis, PCM, WAV),…
  • Lip Sync component: viseme morph targets with blending, events for visemes, words,…
  • Timeline helpers, default viseme map, morph weight evaluation, curve baking, SRT…
  • 17 SSML builder nodes, Escape Text For SSML, Strip SSML Tags, Count Billable Characters
  • Memory and disk cache with size budgets; Get Cached Sound for offline playback
  • Voices, pronunciation lexicons and asynchronous S3 synthesis tasks
  • WAV load and save, sound waves from your own PCM
  • Amazon Cognito identity pools, static keys and the default AWS credential chain
  • 85 Blueprint nodes, cancellable latent nodes, C++ API with a native callback

Platforms

WindowsLinuxAndroid

Requirements

  • Unreal Engine 4.27 and 5.8
  • Develop on Windows (Win64)
  • Blueprints and C++

In the download

FilePollyVoice.zip
FormatZIP
Size35 MB
Versionv1.0.0
Licence fileIncluded in the archive
SHA-256fec1d3f5c77f4b35…

Personal

$79.99

One non-commercial project

  • 1 activation seat
  • 1 year of updates
  • One end product
  • Non-commercial use
  • Community support
  • 14-day refund window
Read the Personal terms
β˜… Most popular

Commercial

$239.99

Ship paid products

  • 5 activation seats
  • 1 year of updates
  • One paid end product
  • Unlimited end users
  • Priority support
  • Source files
  • 14-day refund window
Read the Commercial terms

Extended

$756.00

Resell & white-label

  • Unlimited activation seats
  • Lifetime updates
  • Unlimited end products
  • White-label & resell
  • 1-hour SLA
  • Seat-free team use
  • 14-day refund window
Read the Extended terms

One purchase per product, no subscription. Each licence comes with a signed key β€” 1 seat on Personal, 5 seats on Commercial, unlimited seats on Extended. Paid licences can be refunded within 14 days from your order page.

  1. v1.0.0Latest
    • Unreal Engine 4.27 and 5.8
    • Blueprint and C++ API, HTML documentation
β€”
β˜…β˜…β˜…β˜…β˜…
No reviews yet
5β˜…0%
4β˜…0%
3β˜…0%
2β˜…0%
1β˜…0%

Be the first to review PollyVoice β€” reviews come from customers who bought it, so every one is a verified purchase.

Reviews are for customers who bought PollyVoice.
Email supportsupport@alphaxp.net β€” include your order reference.
What support coversInstallation help, download or activation problems, and questions about documented behaviour, for your licence term.
Keys & downloadsLost a key or a download link? Everything you bought is in My library.
Refunds & terms14-day refunds from your order page. Refund policy Β· Personal terms Β· Commercial terms Β· Extended terms

Frequently asked

How do I get the files after paying?

Straight after checkout you land on your order page with the download button and your licence key. A receipt is emailed to you, and every order stays in My library.

Which licence do I need?

Personal β€” One non-commercial project. Commercial β€” Ship paid products. Extended β€” Resell & white-label. The Licences tab compares them side by side.

On how many devices can I activate it?

1 seat on Personal, 5 seats on Commercial, unlimited seats on Extended.

How long do I get updates?

Personal: 1 year of updates, Commercial: 1 year of updates, Extended: lifetime updates, counted from your purchase.

Can I get a refund?

Yes β€” paid licences can be refunded within 14 days, straight from your order page.

Is the download safe?

The file was scanned with ClamAV when it was published. Its SHA-256 checksum is listed under Features β†’ In the download, so you can verify the file you receive.

Do I need an account?

No. Checkout only needs your email. Signing in keeps all your purchases, keys and downloads together in My library.

More like this

From the same studio
$79.99Personal licence Β· PollyVoice
✦ Why TechHarbour

Software you own, from the people who built it.

117 products, one studio. Each ships with a signed licence key, an instant download and 14-day refunds β€” and every file is malware-scanned before it goes on sale.