FunClipper - simple app for merging/cutting videos and scripts and creating compilations

FunClipper

Inspired by one of the users on this forum who asked for help with creating a VR compilation, I created this app

FunClipper is a Windows desktop app that lets you take multiple videos, cut the parts you want from each one, and merge them into a single video. The funscripts get automatically merged and time-aligned, no manual editing required

This is a fully standalone app - no external dependencies, no setup, no additional tools required. Download → run → use

Here is an example of the final result achieved using this app (video + script)
Nothing was edited, this is pure output from the app:

The videos and amazing scripts used here come from @SIDM from this post:
https://discuss.eroscripts.com/t/rinjo-18-mega-script-bundle-incooming-brace-and-or-bust-32-scripts-of-varying-lengths-over-3-hours-of-scripted-content/308452


What it does

  • Add clips from anywhere on your drive (file picker, folder import, or just drag & drop onto the window)
  • Set start/end timestamps for each clip using the built-in preview player
  • Reorder clips by dragging them up and down the list
  • Merge everything into one .mp4 + one .funscript

Funscripts are detected automatically - just put them in the same folder as the video with the same filename (video.mp4 + video.funscript) and the app handles the rest. Timing math, offset calculation, fade transitions etc


Preview player

Click :play_button: Preview on any clip to open it in the built-in player. Use the seekbar to find your cut points, then hit Set Start / Set End

Keyboard shortcuts:

  • Space - play/pause
  • ← → - seek
  • [ - set start at current position
  • ] - set end at current position

Green marker = start, red marker = end, visible directly on the seekbar


Settings

Option What it does
Fade in/out Each clip fades smoothly at the edges. Default 1.2s. Applies to video and funscript both
Encoder GPU (Nvidia, hevc_nvenc) or CPU (libx264)
Resolution Presets for VR, 16:9 and 2:1 from 1080p to 8K. Portrait/Landscape toggle. Custom option too
FPS 24 / 30 / 60 / 120 FPS. Mixed FPS clips all get normalized to your target
Quality Fast / Balanced / Quality
Audio Keep original, replace with an MP3, or mix MP3 with original audio + volume slider
Normalize Evens out volume differences between clips

Larger clips scale down, smaller ones get centered with black bars

Output is encoded with -pix_fmt yuv420p, -tag:v hvc1 and -movflags +faststart so it SHOULD play correctly in HereSphere and other VR players


Audio in preview

If you’re using Replace or Mix mode, the preview player syncs the music to the correct timeline position for that clip so clip 3 will play the music starting from where clips 1+2 would have ended. What you hear in preview is what the final video sounds like


Timeline

There’s a visual timeline at the bottom showing all clips proportionally. If you have a music track loaded, the audio length shows as a grey background so you can see at a glance if it covers all your clips. Click any block to open that clip’s preview


Download link → 279.32 MB folder on MEGA

VirusTotal scan results → VirusTotal

Built with Electron + ffmpeg

If needed, I will add more features or improve what is already there. I am open to suggestions. Let me know if you run into any issues :3

UPDATE 1.1.0

  • Script preview
    Added script preview under each video preview

  • Generate Full Preview
    FunClipper now renders a fast, lower-quality preview of the final output, including both video and script, so you can verify everything before the final render

19 Likes

Thanks for contributing to EroScripts!
super cool ,programmer save the world

1 Like

It seems that if I have only one clip, I cannot export successfully. Could you please make it possible to export a clip from one video sample?
in other words, may users do not want to combine videos, but simplify a video by saving the highlight part.

Hmmm I did not think about that. I will add it to the to do list :+1:

1 Like

I just tested it on my side and I can export a fragment from a single video without any issues

Can you describe in more detail what problem you have and what exactly is happening?

I think found the issue. If your output folder was on a different drive than “C” (where the temp files are created), windows would throw a cross device error on the save. Fixed in v1.0.1, download link is updated. Try it and let me know if it works

UPDATE 1.1.0

  • Script preview
    Added script preview under each video preview

  • Generate Full Preview
    FunClipper now renders a fast, lower-quality preview of the final output, including both video and script, so you can verify everything before the final render

2 Likes

This is awesome

1 Like

Determining the resolution for these spliced videos is somewhat of an art. The current dropdown selection method is still too difficult for average users. Three measures should be implemented:

  1. Display the resolution of each clip on the Video card;
  2. Add a checkbox on the card to choose whether to use this video’s resolution as the merged resolution;
  3. Provide a Resolution Mask in the Preview window to let users intuitively see the merged effect, and enable simple drag-and-scaling of the frame to match the resolution (this can refer to OBS: for example, when the desktop resolution is high but the set recording resolution is low, a mask will appear to indicate the framing area to the user).

Of course, this is a massive project and is for reference only.

Finally, let me address the confusion I encountered, which inspired the above idea:
The current resolution settings are fixed rather than reading the original video resolution. If I want to use the original resolution, I have to check it via the file properties window and enter it manually under Custom. This interaction logic is not user-friendly.

1 Like

Good points!

The whole idea behind FunClipper is to keep things dead simple for people who just want a quick compilation without opening tools like DaVinci Resolve for a 3-click job, so yeah, anything that removes confusion is worth considering

The “use source resolution” thing is a great idea, needs a bit of thought on how to handle mixed resolutions but it’s doable
Displaying each clip’s resolution on the card is also a good one, I will add that in the next update
The mask idea is cool too. I will think about whether it makes sense to add without overcomplicating things

Thanks for the detailed feedback <3