No video

What is DPCM? As simple as possible.

  Рет қаралды 16,968

KYLXBN (Kyle)

KYLXBN (Kyle)

2 жыл бұрын

In this video, I try to explain how DPCM or Delta PCM (or Delta Pulse Code Modulation) as implemented by the NES works. This is an overview of the compression method, and avoids diving deep into the technicalities of the implementation.
Correction: Kilohertz ("kHz") is more correctly written with a small "k", like kilogram ("kg")

Пікірлер: 66
@gumbuk9769
@gumbuk9769 2 жыл бұрын
i have to say, i started watching your channel after the "improved NES sound chips" video and i'm actually really glad you made another technical video. i'd love to see you explain some old hardware in your own style.
@gumbuk9769
@gumbuk9769 2 жыл бұрын
correction, the video i first watched is called "how i created the perfect NES soud chip", my bad.
@KYLXBN
@KYLXBN 2 жыл бұрын
Thank you!
@MTGPROD
@MTGPROD 2 жыл бұрын
Me too
@jolex_nerd8132
@jolex_nerd8132 Жыл бұрын
me too! this is nice.
@Shuriken255
@Shuriken255 10 ай бұрын
I wish this video was a thing back when I was figuring out what DPCM is. You explained it so well! The only one thing: the limitation that the sample has to be either one step up or below the previous sample is only applicable for 1-bit DPCM. Giving more bit depth for DPCM channel can allow the sample to stay on the same height or change it's position further. Still, I believe 99% of people who visit this video are interested specifically of how DPCM works specifically for 2a03 sound chip and since the chip uses only 1-bit DPCM, you described how it functions perfectly!
@garmfild5136
@garmfild5136 2 жыл бұрын
If someone like me who has no knowledge of how audio like this works can understand this completely, you explained this extremely well
@KYLXBN
@KYLXBN 2 жыл бұрын
That is very reassuring to hear 😊 Honestly, I am bad at explaining things. But I am glad that I was able to explain it well! Thank you!
@rga87
@rga87 2 жыл бұрын
The music from "Mother" is some of my favorites on the Famicom.
@iloominaty
@iloominaty 2 жыл бұрын
Love to see more technical videos from you. Great work!
@kyoobqa
@kyoobqa 2 жыл бұрын
Beautifully explained. I'd absolutely love to see a more technical explanation from you (because your style is just, mmh), too.
@KYLXBN
@KYLXBN 2 жыл бұрын
I'll be honest and admit that I'm not very good at explaining things... Many other KZfaqrs cover the extremely technical and detailed side of things, so I'm trying to cover the "simplified" explanation. But in the future, maybe we can get more detailed :) Thanks!
@MrDamian1530
@MrDamian1530 2 жыл бұрын
Thanks to you i've started to notice that high pitch sound and i'm really glad you upload some quality stuff to listen :)
@nathantolliver2341
@nathantolliver2341 2 жыл бұрын
Oh wow thank you. I know what the chip does, but videos have confused me and I never got the full picture. Now seeing this I understand a "sample" in this case is not the whole sound, but it's just the parts. PCM vs DPCM. A lot learned! Thanks, you love NES and I love your video!
@gamezvideos2
@gamezvideos2 2 жыл бұрын
Nice explanation. But DPCM stands for Differential Pulse Code Modulation, that's why it can only go one step up or one step down. SNES uses ADPCM in which a sample can go a defined number of steps up or down, not just one like DPCM. DPCM was invented to save space in the cartridge because it only stores the difference of amplitude, not the level, and it's the same with ADPCM.
@binguloid
@binguloid 2 жыл бұрын
Delta generally means difference, so it works the same.
@gamezvideos2
@gamezvideos2 2 жыл бұрын
@@binguloid So SNES also works with a sort of delta modulation, but much better than NES's.
@soundspark
@soundspark 2 жыл бұрын
@@gamezvideos2 They use a form of ADPCM they call Bit Rate Reduction or BRR.
@KogetsuKuzunoha
@KogetsuKuzunoha 2 жыл бұрын
Doesn't SNES also have a midi compartment?
@soundspark
@soundspark 2 жыл бұрын
@@KogetsuKuzunoha It's a custom processor. You could theoretically write a SPC700 program that interprets MIDI data and plays it back using samples.
@berdo2595
@berdo2595 Жыл бұрын
A whole video with Mother music? Gold!
@darktemplari0
@darktemplari0 5 ай бұрын
Great simple explanation.
@banjofries
@banjofries 2 жыл бұрын
That is very interesting and to the point. I learned something I didn't know before. Some specifically identified examples of DPCM sound would've been good to hear though.
@WangleLine
@WangleLine 2 ай бұрын
Really well explained!! Thank you for making this video :3
@noctarin1516
@noctarin1516 9 ай бұрын
awesome vid, this deserves so many more views. i never knew this about DPCM audio, but you put it concisely and easy to understand.
@metarotta
@metarotta 2 жыл бұрын
this is the most easily understandable explanation for dpcm that ive seen by far, nice one 👍
@skejeton
@skejeton Жыл бұрын
Lovely video! Looks like DPCM encodes deltas in bits
@LoudPaul1
@LoudPaul1 2 жыл бұрын
Hmm interesting! How do those rules affect the sound? Could we hear the same sound in both formats to compare? I'd imagine that it has a harder time reproducing higher frequencies. What sample rate does it typically run at?
@luigikoopa8771
@luigikoopa8771 Жыл бұрын
the highest sample rate used by delta pcm is 33143 hz or 33.143 khz.
@ruby_R53
@ruby_R53 Жыл бұрын
> How do those rules affect the sound? no noise can really be generated, 'cos the steps must be fixed, so it'd sound like when it's raining and the windows are closed and you're with headphones on. noise still sounds kinda the same, but much harsher as there's more freedom of moving to different places. if you record noise and transfer that to dpcm, it'll insist on placing samples where it shouldn't have, so there's lotsa innacuracy. > Could we hear the same sound in both formats to compare? i think it's easy to do that on famitracker and an audio recorder, you just press a key on the noise channel while recording it in a very, very short duration, then you just import it to the dpcm channel and then you can compare how they sound like. > I'd imagine that it has a harder time reproducing higher frequencies. not really, 'cos phone lines for example usually have an 8 khz sample rate (YEAH, 8 FRIGGIN' KHZ) and you can still hear clearly what the other person is saying since human voice can't usually make those super high frequencies, so it was wise to choose that low sample rate to make it much cheaper and stuff. > What sample rate does it typically run at? as @luigikoopa8771 mentioned, the highest is 33.143 khz, but if i remember correctly most samples use 22.220 khz. but i'm pretty sure it should be possible to crank that up to 48 khz with some overclocking and stuff.
@evanlee93
@evanlee93 9 ай бұрын
This was so perfectly explained. Thank you!
@БетаТ
@БетаТ 4 ай бұрын
how many Hz DPCM has?
5 ай бұрын
perfectly explained, but can you get trick to get higher quality dpcm, and what about granular noise or slope noise?
@gerioSB
@gerioSB Жыл бұрын
There's a lots of ADPCM Types, like SNES ADPCM, VOX ADPCM (used in oki m6295), YMZ/YMF ADPCM, XA ADPCM (used in playstation sound chip), ADPCM-A, ADPCM-B, QSound ADPCM. Not all ADPCMs are compatible.
@Mcbuzzerr
@Mcbuzzerr 2 жыл бұрын
I love the technical videos!
@dave_s_vids
@dave_s_vids 2 жыл бұрын
I'd never heard of this and it sounds really interesting. Would be great to see some examples and the problems it causes - I presume a constant pitch sound is warbling up and down ever so slightly. Do you even hear that?
@MrCheeze
@MrCheeze 2 жыл бұрын
Moving the amplitude up and down at each step doesn't mean the _pitch_ warbles up and down. What it actually means there's an extremely high pitched, but also extremely quiet, tone playing on top.
@dave_s_vids
@dave_s_vids 2 жыл бұрын
@@MrCheeze interesting, thanks!
@ends9138
@ends9138 2 жыл бұрын
Explained why DPCM handles low frequency samples better
@saricubra2867
@saricubra2867 2 жыл бұрын
ehh? Nope, PCM is far superior.
@jaezu
@jaezu 2 жыл бұрын
@@saricubra2867 Bruh, he probably meant better than high notes...
@saricubra2867
@saricubra2867 2 жыл бұрын
@@jaezu PCM always wins with DSD.
@KYLXBN
@KYLXBN 2 жыл бұрын
@@saricubra2867 Ends was saying that "DPCM handles low frequencies better than high frequencies." He is not comparing DPCM to PCM.
@Gabonation
@Gabonation 10 ай бұрын
lets just ask the kirby adventures composers
@Sheenoharu
@Sheenoharu Жыл бұрын
I was trying to make music but didn't even know what it meant thank you
@maxesreal
@maxesreal 2 жыл бұрын
Are there any bitcrushers that replicate that effect? Or you can do it in Famitracker?
@KYLXBN
@KYLXBN 2 жыл бұрын
I wrote a custom Python script to convert stuff for me. But if I recall correctly, FamiTracker CAN import WAV files for use as DPCM samples. Although, I am not sure if it will allow you to use very long samples.
@TakuikaNinja
@TakuikaNinja 2 жыл бұрын
@@KYLXBN FamiTracker will cut off anything beyond 4081 bytes, which is just over a second on the highest playback rate. Lowering the quality lets you squeeze a bit more out of it. I find that quality 13 is a good compromise between quality and sample size.
@binguloid
@binguloid 2 жыл бұрын
This is because the max sample length on the NES is 4081 bytes. (255*16+1)
@BigOlSmellyFlashlight
@BigOlSmellyFlashlight Жыл бұрын
RJDCM by RushJet1 can do that to a sample of any length
@razi_man
@razi_man Жыл бұрын
DPCM is much more limited compred to PCM. I kind of hated how limited it was when I first realised it. I kinda wonder why some chips uses DPCM instead of PCM. Was it due to hardware limitations?
@KYLXBN
@KYLXBN Жыл бұрын
DPCM is not exactly bad if we had an extremely high sampling rate. For example, DPCM at 192kHz sampling rate would probably sound really close to real 44.1kHz PCM (haven't experimented yet but I am guessing it could sound quite close). The problems come when the sampling rate is quite low and the limitations of DPCM not being able to jump to an arbitrary value immediately begins to show. Most chips actually use an improved version of DPCM called ADPCM (adaptive delta pulse code modulation) which improves the limitation by letting the value jump 1 steps, 2 steps, 4 steps, 8 steps, et cetera depending on which is more appropriate. (It's actually a bit more complicated than that but it's close enough of an explanation). Many YM chips and I think the OKI sampler chips use ADPCM for PCM playback. It's probably just the 2A03 that uses DPCM--probably to keep the chip logic simpler and more cost-effective.
@EvanWiederandersMusic
@EvanWiederandersMusic 2 жыл бұрын
I really wish there was a converter online that could convert mp3s to lower resolutions and make things sound chiptune!
@shmish5818
@shmish5818 2 жыл бұрын
How do you get perfect aplitude levels like no effect of low pass filters or something like that, how do you export the channels with such a raw digital look?
@daniel_007
@daniel_007 2 жыл бұрын
I think it's the first time I saw a result before even searching, I wonder if KZfaq is using mind control lol Thanks for the explanation of DPCM, now I see why the sounds are muffled
@fijiangel801
@fijiangel801 4 ай бұрын
Wouldn’t it just overload it. Plus it sounds better when it’s way overlapped
@Solesteam
@Solesteam 2 жыл бұрын
This is too complicated to understand, I got lost at the first "What is"
@COMMANDER0_F39AD
@COMMANDER0_F39AD Жыл бұрын
WOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOW cooooooooooooooooooooooooooooool
@alfombracitario
@alfombracitario Жыл бұрын
DPCM is binnary...and that
@Splomf
@Splomf Жыл бұрын
This just looks like DSD audio.
@typicsolid1514
@typicsolid1514 2 жыл бұрын
What music did you use in the video?
@KYLXBN
@KYLXBN Жыл бұрын
Hi. This is from the Mother game for the NES.
How I Created the Perfect NES Sound Chip
11:50
KYLXBN (Kyle)
Рет қаралды 2 МЛН
I Tried to Fix Your Biggest Concern with Smooth Triangle Waves
11:49
Fast and Furious: New Zealand 🚗
00:29
How Ridiculous
Рет қаралды 48 МЛН
Идеально повторил? Хотите вторую часть?
00:13
⚡️КАН АНДРЕЙ⚡️
Рет қаралды 17 МЛН
Gli occhiali da sole non mi hanno coperto! 😎
00:13
Senza Limiti
Рет қаралды 10 МЛН
Why This New CD Could Change Storage
14:42
ColdFusion
Рет қаралды 1,3 МЛН
How Old-School Computers Played Sound Samples | MVG
14:25
Modern Vintage Gamer
Рет қаралды 113 М.
Making NES Game #15: RLE compression and DPCM samples
14:12
How The World SOUNDS To Animals
15:59
Benn Jordan
Рет қаралды 3,5 МЛН
Genius & Easily Raising Your IQ
21:07
Jeffery Ford
Рет қаралды 277 М.
NES Development Environment
14:58
NesHacker
Рет қаралды 350 М.
What happens if you connect Windows XP to the Internet in 2024?
20:35
π Tape
10:17
D!NG
Рет қаралды 3,7 МЛН
Reverse emulating the NES to give it SUPER POWERS!
22:21
suckerpinch
Рет қаралды 1 МЛН
Unlocking the Namco N163! The Flaws and How It's Fixed.
9:33
KYLXBN (Kyle)
Рет қаралды 37 М.
Fast and Furious: New Zealand 🚗
00:29
How Ridiculous
Рет қаралды 48 МЛН