声音数据看起来如何?

时间:2019-10-22 03:09:56

标签: r image audio

我阅读了计算机here中的数字表示声音的方式。

我发现通常的表示是,我们每秒得到[-32767,32767]之间的44,100个数字。

然后在我的想象中,必须有一个大的单列矩阵,对吗?

我是R用户,所以用R说话,声音数据为3秒,

s <- 3
sound <- matrix(0, ncol = 1, nrow = 44100 * s)
nrow(sound)
#> [1] 132300

具有132,300行的单列矩阵。

真的是这样吗?

例如,如果我的头像是256 * 256,我想在脑海中找到一些类似的图片,

如果我们用RGB图像,我们将得到3个矩阵,每个矩阵为256 * 256。

关于声音,我们会得到一个长长的专栏吗?当我再次考虑这个问题时,它甚至根本不是矩阵。这是专栏。

我是对的吗?在互联网上找不到类似的数据集。

任何建议都将受到欢迎。谢谢。

1 个答案:

答案 0 :(得分:0)

在该链接的问题的早期创建的原始格式看起来很像单维数组。也许发送到扬声器以发出声音的信号也可以类似地表示。

但是由于多种原因,您不太可能在计算机上找到看起来像这样的文件:

  • 声音可以以不同的位深度存储-每个“数字” CD音频轨道有多少位,深度为16位,但是您可以有8位或32位等。在这些数字的直接流中,您需要一些如何知道读到下一个数字的距离,以便需要在某个地方保护信息的安全。
  • 采样率可能会有所不同。如果您有代表音频信号的数字序列,那么您需要知道每个数字持续多长时间。
  • 声音通常更复杂。您可以拥有立体声或5声道之类的音响,而不是一个音源,因此系统需要能够存储/解码要在特定时间听到的声音的多条信息
  • 很多声音是重复性的,因此通常可以从压缩中受益。

因此,大多数声音都以压缩格式存储,其中包括有关如何解码的包装信息。包装信息包括如何解码不同的音频通道,使用了哪种压缩等。

您可能会找到的最接近的文件是.wav文件(Windows)或.aiff(Mac)。但是,即使这些都包含一些元数据(采样率和开始的位深度)。