Selur's Little Message Board

Full Version: Hybrid crashes when importing folder from CLI
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
First of all, I want to say I absolutely love Hybrid, it's the video army knife I always wanted!

I recently started deinterlacing a lot of Digital8 tapes and Hybrid works great, but it (expectedly) doesn't handle thousands of files opened at once - it simply hangs on analyzing them, while consuming more and more RAM. I suppose it will eventually finish, but it seems much slower than opening files one by one. I was able to find the sweet spot by opening ~30 files at once - it's as fast as opening one file at a time, but obviously much more convenient. However, given the amount of tapes I have, even 30 files at a time is a very tedious job.

This is when I discovered the CLI ability to load a profile and start processing automatically - exactly what I needed! This way, I can supply one tape of about 30 files at a time, and repeat for all my tapes. Sadly, the CLI seems to crash on folders - no message given. The same folder works via GUI and its individual files work using CLI. Here's my exact setup:

Code:
C:\Program Files\Hybrid\Hybrid.exe -global "C:\Users\User\AppData\Roaming\hybrid\profiles\global\test.xml" -autoAdd addAndStart "C:\Users\User\Desktop\test\"

The test.xml file is all default settings, except I enabled the "Generate" output filename option, and I enabled "Output path to source path". The exact profile can be found here:

https://transfer.sh/htIU3k/test.xml

The folder of videos can actually be anything, I reproduced using this sample MP4 cloned a few times in an empty folder:

https://file-examples.com/storage/fe8c47...0_18MG.mp4

EDIT: Forgot to mention, I am using the latest Hybrid (2022.03.20.1) on Windows 11 x64.

Many thanks
What I did trying to reproduce the problem:
  • copy your test.xml into my Hybrid setting folder in the profiles\global\test.xml folder
  • change the default temp path in the profile to a folder which exists on my system
  • copy the file into a c:\Users\Selur\Desktop\batchtest additionally add two copies of it also in the folder.
  • start Hybrid with:
    Code:
    Hybrid.exe -global test --addAndStart c:\Users\Selur\Desktop\batchtest
    (note that I use the name of the profile not the whole path to the profile!)
No crash here, during start-up the following was output into the Log:
Code:
Loading: I:/Hybrid\settings\profiles\global\test.xml
Finished loading GlobalProfil I:/Hybrid\settings\profiles\global\test.xml, after 0.005s
Loading: I:/Hybrid\settings\profiles\global\test.xml
Finished loading GlobalProfil I:/Hybrid\settings\profiles\global\test.xml, after 0.034s
Loaded Global profile: test
Current defaultOutputPath: is empty!
-> Set it under Config->Path
Finished startup, finished after 5.299s

Cu Selur
argh used the wrong call
Funny enough, I made the same mistake as you when I first tried. I was wondering why it didn't start anything. Anyway, it seems like the crash happens during the queuing stage, more specifically, during output file/name generation.

On further investigation, the crash only happens when `-autoAdd addAndStart` is used. Omitting that and manually pressing the queue button is okay. Could it be that the CLI performs queuing earlier than it should?
It's a problem with the indexing of the sources.
Send you a link to a new dev version for testing.

Cu Selur
New build working great! You're the best  Big Grin

One last small issue - is there any way to disable this message box when loading a small file? It occurs twice during analysis, and it breaks automation since it just blocks until OK is clicked. In fact, why is a file size <1MB bad in the first place? Attached below. Thanks!
This happens if the currently selected encoder is set to aim for specific bitrate and the resulting file size would be below 1MB.
-> Simply change your encoder settings to something that either doesn't aim at a specific bit rate or doesn't use bit rate to begin with.
Oh yes of course, I was wondering why I don't see this message during my production encoding.

Have a wonderful day!