import os from UniTAP.common import VideoFrame, ColorInfo, DataInfo, get_vf_from_image from UniTAP.utils import video_frame_to_ci from .pdl_types import * UNIGRAF_IMAGE_PATH = os.path.join(os.path.dirname(__file__), "Default_16K.png") def generate_pattern_as_vf(pattern_type: PatternType, width: int, height: int, color_info: ColorInfo, data_info: DataInfo) -> VideoFrame: if pattern_type != PatternType.Unigraf: raise NotImplementedError("Generating ColorRamp and ColorSquares not supported yet.") if pattern_type == PatternType.Unigraf: if not os.path.exists(UNIGRAF_IMAGE_PATH): raise FileNotFoundError("Unigraf default image not found. Not possible to generate " "Unigraf pattern.") vf = get_vf_from_image(UNIGRAF_IMAGE_PATH, width, height) return video_frame_to_ci(vf, color_info, data_info)