tornavis/source/blender/sequencer/intern
Aras Pranckevicius e1f8775807 VSE: default to new "Auto" image filter for strips
Part of "improve filtering situation" (#116980), now strip scaling filter defaults to "Auto" which has logic like:

- No scale, no rotation, integer positions: Nearest (fastest)
- Scaling up by more than 2x: Cubic Mitchell, so you get nicer blending between pixels than with bilinear,
- Scaling down by more than 2x: Box, so that many pixels are averaged properly without too much aliasing,
- Otherwise: Bilinear

Existing strips that use Bilinear (which is default) get switched to Auto when loading older files.

All of this has an advantage that unless you have some special needs for your look, you can leave it at default and it will look decently good at either large up-scaling or large down-scaling, but not waste performance if you don't use any scaling at all. Previously none of the choices were good in "all cases": box (née subsampled3x3) only looks good when scaling down, cubic only looks good when scaling up, default bilinear leaves performance on the table when you don't use any scale/rotation, etc.

On something like Gold movie current edit, most of the strips effectively use Nearest now, except some that are translated into non-integer pixel positions; those stay effectively Bilinear.

Pull Request: https://projects.blender.org/blender/blender/pulls/117853
2024-02-05 20:09:29 +01:00
..
animation.cc Cleanup: Convert VSE headers from .h to .hh 2023-11-03 01:33:54 +01:00
channels.cc Cleanup: Convert VSE headers from .h to .hh 2023-11-03 01:33:54 +01:00
disk_cache.cc Cleanup: move imbuf .h files to .hh 2024-01-19 20:29:38 +01:00
disk_cache.hh Cleanup: Remove unnecessary struct and typedef keywords from C++ headers 2023-11-14 09:51:41 +01:00
effects.cc Cleanup: more C++ constructs in VSE render.hh and friends 2024-02-05 11:10:43 +01:00
effects.hh Cleanup: Remove unnecessary struct and typedef keywords from C++ headers 2023-11-14 09:51:41 +01:00
image_cache.cc Cleanup: move imbuf .h files to .hh 2024-01-19 20:29:38 +01:00
image_cache.hh Cleanup: Remove unnecessary keywords from C++ headers 2024-01-04 15:07:48 -05:00
iterator.cc VSE: speedup timeline drawing, and improve waveform display 2023-11-29 20:25:21 +01:00
modifier.cc Cleanup: more C++ constructs in VSE render.hh and friends 2024-02-05 11:10:43 +01:00
multiview.cc Cleanup: rename ImBuf anim & anim_index structs 2024-01-23 20:26:55 +11:00
multiview.hh Cleanup: rename ImBuf anim & anim_index structs 2024-01-23 20:26:55 +11:00
prefetch.cc Cleanup: more C++ constructs in VSE render.hh and friends 2024-02-05 11:10:43 +01:00
prefetch.hh Cleanup: use 'r_' prefix for output arguments, order last 2023-11-30 10:42:18 +11:00
proxy.cc Cleanup: more C++ constructs in VSE render.hh and friends 2024-02-05 11:10:43 +01:00
proxy.hh Cleanup: rename ImBuf anim & anim_index structs 2024-01-23 20:26:55 +11:00
proxy_job.cc BKE_main: move header to be a fully CPP one. 2023-12-01 20:38:54 +01:00
render.cc VSE: default to new "Auto" image filter for strips 2024-02-05 20:09:29 +01:00
render.hh Cleanup: more C++ constructs in VSE render.hh and friends 2024-02-05 11:10:43 +01:00
sequence_lookup.cc VSE: Use C++ containers for strip iteration 2023-11-06 01:36:44 +01:00
sequencer.cc VSE: default to new "Auto" image filter for strips 2024-02-05 20:09:29 +01:00
sequencer.hh Cleanup: Remove unnecessary struct and typedef keywords from C++ headers 2023-11-14 09:51:41 +01:00
sound.cc Cleanup: Replace MIN/MAX macros with C++ functions 2024-01-22 15:58:18 +01:00
strip_add.cc Cleanup: rename ImBuf anim & anim_index structs 2024-01-23 20:26:55 +11:00
strip_edit.cc UI: fix and improve a few messages 2024-02-05 17:08:17 +01:00
strip_relations.cc Core: rename Session UUID to Session UID 2024-01-22 13:47:13 +01:00
strip_retiming.cc Cleanup: Replace most used of SWAP macro with std::swap 2024-01-31 21:12:16 -05:00
strip_select.cc Cleanup: Convert VSE headers from .h to .hh 2023-11-03 01:33:54 +01:00
strip_time.cc Cleanup: Make format 2024-01-31 22:01:30 -05:00
strip_time.hh Cleanup: Remove unnecessary struct and typedef keywords from C++ headers 2023-11-14 09:51:41 +01:00
strip_transform.cc Fix: VSE: image strip outline sometimes not matching image 2024-01-03 21:20:03 +01:00
utils.cc Cleanup: Replace MIN/MAX macros with C++ functions 2024-01-22 15:58:18 +01:00
utils.hh Cleanup: Remove unnecessary struct and typedef keywords from C++ headers 2023-11-14 09:51:41 +01:00