Interview with FFMPEG enthusiast

  Рет қаралды 469,306

Programmers are also human

Programmers are also human

Күн бұрын

Пікірлер: 1 000
@programmersarealsohuman5909
@programmersarealsohuman5909 2 жыл бұрын
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
@Cyberfoxxy
@Cyberfoxxy 2 жыл бұрын
why the hell would he?
@lukaszbusko
@lukaszbusko 2 жыл бұрын
what is the keyboard and touchpad for it?
@NewHandleWhoDeez
@NewHandleWhoDeez 2 жыл бұрын
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
@volchonokilliR
@volchonokilliR Жыл бұрын
@@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"
@MrLordFireDragon
@MrLordFireDragon Жыл бұрын
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)?
@igorordecha
@igorordecha 2 жыл бұрын
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.
@sn5806
@sn5806 2 жыл бұрын
lol
@gg-gn3re
@gg-gn3re 2 жыл бұрын
OBS makes it work for you :^)
@onegabriel5823
@onegabriel5823 2 жыл бұрын
You might need the proprietary AMD Linux drivers for that to work.
@valk_real
@valk_real 2 жыл бұрын
@@onegabriel5823 Ah yes but you also need to wait until the proprietary driver supports the graphics card else just build the drivers from source
@igorordecha
@igorordecha 2 жыл бұрын
@@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.
@jasonalward
@jasonalward 2 жыл бұрын
“Create a non playable file? No problem.” So accurate.
@jeromeglick
@jeromeglick Жыл бұрын
So I'm not the only one who creates non-openable files just because it's a prerequisite to guru status.
@petros_adamopoulos
@petros_adamopoulos Жыл бұрын
Better than files that are playable but with unobvious artifacts.
@TheUmopepisdn
@TheUmopepisdn Жыл бұрын
"Here are three ways to do it in FFMPEG. One of them should work."
@kreuner11
@kreuner11 Жыл бұрын
You have to change the pix_fmt to yuv420p or it won't play in VLC
@ruanpingshan
@ruanpingshan Жыл бұрын
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).
@theftking
@theftking Жыл бұрын
There are three ways of doing it... and one of them should work."
@tomharrison3453
@tomharrison3453 2 жыл бұрын
I don't think people are equipped with the proper codec to appreciate the subtle genius of the editing here.
@ragnarmarnikulasson3626
@ragnarmarnikulasson3626 Жыл бұрын
and did you know he did the editing in ffmpeg?
@apotato4873
@apotato4873 Жыл бұрын
@@ragnarmarnikulasson3626 "I edited a whole documentary in FFMPEG."
@pauldwalker
@pauldwalker Жыл бұрын
you only have to run ffmpeg from the command line after hours of study to fully appreciate this video.
@yt-1337
@yt-1337 Жыл бұрын
@@pauldwalker so true
@altpudding4776
@altpudding4776 2 жыл бұрын
the amount of artifacts in this video is very accurate
@Ryan-xq3kl
@Ryan-xq3kl 2 жыл бұрын
its only artifacting because he used the wrong codec
@3s0t3r1c
@3s0t3r1c 2 жыл бұрын
@@Ryan-xq3kl And the wrong graphic card, and operating system, and drivers.
@jonaskoelker
@jonaskoelker 2 жыл бұрын
This video has more artifacts than the Mirrodin block of Magic: the Gathering
@WolfireGaming
@WolfireGaming 2 жыл бұрын
@@gg-gn3re Guys we found it, a real FFMPEG enthusiast in the wild!
@gg-gn3re
@gg-gn3re 2 жыл бұрын
@@WolfireGaming there are no sites with video on the internet that aren't using it :^)
@chromosome24
@chromosome24 2 жыл бұрын
Frantically scrolling through miles of docs while muttering "okaaay okaaay okaaay" in hopes of willing yourself to understand without actually comprehending a single word.
@SreenikethanI
@SreenikethanI Жыл бұрын
this is getting too relatable ... my head hurts now
@theaninova
@theaninova 2 жыл бұрын
"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.
@FunctionGermany
@FunctionGermany 2 жыл бұрын
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)
@marceelino
@marceelino 2 жыл бұрын
who is using mov? i don't think i ever seen a filename like that.
@tacokoneko
@tacokoneko 2 жыл бұрын
@@marceelino apple zombies
@johndev8654
@johndev8654 2 жыл бұрын
Same problem here. Tried Apple ProRes 4444 yet?
@Powerbyte7
@Powerbyte7 2 жыл бұрын
Yeah for real! Even Webm doesn't have truly native transparency support, because the native VP8/9 decoders don't decode alpha...
@remiesmith7027
@remiesmith7027 2 жыл бұрын
"All of this? Just one command - Oh there was an issue in the..." I died. Too true.
@mage3690
@mage3690 Жыл бұрын
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.
@headmetwall
@headmetwall 2 жыл бұрын
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.
@marshallsweatherhiking1820
@marshallsweatherhiking1820 2 жыл бұрын
I have a hundred “example” commands saved in a text file. If I ever lose it I will blow my brains out.
@Ebani
@Ebani 2 жыл бұрын
@@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.
@ryuugureen4969
@ryuugureen4969 2 жыл бұрын
@@marshallsweatherhiking1820 I do the same but with the copy paste history tool.
@monad_tcp
@monad_tcp 2 жыл бұрын
I can't use FFMpeg, I use VLC and let it deal with FFMpeg for me
@marshallsweatherhiking1820
@marshallsweatherhiking1820 2 жыл бұрын
@@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.
@Slm3lkm
@Slm3lkm 2 жыл бұрын
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)
@-rya1146
@-rya1146 5 ай бұрын
Funilly enough AI tools like ChatGPT are pretty good at this. As long as you know what you're trying to do and a little bit of how to do it. I used to google things but they never really worked and the people giving the commands never explained why it worked or what it was doing so you couldn't adapt it to your usecase.
@isaac10231
@isaac10231 4 ай бұрын
​@@-rya1146chatgpt is incredible at ffmpeg commands. Works every single time for me.
@ArchLars
@ArchLars 3 ай бұрын
how to use FFmpeg (2024 guide) 1-chatgpt: "how to x in ffmpeg" 2-copy paste it into it If-(Doesn't Work) Then-("That didn't work try something else") Until-It works 3- Done
@evrimagaci
@evrimagaci 2 жыл бұрын
"I know the website looks like a scam" No kidding. :D
@lolerie
@lolerie Жыл бұрын
I use wikipedia links, so no scam possible. /big brain
@nextbreeze7974
@nextbreeze7974 Жыл бұрын
7zip de aynı sorundan muzdarip :)
@DR_1_1
@DR_1_1 Жыл бұрын
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.
@TheTurkjojuq
@TheTurkjojuq Жыл бұрын
Oha evrim agaci :o
@esertekin9727
@esertekin9727 Жыл бұрын
Ho-hocam?
@jammin023
@jammin023 2 жыл бұрын
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.
@pulsarglider
@pulsarglider 2 жыл бұрын
The openssl command is the same way for me.
@TymexComputing
@TymexComputing 2 жыл бұрын
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 :)
@charlieking7600
@charlieking7600 Жыл бұрын
Could you publish cheatsheet anywhere if haven't done before?
@udirt
@udirt Жыл бұрын
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. :-)
@Vousie
@Vousie Жыл бұрын
I took an alternative approach: Create a bash script with the options I commonly use (and thus with my own options as the arguments).
@ceruleanserpent387
@ceruleanserpent387 2 жыл бұрын
three ways to do it, one of them should work
@mikkelbreiler8916
@mikkelbreiler8916 2 жыл бұрын
1. Look at it angrily 2. Slap it 3. power off and on
@wiztek1197
@wiztek1197 2 жыл бұрын
This is still for ffmpeg right...
@sn5806
@sn5806 2 жыл бұрын
The distortion at 0:19 is perfect.
@Shivasyn13
@Shivasyn13 2 жыл бұрын
Damn, I am 3d rendering in background and thought I need more power to my pc and the distortion is my pcs fault.
@BlackStoneDiamond
@BlackStoneDiamond 2 жыл бұрын
Actually curious. How is this kind of distortion called?
@animanaut
@animanaut 2 жыл бұрын
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
@animanaut
@animanaut 2 жыл бұрын
there is this thing called glitch art where they try to replicate encoding glitches for artistic effect
@098Prototype
@098Prototype 2 жыл бұрын
@@BlackStoneDiamond Look into "datamoshing"
@J42-o4u
@J42-o4u 2 жыл бұрын
3:48 "I know the website looks like a scam but it's really not." Gets me every time.
@thewolf-ps1qz
@thewolf-ps1qz 4 ай бұрын
😂
@deadeye7468
@deadeye7468 2 жыл бұрын
How are you so accurate on every topic
@UC5Q-Zcic8tidBuI68Jxf9jQ
@UC5Q-Zcic8tidBuI68Jxf9jQ 2 жыл бұрын
I'm genuinely wondering this, too...
@DMSBrian24
@DMSBrian24 2 жыл бұрын
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
@mx338
@mx338 2 жыл бұрын
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.
@goawqebt6931
@goawqebt6931 2 жыл бұрын
The same way you can tell he is accurate
@keifer7813
@keifer7813 2 жыл бұрын
​@@mx338 Where can I find these so called tech chat rooms. I may be able to learn a lot there
@Littlefighter1911
@Littlefighter1911 2 жыл бұрын
"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.
@der.Schtefan
@der.Schtefan 2 жыл бұрын
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
@johnpulawski35
@johnpulawski35 2 жыл бұрын
lol nice
@77thTrombone
@77thTrombone Жыл бұрын
Whoa - Stalwart! Your eyes afterwards? 🌀 🌀
@Vousie
@Vousie Жыл бұрын
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.
@spythere
@spythere Жыл бұрын
Still better than becoming full time Discord server moderator.
@dawoodmorriskaundama9320
@dawoodmorriskaundama9320 2 жыл бұрын
I cant wait to watch 'Senior Engineer at NASA, Rust Expert'
@OliverUnderTheMoon
@OliverUnderTheMoon 2 жыл бұрын
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
@marijansmetko6619
@marijansmetko6619 2 жыл бұрын
@@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
@katarinareese8505
@katarinareese8505 2 жыл бұрын
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
@JamesChurchill
@JamesChurchill Жыл бұрын
"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
@SupaKoopaTroopa64
@SupaKoopaTroopa64 2 жыл бұрын
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. :(
@lolerie
@lolerie Жыл бұрын
And other 10% is just not in documentation, only inside help of ffmpeg itself or in source code
@hanskrieger4299
@hanskrieger4299 Жыл бұрын
Debian user here. I know your pain bro!
@SupaKoopaTroopa64
@SupaKoopaTroopa64 Жыл бұрын
@@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 :(
@petros_adamopoulos
@petros_adamopoulos Жыл бұрын
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.
@Nib_Nob-t7x
@Nib_Nob-t7x Жыл бұрын
Honestly chatgpt is great at explaining ffmpeg features and how to use it.
@RogerValor
@RogerValor 2 жыл бұрын
I love the encoding errors. Perfect.
@phizc
@phizc 2 жыл бұрын
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.
@unperrier
@unperrier 2 жыл бұрын
At 4:45 for CUDA you also need the right compilation options... and the right kernel config option too.
@igorordecha
@igorordecha 2 жыл бұрын
And the right graphics card. And the right drivers. And the right OS. And the right amount of luck
@davidbakin1953
@davidbakin1953 2 жыл бұрын
Did someone mention right _environment variables_ yet?
@unperrier
@unperrier 2 жыл бұрын
@@davidbakin1953 what env vars are needed to make ffmpeg use nvdec/nvenc?
@davidbakin1953
@davidbakin1953 2 жыл бұрын
@@unperrier I was thinking more of compiling with CUDA, which was the original comment
@tacokoneko
@tacokoneko 2 жыл бұрын
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
@thefekete
@thefekete 2 жыл бұрын
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🤣🤣
@jennychan6165
@jennychan6165 2 жыл бұрын
Same here. I use the same command repeatedly to convert m4a files to mp3
@quadstrike
@quadstrike 2 жыл бұрын
broo make it a drop in, so you can drag the file onto your script and it runs from there
@thefekete
@thefekete 2 жыл бұрын
@@quadstrike Nah... Probably wouldn't work anymore and it'd be back to stack overflow... 😋
@quadstrike
@quadstrike 2 жыл бұрын
@@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
@Ethan_Simon
@Ethan_Simon 2 жыл бұрын
I usually just use it for lowering the resolution and reducing the framerate to fit in Discord's file size limit!
@shurgars
@shurgars 2 жыл бұрын
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.
@jvandervyver
@jvandervyver Жыл бұрын
😂 Underrated comment
@oharaandrew314
@oharaandrew314 2 жыл бұрын
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.
@ProcrastinationHyperfocus
@ProcrastinationHyperfocus 2 жыл бұрын
It also saves you from spending time, CPU cycles and electricity on adding generational compression loss to the media
@SamTheEnglishTeacher
@SamTheEnglishTeacher 2 жыл бұрын
e.g. ffmpeg -ss 00:01:34 -i $(yt-dlp -f 22 --get-url kzbin.info/www/bejne/gYitlayAip2UrJo) -t 00:00:20 "911 airlines.mp4"
@unsubscribbler
@unsubscribbler Жыл бұрын
​@@lawrencedoliveiro9104*yt-dlp
@gblargg
@gblargg Жыл бұрын
Really, it's like the jpegtran of video. I trim down my dashcam videos losslessly and quickly.
@madmax404
@madmax404 Жыл бұрын
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 🤔
@agranero6
@agranero6 2 жыл бұрын
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.
@spektrvum
@spektrvum 2 жыл бұрын
Window manager enthusiast next, please
@unfa00
@unfa00 2 жыл бұрын
The tiling ones, no less?
@Ant0ine64
@Ant0ine64 2 жыл бұрын
Oh I just need to recompile dwm
@Flackon
@Flackon 2 жыл бұрын
ah yes. Window manager. Good product
@thorbergson
@thorbergson 11 ай бұрын
​@@unfa00xmonad, obviously, because Haskell
@parizhskiy
@parizhskiy 2 жыл бұрын
This line makes me laugh in almost every video: "I recommend to understand it... not that I do" :)
@neonraytracer8846
@neonraytracer8846 2 жыл бұрын
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!
@MOOBBreezy
@MOOBBreezy 2 жыл бұрын
What
@gg-gn3re
@gg-gn3re 2 жыл бұрын
h264 is not free to use.
@neonraytracer8846
@neonraytracer8846 2 жыл бұрын
@@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.
@gg-gn3re
@gg-gn3re 2 жыл бұрын
@@neonraytracer8846 not legally, no. You can use it personally and just don't tell anyone, sure.
@neonraytracer8846
@neonraytracer8846 2 жыл бұрын
@@gg-gn3re yea legally. Just not commercially. That means if you provide the product free of charge, you don't need the license.
@oM477o
@oM477o 2 жыл бұрын
You're not a real ffmpeg enthusiast if you haven't waited all day for it to compile because you forgot to disable tensorflow
@monad_tcp
@monad_tcp 2 жыл бұрын
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
@millionare5446
@millionare5446 2 жыл бұрын
@@monad_tcp 🤓
@cyberninjazero5659
@cyberninjazero5659 Жыл бұрын
​@@millionare5446Bruh you are on a Programmer channel
@freightshayker
@freightshayker Жыл бұрын
getting programmers working together is like herding cats
@skald9
@skald9 11 ай бұрын
But cat is a cli program and hurd is a kernel...
@ChairmanHehe
@ChairmanHehe 2 жыл бұрын
"if fffmpeg doesnt transcode it, is it really a codec?" so true
@LiftedStarfish
@LiftedStarfish Жыл бұрын
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).
@cowbless
@cowbless Жыл бұрын
Well we had our goofs and laughs, but we really love you, FFMPEG
@williamregal873
@williamregal873 2 жыл бұрын
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😂
@jopa19991
@jopa19991 Жыл бұрын
"CUDA for the win! I mean for the Windows." - this one got me
@nuvotion-live
@nuvotion-live 2 жыл бұрын
This is hilarious and so niche I have no programming friends to send it to haha.
@Ebani
@Ebani 2 жыл бұрын
This has nothing to do with programming tho. This is about encoding/decoding of video.
@nuvotion-live
@nuvotion-live 2 жыл бұрын
@@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
@Ebani
@Ebani 2 жыл бұрын
@@nuvotion-live Well yes, the same could be said for many other software specially open source, that's not FFMPEG tho.
@nuvotion-live
@nuvotion-live 2 жыл бұрын
@@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.
@Ebani
@Ebani 2 жыл бұрын
@@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.
@Kid420
@Kid420 2 жыл бұрын
HOW CAN THIS VIDEO BE SO ACCURATE
@chromejailer6799
@chromejailer6799 2 жыл бұрын
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.
@kFY514
@kFY514 2 жыл бұрын
Have you heard about Handbrake?
@Dekaku
@Dekaku 2 жыл бұрын
@@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.
@castform57
@castform57 2 жыл бұрын
@@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.
@majorgnu
@majorgnu Жыл бұрын
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.
@Shredder2898
@Shredder2898 2 жыл бұрын
How did you know.... I was just thinking how much I love ffmpeg yesterday
@JustAn0therSoul
@JustAn0therSoul Жыл бұрын
0:17 that transition gets me every time 😂
@RichardBronosky
@RichardBronosky 2 жыл бұрын
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.
@marshallsweatherhiking1820
@marshallsweatherhiking1820 2 жыл бұрын
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.
@mariotabali2603
@mariotabali2603 2 жыл бұрын
Dude I use almost every technology you laugh about.
@anatolydyatlov963
@anatolydyatlov963 2 жыл бұрын
You're his inspiration in those videos
@maximilianrau5658
@maximilianrau5658 2 жыл бұрын
Beautiful. Deepest cut yet and still totally accurate.
@SomeDudeInBaltimore
@SomeDudeInBaltimore Жыл бұрын
The keyframe loss artifacts were comedy gold. I almost didn't catch that.
@Cuplex1
@Cuplex1 Жыл бұрын
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.
@nibblrrr7124
@nibblrrr7124 Жыл бұрын
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.)
@dannotdaniel9361
@dannotdaniel9361 11 ай бұрын
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.
@ChristopherCricketWallace
@ChristopherCricketWallace 2 жыл бұрын
I'm not gonna lie... I think I understand how to use FFmpeg better now. This was really good
@Duda286
@Duda286 Жыл бұрын
"All of this? Just one command. *Blam * ...oh there was an issue with...." - Oh shit, here we go again.
@tacokoneko
@tacokoneko 2 жыл бұрын
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
@AvWijk85
@AvWijk85 Жыл бұрын
Used transparent MOVs all the time for creating bumpers, banners, animated logo overlays and effects for videos.
@AV_YOUTUBE_202X
@AV_YOUTUBE_202X Жыл бұрын
Scrolling back on the command that wraps two rows on your whole monitor. Yep, it's FFMPEG alright
@suvidani
@suvidani 2 жыл бұрын
As the famous developer/engineer told: "In 2022 using anything else by FFMPEG is insane!"
@mapron1
@mapron1 Жыл бұрын
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.
@LetoDK
@LetoDK Жыл бұрын
This is the best video I have seen in a year. SO CATHARTIC. Thank you!!
@SbF6H
@SbF6H 2 жыл бұрын
Now we need an interview with a FFmpeg developer. Spoiler: he would be schizophrenic
@FunctionGermany
@FunctionGermany 2 жыл бұрын
*he would be multi-threaded
@lawrencedoliveiro9104
@lawrencedoliveiro9104 2 жыл бұрын
The legendary Fabrice Bellard started the project, though I’m not sure he’s still involved with it.
@SbF6H
@SbF6H 2 жыл бұрын
@@lawrencedoliveiro9104 He isn't anymore. The leader is Miachel Neidermayer I think.
@neoqueto
@neoqueto Жыл бұрын
Those couple black frames at the end, perfection.
@HashimAziz1
@HashimAziz1 2 жыл бұрын
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.
@rmnwrkcnt
@rmnwrkcnt 9 ай бұрын
I spent too much time researching before I realized the website was not a scam
@timewave02012
@timewave02012 2 жыл бұрын
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.
@calmeilles
@calmeilles 2 жыл бұрын
Cyrillic? That's a result of the compile-time flag --ОвМ (Report to Moscow). 😀
@timewave02012
@timewave02012 2 жыл бұрын
@@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.
@hamzaazzouz8056
@hamzaazzouz8056 2 жыл бұрын
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
@davidbakin1953
@davidbakin1953 2 жыл бұрын
"here are three ways to do it ... _one of them should work!_ "
@lukeharris5131
@lukeharris5131 2 жыл бұрын
I'd kill for one of these but it's an interview with a senior Unity dev
@RabbitEarsCh
@RabbitEarsCh Жыл бұрын
This is so true. It's taken me years not to mess up -s and -ss and --to versus -t .
@ZeoWorks
@ZeoWorks 2 жыл бұрын
Even the opensource TurboJEPG has an alpha channel, I wonder why video codecs never take advantage of such a core feature?
@gg-gn3re
@gg-gn3re 2 жыл бұрын
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
@gblargg
@gblargg Жыл бұрын
I never get tired of re-watching this.
@CrazyByDefault
@CrazyByDefault 2 жыл бұрын
As someone who works with ffmpeg to make a living, it often makes me want to stop living. Thanks for this. Our pain needed to be shared.
@LadyTink
@LadyTink 11 ай бұрын
I love the 0:20 "missing keyframe" issue that is I feel like, deliberately added xD
@Hossimo
@Hossimo 2 жыл бұрын
Perfect. All you need is two green columns of pixels on the right hand side of the screen.
@ArchLars
@ArchLars 3 ай бұрын
"Is this website a scam, outdated, or is it just designed by an open source enthusiast programmer" is something you will ask yourself a lot if you get into FOSS.
@rustedcrab
@rustedcrab 2 жыл бұрын
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
@QualityDoggo
@QualityDoggo Жыл бұрын
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.
@Jmcgee1125
@Jmcgee1125 2 жыл бұрын
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).
@exodotpet
@exodotpet Жыл бұрын
one of the best videos ever, i’m surprised AV1 didn’t get mentioned lmfao
@deeplerg7913
@deeplerg7913 2 жыл бұрын
FFmpeg is stable. Usually.
@LowLevelLemmy
@LowLevelLemmy 2 жыл бұрын
YESS, finally a video I can understand!! I love FFMPEG
@unfa00
@unfa00 2 жыл бұрын
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.
@delta_jom
@delta_jom 2 жыл бұрын
You hurt me with your accuracy. The CUDA comments gave me flashbacks
@lukerocco5523
@lukerocco5523 2 жыл бұрын
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 👏
@HOUSEWARMING
@HOUSEWARMING Жыл бұрын
3:54 is justt ffmpeg in a nutshell - thanks for the lolz!
@RichardBronosky
@RichardBronosky 2 жыл бұрын
"proprietary codecs" That effect was awesome.
@Juanfcilantro
@Juanfcilantro Жыл бұрын
the first frame artifact got me so good, and then i get hit again by the weird ffmpeg stabilization, what a great video
@randomdatastream
@randomdatastream 2 жыл бұрын
OMG these are too funny!! Do Docker\containers next. :)
@austinedeclan10
@austinedeclan10 9 ай бұрын
FFMPEG is the coolest thing I've ever seen
@swolebro
@swolebro 2 жыл бұрын
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.
@talhaabdurrahman9407
@talhaabdurrahman9407 2 жыл бұрын
He is too powerful to be left alive
@nicejungle
@nicejungle 2 жыл бұрын
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.
@lawrencedoliveiro9104
@lawrencedoliveiro9104 2 жыл бұрын
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 ...).
@swolebro
@swolebro 2 жыл бұрын
@@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.
@monad_tcp
@monad_tcp 2 жыл бұрын
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
@ngideo
@ngideo Жыл бұрын
The data mosh on "Proprietary Codecs" is a nice touch
@clarkkentglasses6443
@clarkkentglasses6443 2 жыл бұрын
wow this is such a highly specific meme it’s crazy 😂
@SamTheEnglishTeacher
@SamTheEnglishTeacher 2 жыл бұрын
"okaaay..." [scrolling] WE'VE ALL BEEN THERE
@CGStirk
@CGStirk 2 жыл бұрын
This is perfect.
@JonatanNoponen
@JonatanNoponen Жыл бұрын
This accurately reflects my experience trying to compile a WSL ffmpeg binary with CUDA hw accel support. And that 99c h265 purchase,,,.
@pgMacmillion
@pgMacmillion 2 жыл бұрын
Lol this is probably your most niche technology parodied so far 😅
@lawrencedoliveiro9104
@lawrencedoliveiro9104 2 жыл бұрын
A lot of tools use FFmpeg behind the scenes, without you realizing it.
@gg-gn3re
@gg-gn3re 2 жыл бұрын
@@lawrencedoliveiro9104 yea like this site, facebook, virtually every website that has videos actually
@nymbusDeveloper86
@nymbusDeveloper86 2 жыл бұрын
It's not that niche really in the IT world... many are using it, even for personal (non-business related) reasons
@Sjoerd1993
@Sjoerd1993 2 жыл бұрын
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.
@gg-gn3re
@gg-gn3re 2 жыл бұрын
@@Sjoerd1993 "unfortunately" ffmpeg's domination is a good thing. Too bad it wasn't bigger
@motbus3
@motbus3 2 жыл бұрын
The video quality, audio amd chrominance changing randomly proves it is indeed ffmpeg
@karlkastor
@karlkastor 2 жыл бұрын
Did you know that the Mars helicopter Ingenuity uses ffmpeg?
@lawrencedoliveiro9104
@lawrencedoliveiro9104 2 жыл бұрын
On Linux!
@ValiantValium
@ValiantValium Жыл бұрын
I'm getting MKV for Christmas
@capunzel5859
@capunzel5859 2 жыл бұрын
had to go back to PROPIETARY CODECS part, way too funny
@brillianttree3906
@brillianttree3906 2 жыл бұрын
"All of this is one command."
@va_duck2497
@va_duck2497 2 жыл бұрын
“This is like Harry Potter” had me dead 😂
@LunaticEdit
@LunaticEdit Жыл бұрын
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.
@k-yo
@k-yo Жыл бұрын
20 seconds in and I'm laughing my ass off jesus that's gold
I go to ABSURD tech conference.
9:56
Programmers are also human
Рет қаралды 335 М.
Interview with Computer Security Trainer
10:49
Programmers are also human
Рет қаралды 278 М.
Interview with Product Manager in 2024 [Corporate]
5:53
Programmers are also human
Рет қаралды 432 М.
Interview with a VIM Enthusiast
4:40
Programmers are also human
Рет қаралды 955 М.
Linus Torvalds on why desktop Linux sucks
11:07
gentooman
Рет қаралды 1,5 МЛН
Python laid waste to my C++!
17:18
Sheafification of G
Рет қаралды 185 М.
Why Video Game Graphics Degrade - And Who's to Blame?
15:12
Radical Cap
Рет қаралды 681 М.
I Redesigned the ENTIRE YouTube UI from Scratch
19:10
Juxtopposed
Рет қаралды 1 МЛН
Interview With A Sr JavaScript Dev | Prime Reacts
24:43
ThePrimeTime
Рет қаралды 261 М.
Linux Distros Explained By An Idiot
5:38
Sir Freelancealot
Рет қаралды 374 М.