This explanation sounds believable, but I think it's important to mention the basic math of the salary cap:
NFL salary cap is $155M across 53 players = $3M/player
NBA salary cap is $95M across 14 players = $6.7M/player. But actually it is a soft cap so the teams can spend a lot more in extreme cases.
MLB has no salary cap.