Motion tracking - poor system performance when selecting keyframe matching on large video #51850
Labels
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender#51850
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
System Information
Intel i7 with 35Gb of RAM.
Windows 7 Professional.
Also:
Arch linux in a virtual box and on bare metal on the same machine, but booted off a USB disk
Graphics : nVidia Quadro K3100M
Blender Version
Broken: 2.78c
Short description of error
Doing motion tracking in equirectangular 4K video, thousands of frames.
When selecting keyframe as reference, a couple of frames are done quick, and then Blender slows down to a crawl, with maybe doing one frame every few seconds.
When selecting previous frame as reference the performance issue disappears.
It's almost like the reference picture is read from the frame where it was specified every single time a comparison is made, causing Blender to seek back and forth through the video. With large seeking times in the video the whole performance suffers.
Exact steps for others to reproduce the error
Load large video
Select motion tracking workspace
Add motion tracking point, using default settings
Track forward (it works fine for a couple of frames, and then slows down dramatically)
The workaround I found was to select fast motion preset for the tracking parameters, and then there is no slowdown.
Based on a (as simple as possible) attached .blend file with minimum amount of steps
Changed status to: 'Open'
Added subscriber: @evorster
#53344 was marked as duplicate of this issue
Added subscribers: @Sergey, @mont29
Not sure we can do much here, @Sergey would know.
Also, did you try to change your Memory Cache Limit setting in System tab of UserPreferences?
What is the type of medium you use (video, image sequence)? Does it happen with latest build from builder.blender.org? Try monitoring blender's memory consumption, see if it stays at some constant value after few frames reached or keeps raising up?
@mont29, there shouldn't be measurable difference between 'previous frame's and 'previous keyframe' reference option.
The medium type is x265 compressed video clip. It has exceedingly bad non-linear seeking performance.
Memory usage is a constant 1Gb, no creep. The system itself has about 35GB available.
I will try to set a higher memory limit and try again, but just adding more memory for the problem "feels" wrong, as there is no slowdown with using previous frame as a reference instead of keyframe. I can also provide a screen capture of the problem in action, if you want.
Just tried again with the same version of blender, on Windows 7.
I upped the memory limit to 10Gb, and when using keyframe for reference it eats my memory pretty quickly, ie: it uses more and more memory until all the 10Gb is used up, and then it slows down again.
I can not reproduce the issue with my video files on my workstation.
Please share some of the videos which shows the error, together with .blend file with the motion tracking prepared for the error to happen (so it's enough to press Ctrl-T to start tracking).
Hi there, Sergey.
Providing you with a video might be difficult. They are all over 1Gb of HEVC compressed 4k equirectangular video.
Even if I had the bandwidth to upload such a video, would this website accept it?
As a bit of side information I have the panoramatools plugin installed. Not sure if it matters much.
Kind regards,
Evert Vorster
It might matter. So test whether using factory startup blender affects the issue.
Changed status from 'Open' to: 'Archived'
More than a week without reply. Due to the policy of the tracker archiving for until required info/data are provided.
Added subscriber: @soderlind
I'm seeing the same thing also on Windows 7 and Linux Mint on another computer. Blender 2.79 RC1 and earlier.
It only happens when the clip doesn't fit the memory cache.
As soon as the memory cache is filled up while tracking with keyframe as reference, it slows down dramatically. Using previous frame as reference instead makes it go through the whole video with no slowdown.
It seems to be worse on higher resolution videos, or maybe videos with slower seek. I'm not sure.
Image-sequences show almost no slowdown, but if you pay attention it looks like it might behave the same, just too little to notice really.
I made a blend file with a random video that has this slowdown. I downloaded the video from: https://pixabay.com/en/videos/ski-winter-snow-mountains-8558/
Just open blend and press Ctrl-T.
Make sure Memory Cache Limit is low enough in the settings. (At 1024 MB the slowdown happens at around frame 130 for this video.)bugtest.blend
Ski - 8558.mp4
Looks like the video filename changed when it got uploaded. (To underscores instead of space.)
If you use my blend file you probably need to rename the video to this: Ski - 8558.mp4
Changed status from 'Archived' to: 'Open'
Yeah… as if it has to reload the keyframe every time…
The pattern area we're comparing against (the one which is denoted by keyframe match) is supposed to be cached inside of the tracking context which is not covered by memocy cache limit at all.
Will do some troubleshooting on Monday.
One thing you might want to try at the meantime (and this is actually something recommended when tracking video files): try generating timecode (Built Proxy/Timecode in the Proxy panel) and set tmecode to something like Record Run. See if that has any affect on performance.
@Sergey I just tried generating TC on his file, and saw no difference at all here…
This issue was referenced by
a850235a44
Changed status from 'Open' to: 'Resolved'
Tried latest buildbot build
66c1b23
and tracking is not working at all anymore. It gets stuck at 0% and if I try to quit blender it will stop responding.Added subscriber: @PauloJoseOliveiraAmaro