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

This has been discussed many times in the forum.

See these threads for example.