避免在Playfab Party Party声音Unity SDK带有光子的声音-PUN 2

发布于 2025-01-27 15:45:31 字数 2027 浏览 4 评论 0原文

我已经在Windows上测试了一个用户,另一个用户在Android设备上测试了一个。我离开计算机,以确保笔记本电脑不会收到任何音频。当我在Android设备上交谈时,我可以听到自己的声音,反之亦然。我认为这在我可以听到自己的声音的两个应用程序中会引起回声。

我应该如何设置只有同一网络上其他人才能听到我的声音的聊天权限?

另外,如果任何玩家加入已经创建的网络,假设第五人加入Playfab Party功能,则第五播放器称其为“ onelemoteplayerjojojojoine ofemoteplayerjoine oferemoteplayerJojo”,“对同一网络中的每个其他播放器进行回调。

(我使用的是unity playfab sdk带有光子-pun 2。和两个播放器在同一房间和同一场景。)

这是onemoteplayerjoine的函数:

private void OnRemotePlayerJoined(object sender, PlayFabPlayer player)
{    
    SDK.PartyChatControlGetPermissions(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle, player._chatControlHandle,
        out PARTY_CHAT_PERMISSION_OPTIONS options);
 
    options = PARTY_CHAT_PERMISSION_OPTIONS.PARTY_CHAT_PERMISSION_OPTIONS_SEND_AUDIO |
              PARTY_CHAT_PERMISSION_OPTIONS.PARTY_CHAT_PERMISSION_OPTIONS_RECEIVE_AUDIO;
    
    SDK.PartyChatControlSetPermissions(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle, player._chatControlHandle,
        options);
}

这​​是onnetworkjojo的函数:

private void OnNetworkJoined(object sender, string networkId)
{
    SDK.PartyChatControlSetAudioInput(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle,
    PARTY_AUDIO_DEVICE_SELECTION_TYPE.PARTY_AUDIO_DEVICE_SELECTION_TYPE_SYSTEM_DEFAULT, null, null);
SDK.PartyChatControlSetAudioOutput(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle,
    PARTY_AUDIO_DEVICE_SELECTION_TYPE.PARTY_AUDIO_DEVICE_SELECTION_TYPE_SYSTEM_DEFAULT, null, null);
 
SDK.PartyChatControlGetPermissions(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle, null,
    out PARTY_CHAT_PERMISSION_OPTIONS options);
 
options = PARTY_CHAT_PERMISSION_OPTIONS.PARTY_CHAT_PERMISSION_OPTIONS_SEND_AUDIO |
          PARTY_CHAT_PERMISSION_OPTIONS.PARTY_CHAT_PERMISSION_OPTIONS_RECEIVE_AUDIO;
 
SDK.PartyChatControlSetPermissions(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle, null,
    options);
}

如果您有任何其他信息,请不要犹豫问。

I have tested one user on Windows and the other on Android Device. I went away from my computer for making sure that my Laptop does not receive any audio. When I talk on my Android Device, I can hear my own voice and vice-versa. I think this makes echoes while on two applications I can hear my own voice.

How should I set the chat permission for that only the other persons on the same network can hear my voice?

Also if any player joins to a network that has already been created, let's say the fifth person joined for PlayFab Party Features, that fifth player calls "OnRemotePlayerJoined" callback for every other player in the same network.

(I am using Unity PlayFab SDK with Photon - PUN 2. And two players are in the same room and the same scene.)

Here is the OnRemotePlayerJoined function:

private void OnRemotePlayerJoined(object sender, PlayFabPlayer player)
{    
    SDK.PartyChatControlGetPermissions(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle, player._chatControlHandle,
        out PARTY_CHAT_PERMISSION_OPTIONS options);
 
    options = PARTY_CHAT_PERMISSION_OPTIONS.PARTY_CHAT_PERMISSION_OPTIONS_SEND_AUDIO |
              PARTY_CHAT_PERMISSION_OPTIONS.PARTY_CHAT_PERMISSION_OPTIONS_RECEIVE_AUDIO;
    
    SDK.PartyChatControlSetPermissions(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle, player._chatControlHandle,
        options);
}

Here is the OnNetworkJoined function:

private void OnNetworkJoined(object sender, string networkId)
{
    SDK.PartyChatControlSetAudioInput(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle,
    PARTY_AUDIO_DEVICE_SELECTION_TYPE.PARTY_AUDIO_DEVICE_SELECTION_TYPE_SYSTEM_DEFAULT, null, null);
SDK.PartyChatControlSetAudioOutput(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle,
    PARTY_AUDIO_DEVICE_SELECTION_TYPE.PARTY_AUDIO_DEVICE_SELECTION_TYPE_SYSTEM_DEFAULT, null, null);
 
SDK.PartyChatControlGetPermissions(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle, null,
    out PARTY_CHAT_PERMISSION_OPTIONS options);
 
options = PARTY_CHAT_PERMISSION_OPTIONS.PARTY_CHAT_PERMISSION_OPTIONS_SEND_AUDIO |
          PARTY_CHAT_PERMISSION_OPTIONS.PARTY_CHAT_PERMISSION_OPTIONS_RECEIVE_AUDIO;
 
SDK.PartyChatControlSetPermissions(PlayFabMultiplayerManager.Get().LocalPlayer._chatControlHandle, null,
    options);
}

If you have any additional info, please do not hesitate to ask.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

So尛奶瓶 2025-02-03 15:45:31

无论如何,如果您找不到它,这就是我解决的方法:

我自己的声音在Playfab Party Party声音统一SDK带有光子-PUN 2

In any case If you could not find it out, here is how I solved it:

Avoid hearing my own voice on PlayFab Party Voice Unity SDK with Photon - PUN 2

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文