wonhee
Korean · Female voice
음성 유형: 여성 음성, 젊은 음색. 음성 샘플: 한국어 · 7.9 s.
CASTREADER · AI VOICE LIBRARY
Browse the full library. Find a language, a character, a sound that fits. Tap an avatar to listen — no account needed.
Korean · Female voice
음성 유형: 여성 음성, 젊은 음색. 음성 샘플: 한국어 · 7.9 s.
Korean · Male voice
음성 유형: 남성 음성, 성숙한 성인 음색. 음색: 명료함. 표현: 차분함, 전문적인 표현. 속도: 일정한 속도. 참고 용도: 교육.
Korean · Female voice
음성 유형: 여성 음성, 젊은 음색. 표현: 활기참, 전문적인 표현.
Korean · Female voice
음성 유형: 여성 음성, 젊은 음색. 음성 샘플: 한국어 · 18.3 s.
Korean · Female voice
음성 유형: 여성 음성, 젊은 음색. 음색: 부드러운 음색. 표현: 차분함, 온화함. 참고 용도: 캐릭터 대사, 이야기 전달.
Korean · Neutral voice
음성 유형: 중성적 음성, 젊은 음색. 음성 샘플: 한국어 · 15.5 s.
Korean · Male voice
음성 유형: 남성 음성, 젊은 음색. 음성 샘플: 한국어 · 9.7 s.
Korean · Female voice
음성 유형: 여성 음성. 음색: 밝은 음색, 명료함. 표현: 활기참, 쾌활함, 전문적인 표현, 풍부한 표현력. 참고 용도: 내레이션.
Korean · Male voice
음성 유형: 남성 음성, 젊은 음색. 음색: 매끄러움, 부드러운 음색. 표현: 차분함, 친근함, 온화함, 대화체. 참고 용도: 대화.
Korean · Male voice
음성 유형: 남성 음성, 젊은 음색. 참고 용도: 캐릭터 대사.
Korean · Female voice
음성 유형: 여성 음성, 성숙한 성인 음색. 음색: 명료함. 표현: 활기참. 참고 용도: 광고.
Korean · Female voice
음성 유형: 여성 음성, 성숙한 성인 음색. 음색: 따뜻한 음색. 표현: 차분함, 전문적인 표현, 공감 어린 표현. 속도: 일정한 속도. 참고 용도: 내레이션, 교육, 광고.
Korean · Male voice
음성 유형: 남성 음성, 성숙한 성인 음색. 음색: 명료함. 표현: 차분함, 자신감, 전문적인 표현. 속도: 일정한 속도. 참고 용도: 내레이션, 교육.
Korean · Unspecified
음색: 명료함. 표현: 차분함, 친근함, 전문적인 표현. 참고 용도: 교육.
Korean · Male voice
음성 유형: 남성 음성, 젊은 음색. 음성 샘플: 한국어 · 14.9 s.
Korean · Female voice
음성 유형: 여성 음성, 젊은 음색. 음성 샘플: 한국어 · 19.2 s.
Korean · Male voice
음성 유형: 남성 음성, 성숙한 성인 음색. 음색: 낮은 음색, 명료함. 표현: 극적인 표현, 강렬함. 속도: 일정한 속도. 참고 용도: 내레이션, 이야기 전달.
Korean · Female voice
음성 유형: 여성 음성, 성숙한 성인 음색. 표현: 활기참.
Korean · Male voice
음성 유형: 남성 음성, 성숙한 성인 음색. 음색: 명료함. 표현: 차분함, 권위 있는 표현, 전문적인 표현. 속도: 일정한 속도. 참고 용도: 내레이션, 교육.
Korean · Male voice
음성 유형: 남성 음성. 음색: 따뜻한 음색, 숨소리가 섞인 음색, 부드러운 음색. 표현: 친근함, 온화함, 대화체. 참고 용도: 대화.
Korean · Male voice
음성 유형: 남성 음성. 음색: 명료함. 표현: 활기참, 친근함, 전문적인 표현. 속도: 빠른 속도. 참고 용도: 광고.
Korean · Female voice
음성 유형: 여성 음성, 젊은 음색. 음성 샘플: 한국어 · 14.9 s.
Korean · Unspecified
음성 유형: 젊은 음색. 음색: 명료함, 매끄러움. 표현: 차분함, 활기참, 친근함, 대화체. 참고 용도: 대화, 팟캐스트.
Korean · Male voice
음성 유형: 남성 음성. 표현: 차분함, 대화체. 참고 용도: 대화, 이야기 전달.
Counts include currently selectable shared voices, not private clones or disabled references. Samples show the source language; synthesis follows your input text. First use may require reference preparation. Machine-readable catalog →
01 / MAKE THE RIGHT CHOICE
Start with the route that fits your product. Both end with a ready voice you can reuse.
For product guidance, short narration and learning content when you do not need a specific speaker’s identity.
For your own voice or an authorized speaker you want to reuse across new scripts and supported languages.
Use the same sentence, language and output format for each voice. A warm sample can sound different with an address, technical term or long sentence. Categories are browsing labels, not emotion controls.
ONE VOICE, DIFFERENT LANGUAGES
Reference samples come in different languages. Synthesis follows the language of your input text, not the sample or the website. Test pronunciation and speaker similarity for your own content.
import { VoiceAPI } from '@castreader/voice-api';
const client = new VoiceAPI();
const { audio } = await client.generate({
voice: 'rowan',
text: 'Every story deserves to be heard.',
language: 'en',
output_format: 'mp3',
});Use any voice card to carry your choice into the console. Verified CastReader accounts can activate the existing trial immediately, without manual approval. Choosing a voice does not generate or charge; successful text generation uses your trial characters or API balance.
FOR AI-ASSISTED DEVELOPMENT
The console prepares the selected voice in your workspace. REST needs its ready voice_id, not its display name. List authorized voices first; never invent an ID.
const { data: voices } = await client.voices();
const voice = voices.find(v => v.status === 'ready'
&& v.default_voice_key === 'narrator');
// Stop if unavailable; never substitute a private ID.This page lists the currently selectable shared catalog, including built-in presets and on-demand references. The total and language counts come from the same catalog and availability rules as the console. Browse 24 voices per page or combine language, gender and style filters.
Disabled, withdrawn and rejected references are excluded. Your private workspace clones stay private. Reference playback is evidence of the sample, not proof that every voice has been tested in every synthesis language.
Explore the full library →You hear a saved reference recording, not a new synthesis of your input. Click again to pause; switching voices stops the previous sample. Previewing does not consume API balance or homepage generation allowances.
Use the console to generate a short passage of your own. This is the meaningful check for pronunciation, pacing and suitability: the reference sample alone cannot guarantee the result for different text.
Try your own text →Categories describe suggested uses and help you browse; they are not emotion, speed or performance-control parameters. A narration label does not stop a voice being used for product guidance.
Compare two voices using the same text, language and output format. Listen for names, numbers, pauses and the tone your product needs before choosing a default.
See supported controls →Yes, within the 10 configured synthesis languages. The sample describes the voice; the input text and language parameter determine what it says. The website language is only the interface language.
Provide text in the language you want to hear. Chinese text is not translated by selecting English. For very short, ambiguous or mixed-language input, choose the language explicitly or split the text into separate requests.
Understand cross-language generation →The voice preset is passed to the console. Sign in if needed, then confirm the selected voice, enter your text and generate. Selection itself does not submit a job or charge your wallet.
Verify your CastReader identity and activate the existing trial without manual approval. Each account receives one trial grant; validity, daily and abuse limits still apply. Then create a server-side API key. Public sample listening needs no activation.
Verify and activate →With the CastReader Node SDK, supported built-in aliases such as rowan resolve to a ready default voice. A raw REST request needs the actual voice ID returned by GET /v1/voices for your workspace and processing region.
For a custom clone, save its returned ID after its status becomes ready. Display names are labels, not globally reusable identifiers; do not copy a private ID from a different workspace.
Voice IDs and registration →Separate generation from playback. Confirm a successful job, a non-empty audio response and an audio Content-Type before saving it. Saving an error JSON response with an .mp3 extension does not make it audio.
Click the player to satisfy autoplay rules. Download private results through an authorized backend before expiry; never put the permanent API key in an audio URL or frontend code. If the downloaded file also fails, give support the request ID.
Result retrieval and response headers →Run authenticated generation on your backend with the Node.js or Python client, or use REST from another server language. The browser should call your backend. Permanent API keys must not ship in public JavaScript or mobile binaries.
Migration is not just a base-URL change: voice IDs, authentication, request fields, job polling and audio retrieval differ. Follow the CastReader quickstart and resolve a ready voice in your workspace; another provider’s voice ID cannot be reused.
Install clients and follow the quickstart →You can register your own recording or one with explicit speaker permission covering cloning and your intended use. Public availability of an audio clip is not permission to clone or impersonate its speaker.
Review the voice permissions and service terms for your use, especially redistribution and commercial projects. A sample, library label or successful technical generation is not a substitute for those permissions.
Read data and voice permissions →