Видеочат netstream SoundTransform не работает для регулировки громкости

У меня есть приложение для видеочата, в котором может быть 6 участников. Что я хотел бы сделать, так это дать каждому издателю возможность контролировать громкость своей трансляции. Код у меня выглядит так.

[global]
private var volumeTransform:SoundTransform;

[In the init method where ]
outgoingStream = new NetStream( nc );
....
volumeTransform = outgoingStream.soundTransform;

[In adjustVolume method]
....
volumeTransform.volume = event.value;
outgoingStream.soundTransform = volumeTransform;

Любые идеи, почему это не сработает?

-- ИЗМЕНИТЕ ВОЗМОЖНОЕ РЕШЕНИЕ --
Возможным решением может быть следующее: откалибруйте ползунок и установите усиление микрофона, усиление, равное нулю, эффективно отключает звук, а усиление, равное 100, соответствует полной громкости. Кажется, работает для меня.


person gunz_rozez    schedule 03.01.2012    source источник
comment
Позволяет ли NetStream вообще устанавливать/изменять soundTransform?   -  person iND    schedule 03.01.2012
comment
Да, когда я устанавливаю вывод отладки для объекта netstream, я вижу значение, которое я установил Logger.debug("NS : NS : " + ObjectUtil.toString(outgoingStream.soundTransform.volume));   -  person gunz_rozez    schedule 03.01.2012
comment
Я не вижу в этом ничего очень плохого. . . извините, я не могу больше помочь. Может быть, опубликовать больше кода?   -  person iND    schedule 04.01.2012
comment
Есть ли что-то конкретное, что вы хотели бы видеть в коде? Единственное, чем я занимаюсь, — это отправка прямых трансляций в кодировке H.264.   -  person gunz_rozez    schedule 04.01.2012
comment
Нет, если объем outgoingStream.soundTransform действительно меняется, то я бы не знал, куда смотреть дальше. Я бы определенно начал несколько сеансов отладки и пошагово прошелся по коду, если это возможно, а также использовал бы такие инструменты, как FireBug Firefox, для наблюдения за трафиком. . . или, имея доступ к серверу, запускать различные тесты на этом конце. Я в растерянности, и я надеюсь, что кто-то другой может заполнить пробелы.   -  person iND    schedule 04.01.2012
comment
Возможным решением может быть следующее: откалибруйте ползунок и установите усиление микрофона, усиление, равное нулю, эффективно отключает звук, а усиление, равное 100, соответствует полной громкости. Кажется, работает для меня.   -  person gunz_rozez    schedule 04.01.2012
comment
Я решил ту же проблему только с усилением микрофона #. Также странно для меня, почему изменение SoundTransform NetStream не влияет на захваченный объем =/   -  person average dev    schedule 05.01.2012


Ответы (1)


Я не думаю, что вы можете сделать то, о чем просите, вам нужно использовать свойство Microphone.gain (как указано в отредактированном комментарии выше).

Вы могли бы написать некоторый код для отправки сообщений между участниками чата, позволяющий администратору (или всем пользователям) изменять усиление микрофона другого человека.

person Sunil D.    schedule 30.03.2012
comment
это действительно сработало вместо Soundtransform, спасибо - person Michael L Watson; 02.09.2017