Skip to content

Feature Request: Allow a retry count/delay instead of instantly failing all items in queue if a source becomes temporarily unavailable #867

@fullmental

Description

@fullmental

Please describe the problem or feature request in detail: I would like a menu option to refresh all errored files in the handbrake queue to ready status, without needing to click the annoyingly small buttons on each individual file one by one.

I admit this is kind of a niche use case, but here goes...I use three network share drives so I can encode the same source folders to the same destination folders with multiple computers at once over a gigabit connection using the USB 3.0 ports on my router. One drive is set up as a "staging" drive where I use MakeMKV to drop DVD and Bluray rips, and the other two drives are network shares for Plex. I have 3 PC's running handbrake as they are all older and slow to encode, so these three PC's will grab files from the staging drive and encode into one of the two plex drives, allowing me to keep a constant conveyor belt of file encodes without having to deal with the relatively small amount of free space on each individual PC, or making me deal with rotating drives in and out of each/moving everything onto my main drives after the fact.

One of my computers has occasional adapter issues and will reset the ethernet adapter randomly every few hours. When this happens, MakeMKV doesn't have an issue and waits for the drive to be available again, but handbrake quickly runs through and fails all of the files in queue instead of allowing a wait/retry delay or count of some sort. Additionally, there is no option in the queue to refresh all errors and reset them all to ready so I can start it again, so it is continually requiring manual and time-consuming input on my side even though the error conditions are temporary, and something as simple as a retry delay and retry count can completely eliminate the experienced symptom of the temporary network connectivity loss. Please consider allowing this for I/O issues, or at the very least implement an option to one-click restore the incomplete items in a queue to the ready status so I do not have to spend several minutes refreshing the queue manually!

I understand the network adapter issue in particular is a hardware/driver issue unrelated to handbrake, but in theory this fix would circumvent it and prevent queue mishaps from accidental physical disconnections on external drives, or accidental ejections on a DVD, so there is potential to save some headache here regardless, thereby improving the stability and reliability of the program during days-long encoding queues. Thus, I would classify this as a feature request and not a bug report of some kind...

What are the steps to reproduce this problem:

Use a computer with a glitchy network adapter driver and a manufacturer that says they won't fix it, try using handbrake with a network share. Enjoy the frustration (?)

(Try setting up a queue on a usb or network drive, then disconnect the drive manually when running)

What version of HandBrake you are running:

1.0.7(2017040900) - 64-bit

What operating system and version and you running (e.g. OSX 10.11, Windows 7, Ubuntu 14):

Windows 10 64-bit build 15063.540

Was there any error message or error dialog, if so please detail or provide screenshots:

The activity log doesn't seem to differentiate, showing a generic exception error if the connection is lost:

Please provide the full activity log for the encode or scan attempt. You may attach the log as a file, post a pastebin URL to the log, or place the log inline below:


# Starting Encode ...

[14:38:51] hb_init: starting libhb thread

# Failed to start encoding ...
HandBrakeWPF.Exceptions.GeneralApplicationException: Exception of type 'HandBrakeWPF.Exceptions.GeneralApplicationException' was thrown.
   at HandBrakeWPF.Services.Encode.EncodeBase.VerifyEncodeDestinationPath(EncodeTask task) in C:\HandBrake\hbworkspace\workspace\Release_WindowsGui64\HandBrake\win\CS\HandBrakeWPF\Services\Encode\EncodeBase.cs:line 216
   at HandBrakeWPF.Services.Encode.LibEncode.Start(EncodeTask task, HBConfiguration configuration) in C:\HandBrake\hbworkspace\workspace\Release_WindowsGui64\HandBrake\win\CS\HandBrakeWPF\Services\Encode\LibEncode.cs:line 92 ```

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions