~/talk

Modeling the conceptual structure of FFmpeg in JavaScript

Talkat Demuxed 2019 · 2019-10-23..10-24· [javascript]
links:none on file
slides:none on file

Claims a concrete JS library called pizzonia that models FFmpeg’s CLI as five objects (command, input, output, filter chain, filter node) and uses the same FFmpeg option names so documentation maps directly. Demonstrates building real pipelines with explicit IO mappings and command/filter graph construction, shows two execution modes (execute/spawn), evented progress and error reporting, and reports it is in active use in encoding automation (v1, open source) with working examples and produced runnable ffmpeg invocations.

AI-written summary · about

  1. 0:00Intro
  2. 0:58Why? We do lots of things with ffmpeg
  3. 1:31Existing ffmpeg libraries?
  4. 2:57Libraries for ffmpeg exist - do they help?
  5. 4:21What do we want out of our code?
  6. 6:25What might our code look like for this?
  7. 6:56What makes an ffmpeg command? (the general case)
  8. 9:03We built a library for this!
  9. 9:23Fessonia has classes for each component of the command.
  10. 10:38Let's construct this ffmpeg command bit by bit...
  11. 12:10Next, we create inputs.
  12. 14:09Finally, we'll create the command.
  13. 15:12We can take a look at what we've created.
  14. 17:17Here's that example using fluent-ffmpeg
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.