Comments (9)
@bialasik
without debug logs and streams, it will be difficult to provide help
from hls.js.
The m3u8 looks like that:
#EXTM3U
#EXT-X-TARGETDURATION:1
#EXT-X-ALLOW-CACHE:YES
#EXT-X-MEDIA-SEQUENCE:27
#EXT-X-PROGRAM-DATE_TIME:2015-11-06T13:56:15+00:00
#EXTINF:1,
lslice27.ts?token=z5bcwvkrb9ity
#EXT-X-PROGRAM-DATE_TIME:2015-11-06T13:56:16+00:00
#EXTINF:1,
lslice28.ts?token=z5bcwvkrb9ity
#EXT-X-PROGRAM-DATE_TIME:2015-11-06T13:56:17+00:00
#EXTINF:1,
lslice29.ts?token=z5bcwvkrb9ity
my console.logs: http://pastebin.com/VDh6TxwU
I have wrote the function, which compares data.details.endSN (from Hls.Events.LEVEL_LOADING event) with data.frag.sn (from Hls.Events.FRAG_LOADED event) and if data.frag.sn is smaller than data.details.endSN + 3, then do the recoverMediaError().
In logs, this is 1191 line.
Now, I have few cases:
- everything after that works fine
- it really recovered the stream, but after few seconds it's again freezed and it tries to do recover again, and again, and again...
- the video hasn't recover, but m3u8 parsing is OK
from hls.js.
having 1s fragment with 3 fragments max in your live playlist is quite challenging ...
but anyway on local network it should work.
however I spotted some strange things from your logs
there is a unusual gap between Decoding Time Stamp and Presentation Time Stamp :
see below :
hls.js:1441 parsed data, type/startPTS/endPTS/startDTS/endDTS/nb:video/50.404/52.911/48.734/52.075/2
startPTS - startDTS = 50.404 - 48.734 = 1.67s
this is even bigger than your fragment target duration
this should mess up the fragment drift computing, which is based on PTS ...
from hls.js.
you might try to comment these lines, it might help in your case.
https://github.com/dailymotion/hls.js/blob/master/src/controller/buffer-controller.js#L234-L237
from hls.js.
having 1s fragment with 3 fragments max in your live playlist is quite challenging ...
In what way I should configure my system (slice length and hls.js config) for best options for live streaming with shortest delay as possible? What can I change?
Thank you so much for advice for comment the lines - I'm trying it now. I will notify if that helps.
from hls.js.
Also, I have strange error now:
Uncaught TypeError: Cannot read property 'sn' of undefined (756 in hls.js)
from hls.js.
I've turned off my function for recoverMediaError() (which I described above). For now I have issues with starting of the video again - parsing HLS is OK, but it didn't download any slices.
LOG: http://pastebin.com/uMdxTZFU
from hls.js.
this is weird, last fragment of your playlist keeps being reloaded in loop
hls.js:756 SN just loaded, load next one: 118
hls.js:761 Loading 118 of [116 ,118],level 0, currentTime:2,bufferEnd:3.400
this is printed from here : https://github.com/dailymotion/hls.js/blob/master/src/controller/buffer-controller.js#L252-L258
i don't understand how you can end up on this condition, as in your case it should match this one : https://github.com/dailymotion/hls.js/blob/master/src/controller/buffer-controller.js#L252
could you reproduce this issue directly on http://dailymotion.github.io/hls.js/demo and post logs ?
from hls.js.
closing old issue, please reopen if still reproducible with latest hls/master
from hls.js.
Related Issues (20)
- Implement CMCD next object request (nor) property
- Implement CMCD next range request (nrr) property
- Implement CMCD requested maximum throughput (rpt) property
- Implement CMCD deadline (dl) property HOT 2
- Dolby Vision Profile 8 on LG HOT 9
- It cannot be played in windows browsers, but no error is reported HOT 1
- Transport Stream link fails with Timeout when loading manifest HOT 1
- Malformed sound on Pale Moon HOT 4
- Play error stream MPEG-H Part2/HEVC (H.265) (hevc) HOT 2
- Demux worker will occur warn if use hls.js after typescript build and webpack HOT 8
- I don't understand the Key retrieval process for AES-128 (E-HLS) HOT 11
- EC3 Codec - v1.5.1 throws manifestIncompatibleCodecsError where v1.4.14 used to play ok HOT 5
- Found no media in fragment 486 of level 0 resetting transmuxer to fallback to playlist timing" HOT 2
- Can you make the hls player feature on HomeAttendant add-on?
- Video Buffering Issue with Seek Videos using HLS from Cloudflare Stream in plyr.io HOT 8
- Safari Version 17.2.1 (19617.1.17.11.12) on macOS Sonoma 14.2.1 (23C71) doesn't support mp4a.40.34 HOT 4
- HLS.js 1.5.1 doesn't start auto playing some HLS playlists until the user seeks manually HOT 2
- Add Basic authentication support for HLS demo site
- Error after playing for a while (bufferAppendError) HOT 3
- How to see the version ? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hls.js.