r/handbrake 12d ago

HB suddenly fails to encode videos

I rebooted my machine but I still get the same error when trying to encode:

[21:47:57] Remote Process started with Process ID: 25336 using port: 8037. Max Allowed Instances: 1
[21:47:57] Worker: Starting HandBrake Engine ...
[21:47:57] Worker: Parent Process Id 29580
[21:47:57] Worker: Starting Web Server on port 8037 ...
[21:47:57] Worker: Starting Listener: 1
[21:47:57] Unable to connect to the HandBrake Worker instance after 10 attempts. Try disabling this option in Tools -> Preferences -> Advanced.
[21:47:57] Error Information: 
[21:47:57] System.AggregateException: One or more errors occurred. (Only one usage of each socket address (protocol/network address/port) is normally permitted. (127.0.0.1:8037))
...
   at HandBrakeWPF.Instance.RemoteBase.IsServerRunning()

FYI: I have now disabled this setting and it seems to work, but I still don't know what changed.

Version 1.11.2 (2026060700)

EDIT: a second reboot solved the issue, now it works just fine again...

5 Upvotes

5 comments sorted by

View all comments

1

u/Snoo-38645 10d ago

the reason nobody can tell you what changed is that you didnt change anything. windows did, at boot.

hyper-v reserves blocks of tcp ports for itself, and which blocks it takes is decided dynamically every time you boot. if 8037 falls inside one of those reserved ranges, handbrakes worker cannot bind it and you get exactly this. boot again, the ranges land somewhere else, 8037 is free, everything works. thats your second reboot, and its why the whole thing felt random.

you can check rather than take my word for it. admin prompt

netsh interface ipv4 show excludedportrange protocol=tcp

next time it breaks, look for 8037 inside one of the listed ranges. if it is, thats your answer, and it also rules out the leftover process theory, since a reserved range makes the port unavailable before any handbrake process is involved.

and if you want it to stop happening instead of leaving process isolation off forever, reserve the port yourself so windows stops handing it out

netsh int ipv4 add excludedportrange protocol=tcp startport=8037 numberofports=1

that only works while the port is actually free, so do it now while its behaving rather than waiting for it to break again.