@@ -97,24 +97,13 @@ private static AudioMessage convertToAudioMessage (byte[] binaryMessage)
97
97
98
98
private byte [ ] createBinaryMessage ( float [ , ] bufferArray )
99
99
{
100
- var msg = new List < byte > ( ) ;
101
-
102
- var id = ( uint ) _id ;
103
- var chNum = bufferArray . GetLength ( 0 ) ;
104
- var buffLen = bufferArray . GetLength ( 1 ) ;
105
-
106
- msg . AddRange ( id . ToByteArray ( ByteOrder . Big ) ) ;
107
- msg . Add ( ( byte ) chNum ) ;
108
- msg . AddRange ( ( ( uint ) buffLen ) . ToByteArray ( ByteOrder . Big ) ) ;
109
-
110
- chNum . Times (
111
- i =>
112
- buffLen . Times (
113
- j => msg . AddRange ( bufferArray [ i , j ] . ToByteArray ( ByteOrder . Big ) )
114
- )
115
- ) ;
116
-
117
- return msg . ToArray ( ) ;
100
+ return new BinaryMessage {
101
+ UserID = ( uint ) _id ,
102
+ ChannelNumber = ( byte ) bufferArray . GetLength ( 0 ) ,
103
+ BufferLength = ( uint ) bufferArray . GetLength ( 1 ) ,
104
+ BufferArray = bufferArray
105
+ }
106
+ . ToArray ( ) ;
118
107
}
119
108
120
109
private string createTextMessage ( string type , string message )
@@ -130,19 +119,21 @@ private string createTextMessage (string type, string message)
130
119
131
120
private void processBinaryMessage ( byte [ ] data )
132
121
{
133
- var msg = convertToAudioMessage ( data ) ;
134
- if ( msg . user_id == _id )
122
+ var msg = BinaryMessage . Parse ( data ) ;
123
+
124
+ var id = msg . UserID ;
125
+ if ( id == _id )
135
126
return ;
136
127
137
128
Queue queue ;
138
- if ( _audioBox . TryGetValue ( msg . user_id , out queue ) ) {
139
- queue . Enqueue ( msg . buffer_array ) ;
129
+ if ( _audioBox . TryGetValue ( id , out queue ) ) {
130
+ queue . Enqueue ( msg . BufferArray ) ;
140
131
return ;
141
132
}
142
133
143
134
queue = Queue . Synchronized ( new Queue ( ) ) ;
144
- queue . Enqueue ( msg . buffer_array ) ;
145
- _audioBox . Add ( msg . user_id , queue ) ;
135
+ queue . Enqueue ( msg . BufferArray ) ;
136
+ _audioBox . Add ( id , queue ) ;
146
137
}
147
138
148
139
private NotificationMessage processTextMessage ( string data )
0 commit comments