How does Roon calculate (or look up) dynamic range?

Sounds interesting, how did you go about that?