Kurento Media Server запись без аудио не работает

Я опробовал следующую демоверсию для Kurento Media Server:

https://github.com/Kurento/kurento-tutorial-js/tree/master/kurento-recorder

Демо по умолчанию работало хорошо. Но когда я изменил index.js записывать с audio: falseЯ начинаю сталкиваться с проблемами.

Я только сделал следующее изменение в index.js код:

var mediaConstraints = {
  audio: false,
  video: {
    width: 320,
    framerate: 15
  }   
};

var options = {
  localVideo: videoInput,
  remoteVideo: videoOutput,
  mediaConstraints: mediaConstraints      
};

Если я запускаю код с audio: true, файл записи, созданный на сервере, правильный.

Однако с audio: false, файл записи всегда 0KB по размеру.

Я не вижу ничего особенного в журналах. Единственный журнал ошибок, который появляется при нажатии кнопки "СТОП". Он ведет себя так, как будто кнопка СТОП уже нажата, хотя это не так.

Подробные журналы размещены здесь: https://pastebin.com/397U14uG

Я уверен, что некоторый поток поступает на сервер, так как мой сервер показывает передачу данных с ifstat команда.

Куренто версия

root@ip-10-0-0-49:/var/log/kurento-media-server# kurento-media-server -v
libdc1394 error: Failed to initialize libdc1394
Version: 6.6.2
Found modules:
        Module: 'core' version '6.6.3'
        Module: 'elements' version '6.6.3'
        Module: 'filters' version '6.6.2'

Версия Ubuntu

Distributor ID: Ubuntu
Description:    Ubuntu 14.04.5 LTS
Release:        14.04
Codename:       trusty

1 ответ

Объект recordderEndpoint имеет атрибут mediaProfile, обозначающий, какой тип данных он ожидает записи. По умолчанию это будет аудио и видео WEBM. Когда ваши медиа-ограничения удаляют аудио, исходящее от клиента, это заставит RecorderEndpoint ждать, пока аудиопоток не начнет запись, и, так как он никогда не придет, файл останется на 0 КБ. Правильный способ справиться с этим - изменить создание конечной точки устройства записи в строке 112 примерно так:

{type: 'RecorderEndpoint', params: {uri : args.file_uri, mediaProfile: 'WEBM_VIDEO_ONLY'}},

Для справки:

Другие вопросы по тегам