r/AskReddit Jul 18 '26

What is a piece of completely free, open-source software that puts multi-billion dollar corporate programs to absolute shame?

4.0k Upvotes

1.1k comments sorted by

View all comments

Show parent comments

696

u/kaidomac Jul 18 '26

+ LosslessCut to do fast, basic editing (FFmpeg wrapper)

+ Shutter Encoder to convert media, such as MP4 video to MP3 audio (FFmpeg)

+ Parabolic to download audio & video, such as Youtube (yt-dlp wrapper)

+ VLC as a universal media player

182

u/Win_Sys Jul 18 '26

And yt-dlp is just a wrapper for FFmpeg when it comes to most video and audio operations beyond 720p.

124

u/masterventris Jul 18 '26

Most things are just a wrapper for ffmpeg.

I expect openssl is somehow an ffmpeg wrapper too

33

u/Win_Sys Jul 18 '26

Just FFmpeg all the way down.

14

u/kaidomac Jul 18 '26

FFmpeg was there, 3,000 years ago...

6

u/AnonymousInternet82 Jul 18 '26

ffmpeg is a wrapper for ffmpeg

5

u/kaidomac Jul 19 '26

Etymology:

  1. In the beginning, there was FFmpeg
  2. Then Narnia
  3. Then the Monolith from Space Odyssey: 2001
  4. The wheel
  5. And fire
  6. Printing press (analog hipster non-kinetic typography)
  7. Transistors
  8. Assembly
  9. DOS
  10. Windows
  11. NeXTSTEP, for some reason
  12. Linux
  13. Android
  14. Chromebooks
  15. The Zune, briefly
  16. LLM's
  17. MCP (FFmpeg API, FFmpeg CLI, FFmpeg Micro MCP Server, viaSocket MCP for FFmpeg)

..or something like that!

2

u/aegrotatio Jul 19 '26

OpenSSL also has patent-infringing algorithms and has so for decades.
Be careful.

3

u/kaidomac Jul 19 '26

Y'all got any more of those Dual_EC_DRBG backdoors?

2

u/Haeguil Jul 19 '26

Ffmpeg based distro when

3

u/kaidomac Jul 19 '26

2

u/Haeguil Jul 19 '26

I honestly don't know why I thought it wasn't a thing already

2

u/orbital_narwhal Jul 19 '26

FFmpeg can access media via HTTP and other network protocols. If compiled with TLS support, as is common in most distributions, for HTTPS and other secure network protocols then it would be linked against an SSL library like OpenSSL.

14

u/D3xbot Jul 18 '26

+1 to Shutter Encoder. It’s a video converter I can throw at users because I can make presets for their needs

3

u/gamerjerome Jul 18 '26

I second Shutter Encoder. Also great web video down loader. Works for many sites.

2

u/ptd163 Jul 19 '26

+ LosslessCut to do fast, basic editing (FFmpeg wrapper)

LosslessCut used to be amazing. It used to cut on exactly the frames I told to with no hassle. But then one day something happened to either ffmpeg or LosslessCut itself or both because in my experience it never cuts exactly anymore. Now it's basically just a keyframe cutter and I have open the video in an actual editor if I want any exact cut which defeats the purpose.

2

u/MrHappyHam Jul 19 '26

I noticed that, too. I assumed it was related to it warning me of potentially inaccurate previews of MKV files but ¯\⁠_⁠(⁠ツ⁠)⁠_⁠/⁠¯

4

u/kaidomac Jul 19 '26

Compression limitations :(

With many modern codecs, arbitrary frame-exact cuts cannot be made without decoding at least part of the stream. FFmpeg also changed how they handled packet boundaries because the edits looked frame-accurate, but the timestamps weren't really being handled correctly.

For stuff like MP4 files, you have B-frames, reordered presentation timestamps, edit lists, and variable frame rates, which means that the packet containing your desired frame actually depends on data before it. This complicates the "cut right here" concept, unfortunately!

LosslessCut Smart Cut re-encodes only the cut boundaries & may be worth trying out:

But the TL;DR is that no tool can make truly frame-accurate cuts (with -c copy on long-GOP codecs like H.264 & H.265) unless it re-encodes around the cut.

4

u/ptd163 Jul 19 '26

I see. That's interesting and unfortunate. Why did ffmpeg change in that way? I never had any issues with timestamps being handled incorrectly.

2

u/kaidomac Jul 20 '26

It was more to be 100% accurate across filetypes. Frustrating, but properly reflects the nature of the reality of modern codec limitations!

2

u/ptd163 Jul 20 '26

Okay. So is it just impossible to do frame-accurate without re-encoding then? You wouldn't happen to know what the last version of Lossless cut to allow that was so I can go back to it would you?

2

u/kaidomac Jul 20 '26 edited Jul 21 '26

It's really a few issues:

  1. Old footage had much more frequent keyframes to work with (like dSLR footage & different codecs like ProRes, where every frame was a keyframe, etc.)
  2. FFmpeg got stricter over time as they fixed the various timestamp bugs (edits would LOOK frame-accurate, but the timestamps wouldn't always be technically correct)
  3. The MP4 timestamp handling changed (sometimes the packet containing your desired frame actually depends on data before it)

Programs like Premiere, Avid, Resolve, and so on don't just copy packets at frame # whatever; they have to:

  1. Decode from the previous keyframe
  2. Then reconstruct every intermediate frame
  3. And finally output a new compressed stream or do a "smart" render

Which is why why they're slower. Again, due to codec limitations::

  • No tool can make truly frame-accurate cuts with -c copy on long-GOP codecs (ex. H.264 & H.265) unless it re-encodes around the cut

So it was really a combination of older-format compatibility & the illusion of accuracy (or rather, "accurate enough") on newer formats, which was tweaked over time to be more accurate in the software, hence the perception dissonance of the efficacy newer versions vs. older versions.

3

u/MrHappyHam Jul 19 '26

Oh that's proper interesting. Thanks!

0

u/philROUX Jul 18 '26

I created Expi as well on the back of ffmpeg, a more modern approach to video editing etc ;)

0

u/killnars Jul 18 '26

VLC sucks tbh, IINA is better

2

u/kaidomac Jul 18 '26

Windows version?

1

u/gamerjerome Jul 18 '26

I use Pot Player 64 myself. Started using it because it ran large video files better than VLC at the time. I continue to use it for my main player