[FEATURE] Custom Cuts

I’ve searched for a guide for custom cuts but haven’t found one and I’m running into a question about how it works. I use comskip manually prior to my conversions and generally edit the resulting edl file so I was interested when i saw custom cuts but it doesn’t seem to do what I want.
I open the video and the EDL gets loaded at the same time. So lets say I select row 2, I left click to have it move the slider and I adjust it as needed. I click the Start Cut and am expecting it to change the value in the row i’m in, but it doesn’t. Best I can figure is to remove the row and add a completely new one, but in doing so i lose the end cut location so it’s not worth it.
Is there some way to edit the values through the GUI that i’m not seeing? If I could make these minor tweaks and just save the resulting file it’d be perfect.

1 Like

This has been implemented in todays 2.5.3 BETA build, you can edit the cut selections manually.

Not sure it’s working, or at least not in the way I expected. First thing is kind of minor, but when I open the video, most of the time the first cut start is fine as 0.00, so I simply click on the Cut End, wait for the slider to move, then tweak it - but it won’t let me hit cut end because it seems like you have to do start first. Which I guess I could do.
Bigger issue though, so I move slider back to 0, hit start cut, then click on the cut end, wait for slider to move to current edl value, then tweak, but when I click the End Cut button I get a popup “Invalid End Cut - End of cut has to be after start cut” which it is, so not sure what the problem is. The table shows Cut Start as 0.00, Cut End as 00:01:23.980. I’m at the point where the End Cut button is enabled, and the slider has been moved to 00:03:12.988, but pressing the End Cut gives that popup. So the error message is wrong, since start is 0.

To change the cut, manually edit the cut timestamp by double clicking on the entry you want to cut.

Start and end only work in pairs to add new cuts, you need a start followed by the end. Any edits afterwards need to be done by editing the table of cuts manually.

One suggestion for future builds, though not sure if it’s possible, but any way that you can make is so that clicking on the start time (just below the video not in the table) that it could copy to the clipboard? I’ve been doing the manual editing but am often on a small monitor so find myself making typos in the edits, and my memory sucks so the problem i run into is i forget the times, but as soon as you start the edit the start time changes. This way I could have it copy the value and I could just paste over the start or end time I’m trying to replace.

Added in today’s 2.5.3 BETA build

I just installed it but for me Custom Cuts is crashing when I try to click the slider and then move via left or right arrow keys. I click the slider to get it in focus, then try moving via the arrow key and nothing happens, i.e. time counter doesn’t move but maybe 3-5 seconds later the window just closes on me without message.

From Event Viewer:
Application: MCEBuddy.CustomCutsGUI.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Runtime.InteropServices.COMException
at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32, IntPtr)
at System.Windows.Clipboard.Flush()
at System.Windows.Clipboard.CriticalSetDataObject(System.Object, Boolean)
at System.Windows.Clipboard.SetDataInternal(System.String, System.Object)
at MCEBuddy.CustomCutsGUI.MainWindow.timeSlider_KeyDown(System.Object, System.Windows.Input.KeyEventArgs)
at System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate, System.Object)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(System.Object, System.Windows.RoutedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)
at System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs)
at System.Windows.UIElement.RaiseTrustedEvent(System.Windows.RoutedEventArgs)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs)
at System.Windows.Input.InputProviderSite.ReportInput(System.Windows.Input.InputReport)
at System.Windows.Interop.HwndKeyboardInputProvider.ReportInput(IntPtr, System.Windows.Input.InputMode, Int32, System.Windows.Input.RawKeyboardActions, Int32, Boolean, Boolean, Int32)
at System.Windows.Interop.HwndKeyboardInputProvider.ProcessKeyAction(System.Windows.Interop.MSG ByRef, Boolean ByRef)
at System.Windows.Interop.HwndSource.CriticalTranslateAccelerator(System.Windows.Interop.MSG ByRef, System.Windows.Input.ModifierKeys)
at System.Windows.Interop.HwndSource.OnPreprocessMessage(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
at System.Windows.Threading.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority, System.Delegate, System.Object)
at System.Windows.Interop.HwndSource.OnPreprocessMessageThunk(System.Windows.Interop.MSG ByRef, Boolean ByRef)
at System.Windows.Interop.ThreadMessageEventHandler.Invoke(System.Windows.Interop.MSG ByRef, Boolean ByRef)
at System.Windows.Interop.ComponentDispatcherThread.RaiseThreadMessage(System.Windows.Interop.MSG ByRef)
at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
at System.Windows.Application.RunDispatcher(System.Object)
at System.Windows.Application.RunInternal(System.Windows.Window)
at MCEBuddy.CommercialCutsGenerator.App.Main()

That error is because your clipboard is locked by another application. It shouldn’t crash anyways, so thanks for reporting it. I’ve put in a patch to handle the exception gracefully and move on.

Try the new build.

Ok had to wait till a conversion finished. The crash no longer occurs, but I’ll say otherwise mixed results. The PC I was using is not where I normally use custom cuts, it was busy doing a recording, so I installed on another. After install and a reboot the crash doesn’t happen but I think the clipboard is still showing locked for some reason. There isn’t anything else open though other than MCEBuddy itself.
I did also try it on the pc I normally use (after my recording finished), and on this machine it appears to work fine. I open the file, adjust the slider and click the time and than am able to paste it. So not sure why on the other PC it’d not be working, but it might affect other people. I typically do the cuts on my recording pc as custom cuts seems to work better performance wise than on my conversion box. Same OS, but different video. The one that works is using onboard intel video, the one that doesn’t is using an AMD Radeon R9 200 series. Not sure if that should have any effect but jumping location to location in a ts video loads faster on the intel onboard.

Noticed one minor bug with the copying of the time. If you scroll the slider to the far right, it won’t copy the time when you click on it, you just end up with whatever was last on the clipboard. It does copy when the slider is far left though, eg you get 00:00:00.000
In each case I’m clicking on the left side time item, far as I can tell clicking the right side never copies.