martes, 5 de octubre de 2010

Optimizar reproducción de videos en Lucid con drivers libres Radeon – ATI

Las siguientes propuestas debemos aplicarlas solo si tenemos algunos de los siguientes problemas, y no son verdaderas soluciones, sino que son workarounds, es decir una vuelta de tuerca para lograr mejorar el rendimiento en la reproducción de video, y en algún caso con consecuencias colaterales en otros aspectos. Por eso deberán probar por su cuenta y decidir según el costo-beneficio.
*Problema: El video en pantalla completa reproduce a los saltos
Hacemos un respaldo del fichero a modificar:
cp ~/.kde/share/config/kwinrc ~/.kde/share/config/kwinrc.original
Abrimos el fichero con un editor:
kate ~/.kde/share/config/kwinrc
Buscamos dentro de la sección [Compositing] una linea que diga “UnredirectFullscreen”. Puede ser que ya la tengan en cuyo caso el valor a darle será "true", o si no la tienen la añaden:
UnredirectFullscreen=true
Para que el cambio se aplique, desde la terminal:
qdbus org.kde.kwin /KWin reconfigure
Esto mejorará la fluidez en la reproducción a pantalla completa, salvo cuando traigamos a primer plano las opciones del reproductor o bajemos el puntero del mouse para mostrar el panel flotante de controles del reproductor. En SMPlayer dicho panel flotante dejará de aparecer con esta modificación, por lo que deberemos ir a “Opciones” “Interfaz” “Control Flotante” y desmarcar “Saltar Gestor de Ventanas”.
Desventajas con este método: Podemos tener corrupción de ventanas en diferentes aplicaciones, las cuales se corrigen generalmente moviendo la ventana o refrescando.
*Problema: Aparecen lineas horizontales como interferencias únicamente en las zonas del video en donde hay un movimiento rápido. No debe confundirse esto con los típicos problemas de entrelazado en donde generalmente las lineas horizontales están siempre y en toda la pantalla. Algunos modelos antiguos de tarjetas tienen además mal rendimiento con DRI2.
Este problema se soluciona deshabilitando KMS (Kernel Mode Settings) y de esta forma se utiliza por defecto DRI en lugar de DRI2.
Para deshabilitar KMS creamos el archivo:
kdesudo kate /etc/modprobe.d/radeon-kms.conf
y copiamos dentro de el la siguiente linea:
options radeon modeset=0
Reiniciamos el sistema para aplicar los cambios.
Luego de reiniciar, al ejecutar desde la terminal:
egrep "KMS|DRI" /var/log/Xorg.0.log
nos debería dar algo como:
(II) Loading extension XFree86-DRI
(II) Loading extension DRI2
(II) [KMS] drm report modesetting isn't supported.
(**) RADEON(0): Option "DRI" "on"
(II) RADEON(0): [dri] Found DRI library version 1.3.0 and kernel module version 1.33.0
(II) RADEON(0): [DRI] installation complete
(WW) RADEON(0): DRI init changed memory map, adjusting ...
(II) AIGLX: Screen 0 is not DRI2 capable
(II) GLX: Initialized DRI GL provider for screen 0
Pero como KMS es usado por Plymouth para elegir la configuración correcta del splash o pantallas de presentación y despedida, es posible que ellos se vean corruptos o solo en modo texto con una leyenda de Ubuntu. Eso no trae inconvenientes en el sistema, mas solo respecto a lo visual en Plymouth. Podemos deshabilitar Plymouth haciendo lo siguiente:
Respaldamos el archivo a modificar:
sudo cp /etc/default/grub /etc/default/grub.original
Ahora abrimos el archivo:
kdesudo kate /etc/default/grub
Ubicamos la linea:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
y la dejamos así:
GRUB_CMDLINE_LINUX_DEFAULT=""
Guardamos y salimos.
Actualizamos para aplicar cambios, desde terminal:
sudo update-grub2
Recuerden que deshabilitar Plymouth no está relacionado con los problemas de reproducción de video, sino por los problemas en los splash al haber deshabilitado KMS.
Desventajas con este método: Al usar DRI en lugar de DRI2 el xorg consumirá más RAM y utilizará mas CPU, costo que deberemos aceptar si logramos mejoras en el rendimiento.
Además, al deshabilitar KMS es posible que las configuraciones de video no sean bien tomadas por el sistema, por lo que deberemos configurar el xorg.conf muy posiblemente incluyendo las configuraciones deseadas de resolución de pantalla. Aquí se dará un xorg.conf mínimo que podrían utilizar si tienen problemas. Creamos el archivo:
kdesudo kate /etc/X11/xorg.conf
y copiamos dentro:
Section "Module"
Load  "glx"
Load  "dri"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
#Modeline
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
#DefaultDepth 24
#SubSection "Display"
# Depth 24
# Modes "1024x768"
#EndSubSection
EndSection
Section "Device"
Identifier "Configured Video Device"
Driver "radeon"
Option   "AccelMethod"  "EXA"
Option "DRI" "on"
EndSection
Section "DRI"
Mode         0666
EndSection
Para configurar la resolución de pantalla deseada, deberemos quitar las almohadillas y editar esas lineas con los correspondientes valores. Los modeline se pueden generar con el comando "gtf" (gtf x y frecuencia) o desde este sitio viendo los correspondientes valores en las especificaciones del manual del monitor:
http://xtiming.sourceforge.net/cgi-bin/xtiming.pl
*Problema: Mal desempeño en reproducción en pantalla completa, principalmente de videos HD.
Hacemos un respaldo del archivo a modificar:
sudo cp /usr/share/autostart/plasma-desktop.desktop /usr/share/autostart/plasma-desktop.desktop.original

No hay comentarios:

Publicar un comentario