I would like to have a simple free video editor that can cut and append files together without re-encoding. It's doable with avidemux, but it is just pain to manage.
I wrote one. It's actually a script driven by a video player that prints timestamps on standard out for specific keystrokes, along with a bunch of key combos for jumping back and forth, frame by frame if required. Ffmpeg is invoked at the end to cut the bits out and string them together, using 'copy' codecs.
Works well for the mp4 streams from my helmet camera, reliable key frames etc. For video that's been more highly compressed you'll need to compromise on the cut points if you want to avoid reencoding. And the cuts are abrupt, no fades or transitions.
My use case is to cut segments from one video file and append the segments together. This way I can trim ads or parts I don't want.
The aged virtualdub does this as long as the container is avi (the codec could be avc/h.264 etc). I used avidemux to convert mp4 to avi without reencoding (just change the container format), then use virtualdub to trim it.
Actually I just write time stamps in a text file then use a groovy script to generate a script can be read by virtualdub, run virtualdub with the script to do the trimming.
There's an app called Machete that can do this, but it has obvious constraints - can only cut/paste at keyframe boundaries, video/audio streams must be compatible. In practice it's useful for editing one source video, but not for combining separate vids from different sources.
I think the usual assumption is that both files have the same codec. In that case you can sometimes actually append the streams, or, with things like cuts, only re-encode a few frames until things line up again.