Skip to content

Latest commit

 

History

History
100 lines (68 loc) · 8.42 KB

File metadata and controls

100 lines (68 loc) · 8.42 KB

BoneCast 🦴📡

Twitch und YouTube im Steam-Spielmodus — ein Decky-Loader-Plugin für Steam Deck / Bazzite / SteamOS.

🌍 Sprachen: English · Français · Deutsch · Español · Italiano · Português · Nederlands · Polski · Русский

Teil der Necrosiak-Plugin-Suite, neben SkullKey, Steamcord und BC250-Toolkit. Die Plugin-Oberfläche ist in 9 Sprachen übersetzt und folgt automatisch der SteamOS-Sprache.


Was es kann

BoneCast bringt alles, was du zum Streamen auf Twitch brauchst, direkt ins Quick Access Menu von Steam — kein Desktop, keine Tastatur, komplett gamepad-tauglich vom Login bis zum Livegang.

  • Ein einziger Twitch-Login (Gerätecode — gamepad-freundlich): Du gibst einen kurzen Code auf twitch.tv/activate ein, und BoneCast holt deinen Stream-Key automatisch. Nie wieder manuelles Kopieren.
  • ▶️ YouTube-Tab (neu in 0.4.0) — geh mit deinem Streamschlüssel auf YouTube live, mit eigenen Stream-Einstellungen (Auflösung, Bitrate, Encoder, Mikro, Discord-Audio, Aufnahme), Pausenbild und Mikro-Stummschaltung im Livestream, dazu ein YouTube-Chat-Overlay über dem Spiel, ganz ohne Konto. Immer nur ein Livestream und ein Chat-Overlay: Twitch und YouTube laufen nie gleichzeitig. Neu in 0.5.0: Melde dich mit deinem YouTube-Konto an (ein Code auf google.com/device), und BoneCast erstellt den Livestream für dich, mit Titel, Sichtbarkeit und deinem eigenen Chat im QAM, ganz ohne Streamschlüssel. Wähle die Stream-Latenz (normal, niedrig oder ultraniedrig) (0.5.1).
  • Live gehen direkt aus dem QAM — ein Button startet und stoppt den RTMP-Stream. Ein ● LIVE-Badge zeigt an, dass du sendest.
  • Bearbeitbarer Stream-Titel — im Plugin gesetzt, änderbar sogar während des Livestreams.
  • Automatische Spielkategorie — vom laufenden Steam-Spiel gelesen (funktioniert auch für Non-Steam-Verknüpfungen) und laufend aktualisiert. Fallback auf Just Chatting, wenn ein Spiel keine passende Twitch-Kategorie hat.
  • Transparentes Chat-Overlay — der Twitch-Chat (nur lesend) wird im Spielmodus über dem Spiel gezeichnet (gamescope-External-Overlay-Ebene), mit nativen + BTTV / 7TV / FFZ-Emotes. Position, Größe und Deckkraft lassen sich live aus dem QAM einstellen, und es bleibt sogar sichtbar, wenn Big Picture den Fokus hat. Subs, Raids und Bits (Twitch), Super Chats und neue Mitglieder (YouTube) erscheinen als hervorgehobene Karten (0.5.0).
  • 📺 Twitch über deinem Spiel ansehen — bis zu vier Livestreams im Spielmodus über dem Spiel. Deine gefolgten Kanäle, die live sind, erscheinen mit Vorschaubild und Zuschauerzahl: antippen und der Stream läuft. Anordnung, Größe, Deckkraft und Bildrate stellst du im QAM ein; du wählst, wessen Ton du hörst, mit eigener Lautstärke, immer auf deiner Standard-Audioausgabe. (Für gefolgte Kanäle ist nach dem Update einmal eine neue Twitch-Anmeldung nötig, um die neue Berechtigung zu erteilen.)
  • 🎬 Sofort-Clips — im Livestream clippt ein Button die letzten ~30 Sekunden über die Twitch-API; der Clip landet etwa 15 Sekunden später auf deinem Dashboard.
  • 💬 Schreib in deinem eigenen Chat — sende Nachrichten in deinen Twitch-Chat direkt aus dem QAM, ohne Tastatur-über-Desktop-Verrenkungen.
  • ⏸️ BRB-Modus — ein Tastendruck ersetzt das Spielbild durch einen sauberen Pausenbildschirm und schaltet dein Mikro stumm; ein weiterer bringt dich zurück. Der Stream bricht nie ab. Dein eigener Pausenbildschirm (0.5.0): Lege im Desktop-Modus ein Bild namens brb.png in den Ordner BoneCast-BRB in deinem Home-Ordner. Auch animiert (0.5.1): brb.mp4, brb.webm oder brb.gif in Schleife.
  • ⏺️ Lokale Aufnahme — speichere deine Session als MKV in ~/Videos/BoneCast/, parallel zum Livestream oder ganz ohne zu streamen (kein Stream-Key im Spiel). Speichere auf dem internen Speicher, einer SD-Karte oder einem externen Laufwerk (0.5.1).
  • Live-Mikro-Stummschaltung — schalte dein Mikrofon im Stream mit einem Tastendruck stumm, ohne die Übertragung zu stoppen (und ohne deinen Discord-Call stummzuschalten).
  • Stream-Einstellungen pro Konto — Auflösung, fps, Video-/Audio-Bitrate, Keyframe-Intervall und ein automatisch erkannter Encoder (NVENC ▸ VAAPI ▸ Software-x264). Es werden nur Encoder angeboten, die auf deiner Hardware wirklich funktionieren.
  • Discord-Audio-Brücke (wenn Steamcord installiert ist): Ein optionaler Schalter mischt deine Discord-Stimme in den Stream, sodass deine Gruppe von den Zuschauern gehört wird — während du sie weiterhin normal hörst.

Wie es funktioniert

Twitch hat keine Video-Push-API, Livegehen bedeutet also immer einen RTMP-Push unter der Haube. BoneCast übernimmt das für dich:

  1. Der OAuth-Device-Flow meldet dich bei Twitch an und holt Stream-Key, Titel und Kategorie über die Helix-API — du fasst den Key nie an.
  2. Das Spielbild wird aus gamescope aufgenommen und über eine Pipe direkt an ffmpeg übergeben (keine virtuelle Kamera, nichts zu installieren), das es kodiert (Hardware wenn verfügbar, sonst Software-libx264) und schiebt es zu rtmp://…/<dein-key>.
  3. Das Chat-Overlay ist eine transparente WebKit-Oberfläche auf der gamescope-External-Overlay-Ebene, die Twitch-IRC anonym liest und Emotes rendert.

Alles wird aus dem QAM gesteuert und überlebt Neustarts.


📸 Screenshots

Go-live-Panel

Installation

  1. Installiere Decky Loader.
  2. Aktiviere den Entwicklermodus in Deckys allgemeinen Einstellungen, dann Decky-Einstellungen → Entwickler → Plugin von URL installieren: https://github.com/Necrosiak/BoneCast/releases/latest/download/BoneCast.zip (oder hol dir BoneCast.zip von der Releases-Seite und installiere aus dem ZIP).
  3. Öffne das Quick Access Menu → BoneCast, melde dich bei Twitch an und geh live.

BoneCast aktualisiert sich automatisch über GitHub Releases (abschaltbar im Bereich Updates des Plugins).


🐧 Kompatibilität

BoneCast zielt auf jede Linux-Distribution, die Steam im Spielmodus / Big Picture ausführen kann: ein Build, Laufzeiterkennung von allem Externen (ffmpeg, libx264, GStreamer), und der exakte Installationsbefehl für deinen Paketmanager wird im QAM angezeigt, wenn etwas fehlt. Paket-Hinweise pro Distribution: OS-NOTES.md.

🐛 Bugs & Ideen — nur her damit!

Einen Bug gefunden, etwas verhält sich auf deiner Distribution seltsam, oder ein Feature fehlt? Bitte eröffne ein Issue — jeder Bericht formt direkt, was als Nächstes gebaut wird. Wenn möglich, gib an:

  • deine Distribution & Version (Bazzite 42, CachyOS, Ubuntu 24.04…) und deine GPU (für die Encoder-Erkennung)
  • die Plugin-Version und was du gerade gemacht hast (Livegang, Overlay, OAuth…)
  • was du erwartet hast vs. was passiert ist
  • Logs: ~/homebrew/logs/BoneCast/

Feature-Wünsche und „es funktioniert!“-Berichte auf ungewöhnlichen Setups sind genauso wertvoll.

Credits

Erstellt und gepflegt von Necrosiak. Teil der Necrosiak-Plugin-Suite für den Steam-Spielmodus. Danke an dreemur-e für die Tests auf dem Steam Deck OLED, die YouTube-Ideen und den Capture-Watchdog, der das eingefrorene Bild behoben hat (#1).

KI-Hinweis

Bei der Entwicklung dieses Projekts wurde KI (Claude von Anthropic und Codex von OpenAI) eingesetzt — für Reverse Engineering, Entwicklung und Dokumentation. Nicht für Grafik oder kreatives Schreiben. Alles Veröffentlichte wird von einem Menschen geprüft, und ich stehe für das Ergebnis gerade. Wer damit nicht einverstanden ist, weiß nun Bescheid.

Entwicklung unterstützen

Wenn dir dieses Projekt hilft, kannst du seine weitere Entwicklung auf Ko-fi unterstützen.

Unterstütze mich auf Ko-fi