diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-03-06 15:27:16 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-03-06 15:32:45 +0400 |
commit | 4ce7d5cb79e23c4b28b1f1afe11fa066f3a5ea9c (patch) | |
tree | 973e72317b1f1af5f508b6ca82a8eca9dab8bac8 /source/blender/editors/space_clip/clip_ops.c | |
parent | 68ef6797b2fc2d2e37f59f6aae0d57b4ce8cc4bc (diff) |
Fixes for proxies color space
Basically proxy colorspace didn't work well enough.
It is still a bit weird and mainly:
- Proxies for image sequences are built in the image color space.
- Proxies for movies are built in the movie color space.
This could be unified but would need some work in proxy build
to make it not just pipe frames from one FFmpeg context to
another but also apply OCIO on it.
Diffstat (limited to 'source/blender/editors/space_clip/clip_ops.c')
-rw-r--r-- | source/blender/editors/space_clip/clip_ops.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/source/blender/editors/space_clip/clip_ops.c b/source/blender/editors/space_clip/clip_ops.c index 7a6c4268aab..bb6c50d6224 100644 --- a/source/blender/editors/space_clip/clip_ops.c +++ b/source/blender/editors/space_clip/clip_ops.c @@ -1002,7 +1002,7 @@ static void do_movie_proxy(void *pjv, int *UNUSED(build_sizes), int UNUSED(build } else { sfra = 1; - efra = IMB_anim_get_duration(clip->anim, IMB_TC_NONE); + efra = clip->len; } if (build_undistort_count) { @@ -1118,7 +1118,8 @@ static void *do_proxy_thread(void *data_v) while ((mem = proxy_thread_next_frame(data->queue, data->clip, &size, &cfra))) { ImBuf *ibuf; - ibuf = IMB_ibImageFromMemory(mem, size, IB_rect | IB_multilayer | IB_alphamode_detect, NULL, "proxy frame"); + ibuf = IMB_ibImageFromMemory(mem, size, IB_rect | IB_multilayer | IB_alphamode_detect, + data->clip->colorspace_settings.name, "proxy frame"); BKE_movieclip_build_proxy_frame_for_ibuf(data->clip, ibuf, NULL, cfra, data->build_sizes, data->build_count, false); |