A non-transitory computer readable storage medium, having a computer program stored therein, the computer program executing a video streaming method after being loaded into a computing apparatus, the video streaming method comprising the steps of:
- determining that a bandwidth between a network interface and a client device is below a threshold;
- receiving an original packet of a video, wherein the original packet comprises a plurality of frames and each of the frames comprises a base layer and an enhancement layer;
- generating a processed packet by dropping the enhancement layer of at least one of the frames;
- generating a virtual desktop infrastructure packet according to the processed packet;
- and
- transmitting the virtual desktop infrastructure packet via a video channel to the client device.