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

IE11 Live stream playback issue #290

Closed
neilRGS opened this issue Feb 24, 2016 · 23 comments
Closed

IE11 Live stream playback issue #290

neilRGS opened this issue Feb 24, 2016 · 23 comments
Assignees
Labels
status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Milestone

Comments

@neilRGS
Copy link

neilRGS commented Feb 24, 2016

Hi.

I am having trouble with Live stream playback through IE11. The player loads on screen and then nothing further happens.

UPDATE:-----:
Looking in IE developer tools, I can see that the manifest is being read every 10s (approx)

In Edge and Firefox, video and audio chunks are loaded in between the maifest reads. So it looks as through IE is maybe not parsing the manifest. I could be wrong in that assumption, but that's what it looks like.

VOD playback works fine.

Below is the output from the browser support page, viewed through IE11:

Thanks in advance for any advice you can give.

Neil.

========== Browser Support page output ==============
userAgent Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; InfoPath.3; rv:11.0) like Gecko
Required Features FAIL
QoE Stats OK
Subtitles missing
Encrypted Content unknown
Offline Content OK
Requires Polyfills yes
===== =====
HTMLMediaElement (unprefixed)
MediaSource (unprefixed)
Promise (not found)
Uint8Array (unprefixed)
VTTCue (not found)
fullscreenElement ms
fullScreenElement (not found)
CustomEvent (not usable)
indexedDB (unprefixed)
video/webm; codecs="vp8" (not found)
video/webm; codecs="vp9" (not found)
video/mp4; codecs="avc1.42E01E" (supported)
video/mp2t; codecs="avc1.42E01E" (not found)
getVideoPlaybackQuality (unprefixed)
droppedFrameCount (not found)
decodedFrameCount (not found)
generateKeyRequest (not found)
MediaKeys MS
create (not found)
isTypeSupported (unprefixed)
requestMediaKeySystemAccess (not found)
MediaKeySystemAccess (not found)
getConfiguration (not found)
MediaKeySession MS
org.w3.clearkey (not found)
com.widevine.alpha (not found)
com.microsoft.playready (supported)
com.adobe.access (not found)
com.apple.fairplay (not found)

=============== END ============================

@peyoh
Copy link

peyoh commented Feb 24, 2016

@neilRGS,
whatrelease number you are using ? 1.6.2 or 1.6.3 ?

@neilRGS
Copy link
Author

neilRGS commented Feb 24, 2016

@peyoh. Hi. I am using 1.6.3

@peyoh
Copy link

peyoh commented Feb 24, 2016

Please revert to 1.6.2 and try again.

@neilRGS
Copy link
Author

neilRGS commented Feb 24, 2016

@peyoh. Will do. I'll post the result of doing that, here.

@neilRGS
Copy link
Author

neilRGS commented Feb 24, 2016

@peyoh. I have downloaded, built and tried 1.6.2
Unfortunately, no difference in behaviour has been observed.
I will look at it again later today/tomorrow, as I need to jump on to a new task now

Thanks.

@peyoh
Copy link

peyoh commented Feb 24, 2016

@neilRGS Thank you for your time.
I've also tried on IE11 with live profile and the result is the same as yours. I provide also support page output. Hope this can help.

`Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; rv:11.0) like Gecko { manifest: {
 basic: true 
application/dash+xml: false 
application/x-mpegurl: false 
application/vnd.apple.mpegurl: false 
application/vnd.ms-sstr+xml: false 
mpd: false 
m3u8: false
 ism: false } 
media: { basic: true video/mp4; codecs="avc1.42E01E": true 
video/mp4: true 
audio/mp4; codecs="mp4a.40.2": true 
audio/mp4: true video/webm; codecs="vp8": false 
video/webm: false 
video/webm; codecs="vp9": false 
audio/webm; codecs="vorbis": false 
audio/webm: false
 audio/webm; codecs="opus": false
 video/mp2t; codecs="avc1.42E01E": true 
video/mp2t: true 
video/mp2t; codecs="mp4a.40.2": true 
text/vtt: true 
application/mp4; codecs="wvtt": false 
application/mp4: false 
application/ttml+xml: false 
application/mp4; codecs="stpp": false } 
drm: { basic: true 
org.w3.clearkey: false 
com.widevine.alpha: false 
com.microsoft.playready: false
 com.apple.fps.2_0: false 
com.apple.fps.1_0: false 
com.apple.fps: false
 com.adobe.primetime: false
 } supported: true
 } `

BRS,
Peyo

@neilRGS
Copy link
Author

neilRGS commented Feb 25, 2016

Hi @peyoh.
I have cleared my browser cache and tried again this morning with v1.6.2
I get a very similar result, in that a blank player loads and then nothing further happens visually.
The manifest loads and then is reloaded every 10s or so.

I had a look at https://html5test.com/ and it shows that IE11 does not support Promise. As there are plenty of Promises in the Shaka code, perhaps that is a major issue.

If so, I wonder why the Shaka docs suggest that IE11 is ok?

Ultimately, as IE11 is a browser in use by a good many of our clients, I am going to have to find something else which will work without flash being installed.
Do you know of any other libraries that I could try?

Many thanks again for your help and input, it is appreciated.

Neil.

@neilRGS
Copy link
Author

neilRGS commented Feb 25, 2016

Hi @peyoh.
A final note.

I have tried using a polyfill and this now shows in the support page that Required Features is 'OK'.
No change in live streaming though.
I used this: https://github.com/taylorhakes/promise-polyfill

I can rule out encoding issues, because I get successful playback in Firefox, Chrome & Edge with both live and VOD. In IE11 only VOD plays successfully.

So, no further on really, but I wanted to add that extra info, for anyone else reading this, experiencing the same problem.

Many thanks

Neil.

@joeyparrish joeyparrish added this to the v2.0-beta milestone Feb 25, 2016
@joeyparrish joeyparrish added the type: enhancement New feature or request label Feb 25, 2016
@joeyparrish joeyparrish self-assigned this Feb 25, 2016
@joeyparrish
Copy link
Member

@neilRGS @peyoh Shaka support for live on IE11 starts with v2, which has not been released yet.

In v1, we expect that we can set video.currentTime before appending segments. This is not true on IE11. In v2, we no longer have this assumption.

We expect v2 beta to be available in a week or two. Thanks!

@neilRGS
Copy link
Author

neilRGS commented Feb 26, 2016

Hi @joeyparrish
Thank you for the update. That's good to hear!
I will await the release of v2 beta with great anticipation.

If it helps any, I have had a certain amount of success with Dash.js and IE11. It is not production quality though, as it will stream for a while and then seems to get stuck in a loop and then continues etc...
I would obviously prefer to use a single framework if at all possible, and don't want to spend time coercing Dash to work as Shaka is going to be moving in this direction very soon.

Have a good weekend,

Neil.

@joeyparrish
Copy link
Member

Thanks, Neil. We are reasonably confident that v2 will solve this for you, since v2's StreamingEngine already passes all unit and integration tests on IE11. Now we just have to complete the rest of v2! :-)

@neilRGS
Copy link
Author

neilRGS commented Mar 15, 2016

Hi Joey.
I hope everything is going well.

Any update on the release of v2 at all?

Thanks in advance,

Neil.

@joeyparrish
Copy link
Member

We expect a beta by the end of the month, which we will announce on the mailing list.

@joeyparrish joeyparrish modified the milestones: v2.0.0, v2.0-beta Mar 29, 2016
@joeyparrish
Copy link
Member

@neilRGS, can you please try with the latest from master? We just released v2-beta. If it still does not work for you, can you provide a link to your manifest?

@neilRGS
Copy link
Author

neilRGS commented Apr 8, 2016

Will do, Joey
It won't be until Monday, as it is beer o'clock, here in the UK.

@joeyparrish
Copy link
Member

🍻

@neilRGS
Copy link
Author

neilRGS commented Apr 20, 2016

Hi Joey.
Sorry for the delay.

I have just spun up a demo to play with v2.

I have followed the instructions at http://shaka-player-demo.appspot.com/docs/api/tutorial-basic-usage.html but am unfortunately stumped by this error:
myapp.js:7 Uncaught ReferenceError: shaka is not defined

Has the shaka object been renamed to something else in an update, perhaps?

Many thanks and best regards,
Neil

@neilRGS
Copy link
Author

neilRGS commented Apr 20, 2016

UPDATE: Working. ☺ About to do more testing.
I cleared everything out, rebuilt all.py and tried again.

Best regards,

Neil.

@neilRGS
Copy link
Author

neilRGS commented Apr 20, 2016

Hi Joey.
In IE11, the console shows everything as working ok. I am getting video and audio chunks streaming through the player on-screen. It is just showing the poster image with a loading animation.

The manifest is generated by our Wowza server and is this:

+++++++++++++++++++++++++++++++++++++++++++++++
<?xml version="1.0" encoding="UTF-8"?> <MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="dynamic" minimumUpdatePeriod="PT5.013S" publishTime="2016-04-20T09:18:26Z" availabilityStartTime="2016-04-19T13:31:09Z" timeShiftBufferDepth="PT50.0S" suggestedPresentationDelay="PT15.0S" minBufferTime="PT6.0S"> <ProgramInformation> <Title>Stream1</Title> </ProgramInformation> <Location>http://wowza.rgsit.com/LiveSim/_definst_/Stream1/manifest_w2047453045.mpd</Location> <Period id="0" start="PT0.0S"> <AdaptationSet id="0" mimeType="video/mp4" width="512" height="288" par="16:9" frameRate="30" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1"> <SegmentTemplate timescale="90000" media="chunk_ctvideo_cfm4s_rid$RepresentationID$_cs$Time$_w2047453045_mpd.m4s" initialization="chunk_ctvideo_cfm4s_rid$RepresentationID$_cinit_w2047453045_mpd.m4s"> <SegmentTimeline> <S t="6406308000" d="900000"/> <S d="900000"/> <S d="900000"/> <S d="900000"/> <S d="900000"/> </SegmentTimeline> </SegmentTemplate> <Representation id="p0a0r0" codecs="avc1.42c015" sar="1:1" bandwidth="601000" /> </AdaptationSet> <AdaptationSet id="1" mimeType="audio/mp4" lang="eng" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1"> <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/> <SegmentTemplate timescale="48000" media="chunk_ctaudio_cfm4s_rid$RepresentationID$_cs$Time$_w2047453045_mpd.m4s" initialization="chunk_ctaudio_cfm4s_rid$RepresentationID$_cinit_w2047453045_mpd.m4s"> <SegmentTimeline> <S t="3416697856" d="480256"/> <S d="480256"/> <S d="480256"/> <S d="479232"/> <S d="480256"/> </SegmentTimeline> </SegmentTemplate> <Representation id="p0a1r0" codecs="mp4a.40.2" audioSamplingRate="48000" bandwidth="96000"> <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/> </Representation> </AdaptationSet> </Period> </MPD>
+++++++++++++++++++++++++++++++++++++++++++++++

@tdrews tdrews assigned tdrews and unassigned joeyparrish Apr 20, 2016
@tdrews
Copy link
Contributor

tdrews commented Apr 20, 2016

Hi, I am able to reproduce the issue on IE11 on Windows 10. I see that the content works on Chrome Linux and Chrome Windows. Also, I see that the default Wowza test asset works fine on IE11 too. Nothing obvious seems wrong, so I'll have to investigate further.

@tdrews tdrews added type: bug Something isn't working correctly and removed type: enhancement New feature or request labels Apr 26, 2016
@tdrews tdrews removed their assignment Apr 29, 2016
@joeyparrish joeyparrish self-assigned this May 3, 2016
@joeyparrish
Copy link
Member

I am able to reproduce in both IE11 and Edge, but on a system with known-bad clock-sync. If I hack a UTCTiming element into the manifest for clock sync, my client's clock gets adjusted by ~12 seconds and the content plays on both IE11 and Edge. @neilRGS, can you configure Wowza to put a suitable UTCTiming element into the manifest?

@neilRGS
Copy link
Author

neilRGS commented May 3, 2016

I'll take a look and see if I am able to do that.

shaka-bot pushed a commit that referenced this issue May 3, 2016
Without a UTCTiming element in the manifest, a client cannot
synchronize its clock.  This can easily lead to playback failures,
so we warn application developers when we detect this.

Issue #290

Change-Id: Idcb395f5ece67bf2c7d0d984ad277f552d030eb8
@joeyparrish
Copy link
Member

@neilRGS, we've added two things to help with this. One is a warning when UTCTiming is missing, and the other is a config option to specify a clock sync URI outside of the manifest. Please let us know if this helps.

@shaka-project shaka-project locked and limited conversation to collaborators Mar 22, 2018
@shaka-bot shaka-bot added the status: archived Archived and locked; will not be updated label Apr 15, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Projects
None yet
Development

No branches or pull requests

5 participants