2009-04-18 3 views
0

Мне не удалось найти литературу по этому вопросу.Существует ли DTMF API или стандарт, который включает в себя буквы, а также стандартные числовые значения?

+0

Нет, его не gina.dll точно, но контекст определенно связан с программированием для приложений дозвона. – ojblass

ответ

0

DTMF охватывает только цифры 0 для 9 и буквы #, *, A, B, C, и D. Так что, если ваш вопрос существует ли что-нибудь, что поддерживает письма после того, как D , то ответ нет.

0

«DTMF» Touch «Тоны определены в CCITT том VI: Общие рекомендации по телефонной коммутации и сигнализации Рекомендация Q.23: Технические характеристики кнопочных телефонных аппаратов». Этот документ и связанные с ним стандартные документы расскажут вам больше, чем вы хотели бы узнать о тонах DTMF. "

Эта цитата из here. Эта веб-страница охватывает все основы.

1

Ну следующая функция будет генерировать 16-бит, подписанный, линейный PCM, DTMF тон в Java.

public byte[] generateTone(float a, float b) 
{ 
    byte samples[] = new byte[16000]; // Tone data buffer. 
    int frames = samples.length/2;  // Number of frames that fit in the buffer. 

    /* Fill the buffer with the tone data. */ 
    for(int i = 0; i < frames; i++) 
    { 
     /* The 8000 value is the sample rate. */ 
     short value = (short)(32768 + 63 * Math.sin(i * 2 * Math.PI * a/8000) + 63 * Math.sin(i * 2 * Math.PI * b/8000)); 
     samples[i + i] = (byte)(value >>> 8); 
     samples[i + (i + 1)] = (byte)value; 
    } 

    return samples; 
} 

Надеюсь, это поможет ... Просто подключите две частоты в качестве параметров a и b, и вы получите тон. Например, номер один будет сгенерирован как:

byte tone[] = generateTone(697, 1209);