我在signalR工作,我想通過分割不同部分的視頻文件將視頻文件從一個客戶端發送到另一個客戶端。 我已經通過分割圖像src數據發送了圖像,並在另一個客戶機上接收了圖像。如何使用JavaScript將視頻文件轉換爲字符串?
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發送。直到所有字節被讀取。接收端可以將這些字節值組合成整個文件(您可以編寫這樣一個應用程序,或者將它們粘貼到某個十六進制編輯器中)。 –