【发布时间】:2016-02-29 17:27:31
【问题描述】:
我在 signalR 工作,我想通过将视频文件拆分为不同部分来将视频文件从一个客户端发送到另一个客户端。 我已经通过拆分图像 src 数据发送了图像,并在另一个客户端上接收到了。
document.getElementById("fileUpload").addEventListener("change", readImage, false);
function readImage() {
if (this.files && this.files[0]) {
var FR = new FileReader();
FR.onload = function (e) {
var img = new Image();
img.onload = function () {
var imageString = img.src.toString()
var spliceStr = "";
var i = 0;
while (i < imageString.length)
{
spliceStr = imageString.substring(i, (i+50000));
ImageSpliceArray.push(spliceStr);
i = i + 50000;
}
$("#imageId").html('<img src="' + img.src + '"/>');
testR.server.hello("Start", imageString.length,"");
testR.server.hello("FragmentCount", ImageSpliceArray.length,"");
for(k=0;k<ImageSpliceArray.length;k++)
{
testR.server.hello("FragmentData", ImageSpliceArray[k], k);
}
testR.server.hello("Done", "", "");
};
img.src = e.target.result;
};
FR.readAsDataURL(this.files[0]);
}
}
现在我想为视频做同样的事情。我阅读了来自input type ="file" 的视频。然后我知道将该视频放在 html 视频元素中,但我希望视频的所有数据都以字符串格式通过将该字符串拆分为不同部分来将该视频发送到另一个视频。
注意:SignalR 用于将文本从一个客户端发送到另一个客户端。数据大小约为(50kb)。
【问题讨论】:
-
那么为什么不从源视频文件中读取 50 000 个字节并发送字节值文本(例如:“FF-A0-17-AF-BC”等),读取下一个 50kb 发送。依此类推,直到读取所有字节。接收方可以将这些字节值组合到整个文件中(您编写这样的应用程序,或者将它们粘贴到一些十六进制编辑器中)。
标签: javascript html video signalr video-processing