<div align="center">
<!----->
<img alt="PyAudio Wasapi Loopback Patch" src="https://raw.githubusercontent.com/s0d3s/PyAudioWPatch/master/assets/snake_trace_clear.svg" height="414"/>
# PyAudioWPatch
This fork will allow you to use the WASAPI device as loopback using **PyAudio**.
<br>
So you can *use speakers to record audio*вњЁ





</div>
<br /><br />
## For whom?
If you want to record sound from speakers in python, then this fork is for you.
> PyAudioW(*indows|ASAPI*)Patch come only with WMME, DirectX and WASAPI support
> if you need more -> create an issue
## How
The Windows Audio Session API ([WASAPI](https://docs.microsoft.com/en-us/windows/win32/coreaudio/wasapi)) allows you to use output devices (that support this API) in loopback mode. At the time of release, it was impossible to achieve this using the original version of PyAudio.
> Note: Now WASAPI loopback devices are duplicated at the end of the list as virtual devices. That is, to record from speakers, you need to use not just a WASAPI device, but its loopback analogue. All loopback devices are **input devices**.
## How to use
*Read -> Install -> Enjoy!*
### Installation
```bash
pip install PyAudioWPatch
```
> Wheels are available for **Windows**, Python *3.{7,8,9,10,11}*.<br />
> All wheels support APIs: WMME, WASAPI, DirectX(DSound).
### In code
With new features:
```python
import pyaudiowpatch as pyaudio
with pyaudio.PyAudio() as p:
# Open PyA manager via context manager
with p.open(...) as stream:
# Open audio stream via context manager
# Do some stuff
...
```
Or in original PyAudio way:
```python
import pyaudiowpatch as pyaudio
p = pyaudio.PyAudio()
stream = p.open(...)
# Do some stuff
...
stream.stop_stream()
stream.close()
# close PyAudio
p.terminate()
```
### Difference with PyAudio
- The behavior of all standard methods is unchanged
- Added several *life-improving* methods
- Fixed problem with name encoding
- Ability to record audio from WASAPI loopback devices (see [example](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_record_wasapi_loopback.py))
#### More detailed
- new methods:
- [`get_host_api_info_generator`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1082) - Iterate over all Host APIs
- [`get_device_info_generator`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1096) - Iterate over all devices
- [`get_device_info_generator_by_host_api`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1109) - Iterate over all devices, by specific Host API(index/type)
- [`get_loopback_device_info_generator`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1133) - Iterate over all devices(with loopback mode)
- [`print_detailed_system_info`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1149) - Print some info about Host Api and devices
- [`get_default_wasapi_loopback`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1255) - Return `loopback` for default speakers
- [`get_wasapi_loopback_analogue_by_index`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1243) - Return `loopback` for device via index
- [`get_wasapi_loopback_analogue_by_dict`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1213) - Return `loopback` for device related to `info_dict`
- [`get_default_wasapi_device`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1191) - Return default (out/in)put device for `WASAPI` driver
- new features:
- Context manager support, for PyAudio(manager) and Stream classes
- Run `python -m pyaudiowpatch` to get list of devices(like `print_detailed_system_info` call)
#### Examples:
- [Play sine, using \'new context manager'](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_play_sine_using_context_manger.py)
- [Record audio from default speakers](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_record_wasapi_loopback.py)
- [Simple recording app](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_simple_recording_app.py)
- [Cross-platform concept (Not example)](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_crossplatform_concept.py)
<!---
- [Play sine, using \'new context manager'](examples/pawp_play_sine_using_context_manger.py)
- [Record from audio from default speakers](examples/pawp_record_wasapi_loopback.py)
- [Cross-platform concept (Not example)](examples/pawp_crossplatform_concept.py)-->
## Sources
The following were taken as a basis:
- PortAudio v19 \[[8b6d16f26ad660e68a97743842ac29b939f3c0c1](https://github.com/PortAudio/portaudio/commit/8b6d16f26ad660e68a97743842ac29b939f3c0c1)]
- PyAudio v0.2.12
## How to build manually
- Build PortAudio (using the instructions in the [README](portaudio_v19/README.md))
- ~~Install [~~python~~](https://www.python.org/downloads/)~~
- run in the PyAudioWPatch directory:
```bush
python setup.py install
```
- ???
- Profit.
Also you can build wheel**s**:
- `pip install cibuildwheel`
- Run in Cygwin:
```bash
./cygwin_cibuildwheel_build.sh
```
- Get your wheels in the `./wheelhouse` folder
---
<div align="center">
## Origin README
</div>
<img align="right" width="200" style="margin-left: 3px" src="https://people.csail.mit.edu/hubert/pyaudio/images/snake-300.png">
## PyAudio
PyAudio provides Python bindings for PortAudio v19, the cross-platform audio I/O library. With PyAudio, you can easily use Python to play and record audio on a variety of platforms, such as GNU/Linux, Microsoft Windows, and Apple macOS.
PyAudio is distributed under the MIT License.
* [Homepage](https://people.csail.mit.edu/hubert/pyaudio/)
* [API Documentation](https://people.csail.mit.edu/hubert/pyaudio/docs/)
* [PyPi](https://pypi.python.org/pypi/PyAudio)
## Installation
See the INSTALLATION file in the source distribution for details. In summary, install PyAudio using `pip` on most platforms.
### Windows
```sh
python -m pip install pyaudio
```
This installs the precompiled PyAudio library with PortAudio v19 19.7.0 included. The library is compiled with support for Windows MME API, DirectSound, WASAPI, and WDM-KS. It does not include support for ASIO. If you require support for APIs not included, you will need to compile PortAudio and PyAudio.
### macOS
Use [Homebrew](https://brew.sh) to install the prerequisite [portaudio](http://portaudio.com) library, then install PyAudio using `pip`:
```sh
brew install portaudio
pip install pyaudio
```
### GNU/Linux
Use the package manager to install PyAudio. For example, on Debian-based systems:
```sh
sudo apt install python3-pyaudio
```
Alternatively, if the latest version of PyAudio is not available, install it using `pip`. Be sure to first install development libraries for `portaudio19` and `python3`.
### Building from source
See the INSTALLATION file.
## Documentation & Usage Examples
* Read the [API Documentation](https://people.csail.mit.edu/hubert/pyaudio/docs/), or generate it from the source using [`sphinx`](https://www.sphinx-doc.org/).
* Usage examples are in the `examples` directory of the source distribution, or see the [project homepage](https://people.csail.mit.edu/hubert/pyaudio/).
## License
PyAudio is distributed under the MIT License. See LICENSE.txt.
Raw data
{
"_id": null,
"home_page": "https://github.com/s0d3s/PyAudioWPatch/",
"name": "PyAudioWPatch",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "Hubert Pham(S0D3S edition)",
"author_email": "",
"download_url": "",
"platform": null,
"description": "<div align=\"center\">\r\n\r\n<!----->\r\n<img alt=\"PyAudio Wasapi Loopback Patch\" src=\"https://raw.githubusercontent.com/s0d3s/PyAudioWPatch/master/assets/snake_trace_clear.svg\" height=\"414\"/>\r\n\r\n# PyAudioWPatch\r\n\r\nThis fork will allow you to use the WASAPI device as loopback using **PyAudio**.\r\n<br>\r\nSo you can *use speakers to record audio*\u0432\u045a\u0401\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n</div>\r\n\r\n<br /><br />\r\n\r\n## For whom?\r\n\r\nIf you want to record sound from speakers in python, then this fork is for you.\r\n\r\n> PyAudioW(*indows|ASAPI*)Patch come only with WMME, DirectX and WASAPI support\r\n> if you need more -> create an issue\r\n\r\n## How\r\n\r\nThe Windows Audio Session API ([WASAPI](https://docs.microsoft.com/en-us/windows/win32/coreaudio/wasapi)) allows you to use output devices (that support this API) in loopback mode. At the time of release, it was impossible to achieve this using the original version of PyAudio.\r\n\r\n> Note: Now WASAPI loopback devices are duplicated at the end of the list as virtual devices. That is, to record from speakers, you need to use not just a WASAPI device, but its loopback analogue. All loopback devices are **input devices**.\r\n\r\n## How to use\r\n\r\n*Read -> Install -> Enjoy!*\r\n\r\n### Installation\r\n\r\n```bash\r\npip install PyAudioWPatch\r\n```\r\n> Wheels are available for **Windows**, Python *3.{7,8,9,10,11}*.<br />\r\n> All wheels support APIs: WMME, WASAPI, DirectX(DSound).\r\n\r\n### In code\r\n\r\nWith new features:\r\n\r\n```python\r\nimport pyaudiowpatch as pyaudio\r\n\r\nwith pyaudio.PyAudio() as p:\r\n # Open PyA manager via context manager\r\n with p.open(...) as stream:\r\n # Open audio stream via context manager\r\n # Do some stuff\r\n ...\r\n```\r\n\r\nOr in original PyAudio way:\r\n\r\n```python\r\nimport pyaudiowpatch as pyaudio\r\n\r\np = pyaudio.PyAudio()\r\nstream = p.open(...)\r\n\r\n# Do some stuff\r\n...\r\n\r\nstream.stop_stream()\r\nstream.close()\r\n\r\n# close PyAudio\r\np.terminate()\r\n```\r\n\r\n### Difference with PyAudio\r\n\r\n - The behavior of all standard methods is unchanged\r\n - Added several *life-improving* methods\r\n - Fixed problem with name encoding\r\n - Ability to record audio from WASAPI loopback devices (see [example](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_record_wasapi_loopback.py))\r\n \r\n#### More detailed\r\n - new methods:\r\n - [`get_host_api_info_generator`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1082) - Iterate over all Host APIs\r\n - [`get_device_info_generator`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1096) - Iterate over all devices\r\n - [`get_device_info_generator_by_host_api`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1109) - Iterate over all devices, by specific Host API(index/type)\r\n - [`get_loopback_device_info_generator`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1133) - Iterate over all devices(with loopback mode)\r\n - [`print_detailed_system_info`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1149) - Print some info about Host Api and devices\r\n - [`get_default_wasapi_loopback`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1255) - Return `loopback` for default speakers\r\n - [`get_wasapi_loopback_analogue_by_index`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1243) - Return `loopback` for device via index\r\n - [`get_wasapi_loopback_analogue_by_dict`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1213) - Return `loopback` for device related to `info_dict`\r\n - [`get_default_wasapi_device`](https://github.com/s0d3s/PyAudioWPatch/blob/master/src/pyaudiowpatch/__init__.py#L1191) - Return default (out/in)put device for `WASAPI` driver\r\n\r\n - new features:\r\n - Context manager support, for PyAudio(manager) and Stream classes\r\n - Run `python -m pyaudiowpatch` to get list of devices(like `print_detailed_system_info` call)\r\n \r\n#### Examples:\r\n - [Play sine, using \\'new context manager'](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_play_sine_using_context_manger.py)\r\n - [Record audio from default speakers](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_record_wasapi_loopback.py)\r\n - [Simple recording app](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_simple_recording_app.py)\r\n - [Cross-platform concept (Not example)](https://github.com/s0d3s/PyAudioWPatch/blob/master/examples/pawp_crossplatform_concept.py)\r\n<!---\r\n - [Play sine, using \\'new context manager'](examples/pawp_play_sine_using_context_manger.py)\r\n - [Record from audio from default speakers](examples/pawp_record_wasapi_loopback.py)\r\n - [Cross-platform concept (Not example)](examples/pawp_crossplatform_concept.py)-->\r\n \r\n## Sources\r\n\r\nThe following were taken as a basis:\r\n\r\n - PortAudio v19 \\[[8b6d16f26ad660e68a97743842ac29b939f3c0c1](https://github.com/PortAudio/portaudio/commit/8b6d16f26ad660e68a97743842ac29b939f3c0c1)]\r\n - PyAudio v0.2.12\r\n \r\n## How to build manually\r\n\r\n - Build PortAudio (using the instructions in the [README](portaudio_v19/README.md))\r\n - ~~Install [~~python~~](https://www.python.org/downloads/)~~\r\n - run in the PyAudioWPatch directory:\r\n ```bush\r\n python setup.py install\r\n ```\r\n - ???\r\n - Profit.\r\n \r\n Also you can build wheel**s**:\r\n - `pip install cibuildwheel`\r\n - Run in Cygwin:\r\n ```bash\r\n ./cygwin_cibuildwheel_build.sh\r\n ```\r\n - Get your wheels in the `./wheelhouse` folder\r\n\r\n---\r\n\r\n<div align=\"center\">\r\n\r\n## Origin README\r\n\r\n</div>\r\n\r\n\r\n<img align=\"right\" width=\"200\" style=\"margin-left: 3px\" src=\"https://people.csail.mit.edu/hubert/pyaudio/images/snake-300.png\">\r\n\r\n## PyAudio\r\n\r\nPyAudio provides Python bindings for PortAudio v19, the cross-platform audio I/O library. With PyAudio, you can easily use Python to play and record audio on a variety of platforms, such as GNU/Linux, Microsoft Windows, and Apple macOS.\r\n\r\nPyAudio is distributed under the MIT License.\r\n\r\n* [Homepage](https://people.csail.mit.edu/hubert/pyaudio/)\r\n* [API Documentation](https://people.csail.mit.edu/hubert/pyaudio/docs/)\r\n* [PyPi](https://pypi.python.org/pypi/PyAudio)\r\n\r\n## Installation\r\n\r\nSee the INSTALLATION file in the source distribution for details. In summary, install PyAudio using `pip` on most platforms.\r\n\r\n### Windows\r\n\r\n```sh\r\npython -m pip install pyaudio\r\n```\r\n\r\nThis installs the precompiled PyAudio library with PortAudio v19 19.7.0 included. The library is compiled with support for Windows MME API, DirectSound, WASAPI, and WDM-KS. It does not include support for ASIO. If you require support for APIs not included, you will need to compile PortAudio and PyAudio.\r\n\r\n### macOS\r\n\r\nUse [Homebrew](https://brew.sh) to install the prerequisite [portaudio](http://portaudio.com) library, then install PyAudio using `pip`:\r\n\r\n```sh\r\nbrew install portaudio\r\npip install pyaudio\r\n```\r\n\r\n### GNU/Linux\r\n\r\nUse the package manager to install PyAudio. For example, on Debian-based systems:\r\n\r\n```sh\r\nsudo apt install python3-pyaudio\r\n```\r\n\r\nAlternatively, if the latest version of PyAudio is not available, install it using `pip`. Be sure to first install development libraries for `portaudio19` and `python3`.\r\n\r\n### Building from source\r\n\r\nSee the INSTALLATION file.\r\n\r\n## Documentation & Usage Examples\r\n\r\n* Read the [API Documentation](https://people.csail.mit.edu/hubert/pyaudio/docs/), or generate it from the source using [`sphinx`](https://www.sphinx-doc.org/).\r\n\r\n* Usage examples are in the `examples` directory of the source distribution, or see the [project homepage](https://people.csail.mit.edu/hubert/pyaudio/).\r\n\r\n## License\r\n\r\nPyAudio is distributed under the MIT License. See LICENSE.txt.\r\n",
"bugtrack_url": null,
"license": "Apache-2.0 license",
"summary": "PortAudio fork with WASAPI loopback support",
"version": "0.2.12.6",
"project_urls": {
"Homepage": "https://github.com/s0d3s/PyAudioWPatch/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b9c39e156a4353fb7706e656da2f1a605820ef791b1e0e08becb1e62d008d5f5",
"md5": "c03adb54d1e0dbf7816968b5a17e4f20",
"sha256": "3eac00d775820ee9f2f07f91965c93eb6b06864356ae197489be632add13d5e8"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp310-cp310-win32.whl",
"has_sig": false,
"md5_digest": "c03adb54d1e0dbf7816968b5a17e4f20",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 84047,
"upload_time": "2023-06-03T12:50:50",
"upload_time_iso_8601": "2023-06-03T12:50:50.373861Z",
"url": "https://files.pythonhosted.org/packages/b9/c3/9e156a4353fb7706e656da2f1a605820ef791b1e0e08becb1e62d008d5f5/PyAudioWPatch-0.2.12.6-cp310-cp310-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9299cd5c957cda1e85b8be27f94409712b311e9085eb49e026b3fb6de930decb",
"md5": "5c0c5030abe369a091ae5362a2c4164d",
"sha256": "962fe6f210aa1e1d62d8ac5f433ee7095603989f614754c819995f2328150b51"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "5c0c5030abe369a091ae5362a2c4164d",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": null,
"size": 86293,
"upload_time": "2023-06-03T12:50:52",
"upload_time_iso_8601": "2023-06-03T12:50:52.558691Z",
"url": "https://files.pythonhosted.org/packages/92/99/cd5c957cda1e85b8be27f94409712b311e9085eb49e026b3fb6de930decb/PyAudioWPatch-0.2.12.6-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7b75a8cdeb8da773260e03566441ea3ee58a4077dd9fd8e022099ccdfa39e5b4",
"md5": "602efd917ce1fc327867d64777d41814",
"sha256": "5ae26f1f7d6b76f9a6d124daef4922b12572b4f393fbe99637ea89cb03e390d8"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp311-cp311-win32.whl",
"has_sig": false,
"md5_digest": "602efd917ce1fc327867d64777d41814",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 84052,
"upload_time": "2023-06-03T12:50:54",
"upload_time_iso_8601": "2023-06-03T12:50:54.360332Z",
"url": "https://files.pythonhosted.org/packages/7b/75/a8cdeb8da773260e03566441ea3ee58a4077dd9fd8e022099ccdfa39e5b4/PyAudioWPatch-0.2.12.6-cp311-cp311-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ffc4cfa2066e9cd1938468c609a75ed32784bc30aac25c50b10d891e96d46989",
"md5": "b3ab20b73f69499a627c18b55d43e630",
"sha256": "ff9642f32d6cc9fb183c88f36a9a34d8a7f0434dd96022ec7d235732c07c2188"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "b3ab20b73f69499a627c18b55d43e630",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": null,
"size": 86304,
"upload_time": "2023-06-03T12:50:56",
"upload_time_iso_8601": "2023-06-03T12:50:56.334806Z",
"url": "https://files.pythonhosted.org/packages/ff/c4/cfa2066e9cd1938468c609a75ed32784bc30aac25c50b10d891e96d46989/PyAudioWPatch-0.2.12.6-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b3afeba2e7b650e0b1feebf514ce24fd0af45d3b3cc4ea1a5bc6d3e83b77b557",
"md5": "a2de74fab2de41ab9feeb24c1c601e3c",
"sha256": "42bd9bb177575d2c4cf039513be48254694d670841029e0a7c70d8949025e802"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp37-cp37m-win32.whl",
"has_sig": false,
"md5_digest": "a2de74fab2de41ab9feeb24c1c601e3c",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 84016,
"upload_time": "2023-06-03T12:50:58",
"upload_time_iso_8601": "2023-06-03T12:50:58.530096Z",
"url": "https://files.pythonhosted.org/packages/b3/af/eba2e7b650e0b1feebf514ce24fd0af45d3b3cc4ea1a5bc6d3e83b77b557/PyAudioWPatch-0.2.12.6-cp37-cp37m-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0f609f76683875689db588df0bd90c0a02b4548c4a6de37d82c1497f3c0f0282",
"md5": "a475db2a9e6029ab619fc673dcac0e7d",
"sha256": "e3014ff6c35e844b4977b0c201b74f69ad7319cdf2fc17b7658c8017bca0414e"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp37-cp37m-win_amd64.whl",
"has_sig": false,
"md5_digest": "a475db2a9e6029ab619fc673dcac0e7d",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": null,
"size": 86280,
"upload_time": "2023-06-03T12:51:00",
"upload_time_iso_8601": "2023-06-03T12:51:00.431211Z",
"url": "https://files.pythonhosted.org/packages/0f/60/9f76683875689db588df0bd90c0a02b4548c4a6de37d82c1497f3c0f0282/PyAudioWPatch-0.2.12.6-cp37-cp37m-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0c3f4e0919149216cabcb9c3b7baf39d7aa2d7d55b550fdf6adfff0ede5c527f",
"md5": "f049dd6997991c9d4ac38c4f6c5c3ab3",
"sha256": "3142092a8be291879d8fb3f99871bbe19225f30894b27721c804eec401e3dbfa"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp38-cp38-win32.whl",
"has_sig": false,
"md5_digest": "f049dd6997991c9d4ac38c4f6c5c3ab3",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 84049,
"upload_time": "2023-06-03T12:51:02",
"upload_time_iso_8601": "2023-06-03T12:51:02.311099Z",
"url": "https://files.pythonhosted.org/packages/0c/3f/4e0919149216cabcb9c3b7baf39d7aa2d7d55b550fdf6adfff0ede5c527f/PyAudioWPatch-0.2.12.6-cp38-cp38-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "051fbcae8b8e98b6872ce71e08d4aa6712dd57bb3bd70198441f9d56ccaa9658",
"md5": "16bd7d8c90aecbb5bfecc4ba3abed874",
"sha256": "bfcd7708c84fc7d0bbb29f27235369d3f547459f124b088a5f7281e72cd2daeb"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp38-cp38-win_amd64.whl",
"has_sig": false,
"md5_digest": "16bd7d8c90aecbb5bfecc4ba3abed874",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": null,
"size": 86318,
"upload_time": "2023-06-03T12:51:04",
"upload_time_iso_8601": "2023-06-03T12:51:04.181644Z",
"url": "https://files.pythonhosted.org/packages/05/1f/bcae8b8e98b6872ce71e08d4aa6712dd57bb3bd70198441f9d56ccaa9658/PyAudioWPatch-0.2.12.6-cp38-cp38-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "66ab441537e5a2b5cc71f862658547e90be736d17e120dbc146ff539dd92dd1a",
"md5": "69aa10870cee6960653a0a5d3c81c2f1",
"sha256": "d80712f502e0709fee3c93b568ed69343b6a2ba5b0e2e9c72d7ca19a91c1c87a"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp39-cp39-win32.whl",
"has_sig": false,
"md5_digest": "69aa10870cee6960653a0a5d3c81c2f1",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 84040,
"upload_time": "2023-06-03T12:51:06",
"upload_time_iso_8601": "2023-06-03T12:51:06.056785Z",
"url": "https://files.pythonhosted.org/packages/66/ab/441537e5a2b5cc71f862658547e90be736d17e120dbc146ff539dd92dd1a/PyAudioWPatch-0.2.12.6-cp39-cp39-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "27bd370ae7a9ee6100afed45e50e8f7ecc204617f47b379b95216a40eee30282",
"md5": "b738959d2172d65da0dbd805916e1ebd",
"sha256": "c8d803a08ddab5e97b25df4e506b955d97a067bbccdff13f5b70115ddeeb0e5d"
},
"downloads": -1,
"filename": "PyAudioWPatch-0.2.12.6-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "b738959d2172d65da0dbd805916e1ebd",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": null,
"size": 86293,
"upload_time": "2023-06-03T12:51:08",
"upload_time_iso_8601": "2023-06-03T12:51:08.077035Z",
"url": "https://files.pythonhosted.org/packages/27/bd/370ae7a9ee6100afed45e50e8f7ecc204617f47b379b95216a40eee30282/PyAudioWPatch-0.2.12.6-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-03 12:50:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "s0d3s",
"github_project": "PyAudioWPatch",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "pyaudiowpatch"
}