alichtman / gopro-chaptered-video-assembler

GoPro breaks long videos into multiple files. This tool stitches them back together.
GNU General Public License v3.0
4 stars 1 forks source link

Consider using mp4-merge instead of ffmpeg #11

Closed AdrianEddy closed 7 months ago

AdrianEddy commented 1 year ago

Just letting you know that mp4-merge exists and is much more portable and robust than ffmpeg (retains all possible tracks and metadata) and is available as a library

alichtman commented 1 year ago

Thanks. Using this library would allow the deletion of all of ffmpeg.rs, and would simplify the "merge videos" code a lot. I'd accept a PR making this change.

draco1544 commented 7 months ago

Any news on that ?

draco1544 commented 7 months ago

How i can use this version, because the latest release do not contain this change

alichtman commented 7 months ago

I'll make a new release when I get around to it. Or you can build and install it from source (something like $ cargo install --path ., but don't quote me).

Why does this feature interest you so much? It should be roughly as efficient and performant as the ffmpeg solution.

It cleans up a bunch of complexity in the code, which is nice for me, but for you as an end-user, I don't really get the benefit

AdrianEddy commented 7 months ago

The benefit is that the gyro data is preserved, which is quite important for certain users

alichtman commented 7 months ago

What do you do with the gyro data on a GoPro? I was under the impression that you could, for example, set horizon lock in camera but not in post.

AdrianEddy commented 7 months ago

You can stabilize and set horizon lock in post, even if you're shooting with hypersmooth enabled in camera. The metadata also includes a lot of other things like GPS, temperature, shutter speed etc. Most common usage is to stabilize (Reelsteady, Gyroflow), and second most common is to add GPS or speed overlays (telemetry-overlay).

ffmpeg discards the entire metadata, while mp4-merge preserves everything as is

alichtman commented 7 months ago

Thanks for the explanation. I'll cut a new release when I have a moment :)

draco1544 commented 7 months ago

Thanks for the explanation. I'll cut a new release when I have a moment :)

Any news ? Or what are the exact steps for me to build it ?

alichtman commented 7 months ago

v0.5.2 is available on crates.io: https://crates.io/crates/gopro-chaptered-video-assembler

Please note the instructions for building the repo yourself in the README: https://github.com/alichtman/gopro-chaptered-video-assembler/tree/v0.5.2?tab=readme-ov-file#building-and-installing-source