This looks fantastic! Any chance of working in an option to sync the compilation to music or a specific BPM even? It would make PMVs a breeze to put together.
That feature is next on my list, probably: Allow adding background music · Issue #9 · soundchaser128/stash-compilation-maker · GitHub
Very interesting. I am looking forward to the release
By the way, it would be really helpful if you could share some ideas on how this should look from a user’s perspective. Do you pick a song and then arrange the clips to fit the duration of the song? That currently seems like the most straight-forward solution to me, because the other way around would mean picking markers and clips and having to aim for the right duration to match the song, which does not sound fun.
As for syncing to a BPM… no idea how to even approach that, at the moment.
@Slibowitz @PO0000OP There’s a pre-release version ready for testing here: Release v0.6.0-pre.2 · soundchaser128/stash-compilation-maker · GitHub
So Auto PMV sort of does this, but not really (and also it might be dead).
You point it at a song and tell it what to do with the audio:
You point it at a folder full of videos and tell it how many you want and what it should do with them:
Then, Option A. - It chooses random video clips and throws them together.
OR Option B. It runs them through some magic video classifier to determine which parts of the video are what. Then you tell it that you want the video to be X% blowjobs, X% riding, etc.
The problem is that it takes FOOOOOOOOOOOOORRRRRRRRRREEEEEEEEEEEEEEEEVER to figure out what is actually in those videos. Which is where the ability to manually label sections would be incredibly useful!
The UI is hot garbage, but the idea is cool. I compared the tool to my own manual editing for a bit of fun. I think what it spit out was okay, but not great. I think the ability to manually label the clips would greatly improve the final product.
I also used Funscript Generator to make a script for the PMV and it turned out great. If you could make ONE tool to label videos, make a PMV, and generate a script, you would be my hero!
@AutoPMVs if you’re still around and want to weigh in on any of this.
Ok, thanks a lot, this is really helpful. Should be doable.
Release 0.6.0
- New feature: Allow creating compilations from files on your disk (choose a folder, create some markers in the UI and you’re good to go)
- New name: ClipMash.
Download here: Release v0.6.0 · soundchaser128/clip-mash · GitHub
This one took quite a bit of work, ended up basically rewriting big parts of the backend code, but I think it was worth it, the barrier to entry should be much lower now.
Also, if you end up using this in a compilation and post it somewhere, I’d appreciate either a shout-out or just sending me the link, I’m interested to see what people make with this.
Okay, last post for now, I’ve set up a Discord server to have a place for more free form discussion and potentially also sharing content produced with the app.
Discord server: ClipMash
Hi,
sounds like a cool project and I would love to see this in action.
Sadly I got problems running the .exe.
The error message says:
←[2m2023-05-17T10:16:48.625990Z←[0m ←[32m INFO←[0m ←[2mclip_mash::service::stash_config←[0m←[2m:←[0m trying to load config file from C:\Users\renen\AppData\Roaming\soundchaser128\stash-compilation-maker\config\config.json
←[2m2023-05-17T10:16:48.626670Z←[0m ←[32m INFO←[0m ←[2mclip_mash::service::stash_config←[0m←[2m:←[0m no configuration found, or unable to load: The system cannot find the path specified. (os error 3)
←[2m2023-05-17T10:16:48.658007Z←[0m ←[32m INFO←[0m ←[2mclip_mash::service::download_ffmpeg←[0m←[2m:←[0m ffmpeg already installed, not doing anything.
←[2m2023-05-17T10:16:48.661727Z←[0m ←[32m INFO←[0m ←[2mclip_mash←[0m←[2m:←[0m running at [::1]:5174
Also I don’t have any option on the web page to configure my stash address.
Thanks for help
Sorry, the stash configuration is broken in the latest build, but you could try the newest pre-release, it should be fixed there (plus, support for adding music is in, too).
edit: You might have to wait a few more minutes until the build is completed.
New release: ClipMash 0.7.0
-
New feature: Added support for adding music to videos.
You can create PMVs now. You can either download songs from YouTube or upload them in the browser, then select their order within the video. The length of the video will be determined by the songs chosen.
I made an example PMV here: 199 MB file on MEGA
Download the release here: Release v0.7.0 · soundchaser128/clip-mash · GitHub
@PO0000OP Let me know what you think if you get a chance to try it out.
I need an adult lol. I am a programming and GitHub noob.
Per your usage instructions, I assume the binary for my OS is “clip-mash-x86_64-pc-windows-msvc.”
When I download and unzip this I get “clip-mash.exe”
When I click on this, command prompt (I think) opens SUPER fast and then immediately closes before I can read anything.
You’re doing it right, there’s a weird bug preventing startup, as a workaround, create a folder called “assets” in the same folder as the clip-mash.exe file. Then it should work. (at least it did for me)
That solved it, thanks!
@soundchaser128 added some feedback for you. Thanks for sharing this tool with the world!
Thoughts after messing around:
- Initial impression is that the UI is clean and intuitive. This looks fucking fantastic! 10/10
- Marking scenes is pretty easy, BUT it would be nice to be able to manually enter timecode rather than having to scrub to in/out points
- The marker names are meaningless? I meticulously marked 13 videos and kept the names consistent, BUT then I had two options. Grab clips in scene order or at random.
What I’d prefer would be something akin to AutoPMV’s ratios based on my markers. Give me 10% “Riding” marker, 20% “Blowjob” marker, 10% “Titjob” marker. Bonus points for something like the “Finish Ratio” here, which would dictate what the end of the video looks like (presumably pulling from my “Cumshot/Finish” markers)
- LOVE the music download/upload options here. AND I can choose multiple? AND I can set the mix of source audio vs music? That’s brilliant! This is just
BUT this program has absolutely no sense of rhythm. The edits are totally random with no regard for the music. If the beat is a standard 4/4 - 1, 2, 3, 4 pattern, it will not do what you’d want/expect (1, 2, 3, 4, CUT, 1, 2, 3, 4, CUT, or some variation - 1, 2, CUT, 3, 4, CUT //// 1, 2, 3, 4, 1, 2, 3, 4, CUT… etc.)
Still not clear? Check out this PMV. The visual effects demonstrate this idea of timing well.
https://spankbang.com/6ybx5/video/enter+the+goonstate+pmv+bias
Until this can detect/learn WHEN to make edits, the music is nice but kind of useless for PMVs in my opinion.
The ability to preview this clips to be used in the video is AMAZING! I love everything about this! Let me adjust the ratio of what markers go here and mess with WHEN these clips show up in the video and I will be over the moon!
Test video:
Unfortunately, something went wrong? The video just stops playing at 01:15. Even if you skip past that point it just pauses on whatever frame you skipped from. When I open the video in Premiere, it just pops up as 01:15 duration, like the additional 2 minutes of video simply don’t exist.
FINAL THOUGHTS:
So my overall opinion is that this has tons of potential and it is infinitely better than anything I know how to make. I know very little about the actual nuts and bolts of how this works, so my feedback is purely from a user’s viewpoint.
Personally, I’d like to see more control over what actually ends up in the finished video (via markers), but I also image that’s difficult as hell to implement. I’d love if you could give this thing a sense of rhythm and a knowledge of HOW to edit video lol. Again, I imagine that’s a tall order. Basically, I am asking you to make a robot video editor. Easy, right?
I REALLY REALLY REALLY want you to know that I appreciate this. Please don’t be discouraged by anything I have said here. Even if I personally don’t have a use for this tool yet, I am hopeful that others will and/or that as you keep working on it, it will become more useful to my needy ass
Thanks so much for the detailed feedback.
I haven’t gone through all of it yet, but being able to set a ratio of what’s included based on the specified markers should be pretty easy. Then, I’ve been thinking about letting the user specify points where to cut within the markers. That might also help.
Actually, nevermind, reading what you wrote again, you basically just want the cuts dictated by the BPM of the video, right? So, after every measure (for example) you want to have a cut. Still not 100% sure how to do this, but this sounds doable.
And yeah, the generated videos are kind of weird, I think something gets messed up with the timestamps when concatenating the clips together at the end, but I haven’t really been able to find out what exactly.
Precisely. Unfortunately, I am absolutely useless when it comes to figuring out how to make that happen lol. Thanks again!
I looked into this a bit, and it seems doable, there’s libraries for doing beat detection for music. So, you could feasibly do something like the following:
- Detect the beats of the song(s) to be used, this will give a list of timestamps where beats occur
- Let the user specify the time signature used (beats per measure)
- Then, I guess, you could also let the user specify how often to cut (every measure, every 2nd measure, somewhat randomized etc.)
- Once the cuts have been determined, we know how long each clip will be.
- Then, I think, the rest of the logic should work the same as the regular PMV clip creation, just with fixed clip lengths instead of randomized like now
If you manage to make that work well, it would be incredible.
I might have something: Release v0.8.0-pre.0 · soundchaser128/clip-mash · GitHub
It now detects the beats of the song and will sync the edits to the beat (currently it assumes 4 beats per measure and will cut every 4 measures, so every 16 beats). Some testing I did looked pretty promising. I could also add something that would let you tap in the beat, in case the automated detection doesn’t work right.