mirror of https://github.com/vector-im/riot-web
Merge pull request #2197 from matrix-org/hs/object-urls-video
Use createObjectURL instead of readAsDataURL for videospull/21833/head
commit
aea9dbe1b8
|
@ -153,24 +153,17 @@ function loadVideoElement(videoFile) {
|
||||||
// Load the file into an html element
|
// Load the file into an html element
|
||||||
const video = document.createElement("video");
|
const video = document.createElement("video");
|
||||||
|
|
||||||
const reader = new FileReader();
|
// Wait until we have enough data to thumbnail the first frame.
|
||||||
reader.onload = function(e) {
|
video.onloadeddata = function() {
|
||||||
video.src = e.target.result;
|
URL.revokeObjectURL(video.src);
|
||||||
|
deferred.resolve(video);
|
||||||
// Once ready, returns its size
|
|
||||||
// Wait until we have enough data to thumbnail the first frame.
|
|
||||||
video.onloadeddata = function() {
|
|
||||||
deferred.resolve(video);
|
|
||||||
};
|
|
||||||
video.onerror = function(e) {
|
|
||||||
deferred.reject(e);
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
reader.onerror = function(e) {
|
video.onerror = function(e) {
|
||||||
deferred.reject(e);
|
deferred.reject(e);
|
||||||
};
|
};
|
||||||
reader.readAsDataURL(videoFile);
|
|
||||||
|
|
||||||
|
// We don't use readAsDataURL because massive files and b64 don't mix.
|
||||||
|
video.src = URL.createObjectURL(videoFile);
|
||||||
return deferred.promise;
|
return deferred.promise;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue