2012-05-03 2 views
2

Мы создаем голосовую беседу с RTMFP с помощью сервера Cumulus. Пользователи соединяются друг с другом, присоединяясь к той же NetGroup.Выход из члена NetGroup приводит к сбою Flash-плагина

Голосовой чат и функции вызова на подписанных NetStreams работают хорошо.

Однако иногда, когда пользователь закрывает окно браузера, плагин Flash всех пользователей в одной и той же NetGroup сбой.

Поскольку сообщения об ошибках не сообщаются, и при запуске приложения Flash из моей IDE (FlashDevelop) сбоя не возникает, я понятия не имею, что происходит. Все, что я знаю, это то, что иногда это происходит, когда пользователь выходит из приложения Flash (закрывает окно/приложение броузера).

Это, как установлено соединение с NetGroup и аудио поток публикации опубликована (после того, как соединение с сервером Cumulus установлено):

_gspecMain = new GroupSpecifier("MainGroup"); 
_gspecMain.multicastEnabled = true; 
_gspecMain.postingEnabled = true; 
_gspecMain.serverChannelEnabled = true; 
_gspecMain.objectReplicationEnabled = false; 
_group = new NetGroup(_netConnection, _gspecMain.groupspecWithAuthorizations()); 
_group.addEventListener(NetStatusEvent.NET_STATUS, handleNetGroupStatus); 

// Audio 
_sendStream = new NetStream(_netConnection, NetStream.DIRECT_CONNECTIONS); 
_sendStream.addEventListener(NetStatusEvent.NET_STATUS, handleNetStreamStatus); 
_sendStream.client = this; 
_sendStream.attachAudio(_mic); 
_sendStream.publish("media"); 

Это как прием NetStream прослушивания публикации одна создаются (всякий раз, когда сосед подключается):

var netStream :NetStream = new NetStream(_netConnection, p_netStatusEvent.info.peerID); 
netStream.addEventListener(NetStatusEvent.NET_STATUS, handleNetStreamStatus); 
netStream.client = this; 
netStream.play("media"); 

Что мог привести к этому? Должен ли я, возможно, сделать что-то особенное, когда будет сообщено, что соседка отключена? Пожалуйста, обратите внимание, что я даже не знаю, произошло ли происшествие до или после любого уведомления ...

+0

Когда вы говорите об аварии, вы имеете в виду весь плагин? Не только приложение? – grapefrukt

+0

Я имею в виду это: http://support.mozilla.org/en-US/kb/The%20Adobe%20Flash%20plugin%20has%20crashed Он работает снова, если вы перезагрузите страницу. – TheSHEEEP

ответ

1

Дополнительную информацию вы можете получить по телефону debugging the crashing plugin. Приложите Visual Studio для обработки plugin-container.exe и, возможно, вы можете разместить здесь дополнительную информацию (используйте pastebin).

Во-вторых, попробуйте Плагин для Flash Player Версия для печати Если в настоящее время вы используете версию отладчика, я предполагаю, но версия отладчика более вероятна в случае сбоя в Firefox. Однако вы можете избежать этого на setting dom.ipc.plugins.enabled.npswf32.dll to false.

Что касается специального режима для отключенных одноранговых сетевых групп в плагине Firefox - я не думаю, что вам нужно что-то делать ... если приложение работает в плагине ActiveX и автономном проекторе Flash Player, но падает только в версии отладчика плагин для Firefox ... Вкратце: Обеспокоитесь только об аварийных выпусках Flash Player.

Другое дело, что я определенно поставил бы - использовать оригинальный Adobe Cirrus или Flash Media Server Enterprise 4.5, а не эквивалент с открытым исходным кодом, пока не найдете ошибку. Даже незначительные изменения в протоколе могут привести к сбою соединения, что приведет к сбою плагина.

Смежные вопросы