Ссылка типов данных FxPlug
Этот документ описывает типы данных, определенные в FxPlug SDK, которые не являются определенным классом.
-
2D представление точки.
Объявление
Objective C
typedef CGPoint FxPoint2D;Оператор импорта
-
2D выровненный осью прямоугольник с целочисленными координатами.
Объявление
Objective C
typedef struct FxRect { SInt32 left; SInt32 bottom; SInt32 right; SInt32 top; } FxRect;Константы
-
leftleftКомпонент левого края прямоугольника.
-
bottombottomКомпонент базового края прямоугольника.
-
rightrightКомпонент правого края прямоугольника.
-
toptopГлавный граничный компонент прямоугольника.
Оператор импорта
-
-
Структура для хранения значений ширины и высоты.
Объявление
Objective C
typedef CGSize FxSize;Оператор импорта
-
Константы раньше идентифицировали битовую глубину.
Объявление
Objective C
enum { kFxDepth_UINT8 = 0, kFxDepth_FLOAT16 = 2, kFxDepth_FLOAT32 = 3 }; typedef NSUInteger FxDepth;Константы
-
kFxDepth_UINT8kFxDepth_UINT8Каждый компонент является 8-разрядным целым числом.
-
kFxDepth_FLOAT16kFxDepth_FLOAT16Каждый компонент является 16-разрядным плаванием.
-
kFxDepth_FLOAT32kFxDepth_FLOAT32Каждый компонент является 32-разрядным плаванием.
Оператор импорта
-
-
Некоторые распространенные ошибки, которые могут быть возвращены сменными приложениями узлов.
Объявление
Objective C
enum { kFxError_Success = 0, kFxError_InvalidParameterID, kFxError_InvalidParameterChannelIndex, kFxError_InvalidKeyframeIndex, kFxError_InvalidTime, kFxError_InvalidParameter, kFxError_OutOfMemory, kFxError_MemoryNotAllocated, kFxError_OpenGLError, kFxError_InvalidPathID, kFxError_InvalidPathIndex, kFxError_InvalidSegmentIndex, kFxError_ThirdPartyDeveloperStart = 100000 }; typedef NSUInteger FxError;Константы
-
kFxError_SuccesskFxError_SuccessНикакая ошибка не произошла. Вызов успешно выполнился.
-
kFxError_InvalidParameterIDkFxError_InvalidParameterIDНедопустимый параметр ID использовался.
-
kFxError_InvalidParameterChannelIndexkFxError_InvalidParameterChannelIndexЧисло неверного канала для параметра использовалось.
-
kFxError_InvalidKeyframeIndexkFxError_InvalidKeyframeIndexИспользовался недопустимый индекс ключевого кадра.
-
kFxError_InvalidTimekFxError_InvalidTimeИспользовалось недопустимое время.
-
kFxError_InvalidParameterkFxError_InvalidParameterПараметр, отправленный в метод API, был недопустим. Например, a
nilуказатель, объект не реализует протокол и т.д. -
kFxError_OutOfMemorykFxError_OutOfMemoryНеспособный выделить память.
-
kFxError_MemoryNotAllocatedkFxError_MemoryNotAllocatedПопытка к свободной памяти, не выделенной.
-
kFxError_OpenGLErrorkFxError_OpenGLErrorOpenGL возвратил ошибку.
-
kFxError_InvalidPathIDkFxError_InvalidPathIDНикакой путь с тем, что существует ID.
-
kFxError_InvalidPathIndexkFxError_InvalidPathIndexИндекс больше, чем число путей.
-
kFxError_InvalidSegmentIndexkFxError_InvalidSegmentIndexИндекс сегмента пути больше, чем число сегментов по пути.
-
kFxError_ThirdPartyDeveloperStartkFxError_ThirdPartyDeveloperStartВсе сторонние ошибочные значения должны быть больше, чем или равными этому значению.
Оператор импорта
-
-
Константы раньше идентифицировали поле. До FxPlug SDK 1.2 этот тип использовался для идентификации полевого порядка. С FxPlug SDK 1.2 это используется для идентификации поля изображения.
Объявление
Objective C
enum { kFxField_NONE = 0, kFxField_UPPER = 1, kFxField_LOWER = 2 }; typedef NSUInteger FxFieldOrder;Константы
-
kFxField_NONEkFxField_NONEПолный кадр, прогрессивный (никакие поля).
-
kFxField_UPPERkFxField_UPPERВерхнее поле.
-
kFxField_LOWERkFxField_LOWERБолее низкое поле.
Оператор импорта
-
-
Константы раньше идентифицировали полевой порядок потока изображения.
Объявление
Objective C
enum { kFxFieldOrder_PROGRESSIVE = 0, kFxFieldOrder_UPPER_FIRST = 1, kFxFieldOrder_LOWER_FIRST = 2 }; typedef NSUInteger FxFieldOrder;Константы
-
kFxFieldOrder_PROGRESSIVEkFxFieldOrder_PROGRESSIVEПолный кадр, прогрессивный (никакие поля).
-
kFxFieldOrder_UPPER_FIRSTkFxFieldOrder_UPPER_FIRSTВерхнее поле сначала.
-
kFxFieldOrder_LOWER_FIRSTkFxFieldOrder_LOWER_FIRSTБолее низкое поле сначала.
Оператор импорта
-
-
Константы для указания типа ключевого кадра
Объявление
Objective C
enum { kFxKeyframeStyle_Constant = 0x0001, kFxKeyframeStyle_Linear = 0x0002, kFxKeyframeStyle_Quadratic = 0x0004, kFxKeyframeStyle_Cubic = 0x0008, kFxKeyframeStyle_Bezier = 0x0010, kFxKeyframeStyle_EaseIn = 0x0080, kFxKeyframeStyle_EaseOut = 0x0100, kFxKeyframeStyle_BSpline = 0x0400, kFxKeyframeStyle_XSpline = 0x1000, kFxKeyframeStyle_Exponential= 0x2000, kFxKeyframeStyle_Logarithmic= 0x4000, kFxKeyframeStyle_Mixed = 0x80000000, kFxKeyframeStyle_All = 0x7fff, kFxKeyframeStyle_None = 0x0000 }; typedef NSUInteger FxKeyframeStyle;Константы
-
kFxKeyframeStyle_ConstantkFxKeyframeStyle_ConstantТакже известный, как «Содержат», постоянные ключевые кадры имеют постоянное значение между ключевыми кадрами.
-
kFxKeyframeStyle_LinearkFxKeyframeStyle_LinearЗначения интерполированы вдоль прямой линии между ключевыми кадрами.
-
kFxKeyframeStyle_QuadratickFxKeyframeStyle_QuadraticЗначения интерполированы вдоль квадратичной кривой.
-
kFxKeyframeStyle_CubickFxKeyframeStyle_CubicЗначения интерполированы вдоль кубической кривой.
-
kFxKeyframeStyle_BezierkFxKeyframeStyle_BezierЗначения интерполированы вдоль кубической кривой, которой пользователь может управлять путем варьирования дескрипторов касательной.
-
kFxKeyframeStyle_EaseInkFxKeyframeStyle_EaseInЗначения интерполированы вдоль предрасчетной кубической кривой что гладко переходы в следующее значение.
-
kFxKeyframeStyle_EaseOutkFxKeyframeStyle_EaseOutЗначения интерполированы вдоль предрасчетной кубической кривой что гладко переходы из предыдущего значения.
-
kFxKeyframeStyle_BSplinekFxKeyframeStyle_BSplineЗначения интерполированы вдоль B-сплайна.
-
kFxKeyframeStyle_XSplinekFxKeyframeStyle_XSplineЗначения интерполированы вдоль взвешенного X-шлица.
-
kFxKeyframeStyle_ExponentialkFxKeyframeStyle_ExponentialЗначения интерполированы вдоль экспоненты.
-
kFxKeyframeStyle_LogarithmickFxKeyframeStyle_LogarithmicЗначения интерполированы вдоль логарифмической кривой.
-
kFxKeyframeStyle_MixedkFxKeyframeStyle_MixedКлючевой кадр является смесью двух из вышеупомянутых типов.
-
kFxKeyframeStyle_AllkFxKeyframeStyle_AllМаска для всех типов.
-
kFxKeyframeStyle_NonekFxKeyframeStyle_NoneМаска ни для каких типов.
Оператор импорта
-
-
Определяет, являются ли основы времени относительными или абсолютными.
Объявление
Objective C
enum { kFxTimeBase_TIMELINE = 0, kFxTimeBase_CLIP = 1 }; typedef NSUInteger FxTimeBase;Константы
-
kFxTimeBase_TIMELINEkFxTimeBase_TIMELINEВремена являются абсолютными числами кадра, где
0запуск временной шкалы. -
kFxTimeBase_CLIPkFxTimeBase_CLIPВремена «относительны клипом», означая это
0запуск клипа. Для генераторов и переходов, клип является самим эффектом. Для фильтров клип является видео элементом, к которому применяется фильтр.
Оператор импорта
-
-
Уникальный идентификатор для пути
Объявление
Objective C
typedef void* FxPathID;Оператор импорта
-
Введите определение, используемое для указания запроса рендеринга.
Объявление
Objective C
typedef struct { double frame; FxQuality qualityLevel; FxFieldOrder fieldOrder; double scaleX; double scaleY; CGLContextObj sharedContext; FxDepth depth; } FxRenderInfo;Константы
-
frameframeТребуемое время, которое будет представлено, выраженное в числе кадра на проекте или временной шкале последовательности. Обратите внимание на то, что это - число кадра с плавающей точкой. В чересстрочном видео время для первого поля было бы целым числом i; для второго поля, не целое число (я + 0.5).
-
qualityLevelqualityLevelТребуемое качество рендеринга:
kFxQuality_LOW,kFxQuality_MEDIUM, илиkFxQuality_HIGH. -
fieldOrderfieldOrderПолевой порядок кадра, который будет представлен. Значение будет
kFxFieldOrder_PROGRESSIVEдля рендеринга предварительных просмотров, и для прогрессивной видеозаписи., Когда плагин должен будет представить чередованную видеозапись, это будет постоянное значение для всех полей, которые Ваш плагин просят представить. Например, если плагин применяется к NTSC видеозапись DV, обычно этот тип видеозаписи имеет полевой порядокkFxFieldOrder_LOWER_FIRST. Когда спросили представлять поля,fieldOrderзначение всегда будетkFxFieldOrder_LOWER_FIRST. При рендеринге миниатюр для списка слоев в Движении значение будетkFxFieldOrder_PROGRESSIVE). Для определения, какое поле плагин фактически просят представить, проверьте выходное изображениеfieldметод. Это чередуется междуkFxField_UPPERиkFxField_LOWERдля чересстрочной видеозаписи при рендеринге полей. Перед FxPlug 1.2 это былоFxField, неFxFieldOrder. Эти два двоичные совместимый, но плагины должны использоватьFxFieldOrderввести. -
scaleXscaleXТребуемое горизонтальное значение масштаба. Когда значение - меньше чем 1, тогда координаты вычисления должны составить масштаб прежде, чем выбрать от входного изображения.
-
scaleYscaleYТребуемое вертикальное значение масштаба. Когда значение - меньше чем 1, тогда координаты вычисления должны составить масштаб прежде, чем выбрать от входного изображения.
-
sharedContextsharedContextOpenGL совместно использовал контекст. Это может быть
NULLпри выполнении рендеринга программного обеспечения. -
depthdepthПиксельная глубина буфера:
kFxDepth_UINT8,kFxDepth_FLOAT16, илиkFxDepth_FLOAT32.
Обсуждение
Попиксельная пропорция не принята во внимание когда
scaleXиscaleYзначения вычислены. Плагины должны смотреть на ввод и выводFxImageInfoструктура для определения попиксельных пропорций.sharedContextпозволяет плагину создавать свой собственный контекст OpenGL, совместно использующий текстуры, предоставленные приложением плагин. Вы не должны обычно использовать этот контекст, если Вы не должны создавать новый контекст и желание его для совместного использования текстур ввода и вывода. Вы никогда не использовали бы этот контекст непосредственно для рисования, также. Приложение устанавливает текущий контекст для вовлечения выходной текстуры прежде, чем вызвать плагин.Оператор импорта
-
-
Константы раньше идентифицировали качество рендеринга.
Объявление
Objective C
enum { kFxQuality_LOW = 0, kFxQuality_MEDIUM = 1, kFxQuality_HIGH = 2 }; typedef NSUInteger FxQuality;Константы
-
kFxQuality_LOWkFxQuality_LOWСамое низкое качество, самый быстрый рендеринг.
-
kFxQuality_MEDIUMkFxQuality_MEDIUMСреднее качество, самый медленный рендеринг.
-
kFxQuality_HIGHkFxQuality_HIGHВысококачественный, самый медленный рендеринг.
Оператор импорта
-
