Processors

Processor

class PyOpenColorIO.Processor
Processor(*args, **kwargs)
createGroupTransform() PyOpenColorIO.PyOpenColorIO.GroupTransform
getCacheID() str
getDefaultCPUProcessor() PyOpenColorIO.PyOpenColorIO.CPUProcessor
getDefaultGPUProcessor() PyOpenColorIO.PyOpenColorIO.GPUProcessor
getDynamicProperty(type: PyOpenColorIO.PyOpenColorIO.DynamicPropertyType) PyOpenColorIO.PyOpenColorIO.DynamicProperty
getFormatMetadata() PyOpenColorIO.PyOpenColorIO.FormatMetadata
getOptimizedCPUProcessor(*args, **kwargs)

Overloaded function.

  1. getOptimizedCPUProcessor(self: PyOpenColorIO.PyOpenColorIO.Processor, oFlags: PyOpenColorIO.PyOpenColorIO.OptimizationFlags) -> PyOpenColorIO.PyOpenColorIO.CPUProcessor

  2. getOptimizedCPUProcessor(self: PyOpenColorIO.PyOpenColorIO.Processor, inBitDepth: PyOpenColorIO.PyOpenColorIO.BitDepth, outBitDepth: PyOpenColorIO.PyOpenColorIO.BitDepth, oFlags: PyOpenColorIO.PyOpenColorIO.OptimizationFlags) -> PyOpenColorIO.PyOpenColorIO.CPUProcessor

getOptimizedGPUProcessor(oFlags: PyOpenColorIO.PyOpenColorIO.OptimizationFlags) PyOpenColorIO.PyOpenColorIO.GPUProcessor
getOptimizedProcessor(*args, **kwargs)

Overloaded function.

  1. getOptimizedProcessor(self: PyOpenColorIO.PyOpenColorIO.Processor, oFlags: PyOpenColorIO.PyOpenColorIO.OptimizationFlags) -> PyOpenColorIO.PyOpenColorIO.Processor

  2. getOptimizedProcessor(self: PyOpenColorIO.PyOpenColorIO.Processor, inBitDepth: PyOpenColorIO.PyOpenColorIO.BitDepth, outBitDepth: PyOpenColorIO.PyOpenColorIO.BitDepth, oFlags: PyOpenColorIO.PyOpenColorIO.OptimizationFlags) -> PyOpenColorIO.PyOpenColorIO.Processor

getProcessorMetadata() PyOpenColorIO.PyOpenColorIO.ProcessorMetadata
getTransformFormatMetadata() PyOpenColorIO.PyOpenColorIO.Processor.TransformFormatMetadataIterator
hasChannelCrosstalk() bool
hasDynamicProperty(type: PyOpenColorIO.PyOpenColorIO.DynamicPropertyType) bool
isDynamic() bool
isNoOp() bool
class PyOpenColorIO.Processor.TransformFormatMetadataIterator
self[arg0: SupportsInt] PyOpenColorIO.PyOpenColorIO.FormatMetadata
iter(self) PyOpenColorIO.PyOpenColorIO.Processor.TransformFormatMetadataIterator
len(self) int
next(self) PyOpenColorIO.PyOpenColorIO.FormatMetadata

CPUProcessor

class PyOpenColorIO.CPUProcessor
CPUProcessor(*args, **kwargs)
apply(*args, **kwargs)

Overloaded function.

  1. apply(self: PyOpenColorIO.PyOpenColorIO.CPUProcessor, imgDesc: PyOpenColorIO.PyOpenColorIO.ImageDesc) -> None

Apply to an image with any kind of channel ordering while respecting the input and output bit-depths. Image values are modified in place.

Note

The GIL is released during processing, freeing up Python to execute other threads concurrently.

Note

For large images, applyRGB or applyRGBA are preferred for processing a NumPy array. The Python ImageDesc implementation requires copying all values (once) in order to own the underlying pointer. The dedicated packed apply* methods utilize ImageDesc on the C++ side so avoid the copy.

  1. apply(self: PyOpenColorIO.PyOpenColorIO.CPUProcessor, srcImgDesc: PyOpenColorIO.PyOpenColorIO.ImageDesc, dstImgDesc: PyOpenColorIO.PyOpenColorIO.ImageDesc) -> None

Apply to an image with any kind of channel ordering while respecting the input and output bit-depths. Modified srcImgDesc image values are written to the dstImgDesc image, leaving srcImgDesc unchanged.

Note

The GIL is released during processing, freeing up Python to execute other threads concurrently.

Note

For large images, applyRGB or applyRGBA are preferred for processing a NumPy array. The Python ImageDesc implementation requires copying all values (once) in order to own the underlying pointer. The dedicated packed apply* methods utilize ImageDesc on the C++ side so avoid the copy.

applyRGB(*args, **kwargs)

Overloaded function.

  1. applyRGB(self: PyOpenColorIO.PyOpenColorIO.CPUProcessor, data: typing_extensions.Buffer) -> None

Apply to a packed RGB array adhering to the Python buffer protocol. This will typically be a NumPy array. Input and output bit-depths are respected but must match. Any array size or shape is supported as long as the flattened array size is divisible by 3. Array values are modified in place.

Note

This differs from the C++ implementation which only applies to a single pixel. This method uses a PackedImageDesc under the hood to apply to an entire image at once. The GIL is released during processing, freeing up Python to execute other threads concurrently.

  1. applyRGB(self: PyOpenColorIO.PyOpenColorIO.CPUProcessor, data: collections.abc.Sequence[typing.SupportsFloat]) -> list[float]

Apply to a packed RGB list of float values. Any size is supported as long as the list length is divisible by 3. A new list with processed float values is returned, leaving the input list unchanged.

Note

This differs from the C++ implementation which only applies to a single pixel. This method uses a PackedImageDesc under the hood to apply to an entire image at once. The GIL is released during processing, freeing up Python to execute other threads concurrently.

Note

For large images, a NumPy array should be preferred over a list. List values are copied on input and output, where an array is modified in place.

applyRGBA(*args, **kwargs)

Overloaded function.

  1. applyRGBA(self: PyOpenColorIO.PyOpenColorIO.CPUProcessor, data: typing_extensions.Buffer) -> None

Apply to a packed RGBA array adhering to the Python buffer protocol. This will typically be a NumPy array. Input and output bit-depths are respected but must match. Any array size or shape is supported as long as the flattened array size is divisible by 4. Array values are modified in place.

Note

This differs from the C++ implementation which only applies to a single pixel. This method uses a PackedImageDesc under the hood to apply to an entire image at once. The GIL is released during processing, freeing up Python to execute other threads concurrently.

  1. applyRGBA(self: PyOpenColorIO.PyOpenColorIO.CPUProcessor, data: collections.abc.Sequence[typing.SupportsFloat]) -> list[float]

Apply to a packed RGBA list of float values. Any size is supported as long as the list length is divisible by 4. A new list with processed float values is returned, leaving the input list unchanged.

Note

This differs from the C++ implementation which only applies to a single pixel. This method uses a PackedImageDesc under the hood to apply to an entire image at once. The GIL is released during processing, freeing up Python to execute other threads concurrently.

Note

For large images, a NumPy array should be preferred over a list. List values are copied on input and output, where an array is modified in place.

getCacheID() str
getDynamicProperty(type: PyOpenColorIO.PyOpenColorIO.DynamicPropertyType) PyOpenColorIO.PyOpenColorIO.DynamicProperty
getInputBitDepth() PyOpenColorIO.PyOpenColorIO.BitDepth
getOutputBitDepth() PyOpenColorIO.PyOpenColorIO.BitDepth
hasChannelCrosstalk() bool
hasDynamicProperty(type: PyOpenColorIO.PyOpenColorIO.DynamicPropertyType) bool
isDynamic() bool
isIdentity() bool
isNoOp() bool

GPUProcessor

class PyOpenColorIO.GPUProcessor
GPUProcessor(*args, **kwargs)
extractGpuShaderInfo(shaderDesc: PyOpenColorIO.PyOpenColorIO.GpuShaderDesc) None
getCacheID() str
hasChannelCrosstalk() bool
isNoOp() bool

ProcessorMetadata

class PyOpenColorIO.ProcessorMetadata
ProcessorMetadata() None
addFile(fileName: str) None
addLook(look: str) None
getFiles() PyOpenColorIO.PyOpenColorIO.ProcessorMetadata.FileIterator
getLooks() PyOpenColorIO.PyOpenColorIO.ProcessorMetadata.LookIterator
class PyOpenColorIO.ProcessorMetadata.FileIterator
self[arg0: SupportsInt] str
iter(self) PyOpenColorIO.PyOpenColorIO.ProcessorMetadata.FileIterator
len(self) int
next(self) str
class PyOpenColorIO.ProcessorMetadata.LookIterator
self[arg0: SupportsInt] str
iter(self) PyOpenColorIO.PyOpenColorIO.ProcessorMetadata.LookIterator
len(self) int
next(self) str