¿Qué pasa con los videos de Ubuntu / Linux, Youtube / HTML5 y la alta carga de CPU?

15

He estado buscando en Google durante algunas semanas y probando todas las diferentes soluciones, pero no pude encontrar una solución que funcione ni una respuesta satisfactoria a mi pregunta: ¿Por qué un video HTML5 de Youtube en Ubuntu / Linux hace que la CPU pase por el ¿techo? Como he encontrado preguntas similares , sé que no soy solo yo.

Tengo una Nvidia GeForce 660M e Intel Graphics en un Core i7 (con 8 núcleos).

Al ver un video de 1080p en Ubuntu 16.04 (con Firefox y Chromium), la carga de la CPU se acumula hasta el 100% en unos pocos minutos, convirtiendo el video en una presentación de diapositivas y haciendo que la computadora no se pueda usar en absoluto. Pero transmitir esos videos con VLC o Totem no es ningún problema (es por eso que la mayoría de las soluciones que he encontrado hasta ahora sugieren esta solución).

Ver los mismos videos en Windows (en la misma computadora portátil) no se ve realmente diferente de editar un archivo de Word en términos de carga de CPU.

Esto significa que el problema debe estar específicamente relacionado con el navegador en combinación con Linux / Ubuntu.

Sí, HTML5 es compatible:

html5-support


Sí, tengo instalados los controladores de Nvidia:

ingrese la descripción de la imagen aquí


Esto es lo chrome://gpuque me da:

ingrese la descripción de la imagen aquí


Parece que la aceleración de hardware para la decodificación de video no está disponible. ¿Cómo puedo hacer que esté disponible? ¿Es posible? Si no: ¿por qué no y lo será alguna vez? ¿Hay otra opción de configuración que me falta?

¡Es 2017 y poder ver videos divertidos de gatos en alta calidad en una computadora decente debería ser algo bastante básico!

Cuasdunk
fuente
la aceleración de hardware no se ha habilitado desde 2012 y no lo será pronto de lo que leí. Sin embargo, no debería tener problemas para usar la decodificación de software para sus videos, su CPU no debería saltar tan alto. ¿Experimenta lo mismo cuando usa Firefox? si es así, podría estar relacionado con el hecho de que tiene 2 tarjetas gráficas
Felipe
@Felipe Eso no suena muy prometedor. Sí, también me topé con un artículo de 2014 que decía algo similar, pero como es muy viejo, no lo tomé demasiado en serio. Y sí, también leí sobre el problema de las 2 tarjetas gráficas, por eso instalé nvidia-prime y explícitamente le dije que usara la GPU Nvidia como se sugiere aquí . Realmente no puedo creer que la aceleración de hardware no sea posible en uno de los sistemas operativos más populares ... Y sí, es lo mismo en Firefox (y Vivaldi).
Cuasdunk
Entonces, ¿sucede lo mismo al usar Firefox? como dije, si lo hace, podría ser más difícil de resolver, pero si Firefox funciona bien, entonces podría ser una instalación defectuosa de Chrome. Además, intente hacer que nvidia-prime solo use la GPU Intel. Probaría todas las posibilidades para ver qué sucede y reducir el problema.
Felipe
@Felipe lo siento, he editado mi comentario más adelante sobre otros navegadores. Entonces sí, es lo mismo en Firefox, Chromium y Vivaldi. Ahora cambié a la GPU Intel, aunque también lo había intentado, pero eso fue hace un tiempo y algunas cosas cambiaron desde entonces. Se parece a correr más estable (el promedio de carga no fue por encima de 2,0 incluso después de 5 minutos). Si esa es realmente la solución, el problema podría estar en los controladores de Nvidia (aunque ya los he probado todos). Echaré un vistazo a cómo la GPU Intel lo maneja ahora a largo plazo e informaré :) ¡Gracias!
Cuasdunk
¿Has intentado usar los controladores de Nvidia de este ppa, pruébalo tienen los últimos controladores estables: launchpad.net/~graphics-drivers/+archive/ubuntu/ppa
Felipe

Respuestas:

2

Dado que su sistema tiene GPU Nvidia e Intel, y el problema se encuentra en cada navegador que está utilizando. Definitivamente es un problema con los controladores y no con los navegadores. Aunque Chrome no ayuda al no proporcionar decodificación de hardware de video. Debería intentar usar solo la GPU Intel que tiene controladores más estables en Linux.

@Quasdunk informó que cambiar a la GPU Intel redujo significativamente la carga en la máquina y ahora es utilizable.

Si realmente desea usar la GPU Nvidia, debería intentar actualizar sus controladores usando este ppa .

Felipe
fuente
1
¡Muchas gracias! A pesar de que resultó ser más un problema de controlador, más bien gracias específicamente al navegador / sistema operativo, solo una vez más para el registro: ¡ la aceleración de video de hardware no funciona en Linux y no funcionará en el corto plazo! Cambiar a la GPU Intel lo hace soportable, pero usar el 30% de una CPU i7 solo para ver un video en el navegador sigue siendo una locura.
Cuasdunk
Tengo un T460p con una Nvidia GeForce 940MX en Ubuntu 18.04. Cambié la configuración a "ahorro de batería" (usando la CPU en lugar de la GPU). Esto hizo que mi computadora fuera Súper caliente algunas veces cuando veía YouTube. Curiosamente, solo recientemente (hace un par de días, supongo). No estoy seguro si cambié algo. Tengo Chrome 79.0.3945.79 en este momento y cambiar la configuración de Nvidia a rendimiento (usando gpu) parece haber solucionado el problema.
Martin Thoma
No importa, NO resolvió mi problema. Tuve wg-gesucht.de/wg-zimmer-in-Muenchen-Berg-am-Laim.3570695.html abierto por un tiempo y comenzó a usar el calentamiento de mi CPU nuevamente.
Martin Thoma
4

Tuve un problema similar. Mi CPU usó> 100% htopmientras miraba videos de YouTube 1080p.

Especificaciones:

CPU: 7700k
GPU: Nvidia GTX 1080
Drivers: 384.69

Tuve que instalar estos complementos:

sudo apt install gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly

Luego fui a la página de banderas de Google Chrome chrome://flags/y la opción habilitada:

WebRTC H.264 software video encoder/decoder Mac, Windows, Linux, Chrome OS

Pantalla: ingrese la descripción de la imagen aquí

Después de reiniciar el navegador, mi uso de CPU se redujo a alrededor del 30%.

Como último recurso Siempre puede deshabilitar Video Hardware Decodeusando la línea de comando:

google-chrome --disable-accelerated-video-decode 

Aquí hay una lista de todas las opciones de línea de comandos posibles para Google Chrome: https://peter.sh/experiments/chromium-command-line-switches/

Solución alternativa:

Hay otra cosa que, para mí, hizo que mi CPU subiera de nivel. Era un script js en YouTube. Tuve que bloquearlo en el uBlockcomplemento:

ingrese la descripción de la imagen aquí

El rectángulo rojo muestra muchas solicitudes de un mss_4.jsscript; esto provocó picos en la CPU. El rectángulo verde muestra que el script está bloqueado dentro del uBlockcomplemento, por lo que no mss_4.jsse realizan más solicitudes dentro .

Michal Przybylowicz
fuente
Un atajo para la bandera de WebRTCchrome://flags/#enable-webrtc-h264-with-openh264-ffmpeg
Md. Abu Taher