Live data from Hacker News

Ffmprovisr – Making FFmpeg Easier

amiaopensource.github.io

31–40 of 106 posts

Re: Ffmprovisr – Making FFmpeg Easier

#32
post #26

Probably the biggest barrier to ffmpeg adoption is all the offline 'freemium' and web frontends, the host sites for which have been SEO'd for phrases people commonly put into Google like "avi to mp4", "mp3 to wav", etc.. It took me more time than I wish it did to become open to using CLI apps, the Windows world had taught me to expect a GUI for everything.

I thought most of those file conversion sites were just ffmpeg on top of nginx or something?

Re: Ffmprovisr – Making FFmpeg Easier

#33
post #7

See also: * https://ffmpeg.guide/ — create complex FFmpeg filtergraphs quickly and correctly * https://www.hadet.dev/ffmpeg-cheatsheet/ — clipping, adding fade in/out, scaling, concat, etc

The second link's clipping command is not ideal in my experience. For some god known reason, ffmpeg behaves differently depending on whether you put the -ss and -t/-to flags before or after the -i flag. And for me, before worked better. It's also an issue in the original post.

Effectively, placing ss before the input filename seeks the file (the container?) without decoding it. Placing it after will decode the streams while skipping to the point you specify.

Seeking the container is usually much faster than decoding and then throwing away what you don't need, but it has fatal flaw: most videos use p-frames and thus require you to decode the frames before it.

So, say you want to skip to 60 seconds in. The solution is to do "-ss 50 -i input.mkv -ss 10", which is fast and should get the keyframes you need.

Re: Ffmprovisr – Making FFmpeg Easier

#34

A bit off topic, IMO ffmpeg is one of the best software ever written. Fabian Fabrice (ff) is one talented engineer and people such as him are a gift to the FOSS community. I used to work in a ~2 bil unicorn in which a big part of the products we worked on relied on ffmpeg.

>Fabian Fabrice

*Fabrice Bellard. Also creator of QEMU, TCC, QuickJS, and others.

Re: Ffmprovisr – Making FFmpeg Easier

#35

Very useful! I started using chatgpt to come up with ffmpeg commands, just so much faster and easier to find what I need. I made a small tool so I can do it right in the cli: https://github.com/alexkrkn/help-cli and made a video about it: https://www.youtube.com/watch?v=pOda6TDBqcY

[deleted]

Re: Ffmprovisr – Making FFmpeg Easier

#36
post #26

Probably the biggest barrier to ffmpeg adoption is all the offline 'freemium' and web frontends, the host sites for which have been SEO'd for phrases people commonly put into Google like "avi to mp4", "mp3 to wav", etc.. It took me more time than I wish it did to become open to using CLI apps, the Windows world had taught me to expect a GUI for everything.

I thought most of those file conversion sites were just ffmpeg on top of nginx or something?

They almost certainly are, cli is not always the best interface but ffmpeg covers such a wide swath of video utilities that I’m not sure how you could include all of its functionality in a GUI.

Re: Ffmprovisr – Making FFmpeg Easier

#37
People like to say that ffmpeg is complicated but when you make it into a nice gui it doesn't get any easier -- it is video compression itself that is complicated. No software could make it easier without making the decisions for you, like handbrake or some other click-through interface.

I'm not certain, but I highly suspect that if I sat down and learned about digital video encoding and compression on a granular enough level then figuring out how to do things in ffmpeg would be rather intuitive. Does anyone have experience doing this?

Re: Ffmprovisr – Making FFmpeg Easier

#39
post #27

This guide recommends "yadif" as a deinterlacing filter. I find "w3fdif" looks better. Like yadif, it does not do motion tracking, so it's reasonably fast and avoids the distracting artifacts that motion tracking sometimes causes (I'd rather have consistently mediocre results than sometimes great and sometimes bad), but it considers three fields at a time instead of yadif's two, which lets it hide the interlacing art…

There is an extension of that: https://github.com/HomeOfVapourSynthEvolution/VapourSynth-Bw...

Though if you are reencoding, you mind as well go whole hog and use QTGMC.

Re: Ffmprovisr – Making FFmpeg Easier

#40
Since ffmpeg CLI still makes me pull my hair out, even with excellent guides, I am going to plug vapoursynth:

https://www.vapoursynth.com/

Its optimized Pythonic video filtering... But also so much more: https://vsdb.top/

And Staxrip, which makes such good use of ffmpeg, vapoursynth, and dozens of other encoders and tools that I reboot from linux to Windows just to use it: https://github.com/staxrip/staxrip

Post reply on HN