Another Month in Belize

It took me a while to finish, but thanks to building chapters in small chunks and combining them together using ffmpeg, I finally finished.

5 Likes

Beautiful and quiet place.
Almost seems like you have the beaches all for yourself.
Thanks for sharing Ben :+1:

2 Likes

Thank you for watching! That’s why I keep coming back.

For ffmpeg, I use the concatenate function using this entry:
ffmpeg -f concat -i input.txt -c copy FINAL.mp4

then I have another file called input.txt. Inside that file I have something like below:
file ‘01.mp4’
file ‘02.mp4’

This tells ffmpeg to concatenate files 01.mp4 & 02.mp4. It seems to not like spaces in the filenames so no spaces.

Cheers!

2 Likes

Love it, like all your videos, Ben! Brilliant editing and production, as ever. Also thanks for the tip re: ffmpeg. Great! :grinning:

2 Likes

I tested FFmpeg for the first time yesterday. It’s amazingly fast to combine clips exported from different chapters of a big project.

I’m thinking about creating a short tutorial about this. Because for people like me who never used command-line software, it’s not obvious to install, configure and use FFmpeg for the first time.

3 Likes

@musicalbox - that would be great. I used it recently just as an experiment to automatically cut out static frames from a video, and it was actually fairly easy to do - once you know how. A tutorial would be really useful.

2 Likes

Thank you! Every video is a learning opportunity just like this one. I find myself using ffmpeg more and more as a complement to Shotcut. It just helps streamline the workflow better!

That would be amazing! Let me know if you need help

1 Like

@MusicalBox @jonray

Here are some helpful ffmpeg commands that complement my Shotcut workflow.

Concatenate - Combines multiple videos at full resolution
ffmpeg -f concat -i input.txt -c copy FINAL.mp4

Cut - Cut a video without needing to re-open Shotcut and re-exporting
ffmpeg -i File.mp4 -ss 00:00:00 -t 04:38:00 -async 1 FINAL.mp4

Change Frame Rate
ffmpeg -i Awesome30.mp4 -filter:v fps=24 output24.mp4

Convert MP4 to MKV
ffmpeg -i file.mp4 -vcodec copy -acodec copy file.mkv

Flip Horizontally
ffmpeg -i file.mp4 -vf hflip file-flipped.mp4

Interpolate
ffmpeg -i source.mp4 -filter:v tblend -r 120 output.mp4

Resize
ffmpeg -i window2-a.mp4 -vf scale=2560:1440 window-a.mp4

OR

ffmpeg -i source.MP4 -filter:v scale=2560:-1 -c:a copy final.MP4

Rotate Video
ffmpeg -vfilters “rotate=180” -i source.mp4 final.mp4

Shrink Filesize
ffmpeg -i source.mp4 -vcodec libx265 -crf 28 output.mp4

Split Video
ffmpeg -i source.mp4 -c copy -map 0 -segment_time 00:20:00 -f segment output%03d.mp4

Cheers!

2 Likes

Hello,

I liked it, you’re a lover of good food, so you’ll have to come to France to discover our cuisine served on real plates :wink:

My question is this: shotcut uses the open source ffmpeg library. Why didn’t you use shotcut to concatenate the different videos, rather than using the command line I know, I was on linux from 1998 to 2005 ;)?

Thank you,

I would love that! Maybe my next trip.

As for concatenate. I am aware that Shotcut leverages ffmpeg, but if I was to combine them on Shotcut, it would’ve taken more than an hour, but directly on ffmpeg it only took a few minutes.

Shotcut uses the FFmpeg API for export, not the FFmpeg command line. Therefore, Shotcut does not offer native concatenation support. Exporting from Shotcut is always a reencoding of the source media. Meanwhile, FFmpeg command-line concatenation is not reencoded.

There was a longer comparison made in this thread. Start here and read down five or so posts for more details.

1 Like

I knew @Austin was going to have all the details…

1 Like

Thanks for the insight Austin, under Linux or MacOS, I think cat would do the trick …

Unfortunately, it would not. cat would be very similar to type or copy a+b+c target.mp4 on Windows.

However, each chapter video is a self-contained MP4 file. If I cat single.mp4 single.mp4 > double.mp4 and try to play it, FFmpeg-based media players like mpv and ffplay will only play the first single.mp4 video and then stop. ffprobe will show a “duplicated MOOV atom” warning and skip (discard) everything from the second MP4 file onwards. A valid MP4 file can have only one MOOV atom because it is the header which contains the video duration and pointers to stream data locations, among other things. But each chapter video has its own independent MOOV atom, which is why the chapter videos can’t be stitched together without additional processing to add durations together and offset the stream data locations. However, this does make an interesting steganography technique for hiding data after the first video file.

Meanwhile, FFmpeg concat is a specialized operator that only works on containers with purpose-built muxer support for it. concat knows how to write the final file such that there is only a single container header which spans all chapter streams. There is math involved so that the individual chapter headers can be discarded.

1 Like

I have nothing more to say :wink: thank you

I like the quick camera pan’s as scene transitions that you have in the opening flight / arrival. Cool idea that I may have to steal…

1 Like

The camera pan is a great technique to create an in-camera transition without needing to edit.

Steal anything you want. I use techniques that I have learned and implement it on that channel. There are actually some techniques on those videos that I have yet to create a tutorial yet. Let me know if you have questions on anything else I have used.

1 Like