Brett Williams 34fbdaa4d9 Refactor: DistributedJobManager with pub/sub status change notifications (#25)
* Add pubsub to render_queue and base_worker

* Refactor: Convert ZeroconfServer to Singleton with Class Methods

* New API for subjob servers to notify parent job servers of status changes

* Refactor: Move all subjob related methods to distributed_job_manager.py

* Rewrite for wait_for_subjobs

* Fix: DistributedJobManager.find_available_servers() takes 1 positional argument but 3 were given

* DistributedJobManager should now notify / be notified abotu background job changes

* Fix the make_ready api. Change children keyname to be id@hostname so it can be unique

* Fixes

* Image sequence to movie needs to find the actual start frame

* Fix: subjob_status_change did not return a valid response

* Fix client renderer selection

* Small fix for subjob status checking

* Fix issue with divide_frames_equally

* Fix issue where downloads were not occurring

* Fix issue where old status was being reported

* Add docstrings and code cleanup
2023-06-30 19:49:57 -05:00
2023-06-30 03:53:32 -05:00
2023-06-15 02:01:50 -05:00
2023-06-09 18:38:58 -05:00
2023-06-07 00:28:30 -05:00
2023-06-08 08:19:37 -05:00

🎬 Zordon - Render Management Tools 🎬

Welcome to Zordon! This is a hobby project written with fellow filmmakers in mind. It's a local network render farm manager, aiming to streamline and simplify the rendering process across multiple home computers.

📦 Installation

Make sure to install the necessary dependencies: pip3 install -r requirements.txt

🚀 How to Use

Zordon has two main files: start_server.py and start_client.py.

  • start_server.py: Run this on any computer you want to render jobs. It manages the incoming job queue and kicks off the appropriate render jobs when ready.
  • start_client.py: Run this to administer your render servers. It lets you manage and submit jobs.

When the server is running, the job queue can be accessed via a web browser on the server's hostname (default port is 8080). You can also access it via the GUI client or a simple view-only dashboard.

🎨 Supported Renderers

Zordon currently supports the following renderers:

  • Blender
  • FFMPEG
Description
Languages
Python 100%