Video streams, either in form of on-demand streaming or 
live streaming, usually have to be transcoded based on the characteristics of clients' devices. 
Transcoding is a computationally expensive and time-consuming operation; therefore, streaming service providers currently store numerous transcoded versions of the same video to serve different types of 
client devices. Due to the expense of maintaining and upgrading storage and computing infrastructures, many streaming service providers recently are becoming reliant on cloud services. However, the challenge in utilizing cloud services for video 
transcoding is how to deploy 
cloud resources in a cost-efficient manner without any major 
impact on the quality of video streams. To address this challenge, in this paper, the Cloud-based 
Video Streaming Service (CVSS) architecture is disclosed to transcode video streams in an on-demand manner. The architecture provides a platform for streaming service providers to utilize 
cloud resources in a cost-efficient manner and with respect to the 
Quality of Service (QoS) demands of video streams. In particular, the architecture includes a QoS-aware scheduling method to efficiently map video streams to 
cloud resources, and a cost-aware dynamic (i.e., elastic) resource provisioning policy that adapts the resource acquisition with respect to the 
video streaming QoS demands. 
Simulation results based on realistic cloud traces and with various 
workload conditions, demonstrate that the CVSS architecture can satisfy 
video streaming QoS demands and reduces the incurred cost of 
stream providers up to 70%.