Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MediaError] MediaMSEError: 11 while playing av8185201 @ Chrome 56.0.2924.87 (64-bit) #107

Open
jcpwfloi opened this issue Mar 13, 2017 · 4 comments

Comments

@jcpwfloi
Copy link

jcpwfloi commented Mar 13, 2017

Environment

  • Operating System: Mac
  • Browser Version: Chrome 56.0.2924.87 (64-bit)
  • Error occurs when: 4:18

Description

This error displays when playing av8185201 in the environment above at 4:18. However, firefox doesn't seem to have this issue. I guess this is because of something weird from flv.js or chrome MSE API thus further test should be done to position the error.

Error log from console

[flv.js] > Failed to execute 'appendBuffer' on 'SourceBuffer': The HTMLMediaElement.error attribute is not null.
value	@	static.hdslb.com/player/js/bilibiliPlayer.min.js?v=baff6b13:1504
static.hdslb.com/player/js/bilibiliPlayer.min.js?v=baff6b13:1503 Uncaught (in promise) TypeError: Cannot read property 'currentTime' of null
    at i.<anonymous> (static.hdslb.com/player/js/bilibiliPlayer.min.js?v=baff6b13:1503)
    at i.emit (static.hdslb.com/player/js/bilibiliPlayer.min.js?v=baff6b13:1500)
    at static.hdslb.com/player/js/bilibiliPlayer.min.js?v=baff6b13:1501
static.hdslb.com/player/js/bilibiliPlayer.min.js?v=baff6b13:1501 Uncaught (in promise) TypeError: Cannot read property 'emit' of null
    at static.hdslb.com/player/js/bilibiliPlayer.min.js?v=baff6b13:1501
Navigated to http://www.bilibili.com/video/av8185201/?from=search&seid=5523983008649214050
bilibiliPlayer.min.js?v=baff6b13:1504 [flv.js] > Failed to execute 'appendBuffer' on 'SourceBuffer': The HTMLMediaElement.error attribute is not null.
value	@	bilibiliPlayer.min.js?v=baff6b13:1504
value	@	bilibiliPlayer.min.js?v=baff6b13:1500
value	@	bilibiliPlayer.min.js?v=baff6b13:1500
(anonymous)	@	bilibiliPlayer.min.js?v=baff6b13:1503
i.emit	@	bilibiliPlayer.min.js?v=baff6b13:1500
(anonymous)	@	bilibiliPlayer.min.js?v=baff6b13:1501
Promise.resolve (async)		
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
i.emit	@	bilibiliPlayer.min.js?v=baff6b13:1500
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
value	@	bilibiliPlayer.min.js?v=baff6b13:1504
value	@	bilibiliPlayer.min.js?v=baff6b13:1504
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
value	@	bilibiliPlayer.min.js?v=baff6b13:1502
value	@	bilibiliPlayer.min.js?v=baff6b13:1502
(anonymous)	@	bilibiliPlayer.min.js?v=baff6b13:1502
Promise.resolve (async)		
ReadableStreamFulfillReadRequest	@	native ReadableStream.js:337
ReadableStreamDefaultControllerEnqueue	@	native ReadableStream.js:342
bilibiliPlayer.min.js?v=baff6b13:1503 Uncaught (in promise) TypeError: Cannot read property 'currentTime' of null
    at i.<anonymous> (bilibiliPlayer.min.js?v=baff6b13:1503)
    at i.emit (bilibiliPlayer.min.js?v=baff6b13:1500)
    at bilibiliPlayer.min.js?v=baff6b13:1501
(anonymous)	@	bilibiliPlayer.min.js?v=baff6b13:1503
i.emit	@	bilibiliPlayer.min.js?v=baff6b13:1500
(anonymous)	@	bilibiliPlayer.min.js?v=baff6b13:1501
Promise.resolve (async)		
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
i.emit	@	bilibiliPlayer.min.js?v=baff6b13:1500
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
value	@	bilibiliPlayer.min.js?v=baff6b13:1504
value	@	bilibiliPlayer.min.js?v=baff6b13:1504
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
value	@	bilibiliPlayer.min.js?v=baff6b13:1502
value	@	bilibiliPlayer.min.js?v=baff6b13:1502
(anonymous)	@	bilibiliPlayer.min.js?v=baff6b13:1502
Promise.resolve (async)		
ReadableStreamFulfillReadRequest	@	native ReadableStream.js:337
ReadableStreamDefaultControllerEnqueue	@	native ReadableStream.js:342
bilibiliPlayer.min.js?v=baff6b13:1501 Uncaught (in promise) TypeError: Cannot read property 'emit' of null
    at bilibiliPlayer.min.js?v=baff6b13:1501
(anonymous)	@	bilibiliPlayer.min.js?v=baff6b13:1501
Promise.resolve (async)		
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
i.emit	@	bilibiliPlayer.min.js?v=baff6b13:1500
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
value	@	bilibiliPlayer.min.js?v=baff6b13:1504
value	@	bilibiliPlayer.min.js?v=baff6b13:1504
value	@	bilibiliPlayer.min.js?v=baff6b13:1501
value	@	bilibiliPlayer.min.js?v=baff6b13:1502
value	@	bilibiliPlayer.min.js?v=baff6b13:1502
(anonymous)	@	bilibiliPlayer.min.js?v=baff6b13:1502
Promise.resolve (async)		
ReadableStreamFulfillReadRequest	@	native ReadableStream.js:337
ReadableStreamDefaultControllerEnqueue	@	native ReadableStream.js:342
@xqq
Copy link
Contributor

xqq commented Mar 13, 2017

There may be corrupted video frame in the stream which caused decode error in chrome's media pipeline.

I'll check the video in a few days.

@xqq
Copy link
Contributor

xqq commented Mar 13, 2017

chrome://media-internals

image

@jcpwfloi
Copy link
Author

I suggest that skipping random frames while encountering decode error may help resolve the entire crash.

+1s

@jcpwfloi jcpwfloi mentioned this issue Mar 14, 2017
@xqq
Copy link
Contributor

xqq commented Mar 14, 2017

After media segment being appended into MSE sourcebuffers, It is no longer editable or skipable.
When decode error occurred, the media pipeline has been destroyed and unrecoverable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants