Python Language
Audio
Sök…
Ljud med Pyglet
import pyglet
audio = pyglet.media.load("audio.wav")
audio.play()
Mer information finns i pyglet
Arbetar med WAV-filer
winsound
- Windows-miljö
import winsound
winsound.PlaySound("path_to_wav_file.wav", winsound.SND_FILENAME)
Vinka
- Stöd mono / stereo
- Stödjer inte komprimering / dekomprimering
import wave
with wave.open("path_to_wav_file.wav", "rb") as wav_file: # Open WAV file in read-only mode.
# Get basic information.
n_channels = wav_file.getnchannels() # Number of channels. (1=Mono, 2=Stereo).
sample_width = wav_file.getsampwidth() # Sample width in bytes.
framerate = wav_file.getframerate() # Frame rate.
n_frames = wav_file.getnframes() # Number of frames.
comp_type = wav_file.getcomptype() # Compression type (only supports "NONE").
comp_name = wav_file.getcompname() # Compression name.
# Read audio data.
frames = wav_file.readframes(n_frames) # Read n_frames new frames.
assert len(frames) == sample_width * n_frames
# Duplicate to a new WAV file.
with wave.open("path_to_new_wav_file.wav", "wb") as wav_file: # Open WAV file in write-only mode.
# Write audio data.
params = (n_channels, sample_width, framerate, n_frames, comp_type, comp_name)
wav_file.setparams(params)
wav_file.writeframes(frames)
Konvertera vilken ljudfil som helst med python och ffmpeg
from subprocess import check_call
ok = check_call(['ffmpeg','-i','input.mp3','output.wav'])
if ok:
with open('output.wav', 'rb') as f:
wav_file = f.read()
notera:
- http://superuser.com/questions/507386/why-would-i-choose-libav-over-ffmpeg-or-is-there-even-a-difference
- Vilka är skillnaderna och likheterna mellan ffmpeg, libav och avconv?
Spela Windows pip
Windows tillhandahåller ett tydligt gränssnitt genom vilket winsound
modulen låter dig spela råa pip vid en viss frekvens och varaktighet.
import winsound
freq = 2500 # Set frequency To 2500 Hertz
dur = 1000 # Set duration To 1000 ms == 1 second
winsound.Beep(freq, dur)
Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow