Hallo Java-Fans!
Ich versuche derzeit, Sounds die ich auf dem Smartphone abspiele, künstlich im Raum zu verorten indem sich die Stereolautstärke (links oder rechts) bei der Drehung mit dem Smartphone verändert. Dreht sich der Hörer zum Beispiel nach links, wird der Sound auf dem linken Ohr leiser.
Ich kann den Azimuth des Gerätes auslesen mit Werten von 0 bis 359. Weiterhin kann ich die Stereolautstärke einer Soundquelle mit 0.0 bis 1.0 für jeden der beiden Kanäle (links und rechts) separat bestimmen.
Mein Problem ist, dass ich es nicht schaffe, diese 360 Grad-Werte dynamisch auf die Soundlautstärke zu projizieren (also dass sie sich abstufen, statt einfach nur ab einem gewissen Gradwert komplett auf 0 oder 1 zu schalten).
Kann man die Gradveränderung die gemessen wird, nicht irgendwie auf die Lautstärke von links und rechts transportieren?
Ich weiß, das ist ein krasses Thema und es steht nicht fest, dass das so 1 zu 1 in der Realität funktioniert. Ich würde es trotzdem gerne ausprobieren, bin aber kein wirklich guter Mathematiker und noch ziemlich neu in Java.
Habt ihr Ideen / Ansätze, wie so eine Klangverortung (auch wenn sie nur grob ist) in Java Code umsetzbar wäre?
Für eure Vorschläge bedanke ich mich im Voraus
Ich versuche derzeit, Sounds die ich auf dem Smartphone abspiele, künstlich im Raum zu verorten indem sich die Stereolautstärke (links oder rechts) bei der Drehung mit dem Smartphone verändert. Dreht sich der Hörer zum Beispiel nach links, wird der Sound auf dem linken Ohr leiser.
Ich kann den Azimuth des Gerätes auslesen mit Werten von 0 bis 359. Weiterhin kann ich die Stereolautstärke einer Soundquelle mit 0.0 bis 1.0 für jeden der beiden Kanäle (links und rechts) separat bestimmen.
Mein Problem ist, dass ich es nicht schaffe, diese 360 Grad-Werte dynamisch auf die Soundlautstärke zu projizieren (also dass sie sich abstufen, statt einfach nur ab einem gewissen Gradwert komplett auf 0 oder 1 zu schalten).
Kann man die Gradveränderung die gemessen wird, nicht irgendwie auf die Lautstärke von links und rechts transportieren?
Ich weiß, das ist ein krasses Thema und es steht nicht fest, dass das so 1 zu 1 in der Realität funktioniert. Ich würde es trotzdem gerne ausprobieren, bin aber kein wirklich guter Mathematiker und noch ziemlich neu in Java.
Habt ihr Ideen / Ansätze, wie so eine Klangverortung (auch wenn sie nur grob ist) in Java Code umsetzbar wäre?
Für eure Vorschläge bedanke ich mich im Voraus