VideoTexture Bug when adding a HLS Stream on Iphone 12

There currently seems to be a bug with the Videotexture on iPhone 12 Pro Max (Safari)
Expected behavior: (tested on Ipad Pro) is that you add a hls stream to a videoTexture and the video is displayed as a texture.
Actual Behavior: The Audio is working but and in fullscreen, the video seems to play but when looking at the texture there is nothing displayed.

Example Code:
This can be replicated with this playground.
You have to click once before the texture is added to prevent the video not playing due to browser limitations.

The above playground also works only on safari due to lacking native support for hls in other browsers (hls.js) is used there without trouble.

Is it possible it is related to browser support for the feature? Are there any issues in the console?

Will be great if you can elaborate on this one:

What exactly do you mean in fullscreen? Are you entering fullscreen with babylon.js?

I don’t have an iphone so I can’t test it, but the video texture is nothing more than a proxy between an html video input and a texture. If the video input can be displayed using a

Hey RaananW

The video is definitely supported for Apple devices. It is directly taken from the apple hls streaming example page and works for older devices with the newest version of safari. It however does not work for iPhone 12 in a videoTexture.
The example video is the third video “Basic Stream” and is taken by taking the url in the video element directly

With fullscreen, I meant calling element.requestFullscreen() methods of browsers to display the same video element that is shown in the texture in fullscreen. When this is done you can see that the video indeed is supported by the browser. However it is still not displayed in the texture.

I really appreciate the fast response btw.

Seems very odd. I will ask one of the other Jedi masters on the council to test on their iPhones, see if they can come up with a reason as to why the video doesn’t show on the plane, especially if the browser supports the video format.

@sebavan , would you have a few minutes to check?

Looks like it is a common IoS issue unfortunately:

https://bugs.webkit.org/show_bug.cgi?id=215908

Looking at the issue, it looks like a fix might land soon ish at the browser level.

1 Like

Thank you @sebavan for the fast response and good sources.

I just tested this and can confirm that the versions on the phones testet were
iPhone 12: iOS 14 → did not work
iPhone 11: iOS 13 → worked

iPhone 11 with iOS 14 and it did indeed not work there either.

What I don’t understand is what changed between iOS 13 to iOS 14.
In both cases, the video seems to play in fullscreen even though it won’t play on the texture in iOS14.

Those tests were btw done in BrowserStack if you have trouble finding a tool for testing.