คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 2
ยุคนี้
ใช้ ai เขียนให้ ได้ไหมอ่ะ
ใช้ ai เขียนให้ ได้ไหมอ่ะ
▼ กำลังโหลดข้อมูล... ▼
แสดงความคิดเห็น
คุณสามารถแสดงความคิดเห็นกับกระทู้นี้ได้ด้วยการเข้าสู่ระบบ
กระทู้ที่คุณอาจสนใจ
อ่านกระทู้อื่นที่พูดคุยเกี่ยวกับ
การพัฒนาซอฟต์แวร์
วิทยาศาสตร์คอมพิวเตอร์
วิศวกรรมคอมพิวเตอร์
Python
ผมกำลังฝึกเขียนภาษาไพธอน แล้วผมแกะเพลงนึงในความทรงจำสมัยเก่า อยากรู้ว่าคือเพลงอะไรครับ
import subprocess
def play_tone(duration, freq):
subprocess.call(["play", "-q", "-n", "-t", "alsa", "synth", str(duration), "square", str(freq)])
# try change sine wvw to square wave, or sawtooth wave
# กำหนดความถี่ของตัวโน้ต(Hz)
notes = {
'E4':329.69, 'F4':349.29,'F4S':369.99, 'G4': 392.00, 'A4': 440.00, 'B4': 493.88, 'C5': 523.25, 'D5': 587.33, 'E5': 659.25
} #Do=G4(392), Re=A4(440), Mi=B4(493.88), Fa=C5(523.25), Sol=D5(587.33), La=E5(659.25)
#Do=C4(261.63), Re=D4(293.66), Mi=E4=329.63, Fa=F4(349.23), Sol=G4(392.00), La=A4(440.00), Te=B4(493.88), Do=C5(523.25)
melody = [
('A4', 0.3), ('A4', 0.3), ('A4', 0.3), ('G4', 0.3), ('B4', 0.3), ('A4', 0.3), ('G4', 0.3),
('B4', 0.3), ('B4', 0.3), ('B4', 0.3), ('A4', 0.3), ('G4', 0.3), ('A4', 0.3), ('B4', 0.3),
('G4', 0.3), ('A4', 0.3), ('B4', 0.3), ('G4', 0.3), ('B4', 0.3), ('A4', 0.3), ('A4', 0.3),
('G4', 0.3), ('G4', 0.3), ('E4', 0.3), ('G4', 0.3)
]
for note, duration in melody:
freq = notes[note]
print("Playing {0}: {1}Hz".format(note, freq))
play_tone(duration, freq)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ข้างบนคือโค้ดที่ผมเขียนครับ
1. ส่วนที่สำคัญ คือ subprocess.call เป็น Library มาตรฐานของ Python ครับ ทำหน้าที่เป็น "สะพาน" เพื่อสั่งให้คอมพิวเตอร์รันคำสั่งภายนอก
2. คำสั่ง play (SoX - Sound eXchange) เป็นส่วนหนึ่งของโปรแกรมที่ชื่อว่า SoX ครับ
SoX คือโปรแกรมจัดการเสียงที่ทรงพลังมาก (ฉายาคือ "Swiss Army knife of sound processing")