> That seems like a good default, with the ability to choose an arbitrary image, or a video that will be automatically cropped to the duration of the "gap", or a segment of a video chosen by start-end timestamps.
Got it. Definitely doable ;)
> Not talking about containers. When trying to concatenate videos with different codecs, dimensions, frame rates, bit rates, etc. ffmpeg will issue warnings and output a video. Playing that video messes the players up.
If I understand correctly, that seems like a bug in ffmpeg.
Agreed! Haven't used Quicktime Pro, but I will ask around.
> Basically editing the video as easy as editing a text file with fast,
Yes, basically that's my focus from the get go.
> consistent, frame accurate selection, instant copy and pasting.
Agreed. Right now, you can even move with the arrows between frames :P
About copy-pasting - I will need to improve on this one. I do allow you to cut a segment very easily. I don't allow pasting yet (you can achieve it easily by splitting the video into segments, then moving the segments around)
> Also, sensible hotkeys.
Agreed. I have hotkeys as well, I just need to fully document them.
1. I already have that- and it's easy as hell to use ;)
2. "The above but keeping the audio and removing video in those segments, because someone is talking." What do you want to replace that with? (perhaps a still of the last shot?)
3. That is possible already in my app
4. For now, I've only focused mainly on .mov and .mp4, but I can add definitely support more.
Got it, so my initial understanding (I hope :D) was correct.
Having said that, you don't want to do this process live, right? (if so, what you want will definitely be doable, withing 1.5 months or so)
LATER EDIT: On another note, I'm curious how big of a use-case is this, 'cause if it's big enough, I could actually make a subset of my app which would do just this (allow you to cut which camera is the "active" one) - and I would give this for free.
Right. I will quote from my other answer: "In the long term, I believe I will have this. Due to the complexity of video editing (I mean, implementation wise), I chose to go with a single platform for now (Windows 10). The more I think about it, the more I think I should have gone with Mac, but that's another story. All in all, I do want to go multi-platform, once I've gotten all the right features ready."
This guy - https://www.youtube.com/watch?v=eMMgvkLj8es says pretty much "Start before you're ready" - once you start doing videos, even if they don't look good at first, you just need to keep at it. It's the only way to grow.
In time, you'll figure everything out ;)
Cool! That sounds like a really cool stuff to have.
Do you also want to show several cuts at once, at the same time (with some mask on each)?
I have the foundation for this, but to fully implement it, it will take a bit of time (maybe 1.5-2 months time frame)
Assuming that is your workflow, I believe I should be able to cut that 4-5 times. Namely, I would cut down on your first time probably 3 fold, by making it waaay faster - I already have instant preview everywhere as you hover something with the mouse (I'm working on making this even faster).
Cutting down (trimming) videos is simply insanely easy and fast, so I assume I would cut that process in half also.
There might be some bugs to iron out, but if you'd like to try it out (the app), we can go from there.
In the long term, I believe I will have this. Due to the complexity of video editing (I mean, implementation wise), I chose to go with a single platform for now (Windows 10). The more I think about it, the more I think I should have gone with Mac, but that's another story. All in all, I do want to go multi-platform, once I've gotten all the right features ready.
1. I already have this - in my app, it's called "Static Video" - you select the "static video" tool, click where you want do set it, and drag for as long as you want.
2. I have this as well - I do need to test it a bit more, but it's there (as long as the audio + video are synchronized, which is the default) -> this works
3. This - I've added to my TODO list. About the audio - that makes sense too (also added to my TODO list).
A bit more details on 3. - I want to implement also something called a "lock" - basically, when you click it, you tell my app - I'm not gonna modify this anymore, so you can do whatever mojo you want, to optimize as much as possible. Will (in theory :D) work wonders on time remapping (which is what I'm working on right now).
Thanks for letting me know!
It's clearly my mistake for linking to a tutorial.
This is a tutorial on my app - it was not meant to be a demo. Long story short, I will soon begin a channel where I will showcase my app, and that will contain exactly what you say: "The what", and then I'll describe "the how".
The only issue I have with it is that it's expensive as hell.
But for educational purposes, it's really really amazing. I've used it in the past to plot some functions and such - it's crazy what you can do with it.
You know premature optimization is the root of all evil ;)
Personally, I do optimization every now and then, when I see bottlenecks and I see that it hurts the UI. Then you run some profiling tools and optimize those hot paths.
Optimizing from the get go will probably end up with you optimizing too much and the benefits will likely be invisible (and worst of all, optimizing will surely take quite a bit of extra time, and you can also end up with buggier code).
Having said that, I use dotTrace from JetBraints. It's for .net
If you expect your project will be complex, I would advise against C/C++, since that will complicate stuff even further (note: I've actually done 13 years of C++, so I do know what I'm talking about). I would recommend C#/F# - you'd be waaay more productive there.