But what is digital audio? (The FLAC Codec #1 - (Digital) Audio and PCM)

  Переглядів 8,873

kleines Filmröllchen

kleines Filmröllchen

День тому

Episode 1 of the deep-dive series into FLAC, digital audio and its lossless compression.
Manim source code for the series: github.com/kleinesfilmroellch...
The FLAC specification: www.xiph.org/flac/format.html (Official Specification) datatracker.ietf.org/doc/html... (Internet Draft as of January 2022; mostly a copy of the specification + corrections)
SerenityOS: serenityos.org
95% of this video was created with the Manim animation tool, created by Grant Sanderson (3Blue1Brown) and supported by the Manim community. www.manim.community/
TV news: tagesschau 1960/11/16, 8 pm (www.tagesschau.de/multimedia/... )
Concert recording: Carlos Kleiber - Beethoven symphony No.7, Op.92: mov.4 ( • Video )
Footnotes (square brackets in the video):
[1] For the purposes of this video a codec is just a file format
[2] CD-Audio is not a real file format, but stands for the encoding used by CD audio discs
[3] OVERSIMPLIFICATION, I know, and also I don’t know shit about ZIP so don’t @ me
[4] hyperphysics.phy-astr.gsu.edu/...
[5] We could also average the signal over the short time slice instead, there are multiple approaches of best finding a sample value.
[6] Additionally, there needs to be an analog low pass filter (blocking frequencies above some point) that blocks all frequencies above the maximum representable frequency, the “Nyquist limit”. This needs to be in place both before converting the signal to digital and after re-converting it to analog. Otherwise, you get “aliasing”, pseudo-frequency information that isn’t actually there.
[7] It mainly comes down to the fact that analog low pass filters are imperfect, and these frequencies are well-suited for syncing with other data streams, such as standard definition video in the case of 48kHz. For those reasons, we rather choose the sampling rate a bit too high than too low.
[8] Technically, the entire process of digitizing a signal is called quantization, but that’ll get confusing.
[9] We can also use floating-point numbers (basically decimal), but that’s not something FLAC supports and it’s not generally superior to integer sample representation.
[10] This is a simplification and technically wrong. Any range sizes for these values are possible as an amplitude, and there are five differently sized ranges with six numbers. My point still stands: The differences are very hearable.

КОМЕНТАРІ: 35
@kleinesfilmroellchen
@kleinesfilmroellchen 2 роки тому
Clarifications'n'stuff: This video was animated with 3blue1brown's manim system for mathematical animations in Python. The source code can be found here: github.com/kleinesfilmroellchen/flac-video-resources . (I did put it in the description after publishing, but it seems that it gets overlooked). I received several "well actually" comments that point out that VP9 is lossy. It is, but it's also lossless, it can do both. I did do my research and please only comment about this if you can show me some proof.
@bronkolie
@bronkolie 4 місяці тому
AFAIK nearly every video codec is primarily lossy, but is lossless if you use the highest quality setting
@microcolonel
@microcolonel 26 днів тому
No, lossy codecs having a lossless mode is not universal. H.264 I think was the first mainstream video codec that had a lossless capability. Almost no lossy audio codecs have lossless modes, but there are a couple of niche audio codecs that are intended for lossless use that have lossy modes.​@@bronkolie
@devashishjaiswal6037
@devashishjaiswal6037 2 роки тому
High quality video, great effort. Would love to learn more about flac. I'm glad it's one of SerenityOS developers who's documenting the highly overlooked yet extremely exciting field of multimedia. Internet needs more of these. Keep them coming my friend :^)
@Ankit-jc9td
@Ankit-jc9td 8 місяців тому
👍 Best content I've ever discovered on the topic
@TobyAsE120
@TobyAsE120 2 роки тому
I'm leaving a comment to make this video more appetizing for the algorithm. Great work, keep going!
@networkException
@networkException 2 роки тому
Look mom, my SerenityOS screenshot is in a kleines Filmröllchen Video :^)
@thanoskoutr
@thanoskoutr 2 роки тому
I have studied electrical engineering and I am familiar with all these concepts, but I am so excited to see the implementation because I never went beyond the theory of signals and it always seemed that the part that was missing to make it interesting is to see an example or a real use case. Also, great explanation and visuals! Subbed and waiting for the next episode.
@audio2u
@audio2u 4 місяці тому
That was beautifully done! Great explanation of basic audio concepts, and fantastic use of visuals to supplement the theory. I'll be watching more.
@kumarisuman4565
@kumarisuman4565 2 роки тому
I am learning web development because I have to get a job as soon as possible, but my heart goes in understanding low level things and their implementation. I think I am going to enjoy this series.
@timtreichel3161
@timtreichel3161 2 роки тому
I never heard of FLAC, but I'm familiar with all the other points you talked about and I think you did a really good job of explaining everything and putting everything in one compact, well made video. The only points missing, which I think would help understand everything would be: That microphones and more importantly speakers have membranes, which oscillate/vibrate in order to transmit/receive the signal. The basics of how an ADC/DAC works, because this would couple nicely with the quantisation and sampling.
@BenWakefield
@BenWakefield Рік тому
Excellent video, deserves more views, sharing with all my audio classmates!
@nishanthshetty435
@nishanthshetty435 Місяць тому
Sehr interessant. Danke schön.
@SilentShiba
@SilentShiba 2 роки тому
I implemented wave decoding for the last week. Thank you for potentially saving me two months my guy
@codechapin
@codechapin 2 роки тому
I have been wanting something like this for a long time, thank you!!!!
@Osax-music
@Osax-music Рік тому
Excellent explanation, thank you!
@britters3906
@britters3906 2 місяці тому
very poggers explanation
@kumarisuman4565
@kumarisuman4565 2 роки тому
Oh my god! For about a week I was trying to learn about media codec. I was searching for a jpeg Or png codec and mostly about implementation and it's explanation. But it seems like it's the time. I would like more videos on this topic.
@HickoryDickory86
@HickoryDickory86 4 місяці тому
For image formats, I would recommend checking out *JPEG XL* and AVIF. They both support lossless and lossy compression methods, but JPEG XL's lossless method produces a smaller file size than even PNG with no loss of image quality or detail.
@codingmarco
@codingmarco 2 роки тому
Yay, Manim is so cool...
@elton9310
@elton9310 2 роки тому
Nice video! Please make the second part!
@rocknrolladube
@rocknrolladube 2 місяці тому
Soon we will have a new category where we combine lossy with AI to recreate lost info (by making an educated guess)…I think.
@mbabb
@mbabb Рік тому
Where is the next video? This was wonderful!
@venkateshhariharan4341
@venkateshhariharan4341 2 роки тому
great video, thanks mate
@niazfaridani-rad2147
@niazfaridani-rad2147 2 роки тому
Awesome video! When I work on a set, I usually record with 32 bit, so I can save my recording in post. I can then just set the gain without worrying about distortions :D
@kleinesfilmroellchen
@kleinesfilmroellchen 2 роки тому
32-bit int (whole numbers) has the same limits as 16-bit, just a higher dynamic range. 32-bit *float* is used because you can have a gain above 1, so clipping can be prevented. If you're referring to the latter, yes, if you're referring to the former, no. However, FLAC only supports integer bit depths (for compression reasons, see part 2&3) so I just skipped over floating-point sample representation, which is quite different from integer sample representation. The confusion is that a bit depth of 32 bit is ambiguous, it can either mean 32-bit float (very common inside audio applications and as a workflow intermediary, as you point out), or 32-bit int, which is just 16-bit int samples plus some dynamic range. For instance, WAV supports both. Crucially, 32-bit float actually has much lower dynamic range than 32-bit int, especially in louder signals (where it also doesn't matter so, great I guess). You want to look up how floating-point numbers work (IEEE 754 standard) in order to understand why this is the case.
@mannlevilthe
@mannlevilthe 2 роки тому
Subscribed at the speed of... sound :)
@beefyjoe2084
@beefyjoe2084 Рік тому
episode 2?
@nxone9903
@nxone9903 Рік тому
is that a some entry
@kleinesfilmroellchen
@kleinesfilmroellchen Рік тому
Look at the date; it doesn't qualify. I would have loved to submit part two to the SoME 2 but didn't have time.
@rocknrolladube
@rocknrolladube 2 місяці тому
Note, analogue is not infinite…there is no such thing as a real continuum; it’s actually an incoherent term IMO. Even the real would is pixelated (atoms).
@xevaly2028
@xevaly2028 2 роки тому
3Blue1Brown 2.0? Lol pretty hot tho
@kleinesfilmroellchen
@kleinesfilmroellchen 2 роки тому
It's just Manim, a lot of people use that now. I thought it was the most fitting for this kind of video.
@ymndoseijin
@ymndoseijin 2 роки тому
@@kleinesfilmroellchen you should try sending it over to the manim discord maybe
@proproxy
@proproxy 2 роки тому
first
But how can it fit so much music? (The FLAC Codec #2 - Lossless Audio Compression)
28:43
Debunking the Digital Audio Myth: The Truth About the 'Stair-Step' Effect
13:17
Что будет с кроссовком?
00:35
Аришнев
Переглядів 1,1 млн
Level 1 to 100 Mystery Buttons
00:46
A4
Переглядів 3,3 млн
WAV better than FLAC? | Wrong!
3:46
Pops Martin
Переглядів 6 тис.
Audiophile or Audio-Fooled? How Good Are Your Ears?
10:29
Rick Beato
Переглядів 1,8 млн
Big Tech AI Is A Lie
16:56
Tina Huang
Переглядів 31 тис.
Can we hear a difference between MP3 and FLAC?
6:09
Octave Records and DSD Studios
Переглядів 30 тис.
Video Formats, Codecs and Containers (Explained)
12:29
Qencode
Переглядів 325 тис.
Emulating a CPU in C++ (6502)
52:28
Dave Poo
Переглядів 940 тис.
The Illusion Of Digital Audio
18:32
New Mind
Переглядів 593 тис.
Cách sửa này được không các bạn?
1:00
Cơ Khí Toàn Nghĩa
Переглядів 830 тис.
У Nokia 3310 появился конкурент
0:36
AndroHack
Переглядів 1,8 млн
I Was Never Meant to Have This Prototype CPU
21:53
Linus Tech Tips
Переглядів 907 тис.
RTX 4070 Super слишком хороша. Меня это бесит
15:22
Рома, Просто Рома
Переглядів 77 тис.