Проиграть звук через TAPI.

Тема в разделе "Библиотеки и интерфейсы", создана пользователем serega28, 14 май 2010.

  1. serega28

    serega28 Member

    Публикаций:
    0
    Регистрация:
    26 мар 2007
    Сообщения:
    115
    Адрес:
    Minsk
    Когда в структуре LPLINECALLPARAMS ставлю следующие значения

    Код (Text):
    1. lpCallParams->dwBearerMode = LINEBEARERMODE_VOICE;
    2. lpCallParams->dwMediaMode  = LINEMEDIAMODE_DATAMODEM;
    Тогда с помощью lineMakeCall идет набор номера. Но чтобы проиграть звук
    мне надо использовать следующие параметры:

    Но почему-то тогда в обратной функции LINE_REPLY мне сразу же выдает ошибку LINEERR_OPERATIONFAILED.

    Может кто подскажет в чём дело.
     
  2. serega28

    serega28 Member

    Публикаций:
    0
    Регистрация:
    26 мар 2007
    Сообщения:
    115
    Адрес:
    Minsk
    С этим проблема решена. Теперь другая возникла проблема.

    Когда в callback приходит сообщение LINECALLSTATE_CONNECTED я получаю ID устройства
    Код (Text):
    1. lineGetID(hLine, NULL, hCall, LINECALLSELECT_LINE , vs, "wave/out");
    2. dwWaveOutID = (DWORD) *((DWORD *)((LPSTR)vs + vs->dwStringOffset));
    В dwWaveOutID есть значение 0x00000018. Дальше когда я делаю так:
    Код (Text):
    1. mRet = waveOutOpen(NULL, dwWaveOutID, (LPCWAVEFORMATEX)waveiocbOut.lpFmt, 0L, 0L, WAVE_FORMAT_QUERY);
    То у меня получается ошибка MMSYSERR_BADDEVICEID. В чём причина?
    Я что lineGetID не втом месте использую?