I have a clock I made and I'd like to make it an alarm clock.
It turns out that you can generate audio with nothing but the standard library of Python. The approach I used relies heavily on the itertools module.
Assuming you're on Windows:
import winsound
winsound.PlaySound('alert.wav')
If you're on Linux (or Mac OS X I believe), you can either use pygame or call a Linux program (like mplayer) using popen
. pygame example:
import pygame
pygame.init()
pygame.mixer.music.load("alert.ogg")
pygame.mixer.music.play()
pygame.event.wait()
Example using popen
, which executes a command as if you were in the terminal:
from os import popen
cmd = "mplayer alert.ogg"
popen(cmd)
If you have the mp3play
module, and plan on playing an MP3 file, you can use this simple method.
import mp3play
filename = "C:/PATH/TO/FILE.mp3"
sound = mp3play.load(filename)
sound.play()
That code will play the entire MP3 file until it is done. If you want to only play that sound for a certain amount of time, use this:
import mp3play
import time
filename = "C:/PATH/TO/FILE.mp3"
sound = mp3play.load(filename)
time.sleep(min(30, sound.seconds())) # Plays the first 30 seconds of sound.
sound.stop()
The mp3play
module can be downloaded from the Python package index
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With