Changeset View
Changeset View
Standalone View
Standalone View
source/blender/imbuf/intern/anim_movie.c
| Show First 20 Lines • Show All 298 Lines • ▼ Show 20 Lines | if (anim != NULL) { | ||||
| BLI_strncpy(anim->name, name, sizeof(anim->name)); | BLI_strncpy(anim->name, name, sizeof(anim->name)); | ||||
| anim->ib_flags = ib_flags; | anim->ib_flags = ib_flags; | ||||
| anim->streamindex = streamindex; | anim->streamindex = streamindex; | ||||
| } | } | ||||
| return (anim); | return (anim); | ||||
| } | } | ||||
| bool IMB_anim_can_produce_frames(const struct anim *anim) | |||||
| { | |||||
| #ifdef WITH_AVI | |||||
| if (anim->avi != NULL) { | |||||
| return true; | |||||
| } | |||||
| #endif | |||||
| #ifdef WITH_FFMPEG | |||||
| if (anim->pCodecCtx != NULL) { | |||||
| return true; | |||||
| } | |||||
| #endif | |||||
sergey: Don't think this will always work the way we expect it to.
Consider following steps:
- Go to… | |||||
| return false; | |||||
| } | |||||
| void IMB_suffix_anim(struct anim *anim, const char *suffix) | void IMB_suffix_anim(struct anim *anim, const char *suffix) | ||||
| { | { | ||||
| BLI_strncpy(anim->suffix, suffix, sizeof(anim->suffix)); | BLI_strncpy(anim->suffix, suffix, sizeof(anim->suffix)); | ||||
| } | } | ||||
| #ifdef WITH_AVI | #ifdef WITH_AVI | ||||
| static int startavi(struct anim *anim) | static int startavi(struct anim *anim) | ||||
| { | { | ||||
| ▲ Show 20 Lines • Show All 1,153 Lines • Show Last 20 Lines | |||||
Don't think this will always work the way we expect it to.
Consider following steps:
I think you will have False because the sequencer has never opened the animation (anim) because it does it lazily on render.
Suggestion: make it strip.reload_if_needed() which will do these checks., You'll have behavior you're looking for (no functional changes compared to this version of the patch), but will be exposed in a more clear way. At least i think it will be more clear ;)