- PyAudio 0.2.11
- Navigation
- Project links
- Statistics
- Maintainers
- Project description
- Project details
- Project links
- Statistics
- Maintainers
- Release history Release notifications | RSS feed
- Download files
- PyAudio
- What’s new
- March 18, 2017
- January 16, 2017
- October 19, 2015
- October 18, 2015
- April 12, 2014
- January 30, 2014
- October 27, 2012
- October 14, 2012
- August 22, 2012
- April 20, 2012
- March 7, 2012
- December 7, 2010
- November 2, 2010
- October 12, 2010
- November 2, 2008
- March 5, 2008
- Installation
- Documentation & Examples
- License
- Acknowledgements
- Python. Используем PyAudio для записи звука
- Работа с PyAudio
- Пример кода
- Русские Блоги
- «Советы по разработке» Python аудио инструмент управления PyAudio учебник
- «Советы по разработке» Python аудио инструмент управления PyAudio учебник
- 0. Введение
- 1. Введение
- 2. установка
- 3. Примеры
PyAudio 0.2.11
pip install PyAudio Copy PIP instructions
Released: Mar 19, 2017
Bindings for PortAudio v19, the cross-platform audio input/output stream library.
Navigation
Project links
Statistics
View statistics for this project via Libraries.io, or by using our public dataset on Google BigQuery
Author: Hubert Pham
Maintainers
Project description
PyAudio v0.2.11: Python Bindings for PortAudio.
Copyright (c) 2006 Hubert Pham
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Project details
Project links
Statistics
View statistics for this project via Libraries.io, or by using our public dataset on Google BigQuery
Author: Hubert Pham
Maintainers
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you’re not sure which to choose, learn more about installing packages.
Источник
PyAudio
PyAudio provides Python bindings for PortAudio, 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 Mac OS X / macOS.
PyAudio is inspired by:
- pyPortAudio/fastaudio: Python bindings for PortAudio v18 API.
- tkSnack: cross-platform sound toolkit for Tcl/Tk and Python.
What’s new
March 18, 2017
Many thanks to both Blaise Potard and Matthias Schaff for discovering the issue and for their patches! Thanks as well to Timothy Port for helping to correct a docstring.
January 16, 2017
Great thanks to Michael Graczyk for discovering the GIL-related issues and for submitting a patch!
October 19, 2015
October 18, 2015
Many thanks to Tony Jacobson for discovering and helping with the overflow error. Thanks also to Sami Liedes for reporting the IOError exception issue!
April 12, 2014
Many thanks to Jason Roehm for discovering and patching the threading-related issue!
January 30, 2014
October 27, 2012
Thanks again to Bastian Bechtold for his help converting the documentation for use with Sphinx! In addition, thanks to John K. Luebs for the callback fix.
October 14, 2012
Many thanks to Bastian Bechtold and Bob Jamison for their contributions! Without their patches and Bastian’s careful review, this release would still be far away. Also, great thanks to Danilo J. S. Bellini for reporting bugs.
Note: As of this update, PyAudio is compatible with Python 2.6, Python 2.7, and Python 3.2. For Python installations older than 2.6, use PyAudio 0.2.4.
August 22, 2012
April 20, 2012
March 7, 2012
December 7, 2010
November 2, 2010
October 12, 2010
November 2, 2008
March 5, 2008
Installation
The current version is PyAudio v0.2.11. Install PyAudio using pip on most platforms. For versions prior to v0.2.9, PyAudio distributed installation binaries, which are archived here.
Notes:
- If pip is not already bundled with your installation of Python, get it here.
- pip will fetch and install PyAudio wheels (prepackaged binaries). Currently, there are wheels compatible with the official distributions of Python 2.7, 3.4, 3.5, and 3.6. For those versions, both 32-bit and 64-bit wheels are available.
- These binaries include PortAudio v19 v190600_20161030, built with MinGW. They support only the Windows MME API and do not include support for DirectX, ASIO, etc. If you require support for APIs not included, you will need to compile PortAudio and PyAudio.
Use Homebrew to install the prerequisite portaudio library, then install PyAudio using pip:
brew install portaudio
pip install pyaudio
Notes:
- If not already installed, download Homebrew.
- pip will download the PyAudio source and build it for your version of Python.
- Homebrew and building PyAudio also require installing the Command Line Tools for Xcode (more information).
Use the package manager to install PyAudio:
sudo apt-get install python-pyaudio python3-pyaudio
If the latest version of PyAudio is not available, install it using pip:
Notes:
- pip will download the PyAudio source and build it for your system. Be sure to install the portaudio library development package ( portaudio19-dev ) and the python development package ( python-all-dev ) beforehand.
- For better isolation from system packages, consider installing PyAudio in a virtualenv.
Source is available for download at the Python Package Index (PyPI): pypi.python.org/pypi/PyAudio.
Or clone the git repository:
To build PyAudio from source, you will also need to build PortAudio v19. See compilation hints for some instructions on building PyAudio for various platforms. To build PyAudio using Microsoft Visual Studio, check out Sebastian Audet’s instructions.
Documentation & Examples
The PyAudio source distribution contains a set of demos. Here’s a selection from that set:
License
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the «Software»), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED «AS IS», WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Acknowledgements
The development of PyAudio was funded in part by the Cambridge-MIT Institute and T-Party.
Many thanks to Andrew Baldwin, Alex ThreeD, Timothée Lecomte, Frank Samuelson, Matthieu Brucher, Chris Stawarz, Barry Walker, Bob Jamison, Danilo J. S. Bellini, Bastian Bechtold, Christoph Gohlke, Sebastian Audet, Jason Roehm, Tony Jacobson, Sami Liedes, Michael Graczyk, Blaise Potard, Matthias Schaff, and Timothy Port for their much appreciated suggestions and patches—as well as to others who have written to say hello!
Special thanks to Felipe Sateler and Justin Mazzola Paluska for Debian/Ubuntu packaging help.
Источник
Python. Используем PyAudio для записи звука
В этой публикации мы расмотрим как при помощи библиотеки PyAudio записать звук из любого источника, будь то микрофон, микшер или что-то еще. Перед началом работы надо установить библиотеку , для разных ОС существуют разные способы установки:
Работа с PyAudio
PyAudio — это библиотека предоставляет возможность записи аудио(звука) с помощью Python. PyAudio записывает полученный аудио поток в объекты типа bytes. В последующем данные могут быть сохранены в виде файлов WAV с использованием таких библиотек как scipy или wave соответственно. Для того что бы записать звук например с микрофона, нам надо определить идентификатор используемого устройства, в нашем случае микрофона.
Для этого нам надо написать следующий код, который выведет нам весь список доступных устройств и их идентификаторы:
после запуска скрипта мы получим список всех устройств и их идентификаторы:
В полученном списке мы ищем запись «Микрофон» и определяем его идентификатор, который равен 2. Далее этот идентификатор мы будем использовать в настроках PyAudio. Прежде чем использовать библиотеку PyAudio нам надо определить некоторые параметры:
- format — размер семпла и его формат (pyaudio.paInt16, pyaudio.paInt24, pyaudio.paInt8)
- channels — кол-во каналов аудио (обычно 2)
- frames_per_buffer — размер буффера записи
- rate — частота дискритизации 96000, 44100, 22050, 11025, 8000
- input_device_index — идентификатор устройства
- input — вывод True или False
Как будет работать запись: для начала надо будет инициализовать поток PyAudio через параметры. Далее в цикле будем записывать кусками данные в массив, после того как закончиться запись мы запишем все данные в файл.
Пример кода
Пример кода для записи звука:
после выполнения скрипта мы получим wav файл который можно открыть в любом плеере.
Источник
Русские Блоги
«Советы по разработке» Python аудио инструмент управления PyAudio учебник
«Советы по разработке» Python аудио инструмент управления PyAudio учебник
0. Введение
Когда вам нужно использовать Python для обработки аудиоданных, необходимо использовать Python для чтения и воспроизведения звуков. Ниже представлен полезный инструментарий PyAudio для обработки аудио.
PyAudio — это набор инструментов с открытым исходным кодом Python, как следует из названия, это набор инструментов, обеспечивающий голосовые операции. Предоставляют такие функции, как обработка записи и воспроизведения, которые можно рассматривать как OpenCv в голосовом поле.
1. Введение
PyAudio — это кроссплатформенная библиотека ввода-вывода аудиоPortAudioпри условииPythonСвязывание. С PyAudio вы можете легко использовать Python для воспроизведения и записи звука на различных платформах, таких как GNU / Linux, Microsoft Windows и Apple Mac OS X / macOS.
PyAudio был вдохновлен:
- pyPortAudio / fastaudio:PortAudio v18Привязки API Python.
- tkSnack: Кроссплатформенный звуковой инструментарий для Tcl / Tk и Python.
2. установка
Текущая версияPyAudio v0.2.11, Используйте pip для установки PyAudio на большинстве платформ. Для версий, предшествующих v0.2.9, PyAudio распространяет установочные двоичные файлы, эти файлыАрхив здесь。
Microsoft Windows
- Если pip еще не связан с вашей установкой Python, пожалуйста,здесьПолучи это.
- pip получит и установит PyAudio round (предварительно упакованные двоичные файлы). В настоящее время существуют колеса, совместимые с Python 2.7, 3.4, 3.5 и 3.6Официальный релиз, Для этих версий могут использоваться 32-битные и 64-битные диски.
- Эти двоичные файлы включают PortAudio v19 v190600_20161030, созданный с использованием MinGW. Они поддерживают только Windows MME API,неВключая поддержку DirectX, ASIO и т. Д. Если вам нужно поддерживать API, которые не включены, вам необходимо скомпилировать PortAudio и PyAudio.
Apple Mac OS X.
ИспользоватьHomebrewУстановите необходимую библиотеку portaudio, затем используйте pip для установки PyAudio:
brew install portaudio
pip install pyaudio
- Если он не установлен, пожалуйста, скачайтеHomebrew。
- pip загрузит исходный код PyAudio и соберет его для вашей версии Python.
- Homebrew и сборка PyAudio также должны установить инструмент командной строки Xcode (Больше информации)。
Debian / Ubuntu
Установите PyAudio с помощью менеджера пакетов:
sudo apt-get install python-pyaudio python3-pyaudio
Если у вас не установлена последняя версия PyAudio, установите ее, используя pip:
- pip загрузит исходный код PyAudio и соберет его для вашей системы. Пожалуйста, не забудьте установить пакет разработки библиотеки portaudio заранее ( portaudio19-dev ) И набор разработчика Python ( python-all-dev )。
- Чтобы лучше изолировать системный пакет, рассмотритеvirtualenv вУстановите PyAudio.
Источник PyAudio
Исходный код можно загрузить из индекса пакетов Python (PyPI):pypi.python.org/pypi/PyAudio。
Или клонировать репозиторий git:
Чтобы собрать PyAudio из исходного кода, вам также необходимо собратьPortAudio v19, Некоторые инструкции по сборке PyAudio для различных платформ смотритеСоветы по компиляции, Чтобы построить PyAudio с помощью Microsoft Visual Studio, посмотрите Себастьяна Одетобъяснение。
3. Примеры
1). Собрать аудио
Следующий код демонстрирует, как собрать аудиофайл с микрофона компьютера за 4 секунды и сохранить файл output.wav
Используя модуль tqdm, вы можете легко отобразить процесс чтения следующим образом:
Чтобы использовать PyAudio, сначала используйте pyaudio.PyAudio() (1) Создание PyAudio, который устанавливает систему portaudio.
Для записи или воспроизведения аудио используйте pyaudio.PyAudio.open() (2) Откройте поток требуемых параметров звука на требуемом устройстве. Это установлено pyaudio.Stream Воспроизвести или записать аудио.
Используя потоковую передачу pyaudio.Stream.write() Аудио данные или использовать потоковые аудио данные для воспроизведения аудио pyaudio.Stream.read() 。(3)
Обратите внимание, что в «режиме блокировки» каждый pyaudio.Stream.write() или pyaudio.Stream.read() Блокируйте, пока все заданные / запрошенные кадры не будут воспроизведены / записаны. В качестве альтернативы, чтобы динамически генерировать аудиоданные или немедленно обрабатывать записанные аудиоданные, используйте «режим обратного вызова», описанный ниже.
Использовать pyaudio.Stream.stop_stream() Приостановить воспроизведение / запись и pyaudio.Stream.close() Останови поток. (4)
Наконец, используйте pyaudio.PyAudio.terminate() (5) Завершить сеанс portaudio
2). Воспроизвести аудио
Далее используется функция воспроизведения для воспроизведения аудиовыхода. Wav, сохраненный в 1)
Через tqdm отобразите индикатор выполнения воспроизведения следующим образом:
2). Воспроизведение аудио в режиме обратного вызова
Когда вам нужно воспроизвести аудио во время выполнения других программ, вы можете использовать метод обратного вызова для воспроизведения. Пример кода следующий:
Источник