Merhaba vs code de bir kod yazmak istedim de ardunyodan gelen veriye göre pc nin sesini kısp açmak için ama bi kütüphane yüzünden galiba hata alıyorum bi yardımcı olabilcek varmı?
Python:
PS C:\Users\Yunus Emre\Desktop\Yeni klasör> & "C:/Users/Yunus Emre/AppData/Local/Programs/Python/Python313/python.exe" "c:/Users/Yunus Emre/Downloads/from ctypes import cast, POINTER.py"
Traceback (most recent call last):
File "c:\Users\Yunus Emre\Downloads\from ctypes import cast, POINTER.py", line 27, in <module>
adjust_volume(slider_value) # Ses seviyesini ayarla
~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "c:\Users\Yunus Emre\Downloads\from ctypes import cast, POINTER.py", line 13, in adjust_volume
sd.default.volume = normalized_volume # Ses seviyesini ayarlayın
^^^^^^^^^^^^^^^^^
File "C:\Users\Yunus Emre\AppData\Local\Programs\Python\Python313\Lib\site-packages\sounddevice.py", line 2209, in __setattr__
raise AttributeError(
"'default' object has no attribute " + repr(name))
AttributeError: 'default' object has no attribute 'volume'
PS C:\Users\Yunus Emre\Desktop\Yeni klasör>
Python:
import serial
from ctypes import cast, POINTER
from comtypes import CLSCTX_ALL
from pycaw.pycaw import AudioUtilities, ISimpleAudioVolume
# Arduino ile bağlantı ayarları
arduino_port = 'COM3' # Arduino'nuzun bağlı olduğu portu ayarlayın
baud_rate = 9600
# Ses çıkışını kontrol etmek için fonksiyon
def adjust_volume(volume):
# 0-1023 arasında gelen veriyi 0.0-1.0 aralığına dönüştür
normalized_volume = volume / 1023
# Ses aygıtını al
devices = AudioUtilities.GetSpeakers()
interface = devices.Activate(ISimpleAudioVolume._iid_, CLSCTX_ALL, None)
volume_control = cast(interface, POINTER(ISimpleAudioVolume))
# Ses seviyesini ayarla
volume_control.SetMasterVolume(normalized_volume, None)
# Arduino bağlantısı
ser = serial.Serial(arduino_port, baud_rate)
try:
while True:
if ser.in_waiting > 0:
# Arduino'dan gelen veriyi oku
line = ser.readline().decode('utf-8').strip()
values = line.split('|')
if values:
# İlk slider değerini al
slider_value = int(values[0])
adjust_volume(slider_value) # Ses seviyesini ayarla
except KeyboardInterrupt:
print("Program durduruldu.")
finally:
ser.close()

