跳转到内容

AEIO_ModuleInfo

AEIO_ModuleInfo

这是您的 AEIO 定义其基本属性的结构。

请注意,除了描述您的 AEIO 支持的文件类型和扩展名外,您还使用 AEIO_ModuleFlags 描述您的签名和行为。我们喜欢标志。


AEIO_ModuleInfo 成员

成员用途
sig一个长整型,用于唯一标识您的插件。
许多开发者更喜欢在这里使用明确的 Mac 风格的四字符代码。
告诉我们您使用的签名。
name您的 AEIO 插件的描述性名称。
flagsAEIO_ModuleFlags 的集合。
flags2AEIO_ModuleFlags2 的集合。
max_width, max_height您的格式支持的最大尺寸。
num_filetypes您的 AEIO 支持的文件类型数量。
num_extensions您的 AEIO 支持的文件扩展名数量。
num_clips您的 AEIO 支持的剪贴板格式数量。
create_kind您的 AEIO 创建的文件在 macOS 上的四字符代码。
create_ext您的 AEIO 创建的文件扩展名。
read_kinds这个包含 16 个 AEIO_FileKinds 的数组不需要完全填充,但前 [num_filetypes + num_extensions + num_clips] 个必须按顺序填充。
num_aux_extensions您的 AEIO 支持的辅助扩展名数量。
例如,假设您正在编写一个 AEIO 以从 3D 程序中导入信息,该程序将场景信息保存到 .123 文件中,并将相机信息保存到 .xyz 文件中。
.xyz 将是一个辅助扩展名;它不是获取其余场景信息所必需的,但它与 .123 文件相关联。
aux_ext您的 AEIO 支持的辅助文件类型的文件扩展名。

行为标志

AEIO 在 AEIO_ModuleInfo.flags 中设置这些标志(就像效果插件使用全局输出标志一样),以向 After Effects 指示其行为。一些标志仅与输入相关,一些仅与输出相关。

AEIO_ModuleFlags

标志用途输入或输出?
AEIO_MFlag_INPUTAEIO 是一个输入模块。输入!
AEIO_MFlag_OUTPUTAEIO 是一个输出模块(一个插件可以同时是两者)。输出!
AEIO_MFlag_FILE每个直接导入的剪辑都对应于某个文件。两者
AEIO_MFlag_STILL支持静态图像,不支持视频。输出
AEIO_MFlag_VIDEO支持视频图像,不支持静态图像。输出
AEIO_MFlag_AUDIO支持音频。输出
AEIO_MFlag_NO_TIME时间信息不是文件格式的一部分。输入
这适用于编号的静态图像,根据合成的时间设置导入单个帧。
AEIO_MFlag_INTERACTIVE_GET新的输入序列需要用户交互。输入
这适用于非基于文件的输入模块。
AEIO_MFlag_INTERACTIVE_PUT新的输出序列需要用户交互。输出
这适用于非基于文件的输出模块。
AEIO_MFlag_CANT_CLIPAEIO 的绘图函数不能接受小于请求尺寸的尺寸。输入
AEIO_MFlag_MUST_INTERACT_PUTAEIO 必须显示一个对话框,即使有有效的选项数据句柄可用。输出
AEIO_MFlag_CANT_SOUND_INTERLEAVEAEIO 要求先处理所有视频数据,然后再处理音频数据(而不是交错处理视频和音频)。输出
AEIO_MFlag_CAN_ADD_FRAMES_NON_LINEARAEIO 支持添加非顺序帧。输出
AEIO_MFlag_HOST_DEPTH_DIALOGAEIO 希望 After Effects 显示位深度选择对话框。输入
AEIO_MFlag_HOST_FRAME_START_DIALOGAEIO 希望 After Effects 显示一个对话框,要求用户指定起始帧。输入
AEIO_MFlag_NO_OPTIONSAEIO 不接受输出选项。输出
AEIO_MFlag_NO_PIXELSAEIO 的文件格式实际上不存储像素。截至 CS6 未使用。(未使用)
AEIO_MFlag_SEQUENCE_OPTIONS_OK如果选择了文件夹,AEIO 将采用其父级的序列选项。输入
AEIO_MFlag_INPUT_OPTIONSAEIO 具有与每个输入序列关联的用户选项。输入
!!! 注意
选项信息必须是平面的(不引用外部指针或句柄中包含的任何数据)。
AEIO_MFlag_HSF_AWAREAEIO 将为每个新序列提供水平缩放因子(像素宽高比)信息。输入
这可以防止 After Effects 猜测。
AEIO_MFlag_HAS_LAYERSAEIO 支持单个文档中的多个图层。输入
AEIO_MFlag_SCRAPAEIO 具有剪贴板解析组件。输入
AEIO_MFlag_NO_UIAfter Effects 不应为此模块显示 UI输入
(不要将此标志与 AEIO_MFlag_HOST_DEPTH_DIALOGAEIO_MFlag_HOST_FRAME_START_DIALOG 结合使用)
AEIO_MFlag_SEQ_OPTIONS_DLGAEIO 具有可从“解释素材”对话框中的“更多选项”按钮访问的序列选项。输入
AEIO_MFlag_HAS_AUX_DATAAEIO 支持的文件格式具有深度信息、法线或与每个像素相关的其他非颜色信息。输入
AEIO_MFlag_HAS_META_DATAAEIO 支持的文件格式支持用户可定义的元数据。输出
如果设置了此标志,输出模块对话框中的嵌入弹出窗口将启用。
AEIO_MFlag_CAN_DO_MARKERSAEIO 支持的文件格式支持标记、URL 翻转和/或章节。输出
AEIO_MFlag_CAN_DRAW_DEEPAEIO 可以绘制到 16bpc(“深”)的 PF_EffectWorlds 中。输入
AEIO_MFlag_RESERVED4特殊的超级秘密标志。它什么都不做……还是做了????
(不,它没有。)

AEIO_ModuleFlags2

必须有这些标志…

标志用途输入或输出?
AEIO_MFlag2_AUDIO_OPTIONSAEIO 具有音频选项对话框。输出
AEIO_MFlag2_SEND_ADDMARKER_BEFORE_ADDFRAMEAEIO 希望在输出视频或音频之前接收标记数据(对 MPEG 流有用)。输出
AEIO_MFlag2_CAN_DO_MARKERS_2AEIO 支持组合标记;URL 翻转、章节和注释。输出
AEIO_MFlag2_CAN_DRAW_FLOATAEIO 可以绘制到浮点(32-bpc)世界中。输入
AEIO_MFlag2_CAN_DO_AUDIO_32支持 32 位音频输出。输出
AEIO_MFlag2_SUPPORTS_ICC_PROFILES支持 ICC 配置文件。两者
AEIO_MFlag2_CAN_DO_MARKERS_3AEIO 支持组合标记;URL 翻转、章节、注释和提示点。输出
AEIO_MFlag2_SEND_ADDMARKER_BEFORE_STARTADDINGAEIO 希望在导出期间在视频之前处理标记。输出
AEIO_MFlag2_USES_QUICKTIME在 MacOS 上,主机在从 AEIO_FunctionBlock4 调用 AEIO_AddFrameAEIO_OutputFrame 之前,将锁定全局 QuickTime 互斥锁。输出