Playing a 23.976fps movie at 23.976hz with KWin compositing enabled generate a lot of stutter. With "unredirect fullscreen windows" or disabling compositing the plaback is perfect. The command "kwriteconfig --file kwinrc --group Compositing --key RefreshRate 24" helps a lot to kill stutter. I quote luebking : "So KWin would run rather too "fast" than to slow, what *could* lead to a double frame in the buffer stack (a hanging frame), but only once every 42 seconds! ...unless libxrandr, xvidmode or nvidia-settings report the wrong number (or junk) altogether in the 23.976Hz case and/or we fall back to 60Hz" Here is a summary of what we tests : https://forum.kde.org/viewtopic.php?f=111&t=124507 Reproducible: Always Steps to Reproduce: 1. Set your TV at 23.976hz 2. Play a 23.976fps movie Actual Results: A lot of stutter Expected Results: Smooth playback
I would actually assume it's fixed in KWin5, but it would be better to know the reported refresh rate
The detected refresh rate seems to be 23hz : kwin(14156) KWin::currentRefreshRate: Vertical Refresh Rate (as detected by XF86VM): 23 Hz kwin(14156) KWin::currentRefreshRate: Vertical Refresh rate 23 Hz Here is the full output "kwin --replace &" : [code]kwin --replace & [1] 14156 jeremy@jeremy-Dl:~$ QDBusConnection: session D-Bus connection created before QCoreApplication. Application may misbehave. kwin(14156) KWin::Extensions::init: non_native_pixmaps: true kwin(14156) KWin::Xcb::Extensions::init: Extensions: shape: 0x "11" composite: 0x "4" render: 0x "b" fixes: 0x "50" randr: 0x "14" sync: 0x "31" damage: 0x "11" kwin(14156) KDecorationPlugins::canLoad: kwin : path "/usr/lib/kde4/kwin3_aurorae.so" for "kwin3_aurorae" kwin(14156)/kwin (client errors) Aurorae::AuroraeThemePrivate::initButtonFrame: No button for: "alldesktops" kwin(14156)/kwin (client errors) Aurorae::AuroraeThemePrivate::initButtonFrame: No button for: "keepabove" kwin(14156)/kwin (client errors) Aurorae::AuroraeThemePrivate::initButtonFrame: No button for: "keepbelow" kwin(14156)/kwin (client errors) Aurorae::AuroraeThemePrivate::initButtonFrame: No button for: "shade" kwin(14156)/kwin (client errors) Aurorae::AuroraeThemePrivate::initButtonFrame: No button for: "help" kwin(14156) KWin::Workspace::updateClientArea: screens: 1 desktops: 1 kwin(14156) KWin::Workspace::updateClientArea: Done. QCoreApplication::sendPostedEvents: Cannot send posted events for objects in another thread QCoreApplication::sendPostedEvents: Cannot send posted events for objects in another thread kwin(14156) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 4294967295 kwin(14156) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 29360447 ;WMCLASS: "plasma" : "plasma" ;Caption: "plasma-desktop" ' : 4294967295 kwin(14156) KWin::Workspace::updateClientArea: screens: 1 desktops: 1 kwin(14156) KWin::Workspace::updateClientArea: Done. kwin(14156) KWin::Client::checkActivities: no activities!?!? Bus::open: Can not get ibus-daemon's address. IBusInputContext::createInputContext: no connection to ibus-daemon kwin(14156) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 4421392 kwin(14156) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 25165922 ;WMCLASS: "nvidia-settings" : "nvidia-settings" ;Caption: "NVIDIA X Server Settings" ' : 4421392 kwin(14156) KWin::Workspace::updateClientArea: screens: 1 desktops: 1 kwin(14156) KWin::Workspace::updateClientArea: Done. kwin(14156) KWin::Client::checkActivities: no activities!?!? kwin(14156) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 4432822 kwin(14156) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 23068754 ;WMCLASS: "konsole" : "konsole" ;Caption: "jeremy : bash – Konsole" ' : 4432822 kwin(14156) KWin::Workspace::updateClientArea: screens: 1 desktops: 1 kwin(14156) KWin::Workspace::updateClientArea: Done. kwin(14156) KWin::Client::readUserTimeMapTimestamp: User timestamp, ASN: 4428848 kwin(14156) KWin::Client::readUserTimeMapTimestamp: User timestamp, final: 'ID: 29360438 ;WMCLASS: "plasma" : "plasma" ;Caption: "plasma-desktop" ' : 4428848 kwin(14156) KWin::Workspace::updateClientArea: screens: 1 desktops: 1 kwin(14156) KWin::Workspace::updateClientArea: Done. kwin(14156) KWin::Workspace::updateClientArea: screens: 1 desktops: 1 kwin(14156) KWin::Workspace::updateClientArea: Done. QCoreApplication::sendPostedEvents: Cannot send posted events for objects in another thread QCoreApplication::sendPostedEvents: Cannot send posted events for objects in another thread kwin(14156)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from "/var/tmp/kdecache-jeremy/ksycoca4" kwin(14156) KWin::Compositor::slotCompositingOptionsInitialized: Initializing OpenGL compositing kwin(14156) KWin::GlxBackend::initDrawableConfigs: Drawable visual (depth 24 ): 0x "2a" kwin(14156) KWin::GlxBackend::initDrawableConfigs: Drawable visual (depth 32 ): 0x "c0" kwin(14156) KWin::GlxBackend::initBuffer: Buffer visual (depth 24 ): 0x "27" OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce GT 430/PCIe/SSE2 OpenGL version string: 4.4.0 NVIDIA 331.113 OpenGL shading language version string: 4.40 NVIDIA via Cg compiler Driver: NVIDIA Driver version: 331.113 GPU class: GF100 OpenGL version: 4.4 GLSL version: 4.40 X server version: 1.16 Linux kernel version: 3.16 Direct rendering: yes Requires strict binding: no GLSL shaders: yes Texture NPOT support: yes Virtual Machine: no kwin(14156) KWin::GlxBackend::init: Direct rendering: true kwin(14156) KWin::SceneOpenGL2::slotColorCorrectedChanged: Color correction: false kwin(14156) KWin::SceneOpenGL2::SceneOpenGL2: OpenGL 2 compositing successfully initialized kwin(14156) KWin::currentRefreshRate: Vertical Refresh Rate (as detected by XF86VM): 23 Hz kwin(14156) KWin::currentRefreshRate: Vertical Refresh rate 23 Hz kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_login" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_blur" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_desktopgrid" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_slide" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_presentwindows" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_dashboard" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_kscreen" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_startupfeedback" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_dialogparent" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_cube" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_taskbarthumbnail" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_logout" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_screenshot" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_zoom" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_minimizeanimation" kwin(14156) KWin::EffectsHandlerImpl::loadEffect: Trying to load "kwin4_effect_coverswitch"[/code]
I made some tests on Manjaro, with Kwin 5.4.3 I think, and it seems that it's fixed ! I played a few 23.976fps videos at 23.976hz on my TV and no stutter with the compositing enabled. Of course, when I will fully switch to Plasma 5 when it will be more mature, I will make some more extensive tests but for now this can be closed. Thanks !