Transcoder Slaves #1069
Replies: 2 comments 2 replies
-
Would love to be able todo this. We are working on upgrading ARM in the background, some of which would then support this. As you noted there are quite a few changes that would be required. In its current state the ARM ripping code wouldn't support this. Will leave this as an enhancement and put on the back burner. |
Beta Was this translation helpful? Give feedback.
-
I just installed ARM with the intention of replacing the HandBrakeCLI binary with a bash script to move the raw files to the completed folder and then use the Tdarr project to convert those (distributed across my network) to the final product. Any reason this shouldn't work? Pro: Require no changes to the underlying ARM project. |
Beta Was this translation helpful? Give feedback.
-
Transcoding of videos is a process which can take a couple of minutes. This is even more iminent when ripping blurays.
Just ripping the files from Bluray or DVD to memory is much faster than the followed transcoding.
Now here comes the new feature. Beeing able to outsource transcoding to multiple machines.
Use cases:
Required:
I am not sure how much sens this makes for anything other than movies/tv series.
Initial implementation idea:
Master and slave docker container. The master has to run at all time and is not much different than the current implementation. This master can connect to single/multiple slaves via a network protocol (primitive socket).
After any disk is ripped it will communicate with each slave in a configured order (set by user) if the slave is available and checks if a job is already running on this slave. If a slave is available the master sends all information to the slave. These infos contain where the raw rip is stored and which configuration should be used for the rip.
This requires all slaves and master to access the same storage location.
The slave checks if data is accessible and starts the handbrake job.
While the job is running either the slave will send progress and log information back to the master or the master will check all slaves periodicly. Second will have the advantage to check if the slave is still alive.
For configuration the master can add transcoding slaves and at which order they are used. Including the master as transcoder. Master can also be excluded.
Slaves don't have any config values except ip and port. Any other config will be transfered by the master with each transcoding job.
Beta Was this translation helpful? Give feedback.
All reactions