Skip to content

Instantly share code, notes, and snippets.

View onyx-and-iris's full-sized avatar
💭
Reading: Creating TUI Applications with Textul and Python by Michael Driscoll

Onyx and Iris onyx-and-iris

💭
Reading: Creating TUI Applications with Textul and Python by Michael Driscoll
View GitHub Profile
@onyx-and-iris
onyx-and-iris / recordstate.py
Last active December 7, 2022 17:50
toggles record state and prints event notifications
import time
import obsws_python as obs
def on_record_state_changed(data):
"""The state of the record output has changed."""
print(f"Current record state: {data.output_state}")
if data.output_state == "OBS_WEBSOCKET_OUTPUT_STARTED":
@onyx-and-iris
onyx-and-iris / sendtext.py
Last active February 5, 2025 09:52
Voicemeeter VBAN SendText CLI - single file, zero dependencies
#!/usr/bin/env python3
# MIT License
#
# Copyright (c) 2025 Onyx and Iris
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
@onyx-and-iris
onyx-and-iris / vm_streamlabs_sync.py
Last active January 28, 2025 17:17
sync streamlabs scene switches to Voicemeeter states.
import asyncio
import logging
from collections import namedtuple
import voicemeeterlib
from pyslobs import ScenesService, config_from_ini_else_stdin, connection
class Observer:
"""
@onyx-and-iris
onyx-and-iris / appgain.ahk
Created July 24, 2022 22:05
adds increment and decrement volume function for app gain using VMR.ahk
#Include VMR.ahk
vm := new VMR().login()
vol := 0.5
vm.strip[6].AppGain := Format("(""Spotify"", {:.1f})", vol)
^a::
vol -= 0.1
vm.strip[6].AppGain := Format("(""Spotify"", {:.1f})", vol)
return