New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mkvmerge could not be found on system error message when set_duration is large, works fine when set_duration is small #164
Comments
When you cut it into 4 portions, I think mkvmerge will produce "extras" at the cutoffs, correct? If so, I'll need to figure out how to manage & rename these temporary files - but this is technically possible. Not sure if it's worth the effort to address though if it's so infrequent and the workaround is obvious (e.g. detect it and tell the user to to just do it manually as you did and run mkvmerge X times, and I would need to add a line in the new FAQ page I'm writing)... I'll give it some thought. Thank you so much for the thorough report and investigation! |
Hey @alexboydray; I've updated the code now to properly detect & provide an error message when this occurs. I'll also add an entry in the FAQ explaining why this occurs and how users can overcome it. I'd rather not have to actually deal with creating/deleting temporary files as that might incur some risks with respect to code maintenance, so I think so long as the correct message is delivered, that should address the real issue here (and informs people that they can just invoke mkvmerge or ffmpeg themselves with a smaller sub-set of scenes to be cut). Basically, when this happens now, you will see:
If you're okay with that as a "fix" for this issue, then I'll resolve this after hearing back from you and push it as part of the v0.5.4 release. Thanks again for the report. |
Bug/Issue Description:
Please note I have found a workaround for this problem, but thought I would mention it just in case it was something to add to documentation for others.
When attempting to split relatively long movie (2h 04m 27s) using python API, execution of python program fails when attempting to split_video_mkvmerge method, citing error ERROR:root:mkvmerge could not be found on the system. Please install mkvmerge to enable video output support. Plus additional error lines that can be seen below.
When the duration is decreased on the video_manager (tested a 20 second duration) the split_video_mkvmerge method works fine. Furthermore, the output of the is_mkvmerge_available() shows as True.
Here are the contents of the two python files:
main.py
VideoSplitter.py
Error Received after running main.py
Expected Behavior:
Expected all individual scenes to be exported to Scenes\ directory. Program works correctly when the duration is lowered but not when trying to split longer length media.
Computing Environment:
Workaround
After digging into the WinError 206, I discovered that in Windows a process command line is limited to 32,766 characters. This may be what is causing the errors during the mkv splitting, as the amount of scenes in the list is very large. As a workaround I cut the scene_list into 4 portions and then ran each through the split_video_mkvmerge method.
The text was updated successfully, but these errors were encountered: