Mode Streamer actuellement en développement !
Ce package Python fournit une interface pratique pour interagir avec l'API de l'application SteelSeries Sonar.
L'application Sonar permet aux utilisateurs de contrôler et d'afficher les volumes de différents canaux audio.
Pour utiliser ce package, procédez comme suit :
Installez le package en utilisant pip :
pip install steelseries-sonar-py
Importez la classe Sonar
dans votre script ou application Python :
from steelseries_sonar_py import Sonar
La classe Sonar accepte deux paramètres facultatifs lors de l'initialisation :
streamer_mode
: défini sur True pour utiliser le mode streamer (la valeur par défaut est False).
app_data_path
: spécifiez un chemin personnalisé pour le fichier coreProps.json de SteelSeries Engine 3
(la valeur par défaut est le chemin d'installation par défaut : C:\ProgramData\SteelSeries\SteelSeries Engine 3\coreProps.json
).
sonar = Sonar ( app_data_path = "C: \ path \ to \ coreProps.json" )
ou
sonar = Sonar ( app_data_path = "C: \ path \ to \ coreProps.json" , streamer_mode = True )
L'API steelseries sonar py Python prend en charge le mode streamer, qui permet aux utilisateurs de gérer deux curseurs distincts : streaming
et monitoring
. Ces curseurs permettent un contrôle précis sur différents canaux audio.
Pour vérifier si le mode streamer est activé, utilisez :
is_streaming = sonar . is_streamer_mode ()
print ( "Is Streamer Mode:" , is_streaming )
Pour activer ou désactiver le mode streamer, utilisez :
# Enable streamer mode
sonar . set_streamer_mode ( True )
# Disable streamer mode
sonar . set_streamer_mode ( False )
Récupérez des informations sur les paramètres de volume actuels pour toutes les chaînes :
volume_data = sonar . get_volume_data ()
print ( volume_data )
Réglez le volume d'un canal spécifique. Le paramètre channel
doit être l'un des suivants :
master
, game
, chatRender
, media
, aux
, chatCapture
. Le paramètre volume
doit être un flottant compris entre 0 et 1.
De plus, un paramètre streamer_slider
facultatif peut être fourni, avec les valeurs « streaming » (par défaut) ou « monitoring » :
channel = "master"
volume = 0.75
streamer_slider = "streaming" # or "monitoring"
result = sonar . set_volume ( channel , volume , streamer_slider = streamer_slider )
print ( result )
Basculer le statut muet pour un canal spécifique. Le paramètre channel
doit être l'un des suivants :
master
, game
, chatRender
, media
, aux
, chatCapture
. Le paramètre muted
doit être un booléen indiquant s'il faut couper ( True
) ou réactiver ( False
) le canal.
De plus, un paramètre streamer_slider
facultatif peut être fourni, avec les valeurs « streaming » (par défaut) ou « monitoring » :
channel = "game"
muted = True
streamer_slider = "monitoring"
result = sonar . mute_channel ( channel , muted , streamer_slider = streamer_slider )
print ( result )
Récupérer les données de chat-mix :
chatmix_data = sonar . get_chat_mix_data ()
print ( chatmix_data )
Définissez la valeur de chat-mix entre -1 and 1
pour concentrer le son du game
ou du canal chatRender
:
result = sonar . set_chat_mix ( 0.5 )
print ( result )
Le package introduit un ensemble d'exceptions qui peuvent être déclenchées lors de l'utilisation.
Il est conseillé de gérer ces exceptions en conséquence dans votre code.
Vous pouvez les importer depuis steelseries_sonar_py.exceptions
. Voici la liste des exceptions potentielles :
EnginePathNotFoundError
: déclenché lorsque SteelSeries Engine 3 n'est pas installé ou n'est pas à l'emplacement par défaut.ServerNotAccessibleError
: déclenché lorsque le serveur SteelSeries n'est pas accessible. Fournit le code d’état HTTP.SonarNotEnabledError
: déclenché lorsque SteelSeries Sonar n'est pas activé.ServerNotReadyError
: déclenché lorsque SteelSeries Sonar n'est pas prêt.ServerNotRunningError
: déclenché lorsque SteelSeries Sonar n'est pas en cours d'exécution.WebServerAddressNotFoundError
: déclenché lorsque l'adresse du serveur Web est introuvable.ChannelNotFoundError
: déclenché lorsque le canal spécifié est introuvable.InvalidVolumeError
: déclenché lorsqu'une valeur de volume non valide est fournie.InvalidMixVolumeError
: déclenché lorsqu'une valeur de volume de mixage non valide est fournie.SliderNotFoundError
: déclenché lorsqu'un nom de curseur inconnu est fourni comme valeur streamer_slider
. Voici un exemple complet illustrant l'utilisation de l'API Python 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 )
Merci à tous les contributeurs qui ont rendu ce package possible - wex pour avoir découvert l'API, TotalPanther317 pour comprendre le mode streamer et les cookies pour des fonctionnalités telles que le mixage de chat et la détection du mode streamer. Reconnaissant pour leurs efforts!
Cette documentation reflète désormais les dernières modifications et ajouts à l'API Python steelseries sonar py .