# Allow the Recorder docker to capture the canvas instead of the entire image

**URL:** <https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140>\
**Category:** Feature Requests\
**Tags:** for-ui-ux\
**Created:** [August 3, 2026, 5:48pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140 "2026-08-03T17:48:33Z")\
**Posts on this page:** 20\
**Page:** 4

<div class="post-metadata">

**Author:** ![Takiro](https://krita-artists.org/user_avatar/krita-artists.org/takiro/32/209381_2.png) [@Takiro](https://krita-artists.org/u/Takiro)\
**Post date:** [August 19, 2026, 7:52pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/61 "2026-08-19T19:52:17Z")

</div>

For me it’s mostly because people were asking “how did you do this specific thing” or “what brush preset did you use” and it is much easier to point to a specific timestamp so they can look for it themselves (especially because I can’t even remember myself most of the time) although nowadays I use the same 5 brushes for pretty much everything.

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 20, 2026, 10:41am UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/62 "2026-08-20T10:41:05Z")

</div>

I don’t want to argue with you. But i completely disagree, why try to extrapolate the data that is already there? Why waste processing time and further complicate export?

If we’re talking about KISS, dumping position logs with their corresponding frames or cropping images **is** the simple option

Also have you actually tried the latest version?

And in case this wasn’t obvious, i am not replacing the existing functionality with this new behavior but just making it an option.

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 20, 2026, 11:27am UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/63 "2026-08-20T11:27:50Z")

</div>

Huh, i can’t seem to recreate that locally. Does it happen with all files or only with specific ones? Does the crash happen only when recording?

---

<div class="post-metadata">

**Author:** ![tysontan](https://krita-artists.org/user_avatar/krita-artists.org/tysontan/32/103945_2.png) [@tysontan](https://krita-artists.org/u/tysontan)\
**Post date:** [August 20, 2026, 12:19pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/64 "2026-08-20T12:19:08Z")

</div>

Yes. I enabled “Record Automatically”. If I disable it, it doesn’t crash.

---

<div class="post-metadata">

**Author:** ![tysontan](https://krita-artists.org/user_avatar/krita-artists.org/tysontan/32/103945_2.png) [@tysontan](https://krita-artists.org/u/tysontan)\
**Post date:** [August 20, 2026, 12:34pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/65 "2026-08-20T12:34:53Z")

</div>

It seems to only crash with files that has SOME recordings by the new build. Old files untouched by the new build don’t seem to be affected. Empty new documents don’t seem to crash, either.

Switching between file tabs now becomes very sluggish, I have to wait more than 3 seconds before a switch can happen. CPU fan runs crazy during the this process. Many crashes happened during the switch, too.

---

<div class="post-metadata">

**Author:** ![tysontan](https://krita-artists.org/user_avatar/krita-artists.org/tysontan/32/103945_2.png) [@tysontan](https://krita-artists.org/u/tysontan)\
**Post date:** [August 20, 2026, 12:37pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/66 "2026-08-20T12:37:49Z")

</div>

Crash log: [https://tysontan.com/temp/KritaUsageLog.zip](https://tysontan.com/temp/KritaUsageLog.zip)

---

<div class="post-metadata">

**Author:** ![tysontan](https://krita-artists.org/user_avatar/krita-artists.org/tysontan/32/103945_2.png) [@tysontan](https://krita-artists.org/u/tysontan)\
**Post date:** [August 20, 2026, 3:24pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/67 "2026-08-20T15:24:59Z")

</div>

Added a three-quarter view from behind. Minor tweaks to the legs in side view. Same links as the previous post.

 ![electrichearts_20260729A_konqi_3D_01_all](https://krita-artists.org/uploads/default/original/3X/b/3/b33c40624b8a4987fd637dacd848f19a649b016c.jpeg)

Variations:  
[https://tysontan.com/temp/electrichearts\_20260729A\_konqi\_3D\_01\_all.png](https://tysontan.com/temp/electrichearts_20260729A_konqi_3D_01_all.png)  
[https://tysontan.com/temp/electrichearts\_20260729A\_konqi\_3D\_02\_notes.png](https://tysontan.com/temp/electrichearts_20260729A_konqi_3D_02_notes.png)  
[https://tysontan.com/temp/electrichearts\_20260729A\_konqi\_3D\_03\_noscarf.png](https://tysontan.com/temp/electrichearts_20260729A_konqi_3D_03_noscarf.png)  
[https://tysontan.com/temp/electrichearts\_20260729A\_konqi\_3D\_04\_noarms.png](https://tysontan.com/temp/electrichearts_20260729A_konqi_3D_04_noarms.png)

Source file:  
[https://tysontan.com/temp/electrichearts\_20260729A\_konqi\_3D.zip](https://tysontan.com/temp/electrichearts_20260729A_konqi_3D.zip)

Timelapse (from 04:53):

[https://tysontan.com/temp/electrichearts\_20260729A\_konqi\_3D.mp4](https://tysontan.com/temp/electrichearts_20260729A_konqi_3D.mp4)

I just noticed that since I hosted the video and files on my website with the same file name, their iterations in older posts all got updated along as well. XD

A lot of small mistakes happened when I was drawing the final view. I didn’t check the “Record focused area” in the newest build at first; I drew the scarf over the arm layer which I needed to correct; and many small tweaks near the end causing the screen to jump around more violently.

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 24, 2026, 4:43pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/68 "2026-08-24T16:43:55Z")

</div>

@tysontan I was finally able to fix that crash. At last i hope so, i still couldn’t recreate the crash, but i think i found the cause and fixed it. It should also resolve the performance issue you were having.

You can get the new build here: [Pipeline #1327926 · Graphics / Krita · GitLab](https://invent.kde.org/graphics/krita/-/pipelines/1327926)

---

<div class="post-metadata">

**Author:** ![tysontan](https://krita-artists.org/user_avatar/krita-artists.org/tysontan/32/103945_2.png) [@tysontan](https://krita-artists.org/u/tysontan)\
**Post date:** [August 26, 2026, 5:32pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/69 "2026-08-26T17:32:51Z")

</div>

Thank you, Luna.  
With the new build I have cleaned up the 3D reference sheet, and drew an old Konqi from start to finish. I spent a lot of time zooming-in to work on the details, with some canvas rotation as well.

 ![electrichearts_20260729A_konqi_3D_01_all](https://krita-artists.org/uploads/default/original/3X/1/e/1e467980f1005df4ad98e3d1c66f2b5e6e2419d2.webp)

[https://tysontan.com/temp/electrichearts\_20260729A\_konqi\_3D.mp4](https://tysontan.com/temp/electrichearts_20260729A_konqi_3D.mp4)

 ![electric_20260820A_konqi_old_trans](https://krita-artists.org/uploads/default/original/3X/0/3/03c4633eefd294d6c2c386a9914e3d24f67faee4.webp)

[https://tysontan.com/temp/electric\_20260820A\_konqi\_old.mp4](https://tysontan.com/temp/electric_20260820A_konqi_old.mp4)

I can still noticed a performance issue: when opening a large document, the new build take significantly longer to close compared to the normal builds.

Try open both of the source files of these pictures at the same time, then close the app:

[https://tysontan.com/temp/electrichearts\_20260729A\_konqi\_3D.zip](https://tysontan.com/temp/electrichearts_20260729A_konqi_3D.zip)

[https://tysontan.com/temp/electric\_20260820A\_konqi\_old.zip](https://tysontan.com/temp/electric_20260820A_konqi_old.zip)

In normal builds, if the documents are not modified, the app closes immediately. But the new recorder build can take a few seconds before closing (especially when dealing with even larger files, 12000x12000+ class).

As for crashing: the new build didn’t crash as often as before. Switching documents didn’t trigger a crash this time. But it crashed 2 times when I was copying/editing text objects. Not sure if it is new recorder build specific. I have too many text-related crashes in Krita since ever. XD

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 26, 2026, 7:08pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/70 "2026-08-26T19:08:24Z")

</div>

> [@tysontan](#):
>
> In normal builds, if the documents are not modified, the app closes immediately. But the new recorder build can take a few seconds before closing (especially when dealing with even larger files, 12000x12000+ class).

Yea, that makes sense, it is kinda unavoidable. To ensure that the image is always displayed properly at the end of the timelapse i create a “tail” frame whenever you stop recording/close a document. It shows the entire image, just in case you stopped recording while being zoomed in.  
So there’s always a bit of work that needs to be done when stopping a recording/closing the document.

Currently it does it every time, but instead i should only do that if you were actually zoomed in, which should make it more rare.

> [@tysontan](#):
>
> As for crashing: the new build didn’t crash as often as before. Switching documents didn’t trigger a crash this time. But it crashed 2 times when I was copying/editing text objects. Not sure if it is new recorder build specific. I have too many text-related crashes in Krita since ever. XD

That is probably unrelated.

---

<div class="post-metadata">

**Author:** ![BeARToys](https://krita-artists.org/user_avatar/krita-artists.org/beartoys/32/200_2.png) [@BeARToys](https://krita-artists.org/u/BeARToys)\
**Post date:** [August 26, 2026, 8:24pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/71 "2026-08-26T20:24:18Z")

</div>

Maybe you should tell the user, if there is a process running in the background, before closing krita.  
Something like “There is a running process, please wait for it to finish” or “There is cleaning up to do before closing please wait.” Or “Finishing the recording, please wait.”

So that the user knows it is not a bug, but a feature

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 26, 2026, 8:37pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/72 "2026-08-26T20:37:37Z")

</div>

Good idea, i should look into that

---

<div class="post-metadata">

**Author:** ![tysontan](https://krita-artists.org/user_avatar/krita-artists.org/tysontan/32/103945_2.png) [@tysontan](https://krita-artists.org/u/tysontan)\
**Post date:** [August 27, 2026, 3:28am UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/73 "2026-08-27T03:28:30Z")

</div>

And maybe mention the possible performance impact in “Record focused area” hovering tooltip, adding “Recommend 2 threads; Might cause slowdowns at closing documents”?

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 27, 2026, 1:58pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/74 "2026-08-27T13:58:39Z")

</div>

I have implemented the popup message for when recording takes a while to stop. I also had to redo some of the capturing code, to avoid potential issues with data races, so there **may** be a performance impact, but I’m not 100% certain it will be noticeable in the real world.

New build: [Pipeline #1331081 · Graphics / Krita · GitLab](https://invent.kde.org/graphics/krita/-/pipelines/1331081)

> [@tysontan](#):
>
> And maybe mention the possible performance impact in “Record focused area” hovering tooltip, adding “Recommend 2 threads; Might cause slowdowns at closing documents”?

There’s already a system in place that notifies you about poor performance, so i’m not sure if another one is needed. But i am still on the fence about that.

---

<div class="post-metadata">

**Author:** ![tysontan](https://krita-artists.org/user_avatar/krita-artists.org/tysontan/32/103945_2.png) [@tysontan](https://krita-artists.org/u/tysontan)\
**Post date:** [August 27, 2026, 3:43pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/75 "2026-08-27T15:43:21Z")

</div>

Thank you, Luna. The latest build closes most unmodified files as quickly as normal builds.

However, it crashed when closing this unusually large file (180MB+):  
[https://tysontan.com/temp/mascot\_konqi\_group.zip](https://tysontan.com/temp/mascot_konqi_group.zip)

The “Stopping recorder” message showed up, but it remained busy until Krita’s window greyed out and crashed. Perhaps not related to the new recorder code, though. That file is not only huge, but contains many text objects created with the 2024 Krita text engine, such complication could contribute to the instability.

Otherwise, no further issues. Looking forward to this being merged into master! 🙂

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 28, 2026, 5:15pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/76 "2026-08-28T17:15:58Z")

</div>

Turns out that is an existing bug where Krita just crashes when trying to record very large images \>= 23172 x 23172 px. I made a separate MR to fix that (admittedly it’s not really a proper fix, but rather a workaround that just doesn’t allow you to record timelapses on images that large).

Also that file nearly OOMd my system multiple times…

---

<div class="post-metadata">

**Author:** ![BeARToys](https://krita-artists.org/user_avatar/krita-artists.org/beartoys/32/200_2.png) [@BeARToys](https://krita-artists.org/u/BeARToys)\
**Post date:** [August 28, 2026, 7:00pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/77 "2026-08-28T19:00:45Z")

</div>

Sounds like you have to work with chunks for those large files someday. Or sqlite for krita which drawpile wanted to look at, comes before that.

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 28, 2026, 7:22pm UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/78 "2026-08-28T19:22:01Z")

</div>

No, Krita already uses tiles to store and handle images, but the recorder does not.

It is probably a good idea to do that, but it’d requite a rewrite to how it captures and stores images, which should probably be done at some point, especially since it would probably make it use less ram. But it will definitely not happen as part of this feature.

---

<div class="post-metadata">

**Author:** ![tysontan](https://krita-artists.org/user_avatar/krita-artists.org/tysontan/32/103945_2.png) [@tysontan](https://krita-artists.org/u/tysontan)\
**Post date:** [August 29, 2026, 8:38am UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/79 "2026-08-29T08:38:07Z")

</div>

The new build creates a “region” file at the location of the AppImage file (not the document path), is that intended?

---

<div class="post-metadata">

**Author:** ![Ciubix](https://krita-artists.org/user_avatar/krita-artists.org/ciubix/32/202546_2.png) [@Ciubix](https://krita-artists.org/u/Ciubix)\
**Post date:** [August 29, 2026, 8:49am UTC](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140/80 "2026-08-29T08:49:31Z")

</div>

Yes, but the region file is intended to be together with the recorded frames for the image

[Previous page](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140.md?page=3)

[Next page](https://krita-artists.org/t/allow-the-recorder-docker-to-capture-the-canvas-instead-of-the-entire-image/188140.md?page=5)
