Page MenuHome

Image Sequence data disappears after certain properties are set
Confirmed, NormalPublicBUG

Description

System Information
Operating system:
Graphics card:

Blender Version
Broken: 2.83.6 (and all previous 2.8x versions)

Short description of error

Cannot access image sequence pixel data from 'Image Sequence' editor after certain properties are set.

Exact steps for others to reproduce the error
Based on the following startup file and bundled image sequence:

  1. Open the 'image_sequence_issue.blend' file from the following zip folder:

  1. Run the active script in the text editor area
  2. Notice that an error is thrown - the image sequence has no data.
  3. Now comment out lines 8 & 9 (or line 12), and re-run the script. Notice that no error is thrown and the image has data.

For reference; the script bundled in the above file is copied below:

import bpy

# get the image editor space in the current screen
viewer_area = next(area for area in bpy.context.screen.areas if area.type == "IMAGE_EDITOR")
viewer_space = next(space for space in viewer_area.spaces if space.type == "IMAGE_EDITOR")

# set properties on the image user
viewer_space.image_user.frame_offset = 1
viewer_space.image_user.use_cyclic = True

# set the display channels to 'color'
viewer_space.display_channels = "COLOR"

# viewer_space.image.reload()  # this line does not fix the issue
print("Before update:", viewer_space.image.has_data)
viewer_space.image.update()
print("After update: ", viewer_space.image.has_data)

Event Timeline

Germano Cavalcante (mano-wii) changed the task status from Needs Triage to Confirmed.Wed, Sep 16, 9:25 PM
Germano Cavalcante (mano-wii) changed the subtype of this task from "Report" to "Bug".

Analyzing the code, it is really strange that BKE_image_has_loaded_ibuf returns true but BKE_image_acquire_ibuf returns NULL.
In fact there may be an error in one of these functions.
It deserves an investigation.

(I'm not sure which module mantain image.c so tagging Python API for now)