Yes, the documented limit is correct. However, the POST media/upload method also creates media for other APIs (such as the Ads API), so it will not verify every limit in the first place.
Instead, if you want to avoid waiting until calling POST statuses/update to get the error, your code is supposed to verify the file size before uploading it.