Bir ara ses kartına sinyal göndererek acaba "özlediğim şimdi çok uzaklarda" şarkısını çalabilirmiyim diye deneme yaptım fakat döngü tek tek yazdığı için melodi zor seçiliyor. Bu betik sadece unix/linux sistemlerde çalışabilir. Şayet win32 de çalıştıracaksanız ses kartınıza direk erişiminiz olup olmadığını kontrol ediniz.
import time
"""
Do 261,6
Re 293,7
Mi 329,6
Fa 349,2
Sol 392,0
La 440,0
Si 493,9
Do 523,5
"""
nota = 261,293,329,349,392,440,493,523
pat="do","re","mi","fa","so","la","si","do"
muz="mimimimifamimimimilamirerereremirerereremiredodo"
def beep(frequency, amplitude, duration):
sample = 8000
half_period = int(sample/frequency/0.3)
beep = chr(amplitude)*half_period+chr(0)*half_period
beep *= int(duration*frequency)
print beep
audio = file('/dev/audio', 'wb')
audio.write(beep)
audio.close()
for i in range(0,len(muz),2):
print pat.index(muz[i:(i+2)]),muz[i:(i+2)]
deep =nota[pat.index(muz[i:(i+2)])]
print deep
beep(deep,50,0.05)
import time
"""
Do 261,6
Re 293,7
Mi 329,6
Fa 349,2
Sol 392,0
La 440,0
Si 493,9
Do 523,5
"""
nota = 261,293,329,349,392,440,493,523
pat="do","re","mi","fa","so","la","si","do"
muz="mimimimifamimimimilamirerereremirerereremiredodo"
def beep(frequency, amplitude, duration):
sample = 8000
half_period = int(sample/frequency/0.3)
beep = chr(amplitude)*half_period+chr(0)*half_period
beep *= int(duration*frequency)
print beep
audio = file('/dev/audio', 'wb')
audio.write(beep)
audio.close()
for i in range(0,len(muz),2):
print pat.index(muz[i:(i+2)]),muz[i:(i+2)]
deep =nota[pat.index(muz[i:(i+2)])]
print deep
beep(deep,50,0.05)
Hiç yorum yok:
Yorum Gönder