Je voudrais mixer un tableau d'octets audio, mais je n'ai pas réussi à additionner le tableau (notez que j'ai déjà ajouté des octets silencieux de 0 comme padding avant). Je un ArrayList
de byte[]
qui contient:Mixte byte array android
- le premier byte [] est en-tête (44 octets).
- ci-dessous byte [] sont tableau d'octets de données brutes à mélanger
Voici mon code:
ArrayList<byte[]> ListAudio = new ArrayList<byte[]>();
byte[] header= WriteHeader(); //wav header 44 bytes
ListAudio.add(header);
for (byte[] b : audioTreatment.ListDataByte) {
ListAudio.add(b);
}
//calculate total length of audio
int length = 0;
for (byte[] array : ListAudio) {
length += array.length;
}
final int len = length;
final byte[] mixBytes = new byte[len];
for (byte[] array : ListAudio) {
for (int i = 44; i < len; ++i) {
mixBytes[i] += array[i];
// mixBytes[i]=(byte) ((bytes1[i]+bytes2[i])/2);
}
}
J'ai trouvé quelque part que la méthode de mélanger tableau d'octets numérique est:
mixBytes[i]=(byte) ((bytes1[i]+bytes2[i])/2);
Je n'arrive pas à inclure le calcul ci-dessus, pour additionner le tableau d'octets. Comment puis-je additionner le tableau d'octets de mon ArrayList?
Uhm, quelle était la question? –
Martin Frank, j'ai édité ma question, je vous remercie –