paning-"algorithmus"
-
folgendes: ich habe in mein LMMS jetzt paning (also sound stufenlos nach links/mitte/rechts mixen) eingebaut. das funktioniert soweit ganz gut, jetzt will ich nur noch wissen, ob die von mir verwendete verfahrensweise gut ist... ich habe generell die variable paning, die zwischen -100 (links) und +100 (rechts) sein kann. dann habe ich folgenden code
float factor_left = ((-paning)+100)/100; float factor_right = (paning+100)/100; if (factor_left > 1.0) factor_left = 1.0 if (factor_right > 1.0) factor_right = 1.0 ... samples[...left...] = orig_sample[...left...] * factor_left; samples[...right...] = orig_sample[...right...] * factor_right;
somit wird dann z.b. wenn ich paning auf rechts (100) schalte, der kanal rechts auf 100 belassen und links von 100 auf null (je nach stärke) geschaltet. links dann analog dazu das gleiche. bei mitte sind halt beide kanäle 100%. ich weiß halt nicht, ob ich bei mitte 50% oder so nehmen soll und dann proportional den einen kanal erhöhen und den anderen verringern soll oder ob ich das jetzt so lassen soll, wie ich es momentan hab (s.o.)
-
jetzt will ich nur noch wissen, ob die von mir verwendete verfahrensweise gut ist...
Naja, lineares Panen ...
-
was ist daran (also exponentiell schätz ich mal) besser??
-
Hör's dir an.
-
Hi
also es ist nunmal so, das der Mensch lautstärke nicht linear wahrnimmt sondern log bzw pot (je nachdem von welcher seite man das betrachtet).
also exponetiell wird nix, man muss mit der basis 10 arbeiten. normal misst man in db die wären . 20 * log (a1/a2) . (nzw 10 * fall bei leistung) und db werte sind linear zum Hörempfinden.