One of the most well-known device-to-device scheduling algorithm, used in the FlashLinQ system, provides good performance in terms of the number of activated links. However, it is suboptimum for the transmission of video streams since it does not explicitly consider the quality, or the specific requirements of streaming. We propose an alternative algorithm that consists of a scheduling and a streaming component. The scheduling based on max-independent-set determination, employing message passing. For streaming component, a quality-aware stochastic algorithm is introduced that works based on the queue backlog sizes in each transmitter queue. The framework controls the quality level of each chunk of video in order to maximize the qualities of streamed video subject to queue rate stability.