No ears are exactly alike is true. But all ears perceive the same sounds.
As well, things like Atmos DO give absolutely control. With Atmos a developer cannot tell the system which speaker or speakers a sound plays out of. The Atmos engine does that. Thus it has a few requirements.
- Speakers at multiple heights and multiple points around a room.
- You want at least 7.1.4 (12 speakers) but can make do with 7.1.2 or even 5.1.2 although coverage will be worse.
- More speakers would offer more coverage, but 7.1.4 is sufficient for good coverage and good quality.
- The Atmos system then uses those speakers to calibrate for each individual room including obstacles in the room.
- If you skip the calibration phase like some people do then your setup won't correctly reproduce the location of the sound.
- This also allows it to modify the audio in order to both account for reflection off of surfaces (like the floor) as well as use them to enhance the sound coverage.
- Similar to HRTF, Atmos shapes/alters the sound coming out of each speaker to similar what sounds between speakers would sound like when it gets to a person's head.
While HRTF can give a convincing 3D audio soundscape, it still can't match a good Atmos system.
OTOH, not everone has an Atmos setup or can use an Atmos setup (like mobile devices or due to cost reasons), so HRTF is getting more widespread use.
That said, because Atmos is an audio engine, it is also easily adapted to HRTF because the only thing that is important when encoding for Atmos is the
location of the sound.
That actually makes it easier for developers to deploy 3D sound stages if they wish to target both home stereo systems AND HRTF headphones.
And just as HRTF support and implementations are continually being improved Atmos and things similar to it will continue to be improved.
Regards,
SB