Skip to content

ludolpif/llss

Repository files navigation

Purpose and status

Libre Live Streaming Software (LLSS) for Streamers making live broadcasts on platforms like twitch.tv.

Design goals summary

  • Be a game by itself, as many streamers enjoy to use creativity to make their streams unique
  • Be intuitive by using streamers' known concepts: a simplified Photoshop-like composition system and UI
  • Be a Free Software that lowers the bar for streamers to be autonomous and creative
  • Be live hackable like Hack'n'Slash game by the streamer himself or a remote helping person
  • Be heavily moddable like Minecraft game by enthusiastic communities with diverse programming skills
  • Be portable, unzip it works, software + mods + config on an USB stick for streaming on leased computers
  • Trivally have a well-tested configured version and a draft config + new version on the same computer

I also leave public an unfiltered-yet dubious goals ideas: GOALS-scratchpad.md.

How to use it

You barely can't yet.

  • Project current state: a fairly advanced "Hello World" with dynamic mod loading !
  • This software will never be production-ready while I am the (sole) developer. Jump in !
  • I want to find, reserve then change to a better project name if I feel it can really reach users one day

Screenshot of LLSS v0.6.2.0 main window (WIP)

How to write it, mod it

Available killer features for modders:

  • mod automatic hot-reloading since v0.5.0.0
    • On Windows and MacOS: just rebuild the mod project from VS2022/XCode while app is running
    • On GNU/Linux just cd llss/mods/mod-yourmod/program; make while app is running
  • web UI to inspect and live modify ECS state
    • While the app is running, follow this link: explorer
    • Or on GNU/Linux, to run app and open the web page: cd llss/ ; make && make run-ecs-explorer

Build instructions for:

Code and other help/contribution instructions here: CONTRIBUTING.md.

Technical choices

  • Early stage, we can make huge changes now but not later, jump in !
  • Don't dive into costly, complex and platform-specific, short-term hopefully high-performant C++ code
    • Keep low gatekeeping on who can actually write code here
    • Tried Rust + Bevy, powerful, not easy, fast changing, slow compiling, no stable ABI for mods
    • Trying C + SDL3, fine and very fun to write, and C is king for other language bindings
    • Prove me Zig or others can help to have more contributors here
      • (I can really just switch if it happens early)
  • Few but strong base libraries
    • FLECS: ECS is mind blowing building block for live-hackable data and behaviors
    • Dear ImGui + C bindings: enjoyable and simple GUI crafting/modding
    • SDL3: cross-platform development library handling platform-specific sadness for us
    • FFMPEG NUT: specific container format to pass audio+video+subtitles to a separate ffmpeg process for encoding
    • Help me choose the few next!

About

Libre Live Streaming Software (LLSS)

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors