Language Coverage (Microsoft.Speech)

The Speech API (SAPI) Phone Converters specify the languages they support in a list of Language Identifiers. You can find this list in the registry key for PhoneConverters by inspecting its Language attribute, at the following location:

   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\PhoneConverters\Tokens\Universal\Attributes\Language

The Language Identifiers consist of a Locale Identifier that represents the combination of a Primary Language Identifier and a Sublanguage Language Identifier. For a full list of languages and their identifiers, see Language Identifier Constants and Strings on MSDN.

The Universal Phone Set should be used for all Microsoft-supported languages except the seven languages currently supported by SAPI, shown in the following table:

Language-Culture Code

Language Name

Language ID

zh-TW

Chinese (Taiwan)

404

zh-CN

Chinese (PRC)

804

en-US

English (United States)

409

fr-FR

French (Standard)

40c

de-DE

German (Standard)

407

jp-JP

Japanese

411

es-ES

Spanish (Spain, Traditional Sort)

40a

The following table lists all the currently supported languages and their language identifiers.

LangID

Language

LangID

Language

436

Afrikaans

430

Sutu

41c

Albanian

441

Swahili (Kenya)

401

Arabic (Saudi Arabia)

41d

Swedish

801

Arabic (Iraq)

81d

Swedish (Finland)

c01

Arabic (Egypt)

45a

Windows XP: Syriac. (Unicode only)

1001

Arabic (Libya)

449

Windows 2000/XP: Tamil. (Unicode only)

1401

Arabic (Algeria)

2409

English (Caribbean)

1801

Arabic (Morocco)

2809

English (Belize)

1c01

Arabic (Tunisia)

2c09

English (Trinidad)

2001

Arabic (Oman)

3009

Windows 98/Me, Windows 2000/XP: English (Zimbabwe)

2401

Arabic (Yemen)

3409

Windows 98/Me, Windows 2000/XP: English (Philippines)

2801

Arabic (Syria)

425

Estonian

2c01

Arabic (Jordan)

438

Faeroese

3001

Arabic (Lebanon)

429

Farsi

3401

Arabic (Kuwait)

40b

Finnish

3801

Arabic (U.A.E.)

80c

French (Belgian)

3c01

Arabic (Bahrain)

c0c

French (Canadian)

4001

Arabic (Qatar)

100c

French (Switzerland)

42b

Windows 2000/XP: Armenian. (Unicode only)

140c

French (Luxembourg)

42c

Azeri (Latin)

180c

Windows 98/Me, Windows 2000/XP: French (Monaco)

82c

Azeri (Cyrillic)

456

Windows XP: Galician

42d

Basque

437

Windows 2000/XP: Georgian. (Unicode only)

423

Belarusian

807

German (Switzerland)

402

Bulgarian

c07

German (Austria)

455

Burmese

1007

German (Luxembourg)

403

Catalan

1407

German (Liechtenstein)

c04

Chinese (Hong Kong SAR, PRC)

408

Greek

1004

Chinese (Singapore)

447

Windows XP: Gujarati. (Unicode only)

1404

Windows 98/Me, Windows 2000/XP: Chinese (Macau SAR)

40d

Hebrew

41a

Croatian

439

Windows 2000/XP: Hindi. (Unicode only)

405

Czech

40e

Hungarian

406

Danish

40f

Icelandic

465

Windows XP: Divehi. (Unicode only)

421

Indonesian

413

Dutch (Netherlands)

410

Italian (Standard)

813

Dutch (Belgium)

810

Italian (Switzerland)

809

English (United Kingdom)

44b

Windows XP: Kannada. (Unicode only)

c09

English (Australian)

457

Windows 2000/XP: Konkani. (Unicode only)

1009

English (Canadian)

412

Korean

1409

English (New Zealand)

812

Windows 95, Windows NT 4.0 only: Korean (Johab)

1809

English (Ireland)

440

Windows XP: Kyrgyz.

1c09

English (South Africa)

426

Latvian

2009

English (Jamaica)

427

Lithuanian

418

Romanian

827

Windows 98 only: Lithuanian (Classic)

419

Russian

42f

FYRO Macedonian

44f

Windows 2000/XP: Sanskrit. (Unicode only)

43e

Malay (Malaysian)

c1a

Serbian (Cyrillic)

83e

Malay (Brunei Darussalam)

81a

Serbian (Latin)

44e

Windows 2000/XP: Marathi. (Unicode only)

41b

Slovak

450

Windows XP: Mongolian

424

Slovenian

414

Norwegian (Bokmal)

80a

Spanish (Mexican)

814

Norwegian (Nynorsk)

c0a

Spanish (Spain, Modern Sort)

415

Polish

100a

Spanish (Guatemala)

416

Portuguese (Brazil)

140a

Spanish (Costa Rica)

816

Portuguese (Portugal)

180a

Spanish (Panama)

446

Windows XP: Punjabi. (Unicode only)

1c0a

Spanish (Dominican Republic)

444

Tatar (Tatarstan)

200a

Spanish (Venezuela)

44a

Windows XP: Telugu. (Unicode only)

240a

Spanish (Colombia)

41e

Thai

280a

Spanish (Peru)

41f

Turkish

2c0a

Spanish (Argentina)

422

Ukrainian

300a

Spanish (Ecuador)

420

Windows 98/Me, Windows 2000/XP: Urdu (Pakistan)

340a

Spanish (Chile)

820

Urdu (India)

380a

Spanish (Uruguay)

443

Uzbek (Latin)

3c0a

Spanish (Paraguay)

843

Uzbek (Cyrillic)

400a

Spanish (Bolivia)

42a

Windows 98/Me, Windows NT 4.0 and later: Vietnamese

440a

Spanish (El Salvador)

480a

Spanish (Honduras)

4c0a

Spanish (Nicaragua)

500a

Spanish (Puerto Rico)

The registry key for PhoneConverters also contains a mapping from the UPS label to the SAPI identifier for supported phones, at this location:

   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\PhoneConverters\Tokens\Universal\Attributes

See UPS to SAPI Phone Map (Microsoft.Speech).