Portable MKV Cutter
MKV Cutter Portable is a tool to cut h.264 mkv files frame accurate. Cut out mkv video clips exactly without reconverting the entire video. It is ment to be a small gui which allows to frame accurately (by using smart rendering) cut mkv files.
- it only properly supports H.264 content (users reported: H.265 content can be cut, cut not frame accurate)
- it has an ugly user-interface
- it does not come with any bells&whistles
- x264 encoding is very rudimentary (no user choice, always crf 19 encode)
- ignores subtitles if present
- only supports 4:2:0 content
- Windows OS only atm. (mainly because Avisynth is used for decoding and preview; in theory ffmpeg could be used as alternative so porting to Linux&Co should be possible)
Here’s a general overview how MKVCutter works:
- analyze content with MKVInfo (to get the key frame positions)
- analyze content with MediaInfo (to get some general data needed for audio reencoding and preview)
- create AvisynthSkript to preview the content (simple script that calls FFVideoSource on the input)
- let user set which parts of the content he wants
- create audio and video cut lists for mkvmerge, create trim calls
- let user set the output name and the temp folder
- call mkvmerge with the video cut lists to create a bunch of temporary files (here the cuts are always on key frames)
- analyze one of the not reencoded parts with h264_parse to improve compatibility
- create avisynth scripts using the trim calls and LWLibAVSource to decode the GOPs that need reencoding (smart rendering)
- create x264 call to reencode the content provided by the avisynth scripts
- call x264 to reencode
- when all GOPs that need to be reencoded are reencoded, call mkvmerge to cut the audio (here attachments, subtitles&co do not get disabled any therefore should still be available)
- merge the new audio video and all the reencoded and kept GOPs
This is how one uses ‘MKV Cutter’: (or how the author envisioned one would use it)
- Start MKV Cutter
- Press ‘Open Source’ and select the .mkv file you want to cut.
- MKV Cutter will now use MkvInfo, Mediainfo and h264_analyse to anaalyse the source will, once it’s finished a new screen will show.
- Here one selects the parts of the movie one wants to keep.
- Go to a ‘start-point’ of a section you want to keep.
- Press ‘Cut-Start’
- Go to the ‘end-point’ of the current section you want to keep.
- Press ‘Cut-End’
- The selected section should now be highlighted on the slider.
- Press ‘Add to Cut-List’, so the selection section will be remebered.
- Repeat step 5.-10. for all sections you want to keep.
- Press ‘Commit Cut-List’ to finish the selection definition.
- In the next view you set the ‘Output’ (File) and ‘Temp folder’
- Press ‘Output’ and set the name and location of the output file.
- Press ‘Temp folder’ to set the folder that is used for temporal files.
- Press ‘Next’ to start the actual processing.
- Wait till ‘MKVCutter’ is done and the ‘Finished!’ popup appears.