Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Липсинг в реальном времени в AS3 (http://www.flasher.ru/forum/showthread.php?t=215740)

deepNoise 25.10.2019 14:21

Липсинг в реальном времени в AS3
 
Есть такой скрипт:
Код AS3:

var myMic:Microphone = Microphone.getMicrophone();
Security.showSettings(SecurityPanel.MICROPHONE);
myMic.setLoopBack(true);
myMic.setUseEchoSuppression(false);
var sw:Number = stage.stageWidth / 2;
var sh:Number = stage.stageHeight / 2;
 
stage.addEventListener(Event.ENTER_FRAME, stage_EnterFrame);
 
 
function stage_EnterFrame(e:Event)
{
var num:Number = myMic.activityLevel * 4;
trace(num);
 
if(num >= 20){
        talk.play();
}else if(num << 20){
        talk.gotoAndStop(1);
}
 
}&#65279;

В клипе talk анимация открывающегося и закрывающегося рта из пяти кадров.
Когда говоришь в микрофон, проигрывается анимация рта, всё просто.

Подскажите как сделать, чтобы при этом сам микрофон не было слышно?
И чтобы при протяжных звуках рот останавливался в положении открытым.

undefined 26.10.2019 14:08

что значит "чтоб микрофон не было слышно".Он что, звуки какие-то издает?

deepNoise 26.10.2019 17:43

Когда говоришь в микрофон, его почему то слышно во флеше. Я не знаю как это работает, скрипт нашёл в интернете и переделал под себя.
Попробуйте использовать этот скрипт, сами услышите.

undefined 27.10.2019 00:41

Точно не помню,но вроде тут надо на false поменять
Код AS3:

myMic.setLoopBack(true)


deepNoise 27.10.2019 11:30

Нет, если сделать это значение на false, то рот вообще перестаёт шевелиться.
Ещё заметил, что если говорить в пол голоса, то рот шевелиться, а эха микрофона нет.
Эхо появляется только когда говоришь достаточно громко. Как исправить?

undefined 30.10.2019 16:05

у тебя микрофон слышит звук из колонок из-за чего он(звук) многократно усиливается.Отключай setLoopBack и подбирай коэффициенты,чтоб анимация запускалась без усиления

Добавлено через 13 минут
upd:
Цитата:

else if(num << 20){
<< - это оператор битового сдвига,не думаю,что ему тут место

deepNoise 17.11.2019 18:31

Микрофон не слышит звук из колонок, потому что у меня микрофон в наушниках) И я проверял, звук из наушников в микрофоне не слышен.
Насчёт коэффициентов не понял, что именно сделать нужно? Я в AS 3.0 совсем не разбираюсь, только по шаблонам делаю.

undefined 17.11.2019 23:01

Цитата:

И я проверял, звук из наушников в микрофоне не слышен.
В микрофоне не может быть ничего слышно т.к. он не воспроизводит звук.Думаю имелось в виду,что звук от микрофона не слышен в наушниках,но это противоречит изначальному утверждению
Цитата:

Подскажите как сделать, чтобы при этом сам микрофон не было слышно?
Цитата:

Насчёт коэффициентов...
У тебя условие если уровень сигнала от микрофона*4 больше 20,то запускается анимация.Вот этот порог и надо подобрать чтоб анимация запускалась без setLoopBack


Часовой пояс GMT +4, время: 20:57.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.