Embedded twitch player in chromium error #6000


#1

Since about a week ago the embedded twitch player no longer works in my CEF-based application. CEF does not support mp4 because of licensing and lawyer related causes, so i’m guessing that’s why. This used to work however so i wonder if there is some check failing right now that causes twitch to send mp4 encoded video instead of free alternatives.
Could this maybe be fixed by changing the user-agent?
Did twitch stop supporting other codecs than mp4 altogether?


#3

The only official methods for embedding Twitch is documented here

So the player should just look after itself.


#4

I am using the official script as described in the documentation.

I’m using this in a chromium based application, this is the open-source version of google chrome.

The problem is that twitch no longer plays inside this browser and gives this error. Presumably because this browser doesn’t have the proprietary mp4 codec.
I was wondering if this is because other codecs are no longer supported or if there is simply an error in twitch on this less common situation.

This is the page in question: https://runeapps.org/apps/alt1/twitch/
It is normally run inside desktop application with chromium 75, user agent: “Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36”


#5

Twitch removed the Flash embeddable player and now only uses HTML5.

This is a big problem, because my CEF application also can’t play streams through HTML5. Flash is the only way to get legal MP4 support and open-source MP4 replacements won’t hit the public anytime soon and VP9 is too difficult to encode live.

I understand the decision; it’s probably because of the picture-in-picture advertising technique. But now all legal CEF applications that use Twitch are broken. I don’t think Twitch ever thought of that when they removed it. I hope it won’t be shrugged off.

Please restore the flash player in some way.


#6

Flash is dead.

Likely the best solution here is to compile your own CEF to include in your application that includes the support for what you need (whether thats flash (not recommended) or or something that can process MP4.

Likely this issue is best routed to the uservoice for better traction than the dev forums

https://twitch.uservoice.com/forums/310213-developers


#7

Twitch used to work without Flash on vanilla CEF up until about a week ago. It was already using something else than mp4 and i’m fairly certain that android/ios also use other codecs. The removal of Flash was about 2 years ago now and is not related.

I looked into it some more and the twitch player source code does indeed reference vp9, passes a feature check and is trying to load it. After that it encounters a bunch of errors related to chromecast not existing in CEF. Hard to really make conclusions without the original source but there is no indication of video codec problems.

edit: Those chromecast errors are also happening in a normal browser so probably not related.


#8

The following link would always return a flash player until not so long ago. I know this because I recently checked in-browser rather than in CEF when Twitch removed their old API:

https://player.twitch.tv/?channel=bobross&flash

I also doubt Twitch used a codec other than MP4 at some point. VP9 is too resource intensive to encode. I wouldn’t have ever had to find a Flash solution for the Twitch part of my CEF app. Even YouTube uses MP4 for live streams when Google is the ambassador of VP9 (like, they really really want to replace MP4).

@BarryCarlyon It’s not in my, and probably nor in OP’s power to recompile CEF with the proprietary codecs because the applications are not our own. Even if it was, it would be illegal to distribute it unless you come to an agreement with MPEG-LA.


#9

nods I’d over looked that.


#10

Could a Twitch developer let us know whether this is to be discussed, or wontfix/fix?