laitimes

Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption

Recently using the Chrome browser to browse Bilibili video (hereinafter referred to as B station) found that the CPU occupancy rate is very high, although the home use is only 18 years of relatively low-end a game book, but the processor is also Intel and AMD "nuclear war" after the start of the product, online viewing a video should not constitute any pressure.

Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption

analyse

Through the task manager can see that the CPU occupation is very high when playing the video, but the GPU occupation is very low, which should be caused by not calling the hardware decoding correctly, viewing the video information, seeing the hev1 codec, I guess it should be B station after more than a year of testing to confirm the stability of HEVC playback, in order to reduce network bandwidth costs and alleviate the problem of peak playback stuttering, the default encoding was modified to HEVC.

Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption

The results of the Internet query further verified my conjecture, Chrome does not support HEVC hard solution, play HEVC video can only call the CPU for soft solution. Not just Chrome, the entire desktop is only supported by Apple's Safari. HEVC is not a new thing, the world's first browser market occupancy of Chrome is not even supported, further search found that it was because MPEG-LA and HEVC Advance patent pool reached out too black, to Google and Apple too high a price, and finally only the rich Apple chose to pay. Google chose to go its own way, pulling a large group of technology companies that were unhappy with high patent licensing fees and began to vigorously develop and promote AV1.

Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption

solution

Back to the main topic, now know the reason for the high CPU occupation, this is much simpler to solve, that is, to buy a Mac (mistaken), ready to pay for and are using the Mac of the small partners can see here can be withdrawn, and then talk to your IT family friends about the solution of insisting on using the Chromium kernel browser.

Scenario 1 (recommended): Adjust the default encoding format

This is the simplest and most efficient solution, and users of the Chromium kernel browser currently have only one solution. Select the encoding format for AVC in the following steps below the player, and if you are using Intel Xe core graphics (most 11th and 12th generation processors, except some Celeron Pentium series processors), NVIDIA 30 series graphics cards, and AMD RX6000 series graphics cards (except RX6500XT and RX6400), it is recommended to choose a more bandwidth-saving AV1 encoding format.

Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption
Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption

Scenario two: Change the UA to make the browser support HEVC

After testing, this scheme supports the Edge browser using the Chromium kernel, and other browsers please test it yourself.

Start by downloading and installing the HEVC decoder. Note, please select Download v1.0.31823 version, the new version will currently have frame drops and stuttering issues (note that you need to turn off the Microsoft Store automatic update feature).

Then download and install the User-Agent Switcher and Manager extension and modify the browser UA as shown below.

Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption

Note: Some tutorials will recommend modifying the UA to the old Edge browser, but after I tested and modified the UA to the old Edge browser, even if you select the default HEVC encoding in the settings, you will still only use AVC encoding when watching the video.

If you do not want to affect other website visits because of the modification of the UA, you can follow the steps below to add "https://www.bilibili.com" to a specific site.

Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption

Scenario three: Use the UWP version of Bilibili

The last few updates to UWP version of Bilibili is relatively complete, but also supports HDR, watch the video is completely enough. (To support HEVC, you need to install the HEVC extension and manually enable HEVC in the settings)

Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption
Analysis and solutions of the reasons why the B station on the web version causes high CPU consumption

B station in the domestic video site can be regarded as a very good job, although in order to save bandwidth modified the default preference for HEVC, but it is clear that the B station also noticed that the Chromium kernel, the first core in the market share, can not hard solve the HEVC problem, only at 1080P high bitrate, 1080P and lower resolution under the default use of HEVC encoding, in 1080P 60 frames, 4K and higher 8K video or default AVC format, Reduces decoding pressure on poorer processors; HEVC encoding is used throughout the process only when using Safari.

And station B also followed up with AV1 encoding relatively quickly, although the current user hands support less hardware to solve AV1, but the new hardware support released after 2021 is not bad, only a small number of manufacturers have not followed up. Taking five thousand steps back, station B at least gives the user the choice of encoding format, and can still use AVC encoding with a little setting, and does not have a one-size-fits-all strong HEVC or AV1.

reference

Enable HEVC hard solution for Station B on Chrome/Egde

Can I use hevc ?

Read on