Dash-Industry-Forum / dash.js

A reference client implementation for the playback of MPEG DASH via Javascript and compliant browsers.
http://reference.dashif.org/dash.js/nightly/samples/dash-if-reference-player/index.html
Other
5.16k stars 1.68k forks source link

dash-if audio support #922

Closed JieGhost closed 8 years ago

JieGhost commented 8 years ago

Hi guys. I wonder if dashif player support MPEG-2 AAC.

I have a content with MPEG-2 AAC audio, I set codecs to be "mp4a.67" in mpd file, when I try to play the content, I got following error:

Video Element Error: MEDIA_ERR_DECODE Debug.js:116 [video] stop Debug.js:116 [audio] stop Debug.js:116 Video Element Error: MEDIA_ERR_SRC_NOT_SUPPORTED

I checked the following document: "Guidelines for Implementation: DASH-IF Interoperabilty Points", It seems DASH-IF standard only support MPEG-4 AAC. I just want to confirm that.

Thank you!

davemevans commented 8 years ago

See @wilaw 's comment regarding codec compatibility: https://github.com/Dash-Industry-Forum/dash.js/issues/546#issuecomment-101721084

You don't mention which UA you are using but desktop Chrome, for example, reports MPEG2 AAC compatibility - perhaps it's a media error?

JieGhost commented 8 years ago

Thank you for the link! I am using Chrome on Mac.

Maybe the content is not right, however, I have tried same dash content on VLC and castlab players, both of them can play. Also, I have played the entire fragmented MP4 in Chrome, it can also play.

I am wondering if anyone knows how Dash.js player is presenting content to browser and why only dash.js cannot play the content.

Thank you very much!

wilaw commented 8 years ago

@JieGhost - if you are getting a MEDIA_ERR_SRC_NOT_SUPPORTED error, then that is coming from the source buffer, meaning that the MSE implementation does not like the codec for whatever reason. The way to figure out if this is a dash.js error is to try your same mpd on other MSE-players, such as bitmovin http://www.dash-player.com/demo/manifest-test/ or shaka https://shaka-player-demo.appspot.com/. (not VLC or castlabs, which are not MSE-based). If it works under those players in Chrome, then we have a dash.js problem which we need to fix and that can be accelerated by providing online access to your manifest.

-Will

JieGhost commented 8 years ago

@wilaw Will, thanks for your reply. I have tried the players you mentioned, I believe the error is coming from MSE. Is there a way to find out why MSE does not like the content?

wilaw commented 8 years ago

Not really – its implemented internally by the browser. For that you should file a bug with Chromium. https://code.google.com/p/chromium/issues/list . Make it easy for them to reproduce. Since it happens with Shaka too, you can file another bug there https://github.com/google/shaka-player/issues. They don’t have any more control over MSE than we do, although they theoretically sit closer to the Chrome guys.

-Will

From: JieGhost Reply-To: "Dash-Industry-Forum/dash.js" Date: Tuesday, December 8, 2015 at 2:07 PM To: "Dash-Industry-Forum/dash.js" Cc: Will Law Subject: Re: [dash.js] dash-if audio support (#922)

@wilawhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_wilaw&d=CwMCaQ&c=96ZbZZcaMF4w0F4jpN6LZg&r=KkevKJerDHRF9WRs8nW8Ew&m=ssy7ahwwRcrztkO7hpUs7ZZCC2ym1BgQrfMefkNdxzo&s=Cs8Z3yvRRKXqoGktQ6msTA16nCi5Yx1JiZKKizd0dEQ&e= Will, thanks for your reply. I have tried the players you mentioned, I believe the error is coming from MSE. Is there a way to find out why MSE does not like the content?

— Reply to this email directly or view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_Dash-2DIndustry-2DForum_dash.js_issues_922-23issuecomment-2D163033396&d=CwMCaQ&c=96ZbZZcaMF4w0F4jpN6LZg&r=KkevKJerDHRF9WRs8nW8Ew&m=ssy7ahwwRcrztkO7hpUs7ZZCC2ym1BgQrfMefkNdxzo&s=5V4jwY3r5takjM3ttsWPUNyYYYksMus7izc3W7z4suk&e=.

JieGhost commented 8 years ago

Ok got it. Thank you very much for your help!

EurekaWoo commented 7 years ago

I met a similar problem, It seems that dash,js does not support dolby audio. In the above issues, I see there is dolby extension. Can it just work by adding profile attribute "http://dashif.org/guidelines/dashif#ec-3" in mpd ? @bbcrddave Can u help me, thanks!

[3258717] MediaSource is open! [3258718] Duration successfully set to: 9007199254740991 [3258720] Added 0 inline events [3258722] video codec: video/mp4;codecs="avc1.4d401e" [3258751] audio codec: audio/mp4;codecs="ac-3" [3258752] audioCodec (audio/mp4;codecs="ac-3") is not supported. [3258753] No text data. [3258754] No fragmentedText data. [3258754] No embeddedText data. [3258755] No muxed data.

davemevans commented 7 years ago

The browser provides codec support, not dash.js. The "not supported" message is generated as a result of querying for browser support.

You can't just add an attribute to the manifest, you need to use a user agent which provides the audio codec.

EurekaWoo commented 7 years ago

OK, Thanks. I'll ask if they change the audio codecs.