本文整理汇总了Java中android.media.effect.EffectContext类的典型用法代码示例。如果您正苦于以下问题:Java EffectContext类的具体用法?Java EffectContext怎么用?Java EffectContext使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
EffectContext类属于android.media.effect包,在下文中一共展示了EffectContext类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: onDrawFrame
import android.media.effect.EffectContext; //导入依赖的package包/类
@Override
public void onDrawFrame(GL10 gl) {
if (!mInitialized) {
//Only need to do this once
mEffectContext = EffectContext.createWithCurrentGlContext();
mTexRenderer.init();
loadTextures();
mInitialized = true;
}
if (mCurrentEffect != R.id.none) {
//if an effect is chosen initialize it and apply it to the texture
initEffect();
applyEffect();
}
renderResult();
}
示例2: onDrawFrame
import android.media.effect.EffectContext; //导入依赖的package包/类
@Override
public void onDrawFrame(GL10 gl) {
if (!mInitialized) {
//Only need to do this once
mEffectContext = EffectContext.createWithCurrentGlContext();
init();
loadTextures();
mInitialized = true;
}
if (mEffectChanged) {
initEffect();
applyEffect();
mEffectChanged = false;
}
renderResult();
}
示例3: onDrawFrame
import android.media.effect.EffectContext; //导入依赖的package包/类
@Override
public void onDrawFrame(GL10 gl) {
if (!mInitialized) {
// Only need to do this once
mEffectContext = EffectContext.createWithCurrentGlContext();
mTexRenderer.init();
loadTextures();
mInitialized = true;
}
if (mCurrentEffect != R.id.none) {
// if an effect is chosen initialize it and apply it to the texture
initEffect();
applyEffect();
}
renderResult();
if (saveFrame) {
saveBitmap(takeScreenshot(gl));
}
}
示例4: PhotoPhaseTextureManager
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* Constructor of <code>PhotoPhaseTextureManager</code>
*
* @param ctx The current context
* @param effectCtx The current effect context
* @param dispatcher The GLES dispatcher
* @param requestors The number of requestors
* @param screenDimensions The screen dimensions
*/
public PhotoPhaseTextureManager(final Context ctx, final Handler handler,
final EffectContext effectCtx, GLESSurfaceDispatcher dispatcher,
int requestors, Rect screenDimensions) {
super();
mContext = ctx;
mHandler = handler;
mEffects = new Effects(ctx, effectCtx);
mBorders = new Borders(ctx, effectCtx);
mDispatcher = dispatcher;
mScreenDimensions = screenDimensions;
mDimensions = screenDimensions; // For now, use the screen dimensions as the preferred dimensions for bitmaps
mSync = new Object();
mPendingRequests = new ArrayList<>(requestors);
mPictureDiscoverer = new MediaPictureDiscoverer(mContext);
// Run the media discovery thread
mBackgroundTask = new BackgroundPictureLoaderThread();
mBackgroundTask.mTaskPaused = false;
reloadMedia(false);
}
示例5: updateEffectContext
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* Method that update the effect context if the EGL context change
*
* @param effectCtx The new effect context
*/
public void updateEffectContext(final EffectContext effectCtx) {
synchronized (mEffectsSync) {
if (mEffects != null) {
mEffects.release();
mEffects = null;
}
mEffects = new Effects(mContext, effectCtx);
if (mBorders != null) {
mBorders.release();
mBorders = null;
}
mBorders = new Borders(mContext, effectCtx);
}
emptyTextureQueue(true);
}
示例6: DoubleBorder
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* Constructor of <code>DoubleBorder</code>.
*
* @param ctx The effect context
* @param name The effect name
*/
public DoubleBorder(EffectContext ctx, String name) {
super(ctx, DoubleBorder.class.getName());
init(VERTEX_SHADER, FRAGMENT_SHADER);
// Parameters
mWidthHandle = GLES20.glGetUniformLocation(mProgram[0], "w");
GLESUtil.glesCheckError("glGetUniformLocation");
mHeightHandle = GLES20.glGetUniformLocation(mProgram[0], "h");
GLESUtil.glesCheckError("glGetUniformLocation");
mStrengthHandle = GLES20.glGetUniformLocation(mProgram[0], STRENGTH_PARAMETER);
GLESUtil.glesCheckError("glGetUniformLocation");
mStrengthHandle2 = GLES20.glGetUniformLocation(mProgram[0], STRENGTH_PARAMETER2);
GLESUtil.glesCheckError("glGetUniformLocation");
mColorHandle = GLES20.glGetUniformLocation(mProgram[0], COLOR_PARAMETER);
GLESUtil.glesCheckError("glGetUniformLocation");
}
示例7: DoubleJoinedBorder
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* Constructor of <code>DoubleJoinedBorder</code>.
*
* @param ctx The effect context
* @param name The effect name
*/
public DoubleJoinedBorder(EffectContext ctx, String name) {
super(ctx, DoubleJoinedBorder.class.getName());
init(VERTEX_SHADER, FRAGMENT_SHADER);
// Parameters
mWidthHandle = GLES20.glGetUniformLocation(mProgram[0], "w");
GLESUtil.glesCheckError("glGetUniformLocation");
mHeightHandle = GLES20.glGetUniformLocation(mProgram[0], "h");
GLESUtil.glesCheckError("glGetUniformLocation");
mStrengthHandle = GLES20.glGetUniformLocation(mProgram[0], STRENGTH_PARAMETER);
GLESUtil.glesCheckError("glGetUniformLocation");
mStrengthHandle2 = GLES20.glGetUniformLocation(mProgram[0], STRENGTH_PARAMETER2);
GLESUtil.glesCheckError("glGetUniformLocation");
mColorHandle = GLES20.glGetUniformLocation(mProgram[0], COLOR_PARAMETER);
GLESUtil.glesCheckError("glGetUniformLocation");
}
示例8: ElegantBorder
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* Constructor of <code>RoundedBorder</code>.
*
* @param ctx The effect context
* @param name The effect name
*/
public ElegantBorder(EffectContext ctx, String name) {
super(ctx, ElegantBorder.class.getName());
init(VERTEX_SHADER, FRAGMENT_SHADER);
// Parameters
mWidthHandle = GLES20.glGetUniformLocation(mProgram[0], "w");
GLESUtil.glesCheckError("glGetUniformLocation");
mHeightHandle = GLES20.glGetUniformLocation(mProgram[0], "h");
GLESUtil.glesCheckError("glGetUniformLocation");
mStrengthHandle = GLES20.glGetUniformLocation(mProgram[0], STRENGTH_PARAMETER);
GLESUtil.glesCheckError("glGetUniformLocation");
mColorHandle = GLES20.glGetUniformLocation(mProgram[0], COLOR_PARAMETER);
GLESUtil.glesCheckError("glGetUniformLocation");
mBgColorHandle = GLES20.glGetUniformLocation(mProgram[0], BGCOLOR_PARAMETER);
GLESUtil.glesCheckError("glGetUniformLocation");
}
示例9: MediaEffect
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* コンストラクタ
* GLコンテキスト内で生成すること
* @param effect_context
*/
public MediaEffect(final EffectContext effect_context, final String effectName) {
mEffectContext = effect_context;
final EffectFactory factory = effect_context.getFactory();
if (TextUtils.isEmpty(effectName)) {
mEffect = null;
} else {
mEffect = factory.createEffect(effectName);
}
}
示例10: getEffect
import android.media.effect.EffectContext; //导入依赖的package包/类
protected Effect getEffect(String name) {
Effect effect = null;
if (context == null) {
context = EffectContext.createWithCurrentGlContext();
}
effect = context.getFactory().createEffect(name);
effect.setParameter("tile_size", DEFAULT_TILE_SIZE);
effects.put(this, effect);
return effect;
}
示例11: onDrawFrame
import android.media.effect.EffectContext; //导入依赖的package包/类
@Override
public void onDrawFrame(GL10 gl10) {
if(effectContext==null) {
effectContext = EffectContext.createWithCurrentGlContext();
}
if(effect!=null){
effect.release();
}
if(null == effectType){
effectType = EffectFactory.EFFECT_DOCUMENTARY;
}
grayScaleEffect(effectType);
square.draw(textures[1]);
}
示例12: onSurfaceCreated
import android.media.effect.EffectContext; //导入依赖的package包/类
@Override
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
TypedValue a = new TypedValue();
getContext().getTheme().resolveAttribute(android.R.attr.colorBackground, a, true);
if (a.type >= TypedValue.TYPE_FIRST_COLOR_INT
&& a.type <= TypedValue.TYPE_LAST_COLOR_INT) {
mBackgroundColor = new GLColor(a.data);
} else {
mBackgroundColor = new GLColor(Color.WHITE);
}
// We have a 2d (fake) scenario, disable all unnecessary tests. Deep are
// necessary for some 3d effects
GLES20.glDisable(GL10.GL_DITHER);
GLESUtil.glesCheckError("glDisable");
GLES20.glDisable(GL10.GL_CULL_FACE);
GLESUtil.glesCheckError("glDisable");
GLES20.glEnable(GL10.GL_DEPTH_TEST);
GLESUtil.glesCheckError("glEnable");
GLES20.glDepthMask(false);
GLESUtil.glesCheckError("glDepthMask");
GLES20.glDepthFunc(GLES20.GL_LEQUAL);
GLESUtil.glesCheckError("glDepthFunc");
// Recreate the effect contexts
recycle();
synchronized (mLock) {
mEffectContext = EffectContext.createWithCurrentGlContext();
mEffectsFactory = new Effects(mContext, mEffectContext);
mBordersFactory = new Borders(mContext, mEffectContext);
recreateContext();
boolean singleTexture = mTransitionType.equals(Transitions.TRANSITIONS.NO_TRANSITION);
mTextureManager = new SimpleTextureManager(mContext, mEffect, mBorder, singleTexture);
mTransition = Transitions.createTransition(mContext, mTextureManager, mTransitionType);
}
mRecycled = false;
}
示例13: Effects
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* Constructor of <code>Effects</code>
*
* @param effectContext The current effect context
*/
public Effects(Context context, EffectContext effectContext) {
super();
mCachedEffects = new HashMap<>();
mEffectContext = effectContext;
mContext = context;
}
示例14: BlurEffect
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* Constructor of <code>BlurEffect</code>.
*
* @param ctx The effect context
* @param name The effect name
*/
public BlurEffect(EffectContext ctx, String name) {
super(ctx, BlurEffect.class.getName());
init(new String[]{H_VERTEX_SHADER, V_VERTEX_SHADER},
new String[]{FRAGMENT_SHADER, FRAGMENT_SHADER});
// Parameters
mStrengthHandle = GLES20.glGetUniformLocation(mProgram[0], "strength");
GLESUtil.glesCheckError("glGetUniformLocation");
}
示例15: FrostedEffect
import android.media.effect.EffectContext; //导入依赖的package包/类
/**
* Constructor of <code>CrossHatchingEffect</code>.
*
* @param ctx The effect context
* @param name The effect name
*/
public FrostedEffect(EffectContext ctx, String name) {
super(ctx, FrostedEffect.class.getName());
init(VERTEX_SHADER, FRAGMENT_SHADER);
// Parameters
mStrengthHandle = GLES20.glGetUniformLocation(mProgram[0], "strength");
GLESUtil.glesCheckError("glGetUniformLocation");
}