mirror of
https://github.com/lubosz/overte.git
synced 2025-04-25 00:03:16 +02:00
first changes for new network API
This commit is contained in:
parent
448a0f01b6
commit
3a5701e02e
2 changed files with 65 additions and 62 deletions
|
@ -795,11 +795,11 @@ void AudioClient::handleAudioInput() {
|
|||
|
||||
delete[] inputAudioSamples;
|
||||
|
||||
// Remove DC offset
|
||||
// Remove DC offset
|
||||
if (!_isStereoInput && !_audioSourceInjectEnabled) {
|
||||
_inputGate.removeDCOffset(networkAudioSamples, numNetworkSamples);
|
||||
}
|
||||
|
||||
|
||||
// only impose the noise gate and perform tone injection if we are sending mono audio
|
||||
if (!_isStereoInput && !_audioSourceInjectEnabled && _isNoiseGateEnabled) {
|
||||
_inputGate.gateSamples(networkAudioSamples, numNetworkSamples);
|
||||
|
@ -921,22 +921,23 @@ void AudioClient::processReceivedSamples(const QByteArray& inputBuffer, QByteArr
|
|||
void AudioClient::sendMuteEnvironmentPacket() {
|
||||
auto nodeList = DependencyManager::get<NodeList>();
|
||||
|
||||
QByteArray mutePacket = nodeList->byteArrayWithPopulatedHeader(PacketTypeMuteEnvironment);
|
||||
int headerSize = mutePacket.size();
|
||||
int dataSize = sizeof(glm::vec3) + sizeof(float);
|
||||
|
||||
NodeList::Packet mutePacket = nodeList->makePacket(PacketType::MuteEnvironment, dataSize);
|
||||
|
||||
const float MUTE_RADIUS = 50;
|
||||
|
||||
glm::vec3 currentSourcePosition = _positionGetter();
|
||||
mutePacket.resize(mutePacket.size() + sizeof(glm::vec3) + sizeof(float));
|
||||
memcpy(mutePacket.data() + headerSize, ¤tSourcePosition, sizeof(glm::vec3));
|
||||
memcpy(mutePacket.data() + headerSize + sizeof(glm::vec3), &MUTE_RADIUS, sizeof(float));
|
||||
|
||||
memcpy(mutePacket.payload().data(), ¤tSourcePosition, sizeof(glm::vec3));
|
||||
memcpy(mutePacket.payload() + sizeof(glm::vec3), &MUTE_RADIUS, sizeof(float));
|
||||
|
||||
// grab our audio mixer from the NodeList, if it exists
|
||||
SharedNodePointer audioMixer = nodeList->soloNodeOfType(NodeType::AudioMixer);
|
||||
|
||||
if (audioMixer) {
|
||||
// send off this mute packet
|
||||
nodeList->writeDatagram(mutePacket, audioMixer);
|
||||
nodeList->sendPacket(mutePacket, audioMixer);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -26,60 +26,62 @@
|
|||
// NOTE: if adding a new packet packetType, you can replace one marked usable or add at the end
|
||||
// NOTE: if you want the name of the packet packetType to be available for debugging or logging, update nameForPacketType() as well
|
||||
|
||||
enum PacketType {
|
||||
PacketTypeUnknown, // 0
|
||||
PacketTypeStunResponse,
|
||||
PacketTypeDomainList,
|
||||
PacketTypePing,
|
||||
PacketTypePingReply,
|
||||
PacketTypeKillAvatar, // 5
|
||||
PacketTypeAvatarData,
|
||||
PacketTypeInjectAudio,
|
||||
PacketTypeMixedAudio,
|
||||
PacketTypeMicrophoneAudioNoEcho,
|
||||
PacketTypeMicrophoneAudioWithEcho, // 10
|
||||
PacketTypeBulkAvatarData,
|
||||
PacketTypeSilentAudioFrame,
|
||||
PacketTypeEnvironmentData,
|
||||
PacketTypeDomainListRequest,
|
||||
PacketTypeRequestAssignment, // 15
|
||||
PacketTypeCreateAssignment,
|
||||
PacketTypeDomainConnectionDenied,
|
||||
PacketTypeMuteEnvironment,
|
||||
PacketTypeAudioStreamStats,
|
||||
PacketTypeDataServerConfirm, // 20
|
||||
PacketTypeDomainServerPathQuery,
|
||||
PacketTypeDomainServerPathResponse,
|
||||
PacketTypeDomainServerAddedNode,
|
||||
PacketTypeIceServerPeerInformation,
|
||||
PacketTypeIceServerQuery, // 25
|
||||
PacketTypeOctreeStats,
|
||||
PacketTypeJurisdiction,
|
||||
PacketTypeJurisdictionRequest,
|
||||
UNUSED_6,
|
||||
UNUSED_7, // 30
|
||||
UNUSED_8,
|
||||
UNUSED_9,
|
||||
PacketTypeNoisyMute,
|
||||
UNUSED_10,
|
||||
PacketTypeAvatarIdentity, // 35
|
||||
PacketTypeAvatarBillboard,
|
||||
PacketTypeDomainConnectRequest,
|
||||
PacketTypeDomainServerRequireDTLS,
|
||||
PacketTypeNodeJsonStats,
|
||||
PacketTypeEntityQuery, // 40
|
||||
PacketTypeEntityData,
|
||||
PacketTypeEntityAdd,
|
||||
PacketTypeEntityErase,
|
||||
PacketTypeEntityEdit,
|
||||
PacketTypeOctreeDataNack, // 45
|
||||
PacketTypeStopNode,
|
||||
PacketTypeAudioEnvironment,
|
||||
PacketTypeEntityEditNack,
|
||||
PacketTypeSignedTransactionPayment,
|
||||
PacketTypeIceServerHeartbeat, // 50
|
||||
PacketTypeUnverifiedPing,
|
||||
PacketTypeUnverifiedPingReply
|
||||
namespace PacketType {
|
||||
enum Value {
|
||||
Unknown, // 0
|
||||
StunResponse,
|
||||
DomainList,
|
||||
Ping,
|
||||
PingReply,
|
||||
KillAvatar, // 5
|
||||
AvatarData,
|
||||
InjectAudio,
|
||||
MixedAudio,
|
||||
MicrophoneAudioNoEcho,
|
||||
MicrophoneAudioWithEcho, // 10
|
||||
BulkAvatarData,
|
||||
SilentAudioFrame,
|
||||
EnvironmentData,
|
||||
DomainListRequest,
|
||||
RequestAssignment, // 15
|
||||
CreateAssignment,
|
||||
DomainConnectionDenied,
|
||||
MuteEnvironment,
|
||||
AudioStreamStats,
|
||||
DataServerConfirm, // 20
|
||||
DomainServerPathQuery,
|
||||
DomainServerPathResponse,
|
||||
DomainServerAddedNode,
|
||||
IceServerPeerInformation,
|
||||
IceServerQuery, // 25
|
||||
OctreeStats,
|
||||
Jurisdiction,
|
||||
JurisdictionRequest,
|
||||
UNUSED_6,
|
||||
UNUSED_7, // 30
|
||||
UNUSED_8,
|
||||
UNUSED_9,
|
||||
NoisyMute,
|
||||
UNUSED_10,
|
||||
AvatarIdentity, // 35
|
||||
AvatarBillboard,
|
||||
DomainConnectRequest,
|
||||
DomainServerRequireDTLS,
|
||||
NodeJsonStats,
|
||||
EntityQuery, // 40
|
||||
EntityData,
|
||||
EntityAdd,
|
||||
EntityErase,
|
||||
EntityEdit,
|
||||
OctreeDataNack, // 45
|
||||
StopNode,
|
||||
AudioEnvironment,
|
||||
EntityEditNack,
|
||||
SignedTransactionPayment,
|
||||
IceServerHeartbeat, // 50
|
||||
UnverifiedPing,
|
||||
UnverifiedPingReply
|
||||
};
|
||||
};
|
||||
|
||||
typedef char PacketVersion;
|
||||
|
|
Loading…
Reference in a new issue