Bug 510962 - Animation playback restarts and freezes constantly.
Summary: Animation playback restarts and freezes constantly.
Status: RESOLVED WORKSFORME
Alias: None
Product: krita
Classification: Applications
Component: Animation (other bugs)
Version First Reported In: 5.2.13
Platform: Other Linux
: NOR major
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-10-23 14:02 UTC by Butter
Modified: 2025-12-13 03:46 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
Video Shows playback restarting half way through the animation. (1.60 MB, video/x-matroska)
2025-10-23 14:02 UTC, Butter
Details
Video Shows playback restarting half way through the animation. (2.61 MB, video/mp4)
2025-10-26 12:35 UTC, Butter
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Butter 2025-10-23 14:02:00 UTC
Created attachment 186044 [details]
Video Shows playback restarting half way through the animation.

SUMMARY

Animation playback restarts and freezes.

STEPS TO REPRODUCE
1. Open an animation project.
2. Add animation cells.
3. Play the animation with the play button.
4. Stop the animation.
4. Repeat.

OBSERVED RESULT

Pressing the play button plays some of the animation.

EXPECTED RESULT

Pressing the play button plays the entire animation.

SOFTWARE/OS VERSIONS

Operating System: Fedora Linux 42
KDE Plasma Version: 6.4.5
KDE Frameworks Version: 6.19.0
Qt Version: 6.9.2
Kernel Version: 6.16.12-200.fc42.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 12 × 13th Gen Intel® Core™ i5-1334U
Memory: 48 GiB of RAM (46.8 GiB usable)
Graphics Processor: Intel® Graphics

ADDITIONAL INFORMATION


This bug happens roughly 50%-60% of the time when I use the play button on an animation and it seems to randomly revert back to normal behavior the other 50%-40% of the time. no amount of settings fiddling has solved the issue for me. I've tried turning off "drop frames". I've tried using in memory cache for my animations. I've tried reducing canvas size and clearing animation cache. This bug has always happened since I started using Krita to animate but it seems to have gotten worse lately.

Krita

 Version: 5.2.13 (git 6d3651a)
 Hidpi: true

Qt

  Version (compiled): 5.15.7
  Version (loaded): 5.15.7

OS Information

  Build ABI: x86_64-little_endian-lp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: linux
  Kernel Version: 6.16.12-200.fc42.x86_64
  Pretty Productname: Steam Runtime 2 (soldier)
  Product Type: steamrt
  Product Version: 2
  Desktop: KDE
  Appimage build: Yes

Locale

  Languages: en_US, en, en_Latn_US
  C locale: en_US.UTF-8
  QLocale current: en
  QLocale system: en
  QTextCodec for locale: UTF-8

OpenGL Info

  Vendor:  "Intel"
  Renderer:  "Mesa Intel(R) Graphics (RPL-U)"
  Driver version:  "4.6 (Core Profile) Mesa 25.1.9"
  Shading language:  "4.60"
  Requested format:  QSurfaceFormat(version 3.3, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::CompatibilityProfile)
  Current format:  QSurfaceFormat(version 4.6, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::CoreProfile)
  GL version: 4.6
  Supports deprecated functions false
  Is OpenGL ES: false
  supportsBufferMapping: true
  supportsBufferInvalidation: true
  forceDisableTextureBuffers: false
  Extensions:
     GL_ARB_get_program_binary
     GL_AMD_conservative_depth
     GL_ARB_multi_draw_indirect
     GL_ARB_half_float_vertex
     GL_ARB_shader_texture_lod
     GL_EXT_packed_float
     GL_KHR_blend_equation_advanced
     GL_ARB_shader_draw_parameters
     GL_ARB_spirv_extensions
     GL_EXT_texture_array
     GL_KHR_parallel_shader_compile
     GL_ARB_gpu_shader_fp64
     GL_ARB_texture_rectangle
     GL_ARB_texture_query_lod
     GL_ARB_fragment_shader
     GL_NV_compute_shader_derivatives
     GL_ARB_shader_texture_image_samples
     GL_ARB_texture_stencil8
     GL_NV_texture_barrier
     GL_AMD_query_buffer_object
     GL_EXT_texture_shared_exponent
     GL_INTEL_shader_integer_functions2
     GL_AMD_vertex_shader_layer
     GL_ARB_texture_filter_anisotropic
     GL_ARB_texture_storage_multisample
     GL_ARB_shader_atomic_counters
     GL_ANGLE_texture_compression_dxt3
     GL_ARB_get_texture_sub_image
     GL_ARB_sync
     GL_S3_s3tc
     GL_NV_fragment_shader_interlock
     GL_ARB_shader_group_vote
     GL_ARB_shader_stencil_export
     GL_ARB_enhanced_layouts
     GL_ARB_texture_gather
     GL_ARB_robust_buffer_access_behavior
     GL_ARB_texture_barrier
     GL_3DFX_texture_compression_FXT1
     GL_EXT_pixel_buffer_object
     GL_ARB_draw_indirect
     GL_ARB_base_instance
     GL_AMD_draw_buffers_blend
     GL_ARB_ES3_2_compatibility
     GL_AMD_performance_monitor
     GL_ARB_occlusion_query2
     GL_ARB_conditional_render_inverted
     GL_ARB_shader_objects
     GL_ARB_draw_elements_base_vertex
     GL_ARB_fragment_coord_conventions
     GL_ARB_cull_distance
     GL_ARB_post_depth_coverage
     GL_EXT_depth_bounds_test
     GL_ARB_copy_image
     GL_EXT_shader_integer_mix
     GL_AMD_gpu_shader_int64
     GL_AMD_seamless_cubemap_per_texture
     GL_ARB_depth_buffer_float
     GL_ARB_direct_state_access
     GL_ARB_shader_storage_buffer_object
     GL_EXT_vertex_array_bgra
     GL_ARB_ES3_1_compatibility
     GL_ARB_transform_feedback_instanced
     GL_ARB_texture_non_power_of_two
     GL_ARB_program_interface_query
     GL_ARB_shader_image_size
     GL_EXT_abgr
     GL_ARB_gpu_shader_int64
     GL_EXT_semaphore_fd
     GL_ARB_texture_buffer_range
     GL_ARB_vertex_type_10f_11f_11f_rev
     GL_ARB_draw_instanced
     GL_NV_conditional_render
     GL_AMD_shader_trinary_minmax
     GL_EXT_texture_storage
     GL_EXT_packed_depth_stencil
     GL_ARB_compute_variable_group_size
     GL_ARB_vertex_attrib_binding
     GL_ARB_texture_query_levels
     GL_OES_EGL_image
     GL_ARB_vertex_shader
     GL_EXT_vertex_attrib_64bit
     GL_EXT_semaphore
     GL_ARB_gpu_shader5
     GL_ARB_texture_view
     GL_EXT_framebuffer_sRGB
     GL_ARB_vertex_attrib_64bit
     GL_KHR_blend_equation_advanced_coherent
     GL_EXT_texture_filter_anisotropic
     GL_ARB_timer_query
     GL_EXT_memory_object_fd
     GL_ARB_shader_precision
     GL_ARB_clear_buffer_object
     GL_AMD_vertex_shader_viewport_index
     GL_ARB_tessellation_shader
     GL_ARB_texture_storage
     GL_KHR_debug
     GL_ARB_shading_language_packing
     GL_EXT_EGL_image_storage_compression
     GL_ARB_indirect_parameters
     GL_ARB_sampler_objects
     GL_ARB_derivative_control
     GL_EXT_shader_samples_identical
     GL_INTEL_conservative_rasterization
     GL_ARB_polygon_offset_clamp
     GL_ARB_half_float_pixel
     GL_ARB_viewport_array
     GL_ARB_compressed_texture_pixel_storage
     GL_EXT_texture_snorm
     GL_NV_depth_clamp
     GL_ARB_seamless_cubemap_per_texture
     GL_EXT_texture_sRGB_R8
     GL_ARB_stencil_texturing
     GL_EXT_texture_integer
     GL_ARB_compute_shader
     GL_ARB_draw_buffers
     GL_ARB_gl_spirv
     GL_EXT_blend_equation_separate
     GL_MESA_texture_signed_rgba
     GL_EXT_texture_swizzle
     GL_ARB_framebuffer_sRGB
     GL_ARB_provoking_vertex
     GL_ARB_separate_shader_objects
     GL_ARB_sample_shading
     GL_ARB_framebuffer_object
     GL_ARB_robustness
     GL_ARB_texture_rgb10_a2ui
     GL_ARB_multi_bind
     GL_ARB_uniform_buffer_object
     GL_MESA_texture_const_bandwidth
     GL_ARB_clip_control
     GL_ARB_texture_compression_rgtc
     GL_ARB_query_buffer_object
     GL_ARB_shading_language_420pack
     GL_ARB_transform_feedback2
     GL_ARB_texture_rg
     GL_ARB_texture_swizzle
     GL_ARB_transform_feedback_overflow_query
     GL_ARB_shader_subroutine
     GL_ARB_fragment_shader_interlock
     GL_EXT_EGL_sync
     GL_ARB_depth_clamp
     GL_ARB_point_sprite
     GL_EXT_framebuffer_multisample_blit_scaled
     GL_EXT_memory_object
     GL_KHR_context_flush_control
     GL_ARB_fragment_layer_viewport
     GL_KHR_no_error
     GL_ARB_shader_ballot
     GL_EXT_EGL_image_storage
     GL_NV_packed_depth_stencil
     GL_ARB_texture_multisample
     GL_AMD_shader_stencil_export
     GL_ARB_vertex_array_object
     GL_ARB_internalformat_query2
     GL_ATI_blend_equation_separate
     GL_MESA_shader_integer_functions
     GL_ARB_texture_float
     GL_AMD_multi_draw_indirect
     GL_EXT_demote_to_helper_invocation
     GL_EXT_provoking_vertex
     GL_ATI_texture_float
     GL_ARB_ES2_compatibility
     GL_AMD_pinned_memory
     GL_EXT_texture_shadow_lod
     GL_ARB_framebuffer_no_attachments
     GL_INTEL_blackhole_render
     GL_ARB_pipeline_statistics_query
     GL_ARB_internalformat_query
     GL_EXT_texture_compression_dxt1
     GL_EXT_texture_compression_rgtc
     GL_ARB_texture_buffer_object
     GL_EXT_framebuffer_blit
     GL_INTEL_performance_query
     GL_KHR_robustness
     GL_KHR_texture_compression_astc_ldr
     GL_EXT_texture_compression_s3tc
     GL_NV_copy_image
     GL_EXT_transform_feedback
     GL_ARB_shader_viewport_layer_array
     GL_ARB_copy_buffer
     GL_ARB_shading_language_include
     GL_IBM_multimode_draw_arrays
     GL_ARB_explicit_uniform_location
     GL_EXT_draw_buffers2
     GL_EXT_framebuffer_object
     GL_ARB_vertex_buffer_object
     GL_EXT_texture_sRGB_decode
     GL_AMD_texture_texture4
     GL_ARB_debug_output
     GL_EXT_draw_instanced
     GL_KHR_texture_compression_astc_sliced_3d
     GL_EXT_debug_label
     GL_KHR_robust_buffer_access_behavior
     GL_NV_alpha_to_coverage_dither_control
     GL_ARB_shader_atomic_counter_ops
     GL_ARB_shader_clock
     GL_ARB_texture_cube_map_array
     GL_ARB_texture_mirror_clamp_to_edge
     GL_ARB_shader_image_load_store
     GL_ARB_ES3_compatibility
     GL_ARB_vertex_type_2_10_10_10_rev
     GL_EXT_shader_framebuffer_fetch
     GL_EXT_polygon_offset_clamp
     GL_MESA_pack_invert
     GL_INTEL_shader_atomic_float_minmax
     GL_ARB_shader_bit_encoding
     GL_ARB_conservative_depth
     GL_AMD_depth_clamp_separate
     GL_ARB_map_buffer_range
     GL_ANGLE_texture_compression_dxt5
     GL_ARB_texture_buffer_object_rgb32
     GL_ARB_buffer_storage
     GL_EXT_timer_query
     GL_ARB_texture_compression_bptc
     GL_ARB_explicit_attrib_location
     GL_ARB_arrays_of_arrays
     GL_ARB_map_buffer_alignment
     GL_ARB_parallel_shader_compile
     GL_EXT_framebuffer_multisample
     GL_ARB_seamless_cube_map
     GL_ARB_instanced_arrays
     GL_ARB_transform_feedback3
     GL_ARB_clear_texture
     GL_EXT_texture_sRGB
     GL_ARB_invalidate_subdata
     GL_ARB_texture_border_clamp
     GL_ARB_pixel_buffer_object
     GL_ARB_blend_func_extended
     GL_ARB_vertex_array_bgra
     GL_MESA_framebuffer_flip_y
     GL_ARB_draw_buffers_blend
     GL_EXT_shader_framebuffer_fetch_non_coherent

QPA OpenGL Detection Info
  supportsDesktopGL: true
  supportsOpenGLES: true
  isQtPreferOpenGLES: false
  Detected renderers:
    (Supported) Mesa Intel(R) Graphics (RPL-U) (OpenGL ES 3.2 Mesa 25.1.9)
    (Supported) Mesa Intel(R) Graphics (RPL-U) (4.6 (Core Profile) Mesa 25.1.9)

useBufferInvalidation (config option): false


Hardware Information

  GPU Acceleration: auto
  Memory: 47887 Mb
  Number of Cores: 12
  Swap Location: /tmp
  Built for: sse2
  Base instruction set: fma3+avx2
  Supported instruction sets: avxvnni fma3+avx2 avx2 fma3+avx avx fma3+sse4.2 sse4.2 sse4.1 ssse3 sse3 sse2

Current Settings

  Current Swap Location: /tmp
  Current Swap Location writable: true
  Undo Enabled: true
  Undo Stack Limit: 200
  Use OpenGL: true
  Use OpenGL Texture Buffer: true
  Disable Vector Optimizations: false
  Disable AVX Optimizations: false
  Canvas State: OPENGL_SUCCESS
  Autosave Interval: 180
  Use Backup Files: true
  Number of Backups Kept: 6
  Backup File Suffix: ~
  Backup Location: /tmp
  Backup Location writable: true
  Resource Location: /home/butter/.local/share/krita
  Use Win8 Pointer Input: false
  Use RightMiddleTabletButton Workaround: true
  Levels of Detail Enabled: false
  Use Zip64: false


Loaded Python Plugins
	colorspace
	comics_project_management_tools
	documenttools
	exportlayers
	filtermanager
	lastdocumentsdocker
	plugin_importer
	quick_settings_docker
	scripter
	tenbrushes
	tenscripts


Display Information
Number of screens: 1
	Screen: 0
		Name: eDP-1
		Depth: 24
		Scale: 1
		Physical DPI185.642
		Logical DPI120
		Physical Size: 263, 164
		Position: 0, 0
		Resolution in pixels: 1920x1200
		Manufacturer:
		Model:
		Refresh Rate: 59.8846
		Serial Number:
Comment 1 Butter 2025-10-26 12:35:39 UTC
Created attachment 186183 [details]
Video Shows playback restarting half way through the animation.
Comment 2 Emmet O'Neill 2025-11-13 04:57:33 UTC
Hi again, Butter.

Sadly I also have had no lucky reproducing this bug on my Linux (Fedora Silverblue with Gnome) system. :(

I noticed that you're running via the Steam Runtime, so I tried reproducing this with through the Steam release too, but I had no luck there either, the animation plays and loops until I explicitly tell it to stop...

Interestingly, from your video it almost looks as if something is invoking the "stop animation" action, as if the stop button was being pressed.
 
As something of a "sanity check", it might be worth double-checking your keyboard bindings to make sure that something hasn't accidentally been bound to the "stop animation" action.  Likewise, if you're using a drawing tablet or touchscreen, I would recommend checking that touch gestures are disabled (both within Krita, in "Configure Krita > Canvas Input Settings > Touch Gestures", as well as in the operating system or any other programs that could interact in some way). 

Finally, does your animation currently have audio attached? (I doubt this is the issue, but it could have implications on testing.)

I'll make this as "worksforme" until we can find another person who can reproduce it. Thanks for the report.
Comment 3 Bug Janitor Service 2025-11-28 03:46:12 UTC
🐛🧹 ⚠️ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME.

For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging.

Thank you for helping us make KDE software even better for everyone!
Comment 4 Bug Janitor Service 2025-12-13 03:46:22 UTC
🐛🧹 This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME.