Live data from Hacker News

FFmpeg 4.3

ffmpeg.org

91–100 of 226 posts

Re: FFmpeg 4.3

#91
post #32

In case you didn't know, you can use FFmpeg to convert Audible aax files to DRM-free MP3/AAC/whatever [0] (scroll down for FFmpeg instructions). This is useful if for some reason you want to archive them or play them in an app that doesn't constantly change its UI and bombard you with ads. [0]: https://www.kylepiira.com/2019/05/12/how-to-break-audible-dr...

If you're converting .aax files you should consider using .m4b as the output, since it preserves chapters and remembers your last listened timestamp [0]: > Audiobook and podcast files, which also contain metadata including chapter markers, images, and hyperlinks, can use the extension .m4a, but more commonly use the .m4b extension. An .m4a audio file cannot "bookmark" (remember the last listening spot), whereas .m4b…

So it writes the timestamp to the file metadata? That would cause issues with syncing, backups, running from a read-only filesystem, etc. My audiobook app already keeps track of current timestamp for me.

Re: FFmpeg 4.3

#92
post #86
post #71

Earlier quoted context omitted.

I don't think that's quite accurate. There's no functional difference between a .m4b file and a .m4a file. Both use the MP4 container so adhere to the same specification, so support all the same features (including bookmarks). FFmpeg even uses the same muxer and demuxer for both "formats". The only difference is a non-standard convention used by certain software (like iTunes) to write autiobook-related metadata only…

Well, it's also worth noting that different file extensions can have different associations, so .m4b is more likely to open in an app that the user wants to use for audiobooks, rather than opening in a generic mp4 audio playing app. Even iTunes, I think, would treat files differently between m4r (Ringtone) and m4a (audio) files, so despite there being no difference at all, using the 'correct' extension might be quite…

This is true and I'm not saying you shouldn't use the .m4b extension, I just want to make it clear that that's the only difference.

A ".m4b file" is just an MP4 with a funny file extension.

Re: FFmpeg 4.3

#93

Does anyone have a better documentation source for modern ffmpeg? Usually when I use it I get all sorts of different answers with different 'methods', and the official docs only confuse it more. Also I hope to see pure GPU transcoding sometime. H264 to h265 transcodes in pure GPU space are Uber fast, but so far only done by other software.

If you get seriously confused, ask a question on stackoverflow. There's at least one dev around that answers. If it's a bug, they'll fix it.

Re: FFmpeg 4.3

#94
post #88

I have used ffmpeg. It's a damn good project, and under current development and support. It also appears to be the only game in town. Many commercial offerings are really just veneers over custom ffmpeg implementations. Tuning it is also pretty crazy. Some folks can make entire careers out of just tuning ffmpeg. I think the biggest issue with video software (besides it being difficult and performance-intensive), is t…

It's not the only game in town, the other major open source project for audio/video coding is gstreamer. https://gstreamer.freedesktop.org

Cool! I'll check that out.

Re: FFmpeg 4.3

#95
post #7

Earlier quoted context omitted.

I don't know much, but isn't Audacity a thing?

Audacity is a great GUI for working with audio files. I would think it has a way to export a graph of the wave that it shows you when you open up an audio file. You can install an FFMPEG plugin for Audacity if you need broader support of audio formats (either import or export).

Try https://github.com/bbc/audiowaveform for waveforms

Re: FFmpeg 4.3

#96
post #47

I wanted to create a slideshow a couple weeks ago and came across this article [0] on creating a Ken Burns Effect Slideshow. Very cool and is a great demo of some of ffmpeg's functionality. However, the final command is a little crazy: ffmpeg -i 1.jpg -i 2.jpg -i 3.jpg -filter_complex "color=c=black:r=60:size=1280x800:d=10[black];[0:v]format=pix_fmts=yuva420p,crop=w=2*floor(iw/2):h=2*floor(ih/2),zoompan=z='if(eq(on,1…

Insert a line break at every instance of a ":" (while editing) and it becomes a lot clearer.

Re: FFmpeg 4.3

#97
post #37

As a little side project, I've been trying to automate creation of those "1 second everyday" style videos [1], and used FFmpeg to achieve this. For things like trimming and concatenating videos, one thing that surprised me was that it was slower than using a tool like ScreenFlow. Note, we're talking about hundreds of gigabytes worth of 4K videos. slower = When I say slower, I mean, if I manually performed the same op…

> "1 second everyday" style videos Tangent: you reminded me of one of the coolest auditory experiences I've ever had. Roughly one-and-a-half decades ago I attended a public lecture by Olivier Nijs, a sound design guy from my region[0], about how he built an automated set-up from an old desktop to record one second of 7:00 in the morning every day. Then he manually cut together one whole year. The amazing thing about…

Mm, that's one of those things I read and wish I had thought to try that. :)

Re: FFmpeg 4.3

#98
post #51

Earlier quoted context omitted.

This is where GUI's shine, as opposed to command-line. Perhaps this is slightly off-topic, but my dream is an interface that combines the best of both worlds. Kind of an automated GUI-builder for command-line tools, that analyzes the combinations of options used most, breaks them down into workflows with options (that can be manually named), and you can thus execute one-off commands easily and quickly without having…

This sounds great! Expanding on this a little: Seems like you'd need a universal CLI tool usage traverser and parser to figure out what's possible. Likely this would produce a decision tree of sorts with different modes and options excluding or including new options. We'd need a way to show all this, maybe nested tabs for modes and check boxes and other inputs at each appropriate level. Layer on this a way to optimiz…

In the emacs world, there are textual interfaces like magit's [0] or dired's [1] interface, that tick many, perhaps most, boxes that you mention. Magit is basically that interface, but tailored to `git`, that also constructs the actual git command, should you want to see it. Dired is like that for ls, rm, cp, mv and other file utils. So, as a general design, they _may_ be of useful interest.

A tool to automatically parse `man` pages or help prompts from tools would be a dream come true, basically.

Apart from the possible commands, it may be useful for the GUI to also show some kind of state, for example filesize (akin to invoking `ls` before `ffmpeg`, as you would normally do on the CLI).

Done with the right abstractions, command combinations should come almost for free.

[0] https://magit.vc/ [1] https://en.wikipedia.org/wiki/Dired

Re: FFmpeg 4.3

#99

Earlier quoted context omitted.

SoX is amazing. http://sox.sourceforge.net/ It’s not perfect but it’s way easier to use for audio stuff than FFmpeg is. I have a bunch of scripts I reuse that do basic stuff like high-pass, normalize, automatically trim audio files, add fade-in or fade-out, downmix to mono, and then resample / dither to the right depth and size. It also will spit out spectrograms. Generally when I need to record a ton of sound clips,…

I hadn't even thought about SOX 'till your comment in about 10 years. And looking at the page, there hasn't been a new release since 2015. From what I recall, it only worked on wav files back in the day, but now it supports OGG. But a lot has changed in even 5 years - does it even support MP3, as patents expired since then?

It's not important that it doesn't support mp3. That's not it's purpose - it doesn't need to. The unix philosophy. Feel free to pipeline it on either side with tools that do support MP3.

Re: FFmpeg 4.3

#100

Earlier quoted context omitted.

> "1 second everyday" style videos Tangent: you reminded me of one of the coolest auditory experiences I've ever had. Roughly one-and-a-half decades ago I attended a public lecture by Olivier Nijs, a sound design guy from my region[0], about how he built an automated set-up from an old desktop to record one second of 7:00 in the morning every day. Then he manually cut together one whole year. The amazing thing about…

Not being able to read Dutch, do you happen to have a direct link to the lecture or the recording he made?

i'm thinking it's audio only. Maybe it's hiding here?

https://soundcloud.com/oliviernijs

Post reply on HN