Interview with FFMPEG enthusiast
Vložit
- čas přidán 15. 10. 2022
- Merch: posix.store
You can reuse this video freely. Don't contact to ask for permission. It's free to use for your demo reel, music video, tax credit application etc. Reuse allowed free of credit.
FFMPEG Interview with an FFMPEG enthusiast in 2022 with Fred Murpheg - aired on © 2022 The FFMPEG.
converting videos easily
computer graphics humor
video conversion humor
adobe humor
adobe media encoder slow
after effects not rendering multithreaded
yuv color codec
deinterlace artefacts
yadif deinterlace
eia 608
Programmer humor
Computer Science Slender
Programming memes
FFMPEG 2022
linux enthusiast
luke smith
vim
#programming
#humor
#ffmpeg
An FFmpeg GUI - ffmpeg.guide has been released by zack overflow a few days ago. It is now possible to petition to make it free and open-source software bit.ly/3T3Cjpa
why the hell would he?
what is the keyboard and touchpad for it?
I don't think trying to peer pressure someone into making their software FOSS is a good way to go about when they already have a free version available
..kind of a dick move, actually
@@NewHandleWhoDeez I think that everyone has the right to go FOSS or not, but also I don't think it's worded as pressuring. Seems more like a "please consider this if it's possible"
While I think the first reply is pretty rude, what is the actual reason for this? Other than free things are nice? Especially since it has a free version (though I don't know how crucial the quantity of nodes is in the software)?
You know that FFMPEG supports h265 hardware accelerated encoding with Radeon cards on Linux? I mean I couldn't get it to work but FFMPEG supports it.
lol
OBS makes it work for you :^)
You might need the proprietary AMD Linux drivers for that to work.
@@onegabriel5823 Ah yes but you also need to wait until the proprietary driver supports the graphics card else just build the drivers from source
@@onegabriel5823 I obviously tried that maaaaaany times, both for ffmpeg transcoding and davinci resolve. I managed to run ffmpeg with hardware acceleration once and it produced unplayable garbage iirc.
The latter worked for me 2 times, but gaming on that proprietary driver sucked. I tried installing the proprietary one on top of the oss one and switching to it when necessary. People say it's possible but ofc it didn't work for me.
I gave up. If I need to transcode or edit a video or run some legacy business program from like 2006 once or twice a year I always have a spare ssd with windows on it.
“Create a non playable file? No problem.” So accurate.
So I'm not the only one who creates non-openable files just because it's a prerequisite to guru status.
Better than files that are playable but with unobvious artifacts.
"Here are three ways to do it in FFMPEG. One of them should work."
You have to change the pix_fmt to yuv420p or it won't play in VLC
In my project, a lot of the mp4's generated using FFMPEG don't open in any media player, but they work fine in Shotcut (a video editor).
the amount of artifacts in this video is very accurate
its only artifacting because he used the wrong codec
@@Ryan-xq3kl And the wrong graphic card, and operating system, and drivers.
This video has more artifacts than the Mirrodin block of Magic: the Gathering
@@gg-gn3re Guys we found it, a real FFMPEG enthusiast in the wild!
@@WolfireGaming there are no sites with video on the internet that aren't using it :^)
I don't think people are equipped with the proper codec to appreciate the subtle genius of the editing here.
and did you know he did the editing in ffmpeg?
@@ragnarmarnikulasson3626 "I edited a whole documentary in FFMPEG."
you only have to run ffmpeg from the command line after hours of study to fully appreciate this video.
@@pauldwalker so true
"All of this? Just one command - Oh there was an issue in the..."
I died. Too true.
Damn. Sounds like you need to write that thing into a shell file exclusively so you can use vim (or the mouse, blasphemy) to navigate around the file and edit mistakes.
5:01 - "At the end of the day you will probably just need one command, over and over, and that one you will get from stack overflow without understanding ffmpeg." Summed up my initial experience with 90% of terminal apps.
I have a hundred “example” commands saved in a text file. If I ever lose it I will blow my brains out.
@@marshallsweatherhiking1820 Me too but i have mastered most of them already as well as using the help command, that one is miles better as you cannot see all of an encoder/decoder features otherwise, docs lack a lot of important information and specially such info.
@@marshallsweatherhiking1820 I do the same but with the copy paste history tool.
I can't use FFMpeg, I use VLC and let it deal with FFMpeg for me
@@Ebani I always feel like even help command only tells you everything except the thing you actually want to do. There’s usually a way, but its somewhere google finds on stack overflow or reddit.
Frantically scrolling through miles of docs while muttering "okaaay okaaay okaaay" in hopes of willing yourself to understand without actually comprehending a single word.
this is getting too relatable ... my head hurts now
"2022, we have flying cars, we have gifs, and we still don't have transparency"
As someone who does motion graphics, I feel this so hard. Either practically uncompressed mov, or webm with mediocre support everywhere.
and mediocre playback performance where this would actually be super useful, like OBS Studio
(maybe they've fixed webm stinger playback performance by now idk)
who is using mov? i don't think i ever seen a filename like that.
webm a good support now babe
@@marceelino apple zombies
Same problem here.
Tried Apple ProRes 4444 yet?
three ways to do it, one of them should work
1. Look at it angrily
2. Slap it
3. power off and on
This is still for ffmpeg right...
"I know the website looks like a scam" No kidding. :D
I use wikipedia links, so no scam possible. /big brain
7zip de aynı sorundan muzdarip :)
I had to download a mmpeg.exe file from an obscure website just 2 days ago in addition to Python libraries... still didn't work properly, just gets stuck in some loop wihtout any debugging info.
Oha evrim agaci :o
Ho-hocam?
The distortion at 0:19 is perfect.
Damn, I am 3d rendering in background and thought I need more power to my pc and the distortion is my pcs fault.
Actually curious. How is this kind of distortion called?
not sure what the name is, but you basically delete the keyframe on a scene change and the following incremental frame changes are applied on top of the old scene
there is this thing called glitch art where they try to replicate encoding glitches for artistic effect
@@BlackStoneDiamond Look into "datamoshing"
As an ffmpeg enthusiast, I can confirm that this is accurate. There are just two things I would add:
>Some joke about how 90% of the documentation is only useful if you already know how to use the feature being documented
>This cool new feature can only be enabled at compile time, I know what I'm doing today! Wait, never mind, I can't get the correct library versions I need compile this on Debian. :(
And other 10% is just not in documentation, only inside help of ffmpeg itself or in source code
@@hanskrieger4299 Just had to wget a .deb file from the unstable repository yesterday, because the version shipped with Bookworm had a bug that broke an ffmpeg-based program :(
It's too complex and quirky for the documentation to be of help when you are casually using it. What's most needed are concrete examples, with remarks on limitations etc.
I'm grateful to ffmpeg for the simple things I can do with it, that wouldn't be possible with commercial tools.
Honestly chatgpt is great at explaining ffmpeg features and how to use it.
Getting it to work is like 5 minutes. Getting everything ready to get it to work is more like a week
How are you so accurate on every topic
I'm genuinely wondering this, too...
A CS-related degree, years of being an IT guy, Linux enthusiast and a programmer that has too much time on their hands, that would be my guess, just like many of us watching presumably xD
It's really not that hard, you just have to have colleagues in IT, or be in active tech chat rooms, and one dude will provide all the lines needed for the script within less than a week, an hour if you engage with them.
The same way you can tell he is accurate
@@mx338 Where can I find these so called tech chat rooms. I may be able to learn a lot there
how to use FFmpeg (2022 guide):
1- google what do you want to do
2- copy paste (don't bother understanding the strange numbers)
3- Done (50% playable output)
I've been using Unix/Linux CLI for 25+ years, and memorised thousands of commands and their options. ffmpeg was the first one where I had to make a cheat sheet to write down for future reference all the sets of options I need to do common tasks, because I can't possibly remember them. And yes, most of them probably came from StackOverflow.
The openssl command is the same way for me.
Had to make notes about mplayer (mplayerhq HU) but ffmpeg is ok - really :) - you dont even need to know the difference between fast fourier transform and discrete fourier one :) - in case you are not living in a complex world :)
Could you publish cheatsheet anywhere if haven't done before?
With mencoder my main skill was jumping to the man page examples fast, and I had kinda memorized where in the list were the useful ones. :-)
I took an alternative approach: Create a bash script with the options I commonly use (and thus with my own options as the arguments).
3:48 "I know the website looks like a scam but it's really not." Gets me every time.
I cant wait to watch 'Senior Engineer at NASA, Rust Expert'
trait bound not satisfied?
I love Rust 'cos it's fast and stable
after boxing my Warp filters I got compile time down to 3 minutes
try clone, clone, into, try into, into iter
iterable, vector of type string
the other string
string into string
string FROM string, expect
macro expansion
crates and modules facilitate code isolation and reuse
these Tokio runtime versions are not compatible
there's a crate for that but its not production ready
yeah I use lifetimes
no I don't understand them
@@OliverUnderTheMoon
- oh no i typed vector instead of vec, again
- .clone().clone() just to be safe that should to it
- TYPE SAFETY
- BORROW CHECKER
- CHECK BORROWS
- borrows are like references but not rly but they are, and you can either mutate or no
- unless you use unsafe
- you shouldnt use unsafe
- but everybody still does
I once went through a terrible time in my life where I did not leave the house or talk to humans for almost a year (before corona). I spent most time recompiling ffmpeg and reading ffmpeg -h full
lol nice
Whoa - Stalwart!
Your eyes afterwards? 🌀 🌀
I went through a terrible time in my life too where I was totally isolated for months on end... Yes it was during corona and I still haven't recovered.
But sure, it "saved lives" because they don't care if lots of people die as long as they don't die with covid.
Still better than becoming full time Discord server moderator.
I love the encoding errors. Perfect.
I was watching on the android app, and it have me a whole lot extra dropped frames. I knew some of it was in the video, but to make sure I skipped back a few times. Yup. Dropped frames at different times.
My guess is the app is going to crash within the hour.
Window manager enthusiast next, please
The tiling ones, no less?
Oh I just need to recompile dwm
ah yes. Window manager. Good product
@@unfa00xmonad, obviously, because Haskell
"What do you mean the video is not playing in Quicktime" As someone who has had to write code to encapsulate video professionally I FUCKING FELT THAT
So accurate🤣 I've been using the same command for 5 years to crop and resize videos... Just keep copying and pasting and changing the filename... Pretty sure it's mostly from SO too🤣🤣
Same here. I use the same command repeatedly to convert m4a files to mp3
broo make it a drop in, so you can drag the file onto your script and it runs from there
@@quadstrike Nah... Probably wouldn't work anymore and it'd be back to stack overflow... 😋
@@thefekete I've done drop in for mkv to mp4, it's just a matter of changing the code for referencing the source file to be compatible with dropping in
I usually just use it for lowering the resolution and reducing the framerate to fit in Discord's file size limit!
There are three ways of doing it... and one of them should work."
"Did you know FFMPEG supports X?
I haven't found the command yet, but it does support it."
Never have I heard something so relatable.
This is too real… I worked a two month project using ffmpeg as the backend to a video editor and used like 90% of the commands he jokes about
getting programmers working together is like herding cats
But cat is a cli program and hurd is a kernel...
At 4:45 for CUDA you also need the right compilation options... and the right kernel config option too.
And the right graphics card. And the right drivers. And the right OS. And the right amount of luck
Did someone mention right _environment variables_ yet?
@@davidbakin1953 what env vars are needed to make ffmpeg use nvdec/nvenc?
@@unperrier5998 I was thinking more of compiling with CUDA, which was the original comment
i used to think that but then i realized the correct answer is to throw out all NVIDIA and buy AMD. which is exactly what i did. now when there is a bug i can manually fix it myself and recompile the entire graphics stack, which is so much easier. not possible with NVIDIA
I use ffmpeg fairly often to remux, publish, and segment clips and streams for my job. The key to maintaining good performance for these tasks is to ensure you're not re-encoding the video or audio, which can be done with the -vcodec copy and -acodec copy commands.
It also saves you from spending time, CPU cycles and electricity on adding generational compression loss to the media
e.g. ffmpeg -ss 00:01:34 -i $(yt-dlp -f 22 --get-url czcams.com/video/KWJdyJU8av8/video.html) -t 00:00:20 "911 airlines.mp4"
@@lawrencedoliveiro9104*yt-dlp
Really, it's like the jpegtran of video. I trim down my dashcam videos losslessly and quickly.
So much this. It's like magic when your multi-gigabyte files stitch in ten seconds with an NVME.
I wrote a CLI utility that automatically stitches 4GB files produced by my Fimi drone to a single file, then extended that to work with several other sources of clips along the years because that's such a common problem. Requires only selecting the "first" file then it picks the next files by timestamp or filename rules. Writing this now I maybe should release it 🤔
0:17 that transition gets me every time 😂
Yeah, I we can definitely transcode between these formats REALLY FAST to attain corss platform support. Lets just hope there is a keyframe right at the start, and that no-one skips at any point in the video.
😂 Underrated comment
Perfect! I've spent so many hours on the docs trying to make videos based on text, and audio, and video files chosen from input. I've learned so much though! For example aac is native to mp4, not mpa, and the h265 is not free to use, even though h264 is. Oh and the flags mean other thing if before inputs, and you can just mix that, so good luck figuring out why your flags won't work!
What
h264 is not free to use.
@@gg-gn3re that is correct, I meant to say basically free. And we still agree that it can be used freely as long as its not a paid product, yea? Because then its still free.
@@neonraytracer8846 not legally, no. You can use it personally and just don't tell anyone, sure.
@@gg-gn3re yea legally. Just not commercially. That means if you provide the product free of charge, you don't need the license.
This line makes me laugh in almost every video: "I recommend to understand it... not that I do" :)
You're not a real ffmpeg enthusiast if you haven't waited all day for it to compile because you forgot to disable tensorflow
Tensorflow can compile in 30 minutes. jump cut to my overly complex linux with stacked LVM running BTRFS for compression and dedup of object files, and CMake-Cache called from Buck files. And 128GB of RAM
@@monad_tcp 🤓
@@millionare5446Bruh you are on a Programmer channel
"CUDA for the win! I mean for the Windows." - this one got me
Well we had our goofs and laughs, but we really love you, FFMPEG
The greatest part about this video is the thing with apostrophes in filenames and you spend nearly an hour looking for why the fuck it doesnt work. An amazing masterpiece of a video honestly.
This is hilarious and so niche I have no programming friends to send it to haha.
This has nothing to do with programming tho. This is about encoding/decoding of video.
@@Ebani sure it does, I’ve wrote GUI programs to wrap ffmpeg functionality. The library itself is an open source project that hundreds of PROGRAMMERS have committed CODE to! Lol
@@nuvotion-live Well yes, the same could be said for many other software specially open source, that's not FFMPEG tho.
@@Ebani Software, code, programming, I don’t see how any of those things are not core to what FFMPEG is. If it’s on a computer it has to do with programming.
@@nuvotion-live Which is why you should learn how to separate them bc like you said, it's inherent to it. Which brings us to the starting point, this video isn't about programming, it's about FFMPEG.
FFMPEG saved my life. I needed to interface with a FLIR camera without using its proprietary software (on Linux). I rewrote one open-source kernel module to get it better and suit my needs and I was able to access the IR camera. But the visible light camera on FLIR, I was unable to access from OpenCV (I could see the visible camera on VLC, but OpenCV could not access it) until I put ffmpeg in between to convert the stream. Before this, I had to use ANOTHER visible camera besides the one on FLIR which created a huge parallax.
When he mentioned matroska, I was wondering if he was gonna mention the mkvtoolnix suite... And the fact that ffmpeg can't seem to read repeat tags or nested chapters in matroska. It will only read the top level chapters, and it will read the *last* version of that tag at the same level (if you have every actor in the tags, it will show the last one in the list).
"if fffmpeg doesnt transcode it, is it really a codec?" so true
Dude I use almost every technology you laugh about.
You're his inspiration in those videos
I have used ffmpeg once in a nodejs project since the business wanted their ad concatted to videos and I can still relate to half of this stuff😂
How did you know.... I was just thinking how much I love ffmpeg yesterday
I LOVE FFMPEG because I only have to learn how to do something once and I save those options in a shell function forever. I don't have that many different things I need to do to a video.
I use ffmpeg to lower the quantizer with fades. Of course youtube invariably makes them all blocky and ugly again, but I have my pristine versions saved.
HOW CAN THIS VIDEO BE SO ACCURATE
Great video!
I've been using MKVToolnix to organize my anime collection, add proper file titles to the episodes, remove the unnecessary dubs/subtitles to save space, or add subtitles to RAWs. I absolutely love it. At some point I had set up my old PS3 once more in order to play some games out of nostalgia and, since it was the only thing connected to the TV, I had this crazy idea of watching anime on my PS3. Most releases didn't, so I turned to FFMPEG to make encodes that work on it. I spent a whole day figuring it out, and when I succesfully made an episode that works it felt super rewarding! I only did a single episode tho since it took forever on my PC. I decided that it was not worth the time to do a full series encode since even a small 12 episode anime would take forever.
However this experience made me a bit more confident if I need to mess with FFMPEG for an actual important reason. I also enjoyed the process, eventhough it didn't go smooth and I was getting errors at first.
Have you heard about Handbrake?
@@kFY514 Handbrake is just a GUI for ffmpeg, which comes with a couple of SO oneliners.
I also use ffmpeg for my Anime collection. Once I figured out a setting I liked, I just made a bash script to automatically convert every video in a folder, start the script and go to work. Since ffmpeg tells you how fast it is encoding, you can use that to estimate how many episodes you can realistically convert before coming back. I have a separate script for dvd releases that includes Yadif, because I can't be arsed to figure out how to tell ffmpeg that it should honour and propagate the flag used to mark interlaced video. I usually convert from h264 mkv to h264 mkv, which generally speaking cuts down the size of the file by about 85%. I also backup the raws, in case I want to make a comparison with newer codecs later on, like av1 once I get my hands on a card that has an encoder for that in hardware. Really looking forward to that one.
@@Dekaku I kinda do the same thing. I usually download whole seasons, put them in folders, and then run a script I made to convert them to h265 if they're not already. Everything on a virtualized server with a NAS and couple VMs, so that I can run it whenever I want remotely.
Reminds me of when I used ffmpeg to transcode anime to like 420p with hardsubs so it would play on the cheapo Android 2.1 smartphone I had at the time, so I could watch stuff on the go.
Those couple black frames at the end, perfection.
i use ffmpeg a lot and this is SO ACCURATE except for one part - ProRes MOV also supports transparency. no nobody uses that unless you are an apple zombie probably. but im surprised he didnt know that since he automates media encoder with applescript
Used transparent MOVs all the time for creating bumpers, banners, animated logo overlays and effects for videos.
I don't typically interact with FFmpeg directly, but I'm constantly reminded that I'm using it by mplayer command line output-which is in Cyrillic for unknown reasons.
Cyrillic? That's a result of the compile-time flag --ОвМ (Report to Moscow). 😀
@@calmeilles I think it's actually Bulgarian, not Russian. Compile flags managed by Gentoo Portage. I'm guessing I build everything with support for a bunch of languages, and it's defaulting to the first one supported.
this is so good you absolutely nailed it. just fantastic. "this is jst ffmpeg behind an nginx". okay... okay...
if you had grepped your history for ffmpeg commands I would have died.
The keyframe loss artifacts were comedy gold. I almost didn't catch that.
As someone who's still running a ~12 year old i3 as my main workhorse, Premiere Pro and After Effects take tens of hours to encode a few minutes of video, so I didn't have a choice but to use FFmpeg when I started encoding videos for my channel, and I've since used it to encode every video I've ever uploaded (more than 70, admittedly possible because they're all fundamentally reuploads with minimal hardcoded editing). Nowadays, my uploading process nowadays is 90% automated using Bash scripts I've written and refined over the last 2 years. A significant portion of FFmpeg's complexity is due to its power, which is probably the case for CLIs in general - a GUI program of equivalent capabilities would be unusable because there would be an overwhelming amount of buttons, knobs and sliders. I knew the basics of it when I started, but 2 years in I'm basically a ninja with it, and while there are definitely some design/UX decisions that I disagree with and some things could definitely be made more intuitive, I don't plan to stop using it even after I upgrade my PC.
As the famous developer/engineer told: "In 2022 using anything else by FFMPEG is insane!"
Yeah, jokes mostly on ffmpeg console tool, but that's a 1% tip of the iceberg that ffmpeg libs are used EVERYWHERE. and they actually pretty damn good in quality. And highly tested.
This is the best video I have seen in a year. SO CATHARTIC. Thank you!!
Im always amazed by the amount of time it takes to render a "ffmpeg -h full" command, command line options infinity! While many of them are encoder specific and too technical to understand without reading the full documentation. Funny enough, I compiled FFMpeg from source yesterday (Full, nonfree, about 2 GB stripped binary output 🤯). Takes about a working day to finish on a workstation, and final completion without any errors is where you feel like a guru for a few minutes.
wc says it's 15,417 lines, 119,980 words, 1,121,288 characters.
As a book with 72 lines per page, that would be 362 pages. :^)
(I got that number from WolframAlpha, which also estimates 165 (252) book pages by word (character) count, but that assumes normal English language.)
I'd kill for one of these but it's an interview with a senior Unity dev
Beautiful. Deepest cut yet and still totally accurate.
I never get tired of re-watching this.
The brilliance of FFMPEG is the way it works as a "glue" to stick other components together. The modular handling of inputs, filters, and outputs lets you do almost anything -- also why a lot of software uses it behind the scenes.
I'm not gonna lie... I think I understand how to use FFmpeg better now. This was really good
FFmpeg is stable. Usually.
This is so true. It's taken me years not to mess up -s and -ss and --to versus -t .
"here are three ways to do it ... _one of them should work!_ "
great stuff as usual! the actual glitches in the video sets this video apart from the rest. the topic allows you to be even more creative 👏
Now we need an interview with a FFmpeg developer.
Spoiler: he would be schizophrenic
*he would be multi-threaded
The legendary Fabrice Bellard started the project, though I’m not sure he’s still involved with it.
@@lawrencedoliveiro9104 He isn't anymore. The leader is Miachel Neidermayer I think.
I love ffmpeg it's the most powerful editing tool humanity has. I can't believe all those shifty adware-filled "free" video conversion and minor editing tools I used as a kid in the 2000s when ffmpeg was right there. I've also made my fair share of mp4 files which don't open ❤ 10/10 meme. I always wonder how many of those conversion sites with dodgy ToS' are just calling ffmpeg in the background (All if not most of them without a doubt). Was that camera shake added in ffmpeg?
I just spent the last couple of days learning how to do some non-trivial interfacing with ffmpeg and then I see this, I'm dying
what a masterpiece, after working on a video/audio editing project on python, done so much research ,I just get this FFmpeg enthusiast very well. lol
Lol this is probably your most niche technology parodied so far 😅
A lot of tools use FFmpeg behind the scenes, without you realizing it.
@@lawrencedoliveiro9104 yea like this site, facebook, virtually every website that has videos actually
It's not that niche really in the IT world... many are using it, even for personal (non-business related) reasons
Try watching some videos on any random website on a Linux distro without FFmpeg enabled, find out how niche ffmpeg is.
Unfortunately it dominates the video space. Twitch, Facebook, Netflix, HBO, Microsoft Teams, Zooms, I can go on...
Should have moved towards open codecs ages ago such as VP9 which is not tainted with an agressive minefield of software patents. The industry is slowly moving on. but really, really slowly.
@@Sjoerd1993 "unfortunately" ffmpeg's domination is a good thing. Too bad it wasn't bigger
Perfect. All you need is two green columns of pixels on the right hand side of the screen.
the first frame artifact got me so good, and then i get hit again by the weird ffmpeg stabilization, what a great video
had to go back to PROPIETARY CODECS part, way too funny
About a year and a half ago I got into FFmpeg because I wanted to concatenate png files from Blender.
It sent me down the rabbit hole and now I use FFmpeg for everything. Reencode the video to send it on Discord? FFmpeg. Change audio volume? FFmpeg. Trim a video? FFmpeg. Make my computer fans run at 100%? FFmpeg.
This video is absolutely correct, especially the part about always using -c:v copy. Always use -c:v copy. Unless you want to suffer. Or change containers from mkv. And duplicate commands. There's a reason I have a hundred Batch files (I hate Batch, if you don't then you're lying).
The data mosh on "Proprietary Codecs" is a nice touch
OMG these are too funny!! Do Docker\containers next. :)
Even the opensource TurboJEPG has an alpha channel, I wonder why video codecs never take advantage of such a core feature?
inter-frame tech in video compression is massively more efficient without alpha channels. This is why all of the images based on video codecs can have alpha channels (transparency) but the videos themselves don't. vp8/vp9 (webp/2), av1 (avif) etc
the best alpha channel video codec is the apple prores one, which ffmpeg can encode and decode flawlessly
"proprietary codecs" That effect was awesome.
We need one of these on docker
I feel like this is a video for a ridiculously narrow niche of viewers. Yet so many views, wow. Loved it.
I actually use a bunch of Python scripts and ffmpeg to edit all the videos for my channel! Hah! It works great when all you want to do is some simple clipping, concatenation, and audio leveling. It also makes it easy to fully utilize my 2U rackserver with an obnoxious number of cores and a RAM disk for temporary files.
He is too powerful to be left alive
For my part, I've programmed a bunch of php scripts to wrap ffmpeg commands and use it for my YT channel.
But recently I've used KDEnlive, I'll never use ffmpeg again.
Python is a good tool for building wrappers. I did a job a few months ago involving extracting telemetry data from videos recorded on GoPro cameras. Yes, did you know there are extra data streams on those videos, besides the regular video and audio?
Besides the ffmpeg command itself, the suite also includes ffprobe, which lets you analyze a video file and determine the locations and timestamps of every packet in every stream. Once I had this, decoding the data was quite easy (barring discrepancies between documented formats and the actual data generated by different camera models ... c’est la vie ...).
@@lawrencedoliveiro9104 Yup, I use ffprobe to get timestamps for each video clip and correlate it to the external audio (adjusting for quirks on each device). Then I use a numpy convolve() to find the precise offsets between the two. Works like a charm, and much easier than clapping in every take and lining up stuff in a GUI.
Having an actual modern server at your disposal is a good trick. Can't beat spending just $40K in a modern 512GB of RAM server, instead of paying $15K/mo to Jeff Bezos Amazon
Another great one! I got introduced to your channel at work and I've really enjoyed the javascript, Python and vim ones. Are you talking suggestions? For something different, maybe the DIY mechanical keyboard scene? A lot of programmers I know (me included) have endless discussions about the best switches, layouts, etc. and an "interview with a keyboard enthusiast in 2022" would be amazing!
The average dvorak enjoyer.
Mechanical keyboards? Nah. I've used the same flat membrane keyboard for 13 years. I've coded virtually every single project I've ever done on it, hundreds of thousands of lines of code.
I do like the suggestion, though.
Just fell into your video. Dawg, even if you don’t understand much, the jokes landed so well. Hilarious.
damn, now i remembered i was midway through fixing an issue with transcoding on my media server, i was trying to forget about it being on my to-do list ... thanks
Did you know that the Mars helicopter Ingenuity uses ffmpeg?
On Linux!
Seriously though I use MKV for everything because it can still play if my rendering crashes, unlike typical MP4. And also because it takes audio in FLAC.
3:17 ".. with ffmpeg?" "How did you know??" the tone and facial expression here was perfect, this was so funny.
As someone who uses libffmpeg in my project, I can confirm the syntax for working with the library looks just like how this guy sounds.
Premiere is fully multi-threaded... on a single core machine 😄
a core can have 2 threads
@@ea_naseer it seems you don't, because you compute things too slowly 🤣
I love your work! Please do a video about Rust programmers as well!
Splitting into and concatenating from a PNG sequence was incredibly useful to me. Funnily enough, the .mp4 file resulting from concatenation could not be played with the default Windows 10 video player, but VLC was able to play it.
I almost gave a like. But the main thing for me is, for what I actually use FFMPEG, is.. and it was not mentioned here at all. You can stream video directly into a file with it. And thats what I do a lot. You can catch HLS and MP4 and TS (MPEG)streams and save them to your PC with FFMPEG. Completely forgot about this great function!
“This is like Harry Potter” had me dead 😂
I love this CLI software. BTW BASH scripting and FFMPEG is really useful and powerful.
yo your channel is fire - haven't laughed this hard in forever 🙂
"We have flying cars
but BEWARE OF TRANSPARENCY"
tshirt material
I used to use ffmpeg to turn the flv's I grabbed from youtube into .mp3's or whatever. It just recently did some heavy lifting when I used it to grab audio from some CD's. It used to feel like magic, stealing music from youtube. It had it's revenge. The hours I spent in the information void they call their "documentation" have left me a little emptier inside.
20 seconds in and I'm laughing my ass off jesus that's gold
ffmpeg is a big PITA to use, but once you use it enough you get used to its conventions. Its power is unrivaled. Love this program, and making fun of it at the same time :)
definitely not a pain to use, it's something that works the same constantly for the past decade and just gets the shit done.
@@gg-gn3re haha! for someone with a decade's experience perhaps.
The docs / errors are an absolute pain and how do you know that it will run in certain OS/Browser/Device?
At the moment to make a video for social medias for example I run my initial ffmpeg imgpipe to make a .mp4
then run a second command that changes some things
Then I boot from Linux to Windows to run Handbrake with a Constant framerate setting so that it's playable/usable on other applications
So that I can pull it into ableton (music production focus)
What the heck it's so difficult to make FFMPEG output a usable file, but damn it does what you tell it to with insane precision
@@valk_real when I first started using it I followed a basic command and it just worked, years later it still just werks
handbrake is a linux software, which runs on linux and is ported to windows. why would you switch an OS just to use a software that is already available? also handbrake uses ffmpeg
@@gg-gn3re ffmpeg has been a reliable work-horse for decades and has a (mostly) stable command line interface, but it's also a big beast of a program that is fairly opaque for newer users, and even for some experienced CLI users, as it has a lot more dependence on the order of its command line arguments than it feels like it 'should' have.
that said it is my favourite piece of open-source software ever
The openssl command line is hauntingly similar to ffmpeg's command line. I just spent a day trying to issue client-certs for a private CA and then have curl actually use it. I'd love to see a roast of openssl too!