19 comments

[ 4.4 ms ] story [ 39.9 ms ] thread
A rough estimate of the disk space required for the model + all other dependencies would be helpful in assessing this tool's utility. It looks like the recommended model alone is 2.4Gb?
I can't help but find it kinda humorous that if the 119 lines of the system prompt wasn't there, it would just be a generic script that takes your input, sends it to ollama and then system("...") the response after some light processing.

https://github.com/scottvr/wtffmpeg/blob/main/wtffmpeg.py#L9...

>You are an expert at writing commands for the `ffmpeg` multimedia framework.

>Respond ONLY with the `ffmpeg` command. Do not add any explanations, introductory text, or markdown formatting.

Fragility of it aside, and the fact that more is written to try and force it to do less, this is basically the gist of the whole thing.

It would be helpful if this printed out the relevant sections from the ’man’ page of the command line options it suggests using, or told the user this option is undocumented in the man page.

This way user could directly review if it is suggesting something they want to go on with.

All cli programs (or shell itself) should soon have:

- argument syntax autocorrect

- natural language arguments instead of the actual ones should be accepted

- whenever there's an error executing, instead of just erroring out, the error should go through an LLM and output a proper explanation plus suggested fix

Doing command by command seems the wrong way about it though.

This has to be at least the fifth LLMpeg I've seen posted to hacker news in the past few months.

This whole repo is a single 300 LoC Python file over half of which is the system prompt and comments. It's not even a fine-tuned model or something, it's literally just a wrapper around llama-cpp with a very basic prompt tacked on.

I'm sure it's potentially useful and maybe even works, but I'm really sick of seeing these extremely low-effort projects posted and upvoted over and over.

You can just use ChatGPT, etc already to generate the ffmpeg code. I just did this a few nights ago. There's no wrapper or any need to tune anything as far as I can tell.
LLMs are pretty good at ffmpeg already. No need to put ridiculous amount of examples.
> wtff "convert my_video.avi to mp4 with no sound"

English is not my mother tongue but I think the model should correct the user that it should be: "convert my_video.avi to mp4 without sound"

If you don't want learn ffmpeg syntax, is better use a visual gui how handbrake that a frontend for a fatty LLM.
Why is it so hard to read the manual or even a cheatsheet? Many people use ffmpeg, it's not like there's a dearth of information out there...
OP here.. I guess nobody got the joke. The last paragraph of the readme flat out says it was intended as amusing performance art.. Ludicrous is as ludicrous does.
> --- Generated ffmpeg Command --- > ffmpeg -i my_video.avi -an -c:v libx264 my_video.mp4

The example itself shows a naive conversion, ending up transcoding to default h.264 params. This should have been -c:v copy for copying the input packets, as-is.

fwiw I've been dealing with a lot of ffmpeg lately and it's like the most obtuse API I've ever used, and I'm now using Warp for it, and it works amazingly every time
You aren't doing anything related to ffmpeg at all. The only thing "related" to ffmpeg is the system prompt, which anyone could just paste into their chat window. Please stop posting low effort content like this.
Question: what makes creating a GUI for ffmpeg so difficult that none of sufficiently high quality seems to have gained relevance so far?

Also: I understand the privacy concerns, but basically any LLM that's large enough can act as a conversational UI to ffmpeg nowadays. Why would I want to add a specific one to do that?

Superb. I always refer GPT to learn about what I need to do with ffmpeg. Glad to see someone made an AI wrapper out of it.

PS: Yeah, ffmpeg is not an easy tool to use.