Closed thanawatkie closed 3 years ago
My 2cents: not sure if it's related (and the provided stream doesn't seems to start due to drm) but from my experience (not tested with latest release), I think the buffering is not actually reduced when a QuotaExceededError error is detected.
In the BufferController, QUOTA_EXCEEDED_ERROR_CODE is detected in onAppended and setBufferToKeep/setBufferAheadToKeep are used to reduce buffering, but I think setStableBufferTime/setBufferTimeAtTopQuality/setBufferTimeAtTopQualityLongForm should also be used to ensure there is no prune / exceed the quota / prune infinite loop.
I need to take a look at this. Reducing all the other buffers sizes is a good idea but that shouldn't avoid the player to start after a quota exceeded situation (we are removing the buffer at that point so some time should happen before the buffer limits are reached).
@thanawatkie, could you please check if you can reproduce this problem in #2943? It has a fix for how we deal with parts of the buffer that were removed.
Hello everyone! I've the same issue. I've tried #2943 too but it's still reproduced
Hello, is there any news on this? We're having this issue on the latest release...
+1
Hi, Im experiencing the same bug except with the video buffer, with the same message, causing dash.js to go in a deadlock and request the same chunks indefinitely. Whats the status on this issue?
I'm having the same issue it seems:
[133][BufferController][video] Detected unintended removal from: 9.041666 to 10.375 setting index handler time to 9.041666
It keeps buffering like crazy and makes Firefox crash.
Did anyone solves this? Thanks.
Hi, Im experiencing the same bug except with the video buffer, with the same message, causing dash.js to go in a deadlock and request the same chunks indefinitely. Whats the status on this issue?
Hi, I have the same problem. Do you know how to fix it? Requesting the same chunk in a deadlock state is so annoying :(
This issue has been automatically marked as stale because it has not had recent activity. However, it might still be relevant so please leave a short comment if it should remain open. Otherwise the issue will be closed automatically after two weeks. Thank you for your contributions.
Unstale
Anyone in this thread still facing this problem and can check if it is solved in 4.0:
@dsilhavy How can I install this with npm? :)
The current dev version is not available on npm. You need to clone this repo, checkout the development branch and follow the instructions to build the project.
I have same problems when I try to play very large video. (~30000kbps)
@lifegpc can you share your stream? try to adjust the following values to reduce data in the buffer:
bufferToKeep,
bufferTimeAtTopQuality,
bufferTimeAtTopQualityLongForm,
stableBufferTime
Here is the video.
I create it by using ffmpeg.
command line: ffmpeg -i 00001.mkv -i 00001_opus320.ogg -map 0:0 -map 1:0 -c copy -adaptation_sets "id=0,streams=v id=1,streams=a" -single_file 1 -f dash 00001-big.mpd
Test it on Firefox Nightly (91.0a1 (2021-06-27) (64-bit)
)
@lifegpc can you please check if #3691 solved your issue. it is available in nightly: https://reference.dashif.org/dash.js/nightly/samples/dash-if-reference-player/index.html
@lifegpc can you please check if #3691 solved your issue. it is available in nightly: https://reference.dashif.org/dash.js/nightly/samples/dash-if-reference-player/index.html
Seems works fine.
Fixed in #3691
@dsilhavy are these changes available as part of the dashjs npm module .How can i take these changes as the npm module .
The latest stable version (4.6.0) is available on npm it includes this change: https://www.npmjs.com/package/dashjs?activeTab=versions
@dsilhavy Even after updating to version 4.6.0 the issue of quota Exceed is observed in Firefox 111.0.1 (64-bit)
7401][SourceBufferSink][video] SourceBuffer append failed "QuotaExceededError: Failed to execute 'appendBuffer' on 'SourceBuffer': The SourceBuffer is full, and cannot free space to append additional buffers."
@ParasPidurkar This is not a dash.js issue but rather a configuration platform issue. dash.js adjusts the buffer target once such a message is disptached by the MSE. Try to reduce the buffer target values.
@dsilhavy I have updated the buffer target values after which this issue is not observed on the chrome but observed in firefox. also when i use the ultra hd streams this issue is observed in all the browsers.Not sure what might be the issue .
There is only limited space available which differs between the browsers. UHD typically requires higher bitrates so you need to limit the data that is persisted in the buffers even further. Unfortunately, there is no API to query these limits so it is more or less trial and error.
i'm using Dash player with timingsrc and DRM
getting this error continously
mediasync.js:263 [794192][BufferController][video] Caught error on create SourceBuffer: NotSupportedError: Failed to execute 'changeType' on 'SourceBuffer': Changing to the type provided ('video/mp4;codecs="avc1.64002a"') is not supported.
mediasync.js:263 [794763][BufferController][audio] Caught error on create SourceBuffer: QuotaExceededError: Failed to execute 'addSourceBuffer' on 'MediaSource': This MediaSource has reached the limit of SourceBuffer objects it can handle. No additional SourceBuffer objects may be added.
@dsilhavy please help
@shreyaskaundinya It looks like dash.js is trying to use changeType
and the method is not properly implemented on the platform. Try playing around with useChangeTypeForTrackSwitch
and resetSourceBuffersForTrackSwitch
as documented here: https://cdn.dashjs.org/latest/jsdoc/module-Settings.html
Environment
Steps to reproduce
Please provide clear steps to reproduce your problem The playback stop playing when reaching some point
If the bug is intermittent, give a rough frequency if possible
Observed behaviour
Describe what the player is doing that is unexpected or undesired behaviour. The player buffer indefinite
Console output