módulo winsound de python

Tal vez acaba de comenzar a codificar en Python. Tal vez todo el principio parezca inconcluso ya que ha estado trabajando con IDE regulares y le gustaría obtener un poco más de lo que hace su código en la consola respectiva y tal vez un poco de música o melodía podría animarlo. Este artículo tiene el propósito de presentarle el módulo winsound , un objeto o archivo con un conjunto de atributos o funciones, específico para la tarea de generar o reproducir sonido o un archivo de sonido. Nota: El módulo winsound está definido solo para su ejecución en una plataforma Windows , de ahí el nombre WINsound . Dado que el módulo winsound está integrado, no es necesario que lo instale antes de ejecutarlo. La acción básica sería

y luego, según el tipo de salida que le gustaría, escriba las siguientes funciones:

  • winsound.Beep( ) La funcionalidad dedicada a este método es generar un sonido ‘Beep’. Sin embargo, el usuario debe ingresar el valor de la frecuencia y la duración del sonido (estos son parámetros que se deben pasar al llamar a la función). Nota: La frecuencia debe estar en el rango de 37 a 32 767 hercios. 

Python3

import winsound
 
# frequency is set to 500Hz
freq = 500
 
# duration is set to 100 milliseconds            
dur = 100
              
winsound.Beep(freq, dur)
  • Producción:

El sistema de Windows producirá un sonido de ‘Beep’ con la frecuencia dada por la duración de tiempo dada.

  • Sobre la base del código anterior, las cosas se pueden llevar a otro nivel mediante la implementación de un ciclo ‘for’ para incrementar la frecuencia y la duración. Esto se ha hecho en el siguiente código: 

Python3

import winsound
 
freq = 100
dur = 50
 
# loop iterates 5 times i.e, 5 beeps will be produced.
for i in range(0, 5):   
    winsound.Beep(freq, dur)   
    freq+= 100
    dur+= 50
  • Producción: 

Se producen notas consecutivas con diferencias de frecuencia de 100 Hz y duración de tiempo 50 milisegundos mayor que la duración de tiempo anterior.

  • winsound.PlaySound( ) Con la función PlaySound, las cosas pueden avanzar un poco, sin mencionar que son interesantes. Tenga en cuenta que esta función solo es compatible con archivos .wav. Se pasan dos parámetros en la función: ‘nombre de archivo’ y el indicador: winsound.SND_FILENAME, que es necesario para que la API de la plataforma se refiera al archivo de salida. Las banderas son como se definen a continuación:
Banderas Descripción
SND_FILENAME El parámetro de sonido es el nombre de un archivo WAV.
SND_LOOP Reproduce el sonido repetidamente
SND_MEMORIA El parámetro de sonido de PlaySound() es una imagen de memoria de un archivo WAV, como un objeto similar a bytes.
SND_ASYNC Regrese inmediatamente, permitiendo que los sonidos se reproduzcan de forma asincrónica.
SND_NODEFAULT Si no se puede encontrar el sonido especificado, no reproduzca el sonido predeterminado del sistema.
SND_NOPARAR No interrumpa los sonidos que se están reproduciendo actualmente.
  • Ejemplo: 

Python3

import winsound
 
print("Playing the file 'Welcome.wav'")
 
# winsound.PlaySound('filename', flag)
winsound.PlaySound('Welcome.wav', winsound.SND_FILENAME)      
  • Producción:
The respective audio file named 'Welcome.wav' is executed.
  • SND_ALIAS El parámetro de sonido debe interpretarse como un nombre de asociación de sonido del panel de control. Las claves de registro de Windows están asociadas con nombres de sonido. Si el registro no contiene ese nombre, reproduzca el sonido predeterminado del sistema a menos que SND_NODEFAULT. Todos los sistemas Win32 admiten lo siguiente:
Reproducir sonido() nombre Nombre del sonido del panel de control
SistemaAsterisco Asterisco
SistemaExclamación Exclamación
SistemaSalir Salir de Windows
SistemaHand Parada crítica
Pregunta del sistema Pregunta
  • Ejemplo: 

Python3

import winsound
 
 
# Play Windows question sound
winsound.PlaySound("SystemQuestion", winsound.SND_ALIAS)
  • Producción:
Play Windows question sound

Hay varias otras funciones de winsound, la mayoría de las cuales son particulares de tareas específicas, algunas de las cuales se ocupan de los parámetros de tiempo de ejecución. No obstante, las funciones mencionadas anteriormente deberían ser suficientes siempre que la idea sea jugar para tener una idea de lo que se puede lograr con este módulo.

Publicación traducida automáticamente

Artículo escrito por siddhant_baroth y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *