Blender V4.3
IMB_imbuf_enums.h File Reference
#include "BLI_utildefines.h"

Go to the source code of this file.

Typedefs

typedef enum IMB_Timecode_Type IMB_Timecode_Type
 
typedef enum IMB_Proxy_Size IMB_Proxy_Size
 

Enumerations

enum  eImbFileType {
  IMB_FTYPE_NONE = 0 , IMB_FTYPE_PNG = 1 , IMB_FTYPE_TGA = 2 , IMB_FTYPE_JPG = 3 ,
  IMB_FTYPE_BMP = 4 , IMB_FTYPE_OPENEXR = 5 , IMB_FTYPE_IMAGIC = 6 , IMB_FTYPE_PSD = 7 ,
  IMB_FTYPE_RADHDR = 9 , IMB_FTYPE_TIF = 10 , IMB_FTYPE_DDS = 13
}
 
enum  IMB_Timecode_Type { IMB_TC_NONE = 0 , IMB_TC_RECORD_RUN = 1 , IMB_TC_RECORD_RUN_NO_GAPS = 8 , IMB_TC_NUM_TYPES = 2 }
 
enum  IMB_Proxy_Size {
  IMB_PROXY_NONE = 0 , IMB_PROXY_25 = 1 , IMB_PROXY_50 = 2 , IMB_PROXY_75 = 4 ,
  IMB_PROXY_100 = 8 , IMB_PROXY_MAX_SLOT = 4
}
 

Functions

 ENUM_OPERATORS (IMB_Proxy_Size, IMB_PROXY_100)
 

Typedef Documentation

◆ IMB_Proxy_Size

◆ IMB_Timecode_Type

Time-code files contain timestamps (PTS, DTS) and packet seek position. These values are obtained by decoding each frame in movie stream. Time-code types define how these map to frame index in Blender. This is used when seeking in movie stream. Note, that meaning of terms time-code and record run here has little connection to their actual meaning.

Enumeration Type Documentation

◆ eImbFileType

ImBuf.ftype flag, main image types.

Enumerator
IMB_FTYPE_NONE 
IMB_FTYPE_PNG 
IMB_FTYPE_TGA 
IMB_FTYPE_JPG 
IMB_FTYPE_BMP 
IMB_FTYPE_OPENEXR 
IMB_FTYPE_IMAGIC 
IMB_FTYPE_PSD 
IMB_FTYPE_RADHDR 
IMB_FTYPE_TIF 
IMB_FTYPE_DDS 

Definition at line 23 of file IMB_imbuf_enums.h.

◆ IMB_Proxy_Size

Enumerator
IMB_PROXY_NONE 
IMB_PROXY_25 
IMB_PROXY_50 
IMB_PROXY_75 
IMB_PROXY_100 
IMB_PROXY_MAX_SLOT 

Definition at line 75 of file IMB_imbuf_enums.h.

◆ IMB_Timecode_Type

Time-code files contain timestamps (PTS, DTS) and packet seek position. These values are obtained by decoding each frame in movie stream. Time-code types define how these map to frame index in Blender. This is used when seeking in movie stream. Note, that meaning of terms time-code and record run here has little connection to their actual meaning.

Enumerator
IMB_TC_NONE 

Don't use time-code files at all. Use FFmpeg API to seek to PTS calculated on the fly.

IMB_TC_RECORD_RUN 

TC entries (and therefore frames in movie stream) are mapped to frame index, such that timestamp in Blender matches timestamp in the movie stream. This assumes, that time starts at 0 in both cases.

Simplified formula is frame_index = movie_stream_timestamp * FPS.

IMB_TC_RECORD_RUN_NO_GAPS 

Each TC entry (and therefore frame in movie stream) is mapped to new frame index in Blender.

For example: FFmpeg may say, that a frame should be displayed for 0.5 seconds, but this option ignores that and only displays it in one particular frame index in Blender.

IMB_TC_NUM_TYPES 

Definition at line 54 of file IMB_imbuf_enums.h.

Function Documentation

◆ ENUM_OPERATORS()

ENUM_OPERATORS ( IMB_Proxy_Size ,
IMB_PROXY_100  )