请问下: 在graphedit 中,render了一个文件。在default directsound device filter进入的时候我得到了,数据。说是PCM格式。
default directsound device filter
input pin:
Major TypeL: Audio
Sub Type: PCMAudio
Format: WaveFormatEx, 44.100KHz, 16bit, stereo
我把通过的PCM数据写入到文件中去了。
请问这些PCM数据的含义是什么哦。
我现在播放一个文件,想得到它的实时音量值(不是音量大小,不知道描述是否准确)。我该怎么做哦。希望大侠们给个思路.
------解决方案--------------------------------------------------------
PCM是流的格式,你主要关注一秒钟有多少KB的数据,然后数据采样率和通道数就可以了。
------解决方案--------------------------------------------------------
...挺简单的,格式是16bit的双声道数据,采样率44.1Khz。
你每次得到4608B的数据,即2304个采样,(因为一个采样16bit,两个字节);又因为是双声道的数据,一般是交织排列的,比如头两个字节看作一个unsigned short型数据,为第一个声道第一个采样的音量值,接下来两个就是第二个声道的第一个采样的值,依次类推即可以得到实时的音量值了……
------解决方案--------------------------------------------------------
再加注,如果你想表现音量大小,可能要从振幅值换算到dB值。