webtor-io/embed-sdk-js

Decoding problem

benjaminkovacevic opened this issue · 2 comments

  1. It often happens that on a playback that is being decoded, usually long sized one, it's lagging-skipping very much at the first minutes of playing.

  2. Switching tabs for a while, leaving the stream going, freezes the video playback, while subtitles and audio work.

magnet:?xt=urn:btih:7AAFCA94ED77AB751EDB21911F87D3E0EE782B69

I noticed this in Console log (related to lagging-skipping)

2) ['hlsError', {…}]0: "hlsError"1: buffer: 1.1639029999999977details: "bufferStalledError"fatal: falsetype: "mediaError"[[Prototype]]: Objectlength: 2[[Prototype]]: Array(0)at: ƒ at()concat: ƒ concat()constructor: ƒ Array()copyWithin: ƒ copyWithin()entries: ƒ entries()every: ƒ every()fill: ƒ fill()filter: ƒ filter()find: ƒ find()findIndex: ƒ findIndex()findLast: ƒ findLast()findLastIndex: ƒ findLastIndex()flat: ƒ flat()flatMap: ƒ flatMap()forEach: ƒ forEach()includes: ƒ includes()indexOf: ƒ indexOf()join: ƒ join()keys: ƒ keys()lastIndexOf: ƒ lastIndexOf()length: 0map: ƒ map()pop: ƒ pop()push: ƒ push()reduce: ƒ reduce()reduceRight: ƒ reduceRight()reverse: ƒ reverse()shift: ƒ shift()slice: ƒ slice()some: ƒ some()sort: ƒ sort()splice: ƒ splice()toLocaleString: ƒ toLocaleString()toString: ƒ toString()unshift: ƒ unshift()values: ƒ values()Symbol(Symbol.iterator): ƒ values()Symbol(Symbol.unscopables): {copyWithin: true, entries: true, fill: true, find: true, findIndex: true, …}[[Prototype]]: Object u @ mediaelement-and-player.js:6853 (anonymous) @ mediaelement-and-player.js:6910 u.emit @ hls.min.js:1 l.emit @ hls.min.js:1 l.trigger @ hls.min.js:1 e._reportStall @ hls.min.js:1 e.poll @ hls.min.js:1 c.checkBuffer @ hls.min.js:1 c.onTickEnd @ hls.min.js:1 c.doTick @ hls.min.js:1 e.tick @ hls.min.js:1 setInterval (async) e.setInterval @ hls.min.js:1 c.startLoad @ hls.min.js:1 (anonymous) @ hls.min.js:1 l.startLoad @ hls.min.js:1 u.onManifestLoaded @ hls.min.js:1 u.emit @ hls.min.js:1 l.emit @ hls.min.js:1 l.trigger @ hls.min.js:1 e.handleMasterPlaylist @ hls.min.js:1 e.loadsuccess @ hls.min.js:1 e.readystatechange @ hls.min.js:1 XMLHttpRequest.send (async) e.loadInternal @ hls.min.js:1 e.load @ hls.min.js:1 _.load @ MediaElement.vue:359 await in _.load (async) load @ MediaElement.vue:344 await in load (async) e.load @ hls.min.js:1 e.onManifestLoading @ hls.min.js:1 u.emit @ hls.min.js:1 l.emit @ hls.min.js:1 l.trigger @ hls.min.js:1 l.loadSource @ hls.min.js:1 i @ mediaelement-and-player.js:6838 i.default.<computed> @ mediaelement-and-player.js:6846 _createPlayer @ mediaelement-and-player.js:6752 (anonymous) @ mediaelement-and-player.js:6736 Promise.then (async) load @ mediaelement-and-player.js:6735 create @ mediaelement-and-player.js:6976 p.mediaElement.changeRenderer @ mediaelement-and-player.js:749 F @ mediaelement-and-player.js:863 set @ mediaelement-and-player.js:787 e @ mediaelement-and-player.js:978 value @ mediaelement-and-player.js:4028 e @ mediaelement-and-player.js:3895 initPlayer @ MediaElement.vue:371 await in initPlayer (async) init @ MediaElement.vue:563 setTimeout (async) mounted @ MediaElement.vue:580 Vt @ vue.runtime.esm.js:1854 Ye @ vue.runtime.esm.js:4219 insert @ vue.runtime.esm.js:3139 x @ vue.runtime.esm.js:6346 (anonymous) @ vue.runtime.esm.js:6565 t._update @ vue.runtime.esm.js:3948 r @ vue.runtime.esm.js:4066 pn.get @ vue.runtime.esm.js:4479 pn.run @ vue.runtime.esm.js:4554 ln @ vue.runtime.esm.js:4310 (anonymous) @ vue.runtime.esm.js:1980 Jt @ vue.runtime.esm.js:1906 Promise.then (async) Kt @ vue.runtime.esm.js:1933 ee @ vue.runtime.esm.js:1990 (anonymous) @ vue.runtime.esm.js:4402 pn.update @ vue.runtime.esm.js:4544 t.$forceUpdate @ vue.runtime.esm.js:3969 f @ vue.runtime.esm.js:3647 (anonymous) @ vue.runtime.esm.js:3669 (anonymous) @ vue.runtime.esm.js:336 Promise.then (async) Me.f @ vue.runtime.esm.js:3692 Me @ vue.runtime.esm.js:3200 (anonymous) @ vue.runtime.esm.js:3422 Re @ vue.runtime.esm.js:3353 t._c @ vue.runtime.esm.js:3491 s @ Player.vue?4364:6 t._render @ vue.runtime.esm.js:3548 r @ vue.runtime.esm.js:4066 pn.get @ vue.runtime.esm.js:4479 pn.run @ vue.runtime.esm.js:4554 ln @ vue.runtime.esm.js:4310 (anonymous) @ vue.runtime.esm.js:1980 Jt @ vue.runtime.esm.js:1906 Promise.then (async) Kt @ vue.runtime.esm.js:1933 ee @ vue.runtime.esm.js:1990 (anonymous) @ vue.runtime.esm.js:4402 pn.update @ vue.runtime.esm.js:4544 lt.notify @ vue.runtime.esm.js:730 set @ vue.runtime.esm.js:1055 SET_SOURCE @ mutations.js:210 (anonymous) @ vuex.esm.js:697 (anonymous) @ vuex.esm.js:389 (anonymous) @ vuex.esm.js:388 L2JU.u._withCommit @ vuex.esm.js:495 L2JU.u.commit @ vuex.esm.js:387 commit @ vuex.esm.js:335 updateSource @ actions.js:733 await in updateSource (async) (anonymous) @ vuex.esm.js:704 L2JU.u.dispatch @ vuex.esm.js:426 dispatch @ vuex.esm.js:332 delivery @ actions.js:180 await in delivery (async) (anonymous) @ vuex.esm.js:704 L2JU.u.dispatch @ vuex.esm.js:426 dispatch @ vuex.esm.js:332 setState @ actions.js:307 await in setState (async) (anonymous) @ vuex.esm.js:704 L2JU.u.dispatch @ vuex.esm.js:426 dispatch @ vuex.esm.js:332 fetchTorrent @ actions.js:521 setTimeout (async) t.default @ grpc-web-client.umd.js:1 (anonymous) @ grpc-web-client.umd.js:1 e.rawOnEnd @ grpc-web-client.umd.js:1 e.onTransportEnd @ grpc-web-client.umd.js:1 (anonymous) @ grpc-web-client.umd.js:1 e @ grpc-web-client.umd.js:1 (anonymous) @ grpc-web-client.umd.js:1 setTimeout (async) t.default @ grpc-web-client.umd.js:1 (anonymous) @ grpc-web-client.umd.js:1 Promise.then (async) e.pump @ grpc-web-client.umd.js:1 (anonymous) @ grpc-web-client.umd.js:1 Promise.then (async) e.pump @ grpc-web-client.umd.js:1 (anonymous) @ grpc-web-client.umd.js:1

It all depends on current server load and speed of BitTorrent peers. If server not able to do real time transcoding, you will encounter such errors. I checked it right now (not so busy hour) and playback works smooth. This issue may occur from time, but I don't see any way to be able to solve it.

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.