av-merge: Make segment fetching message more useful

Signed-off-by: Jesús <heckyel@hyperbola.info>
This commit is contained in:
James Taylor 2021-08-27 19:18:18 -07:00 committed by Jesús
parent 1c591b4457
commit ae68c84a26
No known key found for this signature in database
GPG Key ID: F6EE7BC59A315766

View File

@ -197,6 +197,8 @@ Stream.prototype.appendSegment = function(segmentIdx, chunk) {
if (this.closed)
return;
this.reportDebug('Received segment', segmentIdx)
// cannot append right now, schedule for updateend
if (this.sourceBuffer.updating) {
this.reportDebug('sourceBuffer updating, queueing for later');
@ -308,6 +310,11 @@ Stream.prototype.segmentInBuffer = function(segmentIdx) {
Stream.prototype.fetchSegment = function(segmentIdx) {
entry = this.sidx.entries[segmentIdx];
entry.requested = true;
this.reportDebug(
'Fetching segment', segmentIdx, ', bytes',
entry.start, entry.end, ', seconds',
entry.tickStart/this.sidx.timeScale, entry.tickEnd/this.sidx.timeScale
)
fetchRange(
this.url,
entry.start,
@ -350,14 +357,12 @@ Stream.prototype.reportError = function(...args) {
// Utility functions
function fetchRange(url, start, end, cb) {
reportDebug('fetchRange', start, end);
return new Promise((resolve, reject) => {
var xhr = new XMLHttpRequest();
xhr.open('get', url);
xhr.responseType = 'arraybuffer';
xhr.setRequestHeader('Range', 'bytes=' + start + '-' + end);
xhr.onload = function() {
reportDebug('fetched bytes: ', start, end);
//bytesFetched += end - start + 1;
resolve(cb(xhr.response));
};