Как воспроизвести любой тип звука в python без использования файла или каталога - PullRequest
0 голосов
/ 15 марта 2020

Я пишу программу, которую отправлю кому-нибудь в виде одного файла .py. Я хочу иметь возможность включать в эту программу звук, который человек может слышать, не требуя дополнительных файлов wav / mp3. Это возможно? Я открыт для использования внешних модулей и т. Д. c, при условии, что все они могут быть включены в один файл при отправке.

Ответы [ 3 ]

0 голосов
/ 15 марта 2020

winsound - это стандартная библиотека python, включенная во все установки для воспроизведения звука в системах Windows; следовательно, человеку, которому вы отправляете программу, потребуется только установить python.

Из winsound документации вы можете использовать звуки из реестра windows без каких-либо дополнительных файловых зависимостей, например:

import winsound
# Play Windows exit sound.
winsound.PlaySound("SystemExit", winsound.SND_ALIAS)

Подробная информация о звуках, общих для всех Windows 32 реестров, доступна здесь . Как указано в документации, в большинстве систем доступно гораздо больше псевдонимов звука.

В качестве альтернативы, вы можете закодировать ваш аудиофайл в виде строки байтов и включить это в свой модуль python. Затем вы можете передать этот байтовый объект на winsound.PlaySound для воспроизведения звука.

0 голосов
/ 15 марта 2020

Может быть, вы можете использовать playsound . Код довольно прост:

from playsound import playsound
playsound('/path/to/a/sound/file/you/want/to/play.mp3')

Просто используйте функцию воспроизведения звука и отправьте путь к вашему файлу в качестве параметра, и он будет воспроизводить звук.

Я использовал эту библиотеку, чтобы подать сигнал тревоги приложение для моего ноутбука, и это сработало. Удачи !!!

0 голосов
/ 15 марта 2020

Вы можете использовать библиотеку winsound , чтобы включить ваше аудио как строку байтов в ваш файл .py.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...