我有以下代码作为音频RTP数据包发送一些DTMF数字:
int count=0
for(int j = 0; j < samples; j++)
{
waves = 0;
// dtmf tone 1
waves += sin( ((PI * 2.0f / 8000) * 697.0f) * count );
waves += sin( ((PI * 2.0f / 8000) * 1209.0f) * count);
waves *= 8191.0f; //amplitude
++count;
values[j] = (SInt16)waves;
}
我正在用程序生成数字。这段代码基本上将2个正弦波相加并应用缩放。这将产生16位PCM数据,然后可以对其进行编码。采样率是8K以作为RTP分组进行发送。
我做得对吗?