FxBaseEffect
FxBaseEffect протокол определяет методы, которые должны реализовать все плагины.
Весь FxPlug-ins должен реализовать FxBaseEffect протокол. Это - протокол от который FxFilter, FxGenerator, и FxTransition протоколы все происходят.
Это определяет основную функциональность, которую плагин должен реализовать, такие как создание параметров для пользователя для взаимодействия с, и информирование узла, обладающего плагином, имеет, или потребности, от узла. Кроме того, это позволяет плагину обновлять один или несколько параметров каждый раз, когда изменяется другой параметр.
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Не применимый не применимый
-
addParameters - addParametersТребуемыйДобавляют параметры к хост-приложению, которого требует плагин. (требуемый)
Объявление
Objective C
- (BOOL)addParametersВозвращаемое значение
YEStrueесли успешно добавляются все параметры; иначеNOfalse. -
Сообщает изменение в сменном значении параметра, сделанном конечным пользователем.
Объявление
Objective C
- (BOOL)parameterChanged:(UInt32)parmIdПараметры
parmIdID параметра изменившегося значения.
Возвращаемое значение
YEStrueесли успешно обрабатываются все изменения; иначеNOfalse.Обсуждение
Когда этот метод вызывается, плагин должен установить другие связанные значения параметров.
Если плагин требует текущего времени в этом методе (например, для получения или установки значений параметров или флагов), необходимо использовать
currentTimeметод вFxCustomParameterActionAPIпротокол. -
variesOverTime - variesOverTimeТребуемыйУказывает, производит ли плагин различные изображения (анимация) в течение долгого времени с помощью того же набора параметров. (требуемый)
Объявление
Objective C
- (BOOL)variesOverTimeВозвращаемое значение
YEStrueесли плагин производит изменяющиеся изображения, не изменяя параметры; иначеNOfalse.Обсуждение
Эта подсказка используется, чтобы определить, может ли представленное выходное изображение с определенным набором значений параметров кэшироваться и снова использоваться для других кадров, имеющих идентичные значения параметров.
-
Позволяет фильтру делать любую установку между временем, это было добавлено к временной шкале и в первый раз, когда это представляет.
Объявление
Objective C
- (BOOL)finishInitialSetup:(NSError**)errorПараметры
errorВозвраты, ссылкой,
NSErrorвозразите, что Ваше сменное использование предоставляет информацию об ошибках, с которыми встречаются во время выполнения этого метода.Возвращаемое значение
YEStrueесли Ваш плагин успешно завершил установку; иначеNOfalse.Обсуждение
Если Ваш плагин реализует этот метод, то его вызовут после
initWithAPIManager:иaddParametersметоды (если параметры не являются динамичными), но перед первым рендерингом. Любая требуемая установка или анализ данных должны быть сделаны этим методом. -
свойства - свойстваТребуемыйОпределяет свойства плагина. (требуемый)
Объявление
Objective C
- (NSDictionary *)propertiesВозвращаемое значение
NSDictionaryопределение свойств плагина.Обсуждение
Хост-приложение примет значения по умолчанию для любых недостающих ключей.
Например, если бы это - независимый пиксель, тогда узел мог бы отправить его, чересстрочный кадр и результат совпали бы с отправкой его два отдельных поля. Существуют свойства, для которых цветовых пространств это может обработать, поддерживает ли это
rowBytesпри рендеринге в программном обеспечении, вытянет ли это кадры с других времен и т.д.Поддерживаемые свойства определяются в Сменных Свойствах. Кроме того, существуют другие возможные ключи, объявленные всюду по FxPlug SDK включая:
kFxPropertyKey_PixelTransformSupport,kFxPropertyKey_DrawsInScreenSpace.
-
Эти константы указывают некоторые поддерживаемые ключи в словаре, указанном
properties.Объявление
Objective C
#define kFxPropertyKey_EquivalentSMPTEWipeCode @"EquivalentSMPTEWipeCode" #define kFxPropertyKey_MayRemapTime @"MayRemapTime" #define kFxPropertyKey_PixelIndependent @"PixelIndependent" #define kFxPropertyKey_PreservesAlpha @"PreservesAlpha" #define kFxPropertyKey_RendersInFilmSpace @"RendersInFilmSpace" #define kFxPropertyKey_SupportsPixelTransform @"SupportsPixelTransform" #define kFxPropertyKey_SupportsR408 @"SupportsR408" #define kFxPropertyKey_SupportsR4fl @"SupportsR4fl" #define kFxPropertyKey_SupportsRowBytes @"SupportsRowBytes"Константы
-
kFxPropertyKey_EquivalentSMPTEWipeCodekFxPropertyKey_EquivalentSMPTEWipeCodeЗначение для этого ключа является целочисленным значением, закодированным как
NSNumberобъект, определяя нейтрализацию SMPTE вытирает код, который будет использоваться для создания EDL. Значение по умолчанию0, выражение там не является никаким эквивалентом, вытирают код. -
kFxPropertyKey_MayRemapTimekFxPropertyKey_MayRemapTimeЗначение для этого ключа является булевым значением, закодированным как
NSNumberобъект, указывая, может ли этот плагин попытаться выбрать свое входное изображение (я) когда-либо кроме выходного времени. Значение по умолчаниюYEStrue. -
kFxPropertyKey_PixelIndependentkFxPropertyKey_PixelIndependentЗначение для этого ключа является булевым значением, закодированным как
NSNumberобъект, указывающий, зависит ли каждый пиксель выходного изображения этого плагина только от значения соответствующего пикселя во входном изображении (ях) и ни на каких других пикселях. Этот флаг используется для оптимизации производительности и для определения, может ли плагин воздействовать на единственные поля, а также полные чередованные кадры. Значение по умолчаниюNOfalse. -
kFxPropertyKey_PreservesAlphakFxPropertyKey_PreservesAlphaЗначение для этого ключа является булевым значением, закодированным как
NSNumberобъект, указывая, оставляет ли этот плагин значения альфа-канала входного изображения (й) нетронутыми. Значение по умолчаниюNOfalse. -
kFxPropertyKey_RendersInFilmSpacekFxPropertyKey_RendersInFilmSpaceЗначение для этого ключа является булевым значением, закодированным как
NSNumberобъект, указывая, представляет ли этот эффект в filmspace. -
kFxPropertyKey_SupportsPixelTransformkFxPropertyKey_SupportsPixelTransformЗначение для этого ключа является булевым значением, закодированным как
NSNumberобъект, указывая, может ли этот плагин поддерживать PixelTransforms. Значение по умолчаниюNOfalse. -
kFxPropertyKey_SupportsR408kFxPropertyKey_SupportsR408Значение для этого ключа является булевым значением, закодированным как
NSNumberобъект, указывая, поддерживает ли этот плагин r408 формат пикселя. Значение по умолчаниюNOfalse. -
kFxPropertyKey_SupportsR4flkFxPropertyKey_SupportsR4flЗначение для этого ключа является булевым значением, закодированным как
NSNumberобъект, указывая, поддерживает ли этот плагин r4fl формат пикселя. Значение по умолчаниюNOfalse. -
kFxPropertyKey_SupportsRowByteskFxPropertyKey_SupportsRowBytesЗначение для этого ключа является булевым значением, закодированным как
NSNumberобъект, указывая, может ли этот плагин поддерживатьFxBitmapэкземпляры класса сrowBytes != (width * depth / 8 * activeChannels). Значение по умолчаниюNOfalse.
-
