Cómo normalizar archivos mixtos WAV

Estoy tratando de mezclar dos archivos WAV.

Los archivos WAV están disponibles como matrices de bytes y estoy usando el siguiente código para mezclar los dos.

byte[] byte1 , byte[] byte2

// 44 is header of wav file
for( int i = 44 ; i < byte1.length ; i++){
   byte1[i] = byte1[i] + byte2[i];
}

El código anterior funciona principalmente. Pero cuando el resultado es más que la onda máxima (archivo de audio de 16 bits), tiene ruido. ¿Cómo puedo normalizar el sonido mezclado?

Respuestas a la pregunta(3)

Su respuesta a la pregunta