vt-enc: FFmpeg VideoToolbox frontend in Bash

https://github.com/gianni-rosato/vt-enc

vt-enc is a bash script that simplifies the process of encoding videos with FFmpeg using Apple's VideoToolbox framework on macOS. It provides an easy-to-use command-line interface for encoding videos with various options, including codec selection, quality settings, and scaling.

10 points · 6 comments · view on lemmy.world

6 Comments

EarMaster@lemmy.world · 2 pts · 2y (5 replies)

An alternative: https://alfg.dev/ffmpeg-commander/

Provides a web interface to generate ffmpeg commands (works on every platform).

Out of interest: What does VideoToolbox do in that context? I found nothing in the readme that would require anything else than just ffmpeg. Or is it just the compiling of a custom ffmpeg build that is VT specific?

gianni@lemmy.ml · 1 pts · 2y (4 replies)

VideoToolbox is the encoder that FFmpeg links to.

EarMaster@lemmy.world · 1 pts · 2y (3 replies)

So when vt-enc only creates ffmpeg commands why is VT a dependency for the whole prpject?

gianni@lemmy.ml · 2 pts · 2y (2 replies)

vt-enc calls FFmpeg which calls the VideoToolbox encoding framework. Without VT, ffmpeg commands will fail

EarMaster@lemmy.world · 1 pts · 2y (1 reply)

But ffmpeg works fine on other platforms without VideoToolbox. So why do I need VT for vt-enc? Wouldn't it work just fine on other platforms as long as ffmpeg is available?

gianni@lemmy.ml · 0 pts · 2y

You need VideoToolbox for this particular tool because it calls the VideoToolbox library from within FFmpeg in order to encode the video.

"Why do I need x264 to encode H.264 in FFmpeg?" is essentially what you're asking. FFmpeg needs VideoToolbox support to work with my tool.

If you're asking why I chose to use VideoToolbox in the first place, it was because I want this to be a macOS-specific tool with very fast encoding speeds at decent fidelity per bit. Hardware accelerated video encoding is one way to make this happen.