SpeechCore


NameSpeechCore JSON
Version 1.1.0 PyPI version JSON
download
home_pagehttps://github.com/still-standing88/speech-core/
SummaryPython wrapper for the SpeechCore library (pybind11)
upload_time2025-07-26 16:10:58
maintainerNone
docs_urlNone
authorstill-standing88
requires_python>=3.8
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # SpeechCore API Documentation

## Overview

SpeechCore is a cross-platform Python wrapper for screen reader and text-to-speech functionality. It provides a unified interface for speech synthesis, voice control, and braille output across different operating systems. The library supports multiple speech drivers and includes Windows-specific SAPI (Speech API) functionality.

## Installation

```bash
pip install speechcore
```

## Classes

### SpeechCore

Main class for speech synthesis and screen reader functionality. Only one instance may exist at a time.

**Context Manager Support**: Can be used with `with` statement for automatic initialization and cleanup.

```python
with SpeechCore() as speech:
    speech.output("Hello, world!")
```

### Sapi

Windows-only class providing direct access to Microsoft's Speech API (SAPI). Only available on Windows platforms.

**Context Manager Support**: Can be used with `with` statement for automatic initialization and cleanup.

```python
# Windows only
with Sapi() as sapi:
    sapi.speak("Hello from SAPI!")
```

## SpeechCore Methods

### Initialization and Management

#### `SpeechCore.init()`
Initialize the SpeechCore library.

- **Returns**: None
- **Raises**: `InitializationError` if initialization fails

#### `SpeechCore.free()`
Free resources and shutdown the library.

- **Returns**: None

#### `SpeechCore.is_loaded() -> bool`
Check if SpeechCore is currently loaded and initialized.

- **Returns**: `bool` - True if loaded, False otherwise

### Driver Management

#### `detect_driver() -> None`
Automatically detect and set the best available speech driver.

- **Returns**: None

#### `get_driver(index: int) -> str`
Get the name of a speech driver by index.

- **Parameters**: 
  - `index` (int): Driver index
- **Returns**: `str` - Driver name

#### `current_driver() -> str`
Get the name of the currently active speech driver.

- **Returns**: `str` - Current driver name

#### `set_driver(index: int) -> None`
Set the active speech driver by index.

- **Parameters**: 
  - `index` (int): Driver index to activate
- **Returns**: None

#### `get_drivers() -> int`
Get the total number of available speech drivers.

- **Returns**: `int` - Number of available drivers

### Voice Management

#### `get_voice(index: int) -> str`
Get the name of a voice by index.

- **Parameters**: 
  - `index` (int): Voice index
- **Returns**: `str` - Voice name

#### `get_current_voice() -> str`
Get the name of the currently active voice.

- **Returns**: `str` - Current voice name

#### `set_voice(index: int) -> None`
Set the active voice by index.

- **Parameters**: 
  - `index` (int): Voice index to activate
- **Returns**: None

#### `get_voices() -> int`
Get the total number of available voices.

- **Returns**: `int` - Number of available voices

### Audio Control

#### `set_volume(offset: float) -> None`
Set the speech volume level.

- **Parameters**: 
  - `offset` (float): Volume level (typically 0.0 to 1.0)
- **Returns**: None

#### `get_volume() -> float`
Get the current speech volume level.

- **Returns**: `float` - Current volume level

#### `set_rate(offset: float) -> None`
Set the speech rate (speed).

- **Parameters**: 
  - `offset` (float): Speech rate value
- **Returns**: None

#### `get_rate() -> float`
Get the current speech rate.

- **Returns**: `float` - Current speech rate

### Speech Output

#### `output(text: str, interrupt: bool = False) -> bool`
Speak the given text.

- **Parameters**: 
  - `text` (str): Text to speak
  - `interrupt` (bool): Whether to interrupt current speech (default: False)
- **Returns**: `bool` - True if successful

#### `output_braille(text: str) -> bool`
Output text to braille display.

- **Parameters**: 
  - `text` (str): Text to output to braille
- **Returns**: `bool` - True if successful

#### `output_file(filename: str, text: str) -> None`
Save speech output to an audio file.

- **Parameters**: 
  - `filename` (str): Output file path
  - `text` (str): Text to convert to audio
- **Returns**: None

### Playback Control

#### `resume() -> None`
Resume paused speech.

- **Returns**: None

#### `pause() -> None`
Pause current speech.

- **Returns**: None

#### `stop() -> None`
Stop current speech immediately.

- **Returns**: None

#### `is_speaking() -> bool`
Check if speech is currently active.

- **Returns**: `bool` - True if speaking, False otherwise

### System Information

#### `get_speech_flags() -> int`
Get current speech system capability flags.

- **Returns**: `int` - Bitfield of capability flags

#### `check_speech_flags(flags: int) -> bool`
Check if specific speech flags are set.

- **Parameters**: 
  - `flags` (int): Flags to check
- **Returns**: `bool` - True if flags are set

## Sapi Methods (Windows Only)

### Initialization

#### `Sapi.init()`
Initialize the SAPI interface.

- **Returns**: None
- **Raises**: `InitializationError` if initialization fails
- **Raises**: `NotImplementedError` on non-Windows platforms

#### `Sapi.release()`
Release SAPI resources.

- **Returns**: None

#### `Sapi.sapi_loaded() -> bool`
Check if SAPI is currently loaded.

- **Returns**: `bool` - True if loaded, False otherwise

### Voice Control

#### `voice_set_rate(offset: float) -> None`
Set SAPI voice speech rate.

- **Parameters**: 
  - `offset` (float): Speech rate value
- **Returns**: None

#### `voice_get_rate() -> float`
Get current SAPI voice speech rate.

- **Returns**: `float` - Current speech rate

#### `voice_set_volume(offset: float) -> None`
Set SAPI voice volume level.

- **Parameters**: 
  - `offset` (float): Volume level
- **Returns**: None

#### `voice_get_volume() -> float`
Get current SAPI voice volume level.

- **Returns**: `float` - Current volume level

#### `get_voice(index: int) -> str`
Get SAPI voice name by index.

- **Parameters**: 
  - `index` (int): Voice index
- **Returns**: `str` - Voice name

#### `get_current_voice() -> str`
Get current SAPI voice name.

- **Returns**: `str` - Current voice name

#### `set_voice_by_index(index: int) -> None`
Set SAPI voice by index.

- **Parameters**: 
  - `index` (int): Voice index
- **Returns**: None

#### `set_voice(voice_name: str) -> None`
Set SAPI voice by name.

- **Parameters**: 
  - `voice_name` (str): Name of voice to set
- **Returns**: None

#### `get_voices() -> int`
Get number of available SAPI voices.

- **Returns**: `int` - Number of voices

### SAPI Speech Output

#### `speak(text: str, interrupt: bool = False, xml: bool = False) -> None`
Speak text using SAPI.

- **Parameters**: 
  - `text` (str): Text to speak
  - `interrupt` (bool): Whether to interrupt current speech (default: False)
  - `xml` (bool): Whether text contains SSML markup (default: False)
- **Returns**: None

#### `output_file(filename: str, text: str, xml: bool = False) -> None`
Save SAPI speech to audio file.

- **Parameters**: 
  - `filename` (str): Output file path
  - `text` (str): Text to convert
  - `xml` (bool): Whether text contains SSML markup (default: False)
- **Returns**: None

### SAPI Playback Control

#### `resume() -> None`
Resume paused SAPI speech.

- **Returns**: None

#### `pause() -> None`
Pause current SAPI speech.

- **Returns**: None

#### `stop() -> None`
Stop current SAPI speech.

- **Returns**: None

## Constants

Speech capability flags available from `__speech_common`:

- `SC_SPEECH_FLOW_CONTROL` - Speech flow control support
- `SC_SPEECH_PARAMETER_CONTROL` - Speech parameter control support  
- `SC_VOICE_CONFIG` - Voice configuration support
- `SC_FILE_OUTPUT` - File output support
- `SC_HAS_SPEECH` - Speech synthesis support
- `SC_HAS_BRAILLE` - Braille output support
- `SC_HAS_SPEECH_STATE` - Speech state monitoring support

## Exceptions

### `InitializationError`
Raised when SpeechCore or SAPI initialization fails.

### `NotLoadedError`
Raised when attempting to use methods before proper initialization.

## Example Usage

```python
from speechcore import SpeechCore

# Basic usage with context manager
with SpeechCore() as speech:
    speech.output("Hello, this is SpeechCore!")
    
    # Check available voices
    voice_count = speech.get_voices()
    for i in range(voice_count):
        print(f"Voice {i}: {speech.get_voice(i)}")
    
    # Adjust speech parameters
    speech.set_rate(0.5)  # Slower speech
    speech.set_volume(0.8)  # Lower volume
    
    speech.output("This is slower and quieter speech.")

# Windows-specific SAPI usage
if sys.platform == "win32":
    from speechcore import Sapi
    
    with Sapi() as sapi:
        sapi.speak("Hello from Windows SAPI!")
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/still-standing88/speech-core/",
    "name": "SpeechCore",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "still-standing88",
    "author_email": null,
    "download_url": null,
    "platform": null,
    "description": "# SpeechCore API Documentation\n\n## Overview\n\nSpeechCore is a cross-platform Python wrapper for screen reader and text-to-speech functionality. It provides a unified interface for speech synthesis, voice control, and braille output across different operating systems. The library supports multiple speech drivers and includes Windows-specific SAPI (Speech API) functionality.\n\n## Installation\n\n```bash\npip install speechcore\n```\n\n## Classes\n\n### SpeechCore\n\nMain class for speech synthesis and screen reader functionality. Only one instance may exist at a time.\n\n**Context Manager Support**: Can be used with `with` statement for automatic initialization and cleanup.\n\n```python\nwith SpeechCore() as speech:\n    speech.output(\"Hello, world!\")\n```\n\n### Sapi\n\nWindows-only class providing direct access to Microsoft's Speech API (SAPI). Only available on Windows platforms.\n\n**Context Manager Support**: Can be used with `with` statement for automatic initialization and cleanup.\n\n```python\n# Windows only\nwith Sapi() as sapi:\n    sapi.speak(\"Hello from SAPI!\")\n```\n\n## SpeechCore Methods\n\n### Initialization and Management\n\n#### `SpeechCore.init()`\nInitialize the SpeechCore library.\n\n- **Returns**: None\n- **Raises**: `InitializationError` if initialization fails\n\n#### `SpeechCore.free()`\nFree resources and shutdown the library.\n\n- **Returns**: None\n\n#### `SpeechCore.is_loaded() -> bool`\nCheck if SpeechCore is currently loaded and initialized.\n\n- **Returns**: `bool` - True if loaded, False otherwise\n\n### Driver Management\n\n#### `detect_driver() -> None`\nAutomatically detect and set the best available speech driver.\n\n- **Returns**: None\n\n#### `get_driver(index: int) -> str`\nGet the name of a speech driver by index.\n\n- **Parameters**: \n  - `index` (int): Driver index\n- **Returns**: `str` - Driver name\n\n#### `current_driver() -> str`\nGet the name of the currently active speech driver.\n\n- **Returns**: `str` - Current driver name\n\n#### `set_driver(index: int) -> None`\nSet the active speech driver by index.\n\n- **Parameters**: \n  - `index` (int): Driver index to activate\n- **Returns**: None\n\n#### `get_drivers() -> int`\nGet the total number of available speech drivers.\n\n- **Returns**: `int` - Number of available drivers\n\n### Voice Management\n\n#### `get_voice(index: int) -> str`\nGet the name of a voice by index.\n\n- **Parameters**: \n  - `index` (int): Voice index\n- **Returns**: `str` - Voice name\n\n#### `get_current_voice() -> str`\nGet the name of the currently active voice.\n\n- **Returns**: `str` - Current voice name\n\n#### `set_voice(index: int) -> None`\nSet the active voice by index.\n\n- **Parameters**: \n  - `index` (int): Voice index to activate\n- **Returns**: None\n\n#### `get_voices() -> int`\nGet the total number of available voices.\n\n- **Returns**: `int` - Number of available voices\n\n### Audio Control\n\n#### `set_volume(offset: float) -> None`\nSet the speech volume level.\n\n- **Parameters**: \n  - `offset` (float): Volume level (typically 0.0 to 1.0)\n- **Returns**: None\n\n#### `get_volume() -> float`\nGet the current speech volume level.\n\n- **Returns**: `float` - Current volume level\n\n#### `set_rate(offset: float) -> None`\nSet the speech rate (speed).\n\n- **Parameters**: \n  - `offset` (float): Speech rate value\n- **Returns**: None\n\n#### `get_rate() -> float`\nGet the current speech rate.\n\n- **Returns**: `float` - Current speech rate\n\n### Speech Output\n\n#### `output(text: str, interrupt: bool = False) -> bool`\nSpeak the given text.\n\n- **Parameters**: \n  - `text` (str): Text to speak\n  - `interrupt` (bool): Whether to interrupt current speech (default: False)\n- **Returns**: `bool` - True if successful\n\n#### `output_braille(text: str) -> bool`\nOutput text to braille display.\n\n- **Parameters**: \n  - `text` (str): Text to output to braille\n- **Returns**: `bool` - True if successful\n\n#### `output_file(filename: str, text: str) -> None`\nSave speech output to an audio file.\n\n- **Parameters**: \n  - `filename` (str): Output file path\n  - `text` (str): Text to convert to audio\n- **Returns**: None\n\n### Playback Control\n\n#### `resume() -> None`\nResume paused speech.\n\n- **Returns**: None\n\n#### `pause() -> None`\nPause current speech.\n\n- **Returns**: None\n\n#### `stop() -> None`\nStop current speech immediately.\n\n- **Returns**: None\n\n#### `is_speaking() -> bool`\nCheck if speech is currently active.\n\n- **Returns**: `bool` - True if speaking, False otherwise\n\n### System Information\n\n#### `get_speech_flags() -> int`\nGet current speech system capability flags.\n\n- **Returns**: `int` - Bitfield of capability flags\n\n#### `check_speech_flags(flags: int) -> bool`\nCheck if specific speech flags are set.\n\n- **Parameters**: \n  - `flags` (int): Flags to check\n- **Returns**: `bool` - True if flags are set\n\n## Sapi Methods (Windows Only)\n\n### Initialization\n\n#### `Sapi.init()`\nInitialize the SAPI interface.\n\n- **Returns**: None\n- **Raises**: `InitializationError` if initialization fails\n- **Raises**: `NotImplementedError` on non-Windows platforms\n\n#### `Sapi.release()`\nRelease SAPI resources.\n\n- **Returns**: None\n\n#### `Sapi.sapi_loaded() -> bool`\nCheck if SAPI is currently loaded.\n\n- **Returns**: `bool` - True if loaded, False otherwise\n\n### Voice Control\n\n#### `voice_set_rate(offset: float) -> None`\nSet SAPI voice speech rate.\n\n- **Parameters**: \n  - `offset` (float): Speech rate value\n- **Returns**: None\n\n#### `voice_get_rate() -> float`\nGet current SAPI voice speech rate.\n\n- **Returns**: `float` - Current speech rate\n\n#### `voice_set_volume(offset: float) -> None`\nSet SAPI voice volume level.\n\n- **Parameters**: \n  - `offset` (float): Volume level\n- **Returns**: None\n\n#### `voice_get_volume() -> float`\nGet current SAPI voice volume level.\n\n- **Returns**: `float` - Current volume level\n\n#### `get_voice(index: int) -> str`\nGet SAPI voice name by index.\n\n- **Parameters**: \n  - `index` (int): Voice index\n- **Returns**: `str` - Voice name\n\n#### `get_current_voice() -> str`\nGet current SAPI voice name.\n\n- **Returns**: `str` - Current voice name\n\n#### `set_voice_by_index(index: int) -> None`\nSet SAPI voice by index.\n\n- **Parameters**: \n  - `index` (int): Voice index\n- **Returns**: None\n\n#### `set_voice(voice_name: str) -> None`\nSet SAPI voice by name.\n\n- **Parameters**: \n  - `voice_name` (str): Name of voice to set\n- **Returns**: None\n\n#### `get_voices() -> int`\nGet number of available SAPI voices.\n\n- **Returns**: `int` - Number of voices\n\n### SAPI Speech Output\n\n#### `speak(text: str, interrupt: bool = False, xml: bool = False) -> None`\nSpeak text using SAPI.\n\n- **Parameters**: \n  - `text` (str): Text to speak\n  - `interrupt` (bool): Whether to interrupt current speech (default: False)\n  - `xml` (bool): Whether text contains SSML markup (default: False)\n- **Returns**: None\n\n#### `output_file(filename: str, text: str, xml: bool = False) -> None`\nSave SAPI speech to audio file.\n\n- **Parameters**: \n  - `filename` (str): Output file path\n  - `text` (str): Text to convert\n  - `xml` (bool): Whether text contains SSML markup (default: False)\n- **Returns**: None\n\n### SAPI Playback Control\n\n#### `resume() -> None`\nResume paused SAPI speech.\n\n- **Returns**: None\n\n#### `pause() -> None`\nPause current SAPI speech.\n\n- **Returns**: None\n\n#### `stop() -> None`\nStop current SAPI speech.\n\n- **Returns**: None\n\n## Constants\n\nSpeech capability flags available from `__speech_common`:\n\n- `SC_SPEECH_FLOW_CONTROL` - Speech flow control support\n- `SC_SPEECH_PARAMETER_CONTROL` - Speech parameter control support  \n- `SC_VOICE_CONFIG` - Voice configuration support\n- `SC_FILE_OUTPUT` - File output support\n- `SC_HAS_SPEECH` - Speech synthesis support\n- `SC_HAS_BRAILLE` - Braille output support\n- `SC_HAS_SPEECH_STATE` - Speech state monitoring support\n\n## Exceptions\n\n### `InitializationError`\nRaised when SpeechCore or SAPI initialization fails.\n\n### `NotLoadedError`\nRaised when attempting to use methods before proper initialization.\n\n## Example Usage\n\n```python\nfrom speechcore import SpeechCore\n\n# Basic usage with context manager\nwith SpeechCore() as speech:\n    speech.output(\"Hello, this is SpeechCore!\")\n    \n    # Check available voices\n    voice_count = speech.get_voices()\n    for i in range(voice_count):\n        print(f\"Voice {i}: {speech.get_voice(i)}\")\n    \n    # Adjust speech parameters\n    speech.set_rate(0.5)  # Slower speech\n    speech.set_volume(0.8)  # Lower volume\n    \n    speech.output(\"This is slower and quieter speech.\")\n\n# Windows-specific SAPI usage\nif sys.platform == \"win32\":\n    from speechcore import Sapi\n    \n    with Sapi() as sapi:\n        sapi.speak(\"Hello from Windows SAPI!\")\n```\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python wrapper for the SpeechCore library (pybind11)",
    "version": "1.1.0",
    "project_urls": {
        "Homepage": "https://github.com/still-standing88/speech-core/"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e027d32bae269c66d46079df46d7b96206ab6ca8550cee4003cb45f6e61b73b1",
                "md5": "200ea1713561cbc021b85ca12c556211",
                "sha256": "95bf1d119deefcad12996deffc5e306e46df42668ae30376d651bb2bf784599b"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp310-cp310-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "200ea1713561cbc021b85ca12c556211",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 181700,
            "upload_time": "2025-07-26T16:10:58",
            "upload_time_iso_8601": "2025-07-26T16:10:58.369212Z",
            "url": "https://files.pythonhosted.org/packages/e0/27/d32bae269c66d46079df46d7b96206ab6ca8550cee4003cb45f6e61b73b1/speechcore-1.1.0-cp310-cp310-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "06c82889b906b12aa62a20712c243a769920653296ee7711ec7ee5809da1a24d",
                "md5": "e10f1468d39d9133af798992b379d38b",
                "sha256": "ca24e8aebe5296b0ca49cd88f0719196a918d157f20528754d83b6eb9dc1b648"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp310-cp310-macosx_13_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e10f1468d39d9133af798992b379d38b",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 97339,
            "upload_time": "2025-07-26T16:10:59",
            "upload_time_iso_8601": "2025-07-26T16:10:59.827685Z",
            "url": "https://files.pythonhosted.org/packages/06/c8/2889b906b12aa62a20712c243a769920653296ee7711ec7ee5809da1a24d/speechcore-1.1.0-cp310-cp310-macosx_13_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4d4b5990039a23b6a5c10d23e9964124b651e9d09bd4074757c77066bb97d210",
                "md5": "2e25c19cf29282ab6547d394425b6d0a",
                "sha256": "5de69e5344307711dfab8e2c177aac3102eb579219e62ed99be6205b94d604a9"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp310-cp310-manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2e25c19cf29282ab6547d394425b6d0a",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 1102236,
            "upload_time": "2025-07-26T16:11:01",
            "upload_time_iso_8601": "2025-07-26T16:11:01.730233Z",
            "url": "https://files.pythonhosted.org/packages/4d/4b/5990039a23b6a5c10d23e9964124b651e9d09bd4074757c77066bb97d210/speechcore-1.1.0-cp310-cp310-manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "31a6643f494d94ac130307567ef34ed6879715405c38ce5ccc6118f9a5b18f9f",
                "md5": "08f7a0db697f7acd04ca3457554e6d99",
                "sha256": "c0fde57bd898f0494302a5b0d2bff1b7376e8d3eced559712c6050ba8202987b"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "08f7a0db697f7acd04ca3457554e6d99",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 712890,
            "upload_time": "2025-07-26T16:11:03",
            "upload_time_iso_8601": "2025-07-26T16:11:03.839935Z",
            "url": "https://files.pythonhosted.org/packages/31/a6/643f494d94ac130307567ef34ed6879715405c38ce5ccc6118f9a5b18f9f/speechcore-1.1.0-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4ef64c9b50d87035c8d0a8a4a44af9b534575c6b2115e3f8c67a7e31ba810b3e",
                "md5": "4ec52ca15ec06653654e9a679979ecee",
                "sha256": "61e0c1e99e6b612a14e7cffb737d67b6e5cffc0e037fc4afc607d77327372a25"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp311-cp311-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "4ec52ca15ec06653654e9a679979ecee",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 184355,
            "upload_time": "2025-07-26T16:11:05",
            "upload_time_iso_8601": "2025-07-26T16:11:05.487418Z",
            "url": "https://files.pythonhosted.org/packages/4e/f6/4c9b50d87035c8d0a8a4a44af9b534575c6b2115e3f8c67a7e31ba810b3e/speechcore-1.1.0-cp311-cp311-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "31e62360936f58fd6589425c4f2c4e11e46361a8809160c4392251070bcf6e4d",
                "md5": "084ee5ed0d223ff7584d3ec26ad4907d",
                "sha256": "598ef2eaa704144adc2e6ca6b8661380671f9d9b28e8cdb25359fb66843fa8da"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp311-cp311-manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "084ee5ed0d223ff7584d3ec26ad4907d",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 1117517,
            "upload_time": "2025-07-26T16:11:07",
            "upload_time_iso_8601": "2025-07-26T16:11:07.545884Z",
            "url": "https://files.pythonhosted.org/packages/31/e6/2360936f58fd6589425c4f2c4e11e46361a8809160c4392251070bcf6e4d/speechcore-1.1.0-cp311-cp311-manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5368b0f41a5aa9cd9c03e57a88d03e393ffc1ea80f9af06f1171551bb93f6cb9",
                "md5": "cfdc3395a9e8dbfc63f5030dd451d29f",
                "sha256": "59ea073e657054c0794f6e4bb199a18c4a5f00882f45fc5522aae7fc2f304949"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "cfdc3395a9e8dbfc63f5030dd451d29f",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 714246,
            "upload_time": "2025-07-26T16:11:09",
            "upload_time_iso_8601": "2025-07-26T16:11:09.754774Z",
            "url": "https://files.pythonhosted.org/packages/53/68/b0f41a5aa9cd9c03e57a88d03e393ffc1ea80f9af06f1171551bb93f6cb9/speechcore-1.1.0-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "82d01bdd8c156003bb33beb34a4d93194ae20294912a68e5b2fad07353deb04b",
                "md5": "60f421daefd57c143a391e3c6d23edaf",
                "sha256": "87be09b0790eccbedc0a2e6390e25e6812ba12d89b49f0996f817659e0e00c55"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp312-cp312-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "60f421daefd57c143a391e3c6d23edaf",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 187851,
            "upload_time": "2025-07-26T16:11:11",
            "upload_time_iso_8601": "2025-07-26T16:11:11.646265Z",
            "url": "https://files.pythonhosted.org/packages/82/d0/1bdd8c156003bb33beb34a4d93194ae20294912a68e5b2fad07353deb04b/speechcore-1.1.0-cp312-cp312-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bbf57d393853e22e0c6f925a1a0cb68122e055fe49d0376eac219ec771eff220",
                "md5": "59a80312558ccab20abd357b3759856f",
                "sha256": "c628f990f568b000260543aaa7bacf194ac4153dca423fb48d2da2162376d694"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp312-cp312-manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "59a80312558ccab20abd357b3759856f",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 1120410,
            "upload_time": "2025-07-26T16:11:13",
            "upload_time_iso_8601": "2025-07-26T16:11:13.941714Z",
            "url": "https://files.pythonhosted.org/packages/bb/f5/7d393853e22e0c6f925a1a0cb68122e055fe49d0376eac219ec771eff220/speechcore-1.1.0-cp312-cp312-manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2eecbcf49a649c9690379a65b8e3c0ef42075c7413ba3aef780875717044d711",
                "md5": "49bf7b58c82deaa8cead2ef27273155b",
                "sha256": "95eee3e3d7bab3a8ec3f37cceeb7b53a99939a7138ad503ac6c097f2face6a56"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "49bf7b58c82deaa8cead2ef27273155b",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 715334,
            "upload_time": "2025-07-26T16:11:16",
            "upload_time_iso_8601": "2025-07-26T16:11:16.143614Z",
            "url": "https://files.pythonhosted.org/packages/2e/ec/bcf49a649c9690379a65b8e3c0ef42075c7413ba3aef780875717044d711/speechcore-1.1.0-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "03ef0e277d12da0478e786113d4f07a2b760fcb4ff2749c9b892e4a60b12e870",
                "md5": "b77dd861fca2cb34acbefd0e1f871d5d",
                "sha256": "6a18b4f0dbc7819fd3d7c0ba6f4b814939b8c3fcf916ef2f3c2512954a1a0982"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp313-cp313-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "b77dd861fca2cb34acbefd0e1f871d5d",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 187933,
            "upload_time": "2025-07-26T16:11:17",
            "upload_time_iso_8601": "2025-07-26T16:11:17.777315Z",
            "url": "https://files.pythonhosted.org/packages/03/ef/0e277d12da0478e786113d4f07a2b760fcb4ff2749c9b892e4a60b12e870/speechcore-1.1.0-cp313-cp313-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e9e18f29dbdafc86607d4a6348d60e6b6b993b409eab13d6ba77ebee0948b951",
                "md5": "348c3a500df4e403c057cdfa90579d8b",
                "sha256": "05e9b7527b49ffa75a929ff4198ff8a2b6ad9e8562b975ebce31b86f2ae5be38"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp313-cp313-manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "348c3a500df4e403c057cdfa90579d8b",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 1121304,
            "upload_time": "2025-07-26T16:11:20",
            "upload_time_iso_8601": "2025-07-26T16:11:20.689930Z",
            "url": "https://files.pythonhosted.org/packages/e9/e1/8f29dbdafc86607d4a6348d60e6b6b993b409eab13d6ba77ebee0948b951/speechcore-1.1.0-cp313-cp313-manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1f963a99ad2066611258823bb8605128e57c23ed5876d3bfac9d9ae2128cc20d",
                "md5": "a868a7024c764c880a8ba25379532cc9",
                "sha256": "1b791208712876e8d3711d30850fcc9171499d85caac47eb66332ce2f3e55af5"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "a868a7024c764c880a8ba25379532cc9",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 715322,
            "upload_time": "2025-07-26T16:11:22",
            "upload_time_iso_8601": "2025-07-26T16:11:22.942323Z",
            "url": "https://files.pythonhosted.org/packages/1f/96/3a99ad2066611258823bb8605128e57c23ed5876d3bfac9d9ae2128cc20d/speechcore-1.1.0-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4a0812bdade5fb6f1b66958688a37fad32c1b247b90b3c73c060d25c426bd4bf",
                "md5": "6c2025b0d37f95451d0c5d67420b6cc9",
                "sha256": "1403fae9f05680d714977a6666b2e558457b1cb1eb55d48b7787fd7f4300d456"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp38-cp38-macosx_13_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6c2025b0d37f95451d0c5d67420b6cc9",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 97116,
            "upload_time": "2025-07-26T16:11:24",
            "upload_time_iso_8601": "2025-07-26T16:11:24.894444Z",
            "url": "https://files.pythonhosted.org/packages/4a/08/12bdade5fb6f1b66958688a37fad32c1b247b90b3c73c060d25c426bd4bf/speechcore-1.1.0-cp38-cp38-macosx_13_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "19096266a115d263ee095692a56f3495ca06f0bbc14ed5403ddfa67420cef015",
                "md5": "a0497f9db8258e387d915bfc0b710ee4",
                "sha256": "6f080026be5fa6bb134a3f3b942036d7776f4d93467c0def61dccf865247151b"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp38-cp38-manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a0497f9db8258e387d915bfc0b710ee4",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 1101226,
            "upload_time": "2025-07-26T16:11:31",
            "upload_time_iso_8601": "2025-07-26T16:11:31.006008Z",
            "url": "https://files.pythonhosted.org/packages/19/09/6266a115d263ee095692a56f3495ca06f0bbc14ed5403ddfa67420cef015/speechcore-1.1.0-cp38-cp38-manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b57c055828c940dfa3d07b811614091251b1645957d311669c06f54dd7cd6137",
                "md5": "52c2461c71fd6045511effec500b4c92",
                "sha256": "7115fdf43e29ece3dce8b676ba651ddfb1c5c6252b41f9becc6efc9986b43da5"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "52c2461c71fd6045511effec500b4c92",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 712935,
            "upload_time": "2025-07-26T16:11:35",
            "upload_time_iso_8601": "2025-07-26T16:11:35.061441Z",
            "url": "https://files.pythonhosted.org/packages/b5/7c/055828c940dfa3d07b811614091251b1645957d311669c06f54dd7cd6137/speechcore-1.1.0-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "625739072ab59ece63688ea11f03ff8c12b953b2da4a95a58230a73a13b5d09a",
                "md5": "ebfcdf2d73f6b703915c7e13246a1c92",
                "sha256": "8eef276c3bccf28d1473f4906f18e5c993e1bced1adf9ca459113af7d74f0819"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp39-cp39-macosx_13_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ebfcdf2d73f6b703915c7e13246a1c92",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 97442,
            "upload_time": "2025-07-26T16:11:36",
            "upload_time_iso_8601": "2025-07-26T16:11:36.624671Z",
            "url": "https://files.pythonhosted.org/packages/62/57/39072ab59ece63688ea11f03ff8c12b953b2da4a95a58230a73a13b5d09a/speechcore-1.1.0-cp39-cp39-macosx_13_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "710f3dc120364a2628a0a7c10779093752a5937e23c88680f7819b0e3fe534a4",
                "md5": "ed3b03823fc2d175ea6b798aca12c306",
                "sha256": "e6703753ca9eebc9b3b7b087f7748c46876ef70a395a634de1dbe0c986388c01"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp39-cp39-manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ed3b03823fc2d175ea6b798aca12c306",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 1101194,
            "upload_time": "2025-07-26T16:11:41",
            "upload_time_iso_8601": "2025-07-26T16:11:41.412605Z",
            "url": "https://files.pythonhosted.org/packages/71/0f/3dc120364a2628a0a7c10779093752a5937e23c88680f7819b0e3fe534a4/speechcore-1.1.0-cp39-cp39-manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "367091f382567a7e97f6a216b0bbffc8b535022e0ab18647754b8661bff2104a",
                "md5": "25fb88392366c667f17b50efd51682d7",
                "sha256": "8fe9dd99498ee4c6d3d8849f0b5576a5b4e43744105a656aba177e1c431d5431"
            },
            "downloads": -1,
            "filename": "speechcore-1.1.0-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "25fb88392366c667f17b50efd51682d7",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 715314,
            "upload_time": "2025-07-26T16:11:44",
            "upload_time_iso_8601": "2025-07-26T16:11:44.868185Z",
            "url": "https://files.pythonhosted.org/packages/36/70/91f382567a7e97f6a216b0bbffc8b535022e0ab18647754b8661bff2104a/speechcore-1.1.0-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-26 16:10:58",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "still-standing88",
    "github_project": "speech-core",
    "github_not_found": true,
    "lcname": "speechcore"
}
        
Elapsed time: 2.59097s