数字音频基础知识
我最近开始研究 Linux[ALSA] 中的声卡驱动程序。
是否可以建议一个链接或参考,让我可以获得良好的音频基础知识,例如:
采样率、位大小等。
我想确切地知道样本如何存储在计算机上的音频文件中,以及样本(数字)的反向存储方式被播放。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Audacity 教程 是一个很好的起点。另一个涵盖类似内容的介绍。 PureData flossmanuals 上的教程也是一个很好的起点。一旦您掌握了基础知识,维基百科就是一个很好的来源。
音频通过模数转换器 (ADC) 输入计算机。数字音频通过数模转换器(DAC)输出。
采样率是每秒测量和以数字方式存储模拟信号的次数。您可以将采样率视为音频信号的时间分辨率。位大小是用于存储每个样本的位数。您可以将其视为类似于图像像素的颜色深度。
大卫·科特尔的 SuperCollider 书还有一本很棒的数字音频简介。
The Audacity tutorial is a good place to start. Another introduction that covers similar ground. The PureData tutorial at flossmanuals is also a good starting point. Wikipedia is a good source once you have the basics down.
Audio is input into a computer via an analog-to-digital converter (ADC). Digital audio is output via a digital-to-analog converter (DAC).
Sample rate is the number of times per second at which the analog signal is measured and stored digitally. You can think of the sample rate as the time resolution of an audio signal. Bit size is the number of bits used to store each sample. You can think of it as analogous to the color depth of an image pixel.
David Cottle's SuperCollider book also has a great introduction to digital audio.
我也遇到过同样的情况,当然这种信息是存在的,但你需要先做一些研究。这是我发现的:
数字音频处理是DSP(数字信号
加工)。
这句话取自一本非常有用的指南,该指南深入涵盖了每个主题,称为“科学家和工程师指南”
数字信号处理”。尽管您并不是专门要求 DSP,但有一章涵盖了所有与数字音频相关的主题,并提供了很好的解释。
您可以在第 22 章 - 音频处理中找到它,涵盖所有这些主题:
声音是如何人工产生的基础。
音色。
我们开始将其转化为电子方面。
进行数字化处理。
为电信而压缩。
声音,如滤波器、合成等。
声音治疗和其他主题。
它解释了现实世界中声音的基础知识(如果您可能想看一下),然后解释了声音如何在计算机中处理,包括您所要求的内容。
但在维基百科中还可以找到其他更具体的主题,比如“数字音频”页面解释了该主题的每个细节,该网站可以用作进一步研究的参考,刚开始您可以找到一些采样率、声波、数字形式、标准、位深度、电信的链接,有一些东西你可能需要更多地学习,比如奈奎斯特-香农定理、傅里叶变换、复数等等,但这仅用于你可能不会复习或使用的非常具体和高级的主题。但我提一下只是为了以防万一你有兴趣。尽管您需要学习一些数学知识,但您可以在 DSP 指南和维基百科中找到信息。
我一直使用Python来通过代码来开发和研究这些主题,因为它有很多有用的库,如numpy、声音设备、scipy等。然后你就可以开始用声音进行电镀了。在 YouTube 上,您可以找到大量视频来指导您如何执行此操作。我发现了合成、过滤器、语音识别,你可以只用代码创建 wav 文件,这很棒。而且我也见过 C/C++、Javascript 和其他语言的项目,因此它可能会帮助您继续学习和编写有趣的东西。
互联网上还有一些其他参考资料,但您可能需要知道您在寻找什么,这本书和维基百科页面对我来说将是最好的起点,因为它为您提供了基础知识并深入解释了每个主题。然后,根据您想要实现的目标,您可以开始寻找更多信息。
I was in the same situation, and certainly this kind of information is out there but you need to do some research first. This is what I have found:
Digital Audio processing is a branch of DSP (Digital Signal
Processing).
This quote was taken from a very helpful guide that covers every topic in depth called the “The Scientist and Engineer's Guide to
Digital Signal Processing”. And though you are not asking for DSP specifically there’s a chapter that covers all digital audio related topics with a very good explanation.
You can find it in the chapter 22 - Audio Processing, and covers all this topics:
basis of how then the sound is then generated artificially.
timbre.
we start to translate it to the electronic side.
processed digitally.
compressed for telecommunications.
sound, like filters, synthesis, etc.
for sound treatment and other topics.
It explains the basics of sound in the real world, in case you might want to take a look, and then it explains how the sound is processed in the computer including what you are asking for.
But there are other topics that can be found in wikipedia that are more specific, let’s say the “Digital audio” page that explains every detail of this topic, this site can be used as a reference for further research, just in the beginning you can find a few links to sample rate, sound waves, digital forms, standards, bit depth, telecommunications, etc. There are a few things you might need to study more, like the nyquist-shannon theorem, fourier transforms, complex numbers and so on, but this is only used in very specific and advanced topics that you might not review or use. But I mention it just in case you are interested. You can find information in both the DSP guide book and wikipedia although you need to study some math.
I’ve been using python to develop and study these subjects with code since it has a lot of useful libraries, like numpy, sound device, scipy, etc. And then you can start plating with sound. On youtube you can find lots of videos that also guide you on how to do this. I’ve found synthesis, filters, voice recognition, you can create wav files with just code, which is great. But also I’ve seen projects in C/C++, Javascript, and other languages, so it might help you to keep learning and coding fun things.
There are a few other references across the internet but you might need to know what you are looking for, this book and the wikipedia page would be the best starting points for me, since it gives you the basics and explains in depth every topic. Then depending on the goal you want to achieve you can then start looking for more information.