Микширование |
Предыдущая Содержание Следующая |
![]() |
Микширование выполняется путем суммирования отсчетов двух потоков. Следует учитывать возможность клипирования уровня, поэтому необходимо иметь запас по уровню и производить микширование желательно на уровнях менее -6 дБ. Реализацияpublic static short[] mix(short[] snd1, short[] snd2) { short[] mix = new short[Math.min(snd1.length, snd2.length)]; for( int i = 0; i < Math.min( snd1.length, snd2.length ); ) { int s1 = snd1[i]; int s2 = snd2[i]; int d = s1 + s2; if( d > 32767 ) d = 32767; if( d < -32768 ) d = -32768; mix[i++] = (short)d; } return mix; } |
Предыдущая Содержание Следующая |