This paper introduces a dynamic bandwidth allocation algorithm in a video streaming multicast system. The approach is to introduce the vibration of received video quality into the QoS metric and make the receivers more negative in subscribing higher layers when bandwidth increases. A simulated annealing algorithm is applied in the server side to find the optimal allocation schema within the concurrent network situation at run time. Simulated experiments on NS-2 have been carried out to validate the algorithm. The result shows an improvement of 6.8 percents increase in received data rate and 6.0 percents decrease in data loss rate.