游戏蛮牛学习群(纯技术交流,不闲聊):159852603
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:2287

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 2282|回复: 36

[枫叶飘零] Photon之Photon Voice 实时语音应用案例Demo

[复制链接]  [移动端链接]
排名
1619
昨日变化
3

54

主题

249

帖子

1833

积分

Rank: 9Rank: 9Rank: 9

UID
6728
好友
23
蛮牛币
6505
威望
0
注册时间
2013-10-30
在线时间
683 小时
最后登录
2018-8-15

专栏作家社区QQ达人

发表于 2018-2-7 22:00:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
本帖最后由 枫叶飘零 于 2018-2-8 11:53 编辑

Photon Voice 应用案例Demo演示场景展示了如何实现:
试试语音——即按即说功能。
团队语言——私人语音聊天。
Photon之Photon Voice For PUN
在本文档中,我们将介绍如何使用Photon Voice 每个功能。
01.png
Push-to-Talk Mode一键通模式

按需传输语音:
将PhotonVoiceSettings.AutoTransmit设置为false。
当你想启动传输设置PhotonVoiceRecorder.Transmit为true。
停止传输将其设置回false。
在demo中,我们使用键盘按键和用于UI按钮进行广播(“TalkToAll”,每个加入的用户号码“X”的“TalkToX”)达到即按即说实时语音,实现游戏中全部人都可以听到,使用PushToTalkOn和PushToTalkOff方法。
音频组揭秘

Photon Voice使用音频组分隔互斥的“语音频道”或“语音目标”。 音频组基于Photon LoadBalancing的“兴趣组”。 以下是如何使用这些语音组来:

选择“听谁”

每个用户需要订阅自己感兴趣的语音群组。默认情况下,所有用户都会收听音频群组0,该群组可以被视为全球语音群组。 如果您想收听发送给其他群组的语音,则需要订阅。 您也可以取消订阅以前订阅的订阅。 做这一切的操作是:
PhotonVoiceNetwork.Client.ChangeAudioGroups(byte[] groupsToRemove, byte[] groupsToAdd);
选择“与谁交谈”
每个用户需要决定要将音频传送到哪个语音组。 目标音频组可以使用以下设置:
photonVoiceRecorder.AudioGroup = targetAudioGroup;
示例

在任何情况下,您都会收听默认音频组0,并且可以同时将语音传送到单个音频组。 用例可以分为三个不同的类别:

1.只听默认组

A.只说默认组

这是默认行为。 如果你想从另一个设置切换回来:
PhotonVoiceNetwork.Client.GlobalAudioGroup = 0;
在这种情况下,无需调用PhotonVoiceNetwork.Client.ChangeAudioGroups或设置PhotonVoiceRecorder.AudioGroup,因为它是在您的内部完成的。

B.与自定义小组交谈
// unsubscribe from all groups
PhotonVoiceNetwork.Client.ChangeAudioGroups(new byte[0], null);

// set target AudioGroup
photonVoiceRecorder.AudioGroup = targetAudioGroup;
2.收听您所说的同一个音频组

对于这个特定的用例,有一个快捷方式可以在这个单输入/输出组之间进行切换:
PhotonVoiceNetwork.Client.GlobalAudioGroup = targetAudioGroup;
在这种情况下,无需调用PhotonVoiceNetwork.Client.ChangeAudioGroups或设置PhotonVoiceRecorder.AudioGroup,因为它是在您的内部完成的。

3.听多个组

A.听所有可用的组
// subscribe to all groups
PhotonVoiceNetwork.Client.ChangeAudioGroups(null, new byte[0]);

// set target AudioGroup
photonVoiceRecorder.AudioGroup = targetAudioGroup;
你可以跟除你听的人以外的其他人说话。即groupsToListenTo不能包含targetAudioGroup。

演示我们如何使用音频组

Photon语音即按即说演示提供了两种语音聊天选项:

“MuteOthers”已启用:对应于第3.A(上述)情况。当PushToTalkScript.MuteOthersWhileTalking等于true时,我们调用PushToTalkScript.KeepOnlyOneGroup((byte)CurrentTargetGroup);.
“MuteOthers”被禁用:对应于情况n°2(以上)。当PushToTalkScript.MuteOthersWhileTalking等于false时,我们调用PushToTalkScript.SubscribeToAllPrivateGroups();.
“MuteOthers”模式可以随时使用UI切换进行更改。

演示中的音频组是这样设计的:

我们有4个用户的房间。
我们使用默认组0作为目标音频组进行广播。
我们需要6个自定义私人音频组:对于每一对用户,我们计算一个独特的组码。
当本地用户加入房间时,它订阅先前加入的人的音频组。
当新的远程用户加入房间时,本地用户订阅相应的音频组。请参阅PushToTalkScript.OnPhotonPlayerConnected。
当远程用户离开房间时,本地用户从相应的音频组中取消订阅。请参阅PushToTalkScript.OnPhotonPlayerDisonnected。
下面是我们如何获得两个玩家(本地和远程)之间私人语音聊天的音频组:
02.png
例如:用户1和2的音频组是12。

另一个方式

“计算”私人语音组的另一种可能的方法是使用用户号码作为音频组:

每个用户订阅一个音频组,其代码等于其用户编号。
无论何时您想与远程用户交谈,您都将目标音频组(仅限PhotonVoiceRecorder.AudioGroup)设置为目标用户编号。
优点

较少的音频组:我们需要与用户一样多的音频组。
更少的音频组切换:单个音频组订阅和不退订。
缺点

你不能让任何其他用户不说话。 你会听到任何想私下和你谈话的人。




回复

使用道具 举报

7日久生情
2536/5000
排名
3505
昨日变化
1

2

主题

1780

帖子

2536

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
241666
好友
0
蛮牛币
10199
威望
0
注册时间
2017-9-6
在线时间
362 小时
最后登录
2018-6-7
发表于 2018-2-8 08:37:03 来自Mobile--- | 显示全部楼层
感谢分享

回复

使用道具 举报

排名
1619
昨日变化
3

54

主题

249

帖子

1833

积分

Rank: 9Rank: 9Rank: 9

UID
6728
好友
23
蛮牛币
6505
威望
0
注册时间
2013-10-30
在线时间
683 小时
最后登录
2018-8-15

专栏作家社区QQ达人

 楼主| 发表于 2018-2-8 08:45:22 | 显示全部楼层
关注我们公众号PhotonServer获取等多新鲜资讯。

回复 支持 反对

使用道具 举报

5熟悉之中
573/1000
排名
4048
昨日变化

1

主题

63

帖子

573

积分

Rank: 5Rank: 5

UID
159593
好友
0
蛮牛币
1030
威望
0
注册时间
2016-7-30
在线时间
177 小时
最后登录
2018-8-20
发表于 2018-2-8 10:40:02 | 显示全部楼层
有没有具体的案例可以下载呢 unity的小demo也可以嘛 是不是成了伸手党

回复 支持 反对

使用道具 举报

排名
920
昨日变化
1

16

主题

1104

帖子

3031

积分

Rank: 9Rank: 9Rank: 9

UID
68430
好友
12
蛮牛币
10818
威望
0
注册时间
2015-1-14
在线时间
807 小时
最后登录
2018-8-17
发表于 2018-2-8 16:52:15 | 显示全部楼层
Photon 寻路该怎么处理?  

回复 支持 反对

使用道具 举报

7日久生情
3152/5000
排名
2218
昨日变化

0

主题

2101

帖子

3152

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
219676
好友
1
蛮牛币
2429
威望
0
注册时间
2017-7-12
在线时间
467 小时
最后登录
2018-8-20

活力之星

发表于 2018-2-8 17:02:54 | 显示全部楼层
谢谢分享

回复

使用道具 举报

7日久生情
2536/5000
排名
3505
昨日变化
1

2

主题

1780

帖子

2536

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
241666
好友
0
蛮牛币
10199
威望
0
注册时间
2017-9-6
在线时间
362 小时
最后登录
2018-6-7
发表于 2018-2-9 08:22:25 来自Mobile--- | 显示全部楼层
感谢分享

回复

使用道具 举报

5熟悉之中
781/1000
排名
4260
昨日变化

0

主题

182

帖子

781

积分

Rank: 5Rank: 5

UID
134727
好友
0
蛮牛币
429
威望
0
注册时间
2016-1-14
在线时间
283 小时
最后登录
2018-8-19
发表于 2018-2-9 08:47:58 | 显示全部楼层
感谢分享

回复

使用道具 举报

7日久生情
2651/5000
排名
2692
昨日变化

0

主题

1885

帖子

2651

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
185339
好友
0
蛮牛币
3865
威望
0
注册时间
2016-11-20
在线时间
270 小时
最后登录
2018-8-20
发表于 2018-2-9 09:42:56 | 显示全部楼层
谢谢分享

回复

使用道具 举报

6蛮牛粉丝
1100/1500
排名
3072
昨日变化
16

7

主题

201

帖子

1100

积分

Rank: 6Rank: 6Rank: 6

UID
241851
好友
0
蛮牛币
3847
威望
0
注册时间
2017-9-6
在线时间
458 小时
最后登录
2018-8-20
发表于 2018-2-9 09:47:09 | 显示全部楼层
感谢分享

回复

使用道具 举报

7日久生情
1586/5000
排名
1143
昨日变化
1

0

主题

194

帖子

1586

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
148134
好友
0
蛮牛币
2586
威望
0
注册时间
2016-5-10
在线时间
456 小时
最后登录
2018-5-11
QQ
发表于 2018-2-9 09:52:19 | 显示全部楼层
感谢分享
[发帖际遇]: harytian 乐于助人,奖励 2 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

4四处流浪
318/500
排名
7479
昨日变化
1

0

主题

107

帖子

318

积分

Rank: 4

UID
248343
好友
0
蛮牛币
597
威望
0
注册时间
2017-10-12
在线时间
59 小时
最后登录
2018-5-10
发表于 2018-2-9 10:22:39 | 显示全部楼层
v5v5v5v5v5v5v5v5

回复 支持 反对

使用道具 举报

5熟悉之中
862/1000
排名
5714
昨日变化
47

2

主题

314

帖子

862

积分

Rank: 5Rank: 5

UID
238701
好友
1
蛮牛币
763
威望
0
注册时间
2017-8-21
在线时间
324 小时
最后登录
2018-8-20
发表于 2018-2-9 14:06:46 | 显示全部楼层
{:107:}

回复

使用道具 举报

7日久生情
2229/5000
排名
3072
昨日变化
2

8

主题

1105

帖子

2229

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
168159
好友
4
蛮牛币
5130
威望
0
注册时间
2016-9-12
在线时间
670 小时
最后登录
2018-8-20
发表于 2018-2-9 15:26:14 | 显示全部楼层

回复

使用道具 举报

2初来乍到
124/150
排名
14355
昨日变化
1

0

主题

44

帖子

124

积分

Rank: 2Rank: 2

UID
11054
好友
1
蛮牛币
134
威望
0
注册时间
2013-12-24
在线时间
30 小时
最后登录
2018-8-3
发表于 2018-2-9 17:02:23 | 显示全部楼层
good!good!good!good!good!good!good!good!good!good!good!good!good!good!good!good!

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 返回顶部 返回列表