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

Game over? #6

Open
Vangelis66 opened this issue Sep 13, 2017 · 18 comments
Open

Game over? #6

Vangelis66 opened this issue Sep 13, 2017 · 18 comments

Comments

@Vangelis66
Copy link

Vangelis66 commented Sep 13, 2017

It was still working in Firefox ESR 24.8.1 mere days ago, but today (Sept 12th 2017) IT DOES NO MORE 😭 It would appear they completely killed Flash embedded Youtube vids:

noflashembed

My old (2006) Intel (embedded) gfx card doesn't support h.264/vp9 hardware decoding, I can still use the HTML5 YT player in my Vista SP2 laptop, but all decoding is handled by my (equally old) 2core CPU, resulting in sub-optimum results... 😠
Be cursed evil Google... 👎

@thinkpad4
Copy link

Let us hope that there is still a secret way

@mirh
Copy link

mirh commented Sep 13, 2017

My old (2006) Intel (embedded) gfx card doesn't support h.264

You know that was exactly what flash was decoding, right?
The only broken variable there with latest firefox is the OS, for the records.

EDIT: ok, now I get it. No hardware from intel supported h264 before 2008

@juneyourtech
Copy link
Owner

juneyourtech commented Sep 13, 2017

Oh dear. It worked just yesterday.

There were no JS errors in Browser Console.

@juneyourtech
Copy link
Owner

juneyourtech commented Sep 13, 2017

@Vangelis66 Worse is, that HTML5 playback always, always stuttered, but Flash was always reliable.

There are two options:

Install Linux and/or use a Linux Live-CD or Live-DVD, such as Knoppix, and have a modern version of Firefox that supports HTML5 video. I remember, that HTML5 video was more reliable there, and had less stutters.

For certain Intel graphics adapters, Intel-or computer manufacturer-provided drivers did not support OpenGL 2.0 in Windows, but they do in Linux (and Knoppix).

Knoppix LiveCDs are outdated (you'd need at least version 6.7.1), but one can download a reasonably modern version of Firefox. With Knoppix, though, you'd need at least 1 Gb of RAM memory in order to allow Firefox to run smoothly.

After Live CD restart, all contents in RAM, including settings, are erased, and cannot be retrieved without a lot of manual work saving and retrieving the settings (mostly from /home/username ). and I used Knoppix only to make free software screenshots. Another Linux option is to run a distro from a USB stick, but I've never tried that.

The other option is the YouTube 2 Player Firefox extension, available from addons.mozilla.org.

@juneyourtech
Copy link
Owner

juneyourtech commented Sep 13, 2017

@Vangelis66 The third option is to use ProxySite, which allows using Flash, but it's using its own player. Flash can be used, but CPU usage gets to 95% when the browser tab showing the video is in focus (in view).

It is not my favourite option, because it's a third-party site, despite being based in the U.S., and using servers based in the U.S. and EU. Its terms of service seem somewhat onerous, too.

And it's still a third-party site, so I personally would avoid logging in to YouTube and Google and maybe other services requiring login when using ProxySite. The solution, therefore, is to use a separate browser instance.

In Firefox, one can use separate profiles simultaneously with the -no-remote flag, like this command line:

$ firefox -P profilename -no-remote &

$ is the command line denominator
-P (when empty) starts the Firefox profile manager
-no-remote allows starting a separate browser instance.
The ampersand & forces windowed (GUI) programs to launch outside the command line.

One can even create a shortcut for this.

@mirh
Copy link

mirh commented Sep 13, 2017

As I said here, there's nothing particularly magic or special if linux supposedly has a higher opengl version.
Which, I'll underline again, GOT REVERTED.

Maybe it could be of some use to accelerate browser GUI, but definitively nothing you can do to accelerate video.
Then.. I dunno, I find strange sw decoding performance to not perform similarly.
Maybe it's just you have to disable the heavier webm videos support?

@Vangelis66
Copy link
Author

@mirh wrote:

EDIT: ok, now I get it. No hardware from intel supported h264 before 2008

Yes... This is a Toshiba A200-1VM Satellite laptop bought early 2007, having:
Processor: Intel(R) Core(TM)2 Duo CPU T5250 @ 1.50GHz (Intel® Centrino® Duo processor technology)
(Integrated) Graphics Adapter: Mobile Intel(R) GM965 Express Chipset, which has MPEG-2 hardware decoding support, not h.264 😞
It's being well maintained (RAM augmented to 3GB, HDD replaced with a 500GB one 2 years ago, once a year cleaned in the inside by a professional... superb piece of machinery in its time, still doing most things I throw at it today...).

As for Google owned Youtube, they won't have their way inflicted on me... I can still browse YT clips in their HTML5 player (I tend to stay away from > 480p resolutions, though), both in h.264/vp9, their now defunct Flash player was considerably gentler in resources (as pointed out by @juneyourtech); but PotPlayer/MPC-BE/VLC 3.0.0-git have all native support for YouTube URLs (in my setup, MPC-BE performs the best), also
thanks to youtube-dl/streamlink and similar I can DL (/stream) and use a player of choice...

Will leave this issue open for a while longer, in the remote chance something revolutionary comes up that would re-enable flash in Youtube itself...

@juneyourtech
Copy link
Owner

juneyourtech commented Sep 13, 2017

@mirh wrote:

As I said here, there's nothing particularly magic or special if linux supposedly has a higher opengl version.

I was describing a situation, whereby a certain class or series of older Intel GPUs, for which Intel et al have not released drivers that could have supported OpenGL 2.0 in Windows (XP), while open source drivers in Linux do. — Regardless of what the current situation is with current GPUs. (Because as far as I've gathered, wrt MP4 files, OpenGL 2.0 was required for HTML5 playback. Take that with a pinch of salt, tho.)

As far as magic... Well, strangely enough, HTML5 video playback of YouTube content on Knoppix and in a reasonably modern Firefox version was more reliable than in a modern Firefox version in Windows XP. At least that was my experience, and to the best of my recollection.

But even if I could pop in a Knoppix LiveCD, I'd not have any settings saved. Other people who use other Windows software in addition to the browser, would in many other ways feel limited in Linux wrt the things they'd want to do, due to lack of training or familiarity.

@mirh
Copy link

mirh commented Sep 15, 2017

I was describing a situation, whereby a certain class or series of older Intel GPUs, for which Intel et al have not released drivers that could have supported OpenGL 2.0 in Windows (XP), while open source drivers in Linux do

Yees, and I was telling you that what linux guys did, at least in the case of 3rd gen GMA, is to just software enable/emulate them.
Which I'm not really sure about directx/opengl conversion, but it's something that remembers me hacks there on windows.
Under whom no program, especially if on the ancient-side, uses to care for GL. And there's no such thing as a mention of GL in your link.

Your direct report of knoppix giving better performance is certainly interesting then.. but it could just be as well XP-firefox being crippled by the dev team with disabled OMTC or e10s.
Or maybe it's just general desktop itself being hw accelerated (iirc XP's Luna isn't) providing a tiny boost. Idk though.
A good comparison would be linux vs 7 Thin PC (with maybe modded drivers)


I guess we are OT maybe? I'd be curious to know if there's some way to benchmark html5 sw decoding with flash one.

@juneyourtech
Copy link
Owner

@mirh wrote:

Yees, and I was telling you that what linux guys did, at least in the case of 3rd gen GMA, is to just software enable/emulate them.

enable/emulate them — what is that 'them'?

I believe, that FOSS developers simply created working drivers that supported in Linux something that was in the chip already. Windows drivers appear not to have been developed that far, for many reasons. Could be lack of developer resources, or simply a market-inspired incentive to force people to upgrade.

The Knoppix experience was well before e10s.

@mirh
Copy link

mirh commented Sep 16, 2017

enable/emulate them — what is that 'them'?

That couple of opengl extensions required to dx9 level GMA to go from 1.4 and 2.1.
And which shouldn't require any further question if you had damn opened (for the third time) the article I posted.
EDIT: especially, I'll underline yet again, since newest mesa version RE-VER-TED everything back to 1.4.

@juneyourtech
Copy link
Owner

juneyourtech commented Sep 16, 2017

@mirh wrote:

That couple of opengl extensions required to dx9 level GMA to go from 1.4 and 2.1.

Can you rephrase your sentence, so it would be more concise? Can you also add proper context? And would you be kind enough to write in full sentences, with good grammar and proper punctuation, so that the ideas that you want to communicate, would be understandable?

You have posted many links, and I will not read them, because they are most likely tl;dr.

@mirh
Copy link

mirh commented Sep 16, 2017

As I said here

the Intel old-fashioned hardware having a Windows/Linux GL asymmetry (which btw got recently reverted)

The update of mesa from version 13.x to 17 may break support for OpenGL 2.1 on third gen Intel GPUs, as described in this article, reverting it back to OpenGL 1.4

That code flipped on ARB_fragment_shader and ARB_occlusion_query by default with those extensions being needed for GL2 but not being properly supported by this old and slow Intel hardware. Now though there's a new patch with plan to revert the behavior so GL2 wouldn't be enabled by default on i915-era hardware, instead having OpenGL 1.4 like with Windows.
The reasoning for dropping from OpenGL 2.1 to OpenGL 1.4 for i915 is due to Chrome and other applications using really slow code-paths with these newer extensions available and thus provide a worse experience. There have also been Wine issues and other problems.

Then, I'm quite sure that if software fallback for 1.4 is fine, emulated 2.1 behavior shouldn't perform worse (and/or software shouldn't mandate a specific GL version, if it is already fine even with previous one + some extensions), but still.
And this detail has nothing to do with Windows.

@juneyourtech
Copy link
Owner

@mirh There is some context now, but what you want to get across to me, is still insufficient, including the background of what you want to say. You must improve the use and position of articles, general word order, and punctuation. Quotes must also be referenced.

Avoid using superfluous or non-common abbreviations, if an item's full name and version number make more sense ('GL' vs. presumably 'OpenGL X.X'), avoid using only the version number, and avoid non-common words ('flipped'), unless they have a special meaning, and are in widespread use to describe something specific in programming.

The body text in the above post (in black, not in quotes) does not appear to be grammatically correct, and/or lacks sufficient context to explain discrepancies in wording.

And there is not enough information about how exactly all of that relates to my posts about FOSS drivers supporting OpenGL 2.0 in Linux on older Intel hardware, and proprietary drivers not supporting OpenGL 2.0 in Windows on that same hardware.

@mirh
Copy link

mirh commented Sep 16, 2017

If telling you that now dx9 GMAs are back to 1.4 because <reasons>, has nothing to do with FOSS drivers supporting OpenGL 2.0 in Linux...
Well, I bail out.

@juneyourtech
Copy link
Owner

@mirh Right.

@mirh
Copy link

mirh commented Mar 15, 2020

Well, well, well. It seems some crazy Rusky did it.
https://msfn.org/board/topic/175591-enable-mp4-h264-aac-html5-video-in-firefox-on-windows-xp-without-flash/page/27/#comment-1178877

You can read here how you could have made your script work one month longer, and here how they spoofing to crossdomain.xml saved the situation.
Would it be possible to get this working in firefox?
EDIT: mirror for the probably last version of the mod ever here

@mirh
Copy link

mirh commented Dec 27, 2020

So.. after like half a decade from when the idea of benchmarking came to me, I have finally found the time and the means to compare flash with html5.
And I must say results are a bit more mixed than I had expected, but still very promising (and therefore sad).

Under pure software rendering in 480p... Flash seems to use 20-30% less cpu time, but I'm also seeing some dropped frames here and there. My very random guess is that it's actually being cpu-limited on a single thread.
With hardware acceleration.. god, it's another world altogether. If you keep Opera windowed (meaning you only get accelerated video decoding, and not also rendering) it's more or less in the same ballpark. Maybe a little less, due to not having "spikes" of activity every dozen of seconds.
When you go in fullscreen, I don't know what kind of black magic they are using, a 1080p stream takes 30% of cpu (less than half of html5) with dips into the 10s.
All of this, on top of the fact that flash is the only way for <W7 systems to get browser accelerated video at all.

These were my result on a E-350 laptop (the slowest pc I had available) with fully updated drivers and W7 and firefox (and h264ify ofc)
EDIT: chrome is a bit better, but still way behind than flash

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

4 participants