An Adaptive Digital Dynamic Range Controller