Multimedia applications are currently being deployed over dynamic and heterogeneous environments. They operate on devices with diverse computation capabilities in terms of processing, storage and display capabilities. In such environments, resource availability is subject to unexpected fluctuations (such as network bandwidth, battery life-time, CPU, etc.). This obliges applications to reconfigure their behavior accordingly in order to maintain an acceptable Quality of Service (QoS). This paper addresses this aspect and describes a framework for a reconfigurationbased QoS management in multimedia streaming applications. Our objective is to relieve developers from dealing with the complexity of multimedia applications and their reconfiguration requirements. The framework provides a high-level specification language enabling an easy description of applications and their reconfiguration policies. A powerful component-based implementation is used for mapping specifications into run-time applications. Several experiments in different scenarios are reported to argue our design choices, and to show the impact of reconfigurations on the perceived QoS.