Режим стримера в настоящее время в разработке!
Этот пакет Python предоставляет удобный интерфейс для взаимодействия с API приложения SteelSeries Sonar.
Приложение Sonar позволяет пользователям контролировать и отображать громкость различных аудиоканалов.
Чтобы использовать этот пакет, выполните следующие действия:
Установите пакет с помощью pip:
pip install steelseries-sonar-py
Импортируйте класс Sonar
в свой скрипт или приложение Python:
from steelseries_sonar_py import Sonar
Класс Sonar принимает два необязательных параметра во время инициализации:
streamer_mode
: установите значение True, чтобы использовать режим стримера (по умолчанию — False).
app_data_path
: укажите собственный путь для файла SteelSeries Engine 3 coreProps.json.
(по умолчанию используется путь установки по умолчанию: C:\ProgramData\SteelSeries\SteelSeries Engine 3\coreProps.json
).
sonar = Sonar ( app_data_path = "C: \ path \ to \ coreProps.json" )
или
sonar = Sonar ( app_data_path = "C: \ path \ to \ coreProps.json" , streamer_mode = True )
API-интерфейс steelseries sonar py Python поддерживает режим стримера, который позволяет пользователям управлять двумя отдельными ползунками: streaming
и monitoring
. Эти ползунки позволяют точно настроить управление различными аудиоканалами.
Чтобы проверить, включен ли режим стримера, используйте:
is_streaming = sonar . is_streamer_mode ()
print ( "Is Streamer Mode:" , is_streaming )
Чтобы включить или отключить режим стримера, используйте:
# Enable streamer mode
sonar . set_streamer_mode ( True )
# Disable streamer mode
sonar . set_streamer_mode ( False )
Получить информацию о текущих настройках громкости для всех каналов:
volume_data = sonar . get_volume_data ()
print ( volume_data )
Установите громкость для определенного канала. Параметр channel
должен быть одним из следующих:
master
, game
, chatRender
, media
, aux
, chatCapture
. Параметр volume
должен быть плавающим между 0 и 1.
Кроме того, можно указать дополнительный streamer_slider
со значениями «потоковая передача» (по умолчанию) или «мониторинг»:
channel = "master"
volume = 0.75
streamer_slider = "streaming" # or "monitoring"
result = sonar . set_volume ( channel , volume , streamer_slider = streamer_slider )
print ( result )
Переключить статус отключения звука для определенного канала. Параметр channel
должен быть одним из следующих:
master
, game
, chatRender
, media
, aux
, chatCapture
. Параметр muted
должен быть логическим значением, указывающим, следует ли отключить звук ( True
) или включить звук ( False
) на канале.
Кроме того, можно указать дополнительный streamer_slider
со значениями «потоковая передача» (по умолчанию) или «мониторинг»:
channel = "game"
muted = True
streamer_slider = "monitoring"
result = sonar . mute_channel ( channel , muted , streamer_slider = streamer_slider )
print ( result )
Получить данные чат-микса:
chatmix_data = sonar . get_chat_mix_data ()
print ( chatmix_data )
Установите значение Chat-Mix между -1 and 1
чтобы сфокусировать звук из канала game
или chatRender
:
result = sonar . set_chat_mix ( 0.5 )
print ( result )
В пакете представлен набор исключений, которые могут возникнуть во время использования.
Рекомендуется соответствующим образом обрабатывать эти исключения в вашем коде.
Вы можете импортировать их из steelseries_sonar_py.exceptions
. Вот список возможных исключений:
EnginePathNotFoundError
: возникает, когда SteelSeries Engine 3 не установлен или находится не в папке по умолчанию.ServerNotAccessibleError
: возникает, когда сервер SteelSeries недоступен. Предоставляет код состояния HTTP.SonarNotEnabledError
: возникает, когда Сонар SteelSeries не включен.ServerNotReadyError
: возникает, когда SteelSeries Sonar не готов.ServerNotRunningError
: возникает, когда SteelSeries Sonar не работает.WebServerAddressNotFoundError
: возникает, когда адрес веб-сервера не найден.ChannelNotFoundError
: возникает, когда указанный канал не найден.InvalidVolumeError
: возникает, когда указано неверное значение тома.InvalidMixVolumeError
: возникает, когда указано неверное значение объема смеси.SliderNotFoundError
: возникает, когда неизвестное имя ползунка указано в качестве streamer_slider
. Вот полный пример, демонстрирующий использование API-интерфейса steelseries sonar py :
from steelseries_sonar_py import Sonar
from steelseries_sonar_py . exceptions import EnginePathNotFoundError
# Initialize Sonar object
try :
sonar = Sonar ( app_data_path = "C: \ path \ to \ coreProps.json" )
except EnginePathNotFoundError :
print ( "Engine not found!" )
quit ()
# Retrieve volume data
volume_data = sonar . get_volume_data ()
print ( "Volume Data:" , volume_data )
# Set volume for the 'master' channel
channel = "master"
volume = 0.8
streamer_slider = "streaming"
result = sonar . set_volume ( channel , volume , streamer_slider = streamer_slider )
print ( f"Set volume for { channel } :" , result )
# Mute the 'game' channel
channel = "game"
muted = True
streamer_slider = "monitoring"
result = sonar . mute_channel ( channel , muted , streamer_slider = streamer_slider )
print ( f"Mute { channel } :" , result )
# Retrieve chat-mix data
chatmix_data = sonar . get_chat_mix_data ()
print ( "Chatmix Data:" , chatmix_data )
# Set chat-mix value
result = sonar . set_chat_mix ( 0.5 )
print ( "Set Chatmix:" , result )
Спасибо всем участникам, которые сделали этот пакет возможным: wex за разработку API, TotalPanther317 за понимание режима стримера и cookie за такие функции, как микс чата и обнаружение режима стримера. Благодарен за их усилия!
В этой документации теперь отражены последние изменения и дополнения к API-интерфейсу steelseries sonar py .