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

Add a GPU Internals entry to the View menu #5550

Merged
merged 2 commits into from
Aug 12, 2024

Conversation

absidue
Copy link
Member

@absidue absidue commented Aug 9, 2024

Add a GPU Internals entry to the View menu

Pull Request Type

  • Feature Implementation

Related issue

#5397 (comment)

Description

As Linux users are having lots of graphical issues and hardware acceleration problems, people have been asking how to access the chrome://gpu page, my original suggestion was to paste a code snippet into the devtools (see link above), which is okay for one time use. However due to the many problems Linux users seem to be having, that debug page is likely going to see more usage in the future. This pull request makes it a lot easier to access that page by adding an entry to under the View menu in the app menu, which opens a new window to that page.

Screenshots

view-menu-with-GPU-internals-entry

Testing

  1. If you are on Windows and Linux you need to press Alt to show the app menu.
  2. Activate the View -> GPU Internals (chrome://gpu) menu item and make sure it opens a new window with the GPU internals page.

@FreeTubeBot FreeTubeBot enabled auto-merge (squash) August 9, 2024 16:55
@github-actions github-actions bot added the PR: waiting for review For PRs that are complete, tested, and ready for review label Aug 9, 2024
@libv
Copy link

libv commented Aug 9, 2024

Exposing more info through the freetube UI is a good idea, but, chrome://gpu has an extremely high noise to signal ratio, and has only very limited usefulness.

In my case, to compare 0.19.2 and 0.20.x and 0.21.x, i had to spend several hours formatting and adjusting the 0.19.2 log so i could diff it against the other two. And even then it was not clear what was actually going on.

The media info xsmile pointed me at just now is the actual key.

It makes more sense to provide the name of the video decoder, while decoding, and the messages log instead (for some reason my 19.2 is now telling me that vaapi initialization failed whereas 2x.x just goes straight to ffmpeg -- fun, fun). This info should be provided on a per video basis, as the next video might have a different outcome.

A theoretical example might be that the hw decoder does not support 360p as it might need 16pixel alignment (even though block size is a multiple of 16x16 usually), perhaps there is a hw quirk where decoded height only works where height is a multiple of 16. In such a case switching video resolutions to 360p will then cause a switch from hw decoding to software decoding.

With chrome://gpu you get a lot of noise, and nothing useful will be in there. With the media specific info, and the matching messages you get the info you need to start debugging.

@absidue
Copy link
Member Author

absidue commented Aug 9, 2024

This just adds a way to access the chrome://gpu page, as you can see in the screenshot it's literally just on extra button, as the only way to currently do it pasting a code snippet into the dev tools, that likely won't work in the future. If you want to view the Media tab in the dev tools you can still do it easily yourself, this pull request doesn't change anything about that.

Also chrome://gpu is useful, you just need to know what to do with the information, the same way that the Media tab in the dev tools isn't useful unless someone tells you what the information means.

@FreeTubeBot FreeTubeBot merged commit 3dbee86 into FreeTubeApp:development Aug 12, 2024
5 checks passed
@github-actions github-actions bot removed the PR: waiting for review For PRs that are complete, tested, and ready for review label Aug 12, 2024
@absidue absidue deleted the chrome-gpu-menu branch August 12, 2024 21:03
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

Successfully merging this pull request may close these issues.

6 participants