Describe the bug
Animations/Gifs play slowly and intermittently. This activity shows even inside the Stream Controller application itself, and the framerate is often different between times I've looked at it. The buttons themselves work fine.
This began in an update a few months ago and I don't recall exactly when. I never sat down to tinker with it to see if i could fix it as the buttons were working and I had other things going on.
To Reproduce
Steps to reproduce the behavior:
StreamController must be running. Stream Deck must not be sleeping. This behavior happens even on a fresh launch of the application. Add a gif as an icon for a button.
Expected behavior
Gifs play at normal speed.
Screenshots
Got a video
IMG_2460.mov
Additional context
Nobara Linux 44
KDE Plasma 6.7.4
Nvidia Geforce RTX 3080
Log
2026-09-05 15:18:14.455 | ERROR | src.backend.GnomeExtensions:connect_dbus:38 - Failed to connect to D-Bus: org.freedesktop.DBus.Error.ServiceUnknown: The name is not activatable
2026-09-05 15:18:14.455 | INFO | src.backend.PageManagement.PageManagerBackend:remove_old_backups:505 - Removed old page backup file: backup_20260814T084000.zip
2026-09-05 15:18:15.198 | INFO | src.backend.Store.StoreBackend:_fetch_official_authors_background:97 - Official authors updated: ['Core447', 'StreamController']
2026-09-05 15:18:15.350 | INFO | src.backend.PluginManager.PluginBase:launch_backend:678 - Launching backend: . ~/.var/app/com.core447.StreamController/data/plugins/com_core447_OBSPlugin/backend/.venv/bin/activate && python3 ~/.var/app/com.core447.StreamController/data/plugins/com_core447_OBSPlugin/backend/backend.py --port=45331
2026-09-05 15:18:15.351 | INFO | rpyc.utils.server:_listen:251 - server started on [127.0.0.1]:45331
2026-09-05 15:18:15.351 | INFO | src.backend.PluginManager.PluginBase:launch_backend:683 - [backend] started plugin backend pid=74 plugin=com_core447_OBSPlugin spawns=1
2026-09-05 15:18:15.451 | INFO | rpyc.utils.server:accept:157 - accepted ('127.0.0.1', 43336) with fd 20
2026-09-05 15:18:15.451 | INFO | rpyc.utils.server:_serve_client:200 - welcome ('127.0.0.1', 43336)
2026-09-05 15:18:17.392 | TRACE | src.backend.PageManagement.PageManagerBackend:register_page:300 - Registering page ~/.var/app/com.core447.StreamController/data/plugins/com_core447_VolumeMixer/pages/VolumeMixer.json
2026-09-05 15:18:17.393 | TRACE | src.backend.PageManagement.PageManagerBackend:register_page:300 - Registering page ~/.var/app/com.core447.StreamController/data/plugins/com_core447_VolumeMixer/pages/VolumeMixerSDPlus.json
2026-09-05 15:18:17.393 | INFO | src.backend.WindowGrabber.WindowGrabber:init_integration:66 - Initializing window grabber for environment: kde under server: wayland
2026-09-05 15:18:17.476 | INFO | main:load:153 - Loading app
2026-09-05 15:18:17.477 | DEBUG | src.backend.LockScreenManager.LockScreenManager:setup:47 - Logind lock detection not available: org.freedesktop.DBus.Error.ServiceUnknown: org.freedesktop.DBus.Error.ServiceUnknown
2026-09-05 15:18:17.478 | INFO | main:update_assets:282 - Updating store assets
2026-09-05 15:18:17.505 | INFO | src.backend.DeckManagement.DeckManager:init:72 - Running under Flatpak. Using separate thread to detect device disconnection.
2026-09-05 15:18:17.505 | INFO | src.backend.DeckManagement.DeckManager:init:76 - Beta resume mode: True
2026-09-05 15:18:17.547 | INFO | src.backend.Store.StoreBackend:get_stores:106 - Official store branch: main
2026-09-05 15:18:17.644 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:17.645 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Change State with id com_core447_DeckPlugin::ChangeState
2026-09-05 15:18:17.645 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:17.645 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Change State with id com_core447_DeckPlugin::ChangeState
2026-09-05 15:18:17.645 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Hotkey with id com_core447_OSPlugin::Hotkey
2026-09-05 15:18:17.645 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:17.645 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Go To Sleep with id com_core447_DeckPlugin::GoToSleep
2026-09-05 15:18:17.645 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Easy Run Command with id com_core447_OSPlugin::EasyCommand
2026-09-05 15:18:17.646 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Easy Run Command with id com_core447_OSPlugin::EasyCommand
2026-09-05 15:18:17.646 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:17.646 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:17.646 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Hotkey with id com_core447_OSPlugin::Hotkey
2026-09-05 15:18:17.646 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Hotkey with id com_core447_OSPlugin::Hotkey
2026-09-05 15:18:17.646 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Change State with id com_core447_DeckPlugin::ChangeState
2026-09-05 15:18:17.646 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Hotkey with id com_core447_OSPlugin::Hotkey
2026-09-05 15:18:17.647 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Change State with id com_core447_DeckPlugin::ChangeState
2026-09-05 15:18:17.647 | DEBUG | src.backend.PageManagement.Page:load:87 - Loaded page Home in 0.00 seconds
2026-09-05 15:18:17.647 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:17.664 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:17.665 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:17.699 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139745129040832
2026-09-05 15:18:17.699 | ERROR | src.backend.Store.StoreBackend:request_from_url:218 - Request to https://raw.githubusercontent.com/StreamController/OBSPlugin/242afda6bec75c568dfe71d2ce47a9a196d5a430/attribution.json failed with status code 404
2026-09-05 15:18:17.700 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1259 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver ms=35.4
2026-09-05 15:18:17.702 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:17.702 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=54.9
2026-09-05 15:18:17.702 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=1.0 screensaver_ms=36.3 initialize_actions_ms=0.6
2026-09-05 15:18:17.732 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1198 - [page-switch-phase] deck=AL07I1C05085 phase=background ms=67.8
2026-09-05 15:18:17.732 | DEBUG | src.backend.DeckManagement.DeckController:perform_media_player_tasks:612 - [media-task] deck=AL07I1C05085 label=load_background:Home queue_wait_ms=0.1 run_ms=68.2
2026-09-05 15:18:17.754 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.021371126174926758 seconds
2026-09-05 15:18:17.839 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.08514285087585449 seconds
2026-09-05 15:18:17.840 | DEBUG | src.backend.DeckManagement.DeckController:perform_media_player_tasks:612 - [media-task] deck=AL07I1C05085 label=update_all_inputs:Home queue_wait_ms=52.4 run_ms=85.5
2026-09-05 15:18:17.940 | TRACE | src.app:on_activate:114 - running: on_activate
2026-09-05 15:18:17.941 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:17.941 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:17.941 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:17.941 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:17.941 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:17.942 | TRACE | src.windows.mainWindow.mainWindow:build:94 - Building main window
2026-09-05 15:18:18.078 | ERROR | src.backend.Store.StoreBackend:request_from_url:218 - Request to https://raw.githubusercontent.com/StreamController/ControllerPlugin/e559d6ad6cae8a43604f6a69bd767da61f11416f/attribution.json failed with status code 404
2026-09-05 15:18:18.215 | ERROR | src.backend.Store.StoreBackend:request_from_url:218 - Request to https://raw.githubusercontent.com/designgears/DeckWeaver/31a3804862dc2720080123b13db7b003072a7b15/manifest.json failed with status code 404
2026-09-05 15:18:18.243 | ERROR | src.backend.Store.StoreBackend:request_from_url:218 - Request to https://raw.githubusercontent.com/designgears/DeckWeaver/31a3804862dc2720080123b13db7b003072a7b15/manifest.json failed with status code 404
2026-09-05 15:18:18.245 | ERROR | src.backend.Store.StoreBackend:prepare_plugin:476 - manifest failed to load due to NoConnectionError for repository https://github.com/designgears/DeckWeaver
2026-09-05 15:18:18.431 | ERROR | src.backend.Store.StoreBackend:request_from_url:218 - Request to https://raw.githubusercontent.com/oparada1988/DiscordSC/c1bf676f8113227870ccf367d6a14a2db8ed8929/attribution.json failed with status code 404
2026-09-05 15:18:18.520 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:18.538 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:18.538 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:18.538 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:18.539 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:18.539 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:18.539 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:18.539 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=18.9
2026-09-05 15:18:18.540 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=1.1 screensaver_ms=0.6 initialize_actions_ms=0.0
2026-09-05 15:18:18.550 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.010656595230102539 seconds
2026-09-05 15:18:18.554 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.003849029541015625 seconds
2026-09-05 15:18:18.569 | INFO | dasbus.connection:_get_connection:335 - Connecting to the session bus.
2026-09-05 15:18:18.569 | INFO | dasbus.connection:get_session_bus_connection:66 - Connecting to the session bus.
2026-09-05 15:18:18.570 | INFO | src.api:_publish_controller:678 - DBus API: published controller AL07I1C05085 at /com/core447/StreamController/controllers/AL07I1C05085
2026-09-05 15:18:18.571 | SUCCESS | src.api:start_dbus_service:661 - DBus API published at /com/core447/StreamController
2026-09-05 15:18:18.571 | SUCCESS | src.app:on_activate:152 - Finished loading app
2026-09-05 15:18:18.572 | INFO | autostart:request_background_callback:64 - request_background success=True
2026-09-05 15:18:18.574 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:18.604 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:18.611 | INFO | src.backend.trayicon:on_register_finished:393 - Registered tray icon /org/ayatana/NotificationItem/com_core447_StreamController_TrayIcon with org.kde.StatusNotifierWatcher
2026-09-05 15:18:18.842 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:18.842 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:18.842 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:18.843 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:18.843 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:18.867 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:18.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:18.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:18.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:18.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:18.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:18.868 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:18.886 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:18.887 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:18.887 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:18.888 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:18.888 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:18.889 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:18.890 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:18.890 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=21.7
2026-09-05 15:18:18.891 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=1.3 screensaver_ms=1.1 initialize_actions_ms=0.0
2026-09-05 15:18:18.891 | SUCCESS | src.backend.Store.StoreBackend:install_plugin:1108 - Plugin com_core447_MediaPlugin installed successfully under: ~/.var/app/com.core447.StreamController/data/plugins/com_core447_MediaPlugin with sha: e77ea626dc744fda41f43b0a78d11f099aa6d80a
2026-09-05 15:18:18.892 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:18.900 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:18.902 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.013656854629516602 seconds
2026-09-05 15:18:18.913 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.011422395706176758 seconds
2026-09-05 15:18:18.926 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:18.927 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:18.927 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:18.927 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:18.927 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:18.927 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:18.928 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:18.928 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=36.7
2026-09-05 15:18:18.928 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=1.1 screensaver_ms=0.6 initialize_actions_ms=0.0
2026-09-05 15:18:18.934 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:18.940 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.012191534042358398 seconds
2026-09-05 15:18:18.944 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.0040590763092041016 seconds
2026-09-05 15:18:21.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:21.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:21.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:21.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:21.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:21.868 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:21.869 | INFO | src.backend.PluginManager.PluginBase:launch_backend:678 - Launching backend: . ~/.var/app/com.core447.StreamController/data/plugins/com_core447_OBSPlugin/backend/.venv/bin/activate && python3 ~/.var/app/com.core447.StreamController/data/plugins/com_core447_OBSPlugin/backend/backend.py --port=39831
2026-09-05 15:18:21.869 | INFO | rpyc.utils.server:_listen:251 - server started on [127.0.0.1]:39831
2026-09-05 15:18:21.870 | INFO | src.backend.PluginManager.PluginBase:launch_backend:683 - [backend] started plugin backend pid=224 plugin=com_core447_OBSPlugin spawns=2
2026-09-05 15:18:21.872 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:21.872 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:21.872 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:21.872 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:21.872 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:21.872 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:21.872 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:21.872 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:21.890 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:21.891 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:21.891 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:21.891 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:21.892 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:21.892 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:21.894 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:21.895 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=21.9
2026-09-05 15:18:21.895 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=1.4 screensaver_ms=0.9 initialize_actions_ms=0.0
2026-09-05 15:18:21.896 | SUCCESS | src.backend.Store.StoreBackend:install_plugin:1108 - Plugin com_core447_OBSPlugin installed successfully under: ~/.var/app/com.core447.StreamController/data/plugins/com_core447_OBSPlugin with sha: 242afda6bec75c568dfe71d2ce47a9a196d5a430
2026-09-05 15:18:21.896 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_DeckPlugin::ChangeState not found, skipping...
2026-09-05 15:18:21.896 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_DeckPlugin::ChangeState not found, skipping...
2026-09-05 15:18:21.897 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_DeckPlugin::GoToSleep not found, skipping...
2026-09-05 15:18:21.897 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_DeckPlugin::ChangeState not found, skipping...
2026-09-05 15:18:21.897 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_DeckPlugin::ChangeState not found, skipping...
2026-09-05 15:18:21.898 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:21.907 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.014628171920776367 seconds
2026-09-05 15:18:21.913 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.0057675838470458984 seconds
2026-09-05 15:18:21.919 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:21.932 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:21.933 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:21.933 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:21.934 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:21.934 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:21.934 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:21.936 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:21.937 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=38.8
2026-09-05 15:18:21.937 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=1.5 screensaver_ms=1.3 initialize_actions_ms=0.0
2026-09-05 15:18:21.954 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.020122051239013672 seconds
2026-09-05 15:18:21.959 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.004431247711181641 seconds
2026-09-05 15:18:21.965 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:21.977 | INFO | rpyc.utils.server:accept:157 - accepted ('127.0.0.1', 40234) with fd 110
2026-09-05 15:18:21.978 | INFO | rpyc.utils.server:_serve_client:200 - welcome ('127.0.0.1', 40234)
2026-09-05 15:18:22.224 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:22.224 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:22.224 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:22.224 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:22.224 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:22.225 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:22.225 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:22.225 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:22.225 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Change State with id com_core447_DeckPlugin::ChangeState
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Change State with id com_core447_DeckPlugin::ChangeState
2026-09-05 15:18:22.226 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Go To Sleep with id com_core447_DeckPlugin::GoToSleep
2026-09-05 15:18:22.227 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Change State with id com_core447_DeckPlugin::ChangeState
2026-09-05 15:18:22.227 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Change State with id com_core447_DeckPlugin::ChangeState
2026-09-05 15:18:22.228 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:22.245 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:22.246 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:22.246 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:22.247 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:22.247 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:22.248 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:22.249 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:22.250 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=21.5
2026-09-05 15:18:22.250 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=1.4 screensaver_ms=1.0 initialize_actions_ms=0.0
2026-09-05 15:18:22.250 | SUCCESS | src.backend.Store.StoreBackend:install_plugin:1108 - Plugin com_core447_DeckPlugin installed successfully under: ~/.var/app/com.core447.StreamController/data/plugins/com_core447_DeckPlugin with sha: 14924f3b54e4f68117f26b8ae8d55d83956fb805
2026-09-05 15:18:22.251 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::RunCommand not found, skipping...
2026-09-05 15:18:22.251 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::RunCommand not found, skipping...
2026-09-05 15:18:22.251 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::Hotkey not found, skipping...
2026-09-05 15:18:22.252 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::RunCommand not found, skipping...
2026-09-05 15:18:22.252 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::EasyCommand not found, skipping...
2026-09-05 15:18:22.252 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::EasyCommand not found, skipping...
2026-09-05 15:18:22.253 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::RunCommand not found, skipping...
2026-09-05 15:18:22.253 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::RunCommand not found, skipping...
2026-09-05 15:18:22.253 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::Hotkey not found, skipping...
2026-09-05 15:18:22.253 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::Hotkey not found, skipping...
2026-09-05 15:18:22.254 | WARNING | src.backend.PluginManager.PluginManager:get_action_holder_from_id:198 - Requested action com_core447_OSPlugin::Hotkey not found, skipping...
2026-09-05 15:18:22.254 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:22.260 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.012726306915283203 seconds
2026-09-05 15:18:22.261 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:22.269 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.008430957794189453 seconds
2026-09-05 15:18:22.305 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:22.306 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:22.307 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:22.307 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:22.308 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:22.309 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:22.309 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=54.4
2026-09-05 15:18:22.309 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=1.3 screensaver_ms=1.2 initialize_actions_ms=0.0
2026-09-05 15:18:22.309 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:22.310 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:22.320 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.010199308395385742 seconds
2026-09-05 15:18:22.325 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.0042765140533447266 seconds
2026-09-05 15:18:22.640 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:22.641 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:22.641 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:22.641 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:22.641 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:22.641 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:22.641 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:22.641 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:24.686 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:24.686 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:24.686 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:24.687 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:24.687 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:24.687 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:24.687 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:24.687 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:24.687 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:24.687 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:24.687 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:24.688 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Hotkey with id com_core447_OSPlugin::Hotkey
2026-09-05 15:18:24.688 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:24.688 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Easy Run Command with id com_core447_OSPlugin::EasyCommand
2026-09-05 15:18:24.689 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Easy Run Command with id com_core447_OSPlugin::EasyCommand
2026-09-05 15:18:24.689 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:24.689 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Run Command with id com_core447_OSPlugin::RunCommand
2026-09-05 15:18:24.690 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Hotkey with id com_core447_OSPlugin::Hotkey
2026-09-05 15:18:24.690 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Hotkey with id com_core447_OSPlugin::Hotkey
2026-09-05 15:18:24.690 | INFO | src.backend.PluginManager.ActionCore:init:102 - Loaded action Hotkey with id com_core447_OSPlugin::Hotkey
2026-09-05 15:18:24.691 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:24.725 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:24.726 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:24.726 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:24.726 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:24.727 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:24.727 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=35.5
2026-09-05 15:18:24.727 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=0.8 screensaver_ms=0.6 initialize_actions_ms=0.0
2026-09-05 15:18:24.727 | SUCCESS | src.backend.Store.StoreBackend:install_plugin:1108 - Plugin com_core447_OSPlugin installed successfully under: ~/.var/app/com.core447.StreamController/data/plugins/com_core447_OSPlugin with sha: b7c719b2ec7e9424cf182d7682c3189772f4dbd2
2026-09-05 15:18:24.727 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:24.728 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:24.761 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:24.762 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:24.762 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:24.763 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:24.763 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:24.764 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:24.764 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=36.3
2026-09-05 15:18:24.764 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=0.7 screensaver_ms=0.9 initialize_actions_ms=0.0
2026-09-05 15:18:24.778 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:24.778 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:24.786 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.008243083953857422 seconds
2026-09-05 15:18:24.793 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.006727933883666992 seconds
2026-09-05 15:18:25.052 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:25.053 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:25.053 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:25.053 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:25.053 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:25.053 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:25.053 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:25.053 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:25.053 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:25.059 | TRACE | src.backend.PageManagement.PageManagerBackend:register_page:300 - Registering page ~/.var/app/com.core447.StreamController/data/plugins/com_core447_VolumeMixer/pages/VolumeMixer.json
2026-09-05 15:18:25.059 | TRACE | src.backend.PageManagement.PageManagerBackend:register_page:300 - Registering page ~/.var/app/com.core447.StreamController/data/plugins/com_core447_VolumeMixer/pages/VolumeMixerSDPlus.json
2026-09-05 15:18:25.059 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_MediaPlugin.main.MediaPlugin'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OBSPlugin.main.OBS'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_DeckPlugin.main.DeckPlugin'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_OSPlugin.main.OSPlugin'> because it's already initialized
2026-09-05 15:18:25.060 | INFO | src.backend.PluginManager.PluginManager:init_plugins:147 - Skipping <class 'plugins.com_core447_VolumeMixer.main.VolumeMixer'> because it's already initialized
2026-09-05 15:18:25.061 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 15:18:25.078 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 15:18:25.079 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139739504043712
2026-09-05 15:18:25.079 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 15:18:25.079 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 15:18:25.081 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 15:18:25.081 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=20.1
2026-09-05 15:18:25.081 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=0.6 screensaver_ms=1.0 initialize_actions_ms=0.0
2026-09-05 15:18:25.081 | SUCCESS | src.backend.Store.StoreBackend:install_plugin:1108 - Plugin com_core447_VolumeMixer installed successfully under: ~/.var/app/com.core447.StreamController/data/plugins/com_core447_VolumeMixer with sha: c5f72f7897abccbd6d8811fbe118089902d3c8b8
2026-09-05 15:18:25.082 | INFO | src.backend.Store.StoreBackend:get_stores:106 - Official store branch: main
2026-09-05 15:18:25.091 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 15:18:25.099 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 15:18:25.099 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1178 - [page-switch-phase] deck=AL07I1C05085 phase=background skip=unchanged
2026-09-05 15:18:25.108 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.008393049240112305 seconds
2026-09-05 15:18:25.112 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.004131793975830078 seconds
2026-09-05 15:18:25.179 | INFO | src.backend.Store.StoreBackend:get_stores:106 - Official store branch: main
2026-09-05 15:18:25.253 | INFO | main:update_assets:290 - Updating 5 store assets took 7.77490234375 seconds
2026-09-05 15:23:17.700 | INFO | src.backend.DeckManagement.Subclasses.ScreenSaver:show:167 - Showing screen saver
2026-09-05 15:23:17.859 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.003978729248046875 seconds
2026-09-05 15:36:34.327 | SUCCESS | src.backend.PageManagement.PageBundle:_write_bundle:342 - Exported 1 page(s) with 10 asset(s) to ~/Documents/Home.scpage
2026-09-05 16:18:10.560 | INFO | src.backend.DeckManagement.Subclasses.ScreenSaver:hide:197 - Hiding screen saver
2026-09-05 16:18:10.621 | INFO | src.backend.DeckManagement.DeckController:load_page:1363 - Loading page Home on deck AL07I1C05085
2026-09-05 16:18:10.638 | INFO | src.backend.DeckManagement.DeckController:load_brightness:1213 - 50
2026-09-05 16:18:10.639 | INFO | src.backend.DeckManagement.DeckController:load_background:1156 - Loading background in thread: 139739462080192
2026-09-05 16:18:10.698 | DEBUG | src.backend.DeckManagement.DeckController:load_background:1198 - [page-switch-phase] deck=AL07I1C05085 phase=background ms=60.2
2026-09-05 16:18:10.698 | INFO | src.backend.DeckManagement.DeckController:load_screensaver:1224 - Loading screensaver in thread: 139745129040832
2026-09-05 16:18:10.698 | DEBUG | src.backend.DeckManagement.DeckController:perform_media_player_tasks:612 - [media-task] deck=AL07I1C05085 label=load_background:Home queue_wait_ms=0.1 run_ms=60.5
2026-09-05 16:18:10.699 | DEBUG | src.backend.DeckManagement.DeckController:load_screensaver:1244 - [page-switch-phase] deck=AL07I1C05085 phase=screensaver skip=unchanged
2026-09-05 16:18:10.699 | DEBUG | src.api:ActivePageName:199 - DBus API [AL07I1C05085]: ActivePageName changed to 'Home'
2026-09-05 16:18:10.700 | INFO | src.backend.DeckManagement.DeckController:load_page:1413 - Loaded page Home on deck AL07I1C05085
2026-09-05 16:18:10.700 | INFO | src.backend.DeckManagement.DeckController:load_page:1414 - [page-switch] deck=AL07I1C05085 page=Home total_ms=78.9
2026-09-05 16:18:10.700 | DEBUG | src.backend.DeckManagement.DeckController:load_page:1415 - [page-switch-phase] deck=AL07I1C05085 page=Home brightness_ms=58.2 screensaver_ms=2.8 initialize_actions_ms=0.0
2026-09-05 16:18:10.749 | ERROR | src.backend.DeckManagement.DeckController:update_ui_on_page_change:1305 - 'PageSettingsPage' object has no attribute 'settings_page' -> This is okay if you just activated your first deck.
2026-09-05 16:18:10.806 | INFO | src.backend.DeckManagement.DeckController:load_all_inputs:1274 - Loading all inputs took 0.10712003707885742 seconds
2026-09-05 16:18:10.806 | DEBUG | src.backend.DeckManagement.DeckController:perform_media_player_tasks:612 - [media-task] deck=AL07I1C05085 label=load_all_inputs:Home queue_wait_ms=0.1 run_ms=107.3
2026-09-05 16:18:10.813 | DEBUG | src.backend.DeckManagement.DeckController:update_all_inputs:931 - Updating all inputs took 0.006632328033447266 seconds
Describe the bug
Animations/Gifs play slowly and intermittently. This activity shows even inside the Stream Controller application itself, and the framerate is often different between times I've looked at it. The buttons themselves work fine.
This began in an update a few months ago and I don't recall exactly when. I never sat down to tinker with it to see if i could fix it as the buttons were working and I had other things going on.
To Reproduce
Steps to reproduce the behavior:
StreamController must be running. Stream Deck must not be sleeping. This behavior happens even on a fresh launch of the application. Add a gif as an icon for a button.
Expected behavior
Gifs play at normal speed.
Screenshots
IMG_2460.movGot a video
Additional context
Nobara Linux 44
KDE Plasma 6.7.4
Nvidia Geforce RTX 3080
Log