Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

NET_TALK_INIT_ERROR (15) IP-Телефония и СКУД

Dahua NetSDK Ошибка 15: NET_TALK_INIT_ERROR — Инициализация двусторонней связи

Обновлено: 24.08.2026 · Официальная документация ↗

Сбои при попытке установить интерком-связь с вызывной панелью VTO или камерой:

  • Функция CLIENT_StartTalkEx возвращает 0 (ошибка), а код ошибки равен 15.
  • Звук с клиентского ПК не передается на динамик камеры или домофона.
  • В системном журнале фиксируется ошибка инициализации аудиоадаптера или драйвера захвата звука.
  • Несовпадение параметров аудио-формата между NetSDK и прошивкой VTO/IPC.

Ошибка NET_TALK_INIT_ERROR (15) свидетельствует о неудачной попытке инициализировать аудиокодек, устройство захвата звука (микрофон) или локальный стек аудиотрансляции.

1. Корректная установка формата передачи аудио

Перед стартом аудиосвязи обязательно запросите у устройства поддерживаемый аудиокодек и передайте его в NetSDK:

// 1. Установка режима кодирования звука на клиенте
NET_AUDIO_FORMAT_EX stAudioFmt = { sizeof(stAudioFmt) };
stAudioFmt.nAudioType = 0; // 0: G.711A, 1: PCM, 2: G.711U, 3: AAC
stAudioFmt.nBitsPerSample = 16;
stAudioFmt.nSamplesPerSec = 8000;

CLIENT_SetDeviceMode(lLoginID, DH_TALK_ENCODE_TYPE, &stAudioFmt);

// 2. Старт голосового интеркома
LLONG hTalkHandle = CLIENT_StartTalkEx(lLoginID, AudioTalkCallBack, (LDWORD)this);
if (hTalkHandle == 0) {
    DWORD err = CLIENT_GetLastError(); // Код 15
}

2. Проверка прав доступа к аудиоустройствам

  • В современных версиях Windows (10/11) и Linux проверьте политики конфиденциальности микрофона (Microphone Privacy Settings). Если доступ процессу к микрофону заблокирован ОС, SDK вернет ошибку 15.
  • Убедитесь, что в системе присутствует физическое или виртуальное устройство захвата аудио (Default Audio Capture Device).

3. Проверка канала интеркома на устройстве

Если вызывная панель (VTO) или IP-камера уже ведут сеанс двусторонней связи с другим оператором/монитором VTH, канал занят. NetSDK вернет ошибку инициализации.

💡 Практика специалистов: Перед вызовом CLIENT_StartTalkEx обязательно отправьте структуру DH_TALK_ENCODE_TYPE через CLIENT_SetDeviceMode, иначе SDK попытается использовать кодек по умолчанию, который может не поддерживаться прошивкой VTO.

Частые вопросы (FAQ)

Какие аудиокодеки поддерживаются для интеркома Dahua?

Наиболее стабильными и универсальными являются G.711A (PCMA), G.711U (PCMU), PCM (16 бит, 8000 Гц) и AAC (для ряда новых прошивок IP-камер).

Почему CLIENT_StartTalkEx падает с ошибкой 15 на серверах без звуковой карты?

NetSDK пытается инициализировать локальный драйвер захвата DirectSound/ALSA. На серверах без физического аудиоинтерфейса необходимо использовать виртуальный аудиодрайвер или кастомную передачу сырых буферов.

Может ли брандмауэр блокировать инициализацию Talk-сессии?

Да, если закрыты порты передачи аудиоданных (по умолчанию TCP/UDP порт 37777 или RTP-порты интеркома).

Нужно ли вызывать CLIENT_RecordStart перед началом разговора?

Только в том случае, если требуется локальная запись разговора в WAV/PCM файл. Для простой передачи голоса достаточно CLIENT_StartTalkEx.

Полезные материалы
Рекомендуем