javascript - 根据网络带宽自动选择合适的视频质量?

标签 javascript jquery ruby-on-rails html ruby-on-rails-4

我有 3 种类型的视频:

  • 720x720,
  • 480x480 和
  • 320x320。

如何根据用户的网络吞吐量自动选择视频质量?

最佳答案

第一步

在您的服务器上的某处上传大小约为 1Mb 的图像。您必须知道图像的确切字节大小和图像的 URL。

第 2 步

var imageAddr = "IMAGE_URL_HERE";
imageAddr += "?n="+Math.random();
var startTime, endTime;
var downloadSize = SIZE_OF_IMAGE_IN_BYTES;
var download = new Image();
download.onload = function () {
    endTime = (new Date()).getTime();
    showResults();
}
startTime = (new Date()).getTime();
download.src = imageAddr;

function showResults() {
    var duration = (endTime - startTime) / 1000; //Math.round()
    var bitsLoaded = downloadSize * 8;
    var speedBps = (bitsLoaded / duration).toFixed(2);
    var speedKbps = (speedBps / 1024).toFixed(2);
    var speedMbps = (speedKbps / 1024).toFixed(2);

    if(speedMbps<1){
    //LOAD_SMALL_VIDEO
    }

    else if(speedMbps<2){
    //LOAD_MEDIUM_VIDEO
    }

    else {
    //LOAD_LARGE_VIDEO
    }

}

关于javascript - 根据网络带宽自动选择合适的视频质量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21819548/

相关文章:

ruby-on-rails - 在 Rails 3 中添加来自 URL 的图像作为附件

javascript - 当对话框在 IE11 中再次出现时按钮不会更改为禁用

javascript - Jquery .on ("click") 函数仅触发一次

javascript - Nodemailer - 如何在 jade 中向模板电子邮件添加附件

javascript - 导出为 .txt 并排显示所有 <p> 行,而不是逐行显示 javascript jquery

javascript - Django : static files are not loaded

javascript - 在一个函数中获取多个 JSON 文件

ruby-on-rails - 如何解决这个问题?无法为 UsersController 找到 "Unknown action The action ' 索引”

javascript - 使用jQuery控制video标签

ruby-on-rails - Rails - 如何在模型中获取完整的 URL