Using Handbrake in a cluster setup

Archive of historical feature requests.
Please use the GitHub link above to report issues.
Forum rules
*******************************
Please be aware we are now using GitHub for issue tracking and feature requests.
- This section of the forum is now closed to new topics.

*******************************
Post Reply
louwrentius
Posts: 13
Joined: Thu Aug 05, 2010 11:57 pm

Using Handbrake in a cluster setup

Post by louwrentius »

Maybe this topic is already rejected but I couldn't find it.

It would be nice if I can use multiple computers that work on the same queue. I don't want systems working on the same video file, that is way too complex and I suspect it won't scale that much.

Anyway, the basic idea is that if you want to convert a whole series from a source format to an iPad or iPhone format, using multiple computers would be cool. It can be done manually, but computers are there to automate stuff and make things easier.

How should this solution work in my opinion?

- One computer is the master, the other computers are the slaves.
- The user just fires up handbrake on all systems.
- On one computer, the system is set as master (just a button)
- On the other computers (slaves) the master is 'discovered' and the user connects the slave to this master.
- Once a slave is connected to the master it cannot be controlled by the end-user unless slave mode is canceled.
- The master sends the encoding instructions to all slaves
- The master decides which file is encoded by which slaves

The major 'problem' is how to handle the actual files. How do all systems 'see' the files that must be processed?
The master must be able to tell the client where to get the files. Handbrake is quite user friendly and it must not be difficult for people to set this up.

The easiest way is to use a network share, this creates an identical file path for every system.
Much more complex is that the master streams all data to the slave and receives it back after encoding finishes. This will not scale that well I guess.

Then there's this notion or security. Network communication should be secured somehow.

Is this or some other solution that achieves the same goal in the pipeline for Handbrake?
GregiBoy
Veteran User
Posts: 908
Joined: Sat Feb 12, 2011 9:23 pm

Re: Using Handbrake in a cluster setup

Post by GregiBoy »

I think you have to be kidding!

I cannot see the developers being interested in such a specialised feature.
silicon_ghost
Posts: 1
Joined: Mon Jan 10, 2011 3:51 am

Re: Using Handbrake in a cluster setup

Post by silicon_ghost »

This could be implemented by the OP by simply emitting the queue XML file after creating it, then using Python or Ruby to build a cluster interface calling the Handbrake CLI on each machine. Not rocket science.
Smithcraft
Veteran User
Posts: 2697
Joined: Thu Jan 22, 2009 8:04 pm

Re: Using Handbrake in a cluster setup

Post by Smithcraft »

I wish I had enough computers to make something like this worthwhile...

SC
User avatar
JohnAStebbins
HandBrake Team
Posts: 5724
Joined: Sat Feb 09, 2008 7:21 pm

Re: Using Handbrake in a cluster setup

Post by JohnAStebbins »

I don't think this is out of the realm of possibility. But it would be in some hypothetical future where we have created an encode server that can be fed jobs over soap or some similar interface. That would be useful for a web gui as well which is why I don't think this request is just crazy talk. And it would probably require a contribution of time from some developer that has a more personal interest in clustering.
Post Reply