Package com.banuba.sdk.render_target
Class OpenGLRenderTarget
java.lang.Object
com.banuba.sdk.render_target.OpenGLRenderTarget
- All Implemented Interfaces:
IRenderedFrameProvider,IRenderTarget,IRenderTargetPresentable
Implementation of the RenderTarget with using OpenGL render
-
Constructor Summary
ConstructorsConstructorDescriptionOpenGLRenderTarget(com.banuba.sdk.effect_player.EffectPlayer effectPlayer, android.util.Size renderSize, android.opengl.EGLContext eglContext) -
Method Summary
Modifier and TypeMethodDescriptionvoidactivate()Activate rendering contextvoiddestroy()Destroy RenderTarget and release resourceslongGet the drawing time of the current frameintandroid.util.SizeGet render surface sizevoidpresent()Display frame on attached surfacevoidpresent(WindowSurface windowSurface, android.graphics.Rect renderingRect) Draw frame on surfacecom.banuba.sdk.types.PixelBufferGet the rendered frame as an array of pixelsvoidresize()Recalculate viewport size and set new draw sizesvoidsetFrameTimeNanos(long timeNanos) Set frame drawing time.
-
Constructor Details
-
OpenGLRenderTarget
public OpenGLRenderTarget(com.banuba.sdk.effect_player.EffectPlayer effectPlayer, android.util.Size renderSize, android.opengl.EGLContext eglContext)
-
-
Method Details
-
getContext
-
destroy
public void destroy()Description copied from interface:IRenderTargetDestroy RenderTarget and release resources- Specified by:
destroyin interfaceIRenderTarget
-
activate
public void activate()Description copied from interface:IRenderTargetActivate rendering context- Specified by:
activatein interfaceIRenderTarget
-
getRenderingSize
public android.util.Size getRenderingSize()Description copied from interface:IRenderTargetPresentableGet render surface size- Specified by:
getRenderingSizein interfaceIRenderTargetPresentable- Returns:
- size of the rendering viewport
-
present
Description copied from interface:IRenderTargetPresentableDraw frame on surface- Specified by:
presentin interfaceIRenderTargetPresentable- Parameters:
windowSurface- the surface on which the frame will be drawnrenderingRect- scaling and positioning the frame on the surface
-
present
public void present()Description copied from interface:IRenderTargetPresentableDisplay frame on attached surface- Specified by:
presentin interfaceIRenderTargetPresentable
-
getGlTexture
public int getGlTexture() -
resize
public void resize()Description copied from interface:IRenderTargetRecalculate viewport size and set new draw sizes- Specified by:
resizein interfaceIRenderTarget
-
readPixels
public com.banuba.sdk.types.PixelBuffer readPixels()Description copied from interface:IRenderedFrameProviderGet the rendered frame as an array of pixels- Specified by:
readPixelsin interfaceIRenderedFrameProvider- Returns:
- pixel buffer, stores dimensions, pixel type and array of pixels
-
setFrameTimeNanos
public void setFrameTimeNanos(long timeNanos) Description copied from interface:IRenderTargetSet frame drawing time. Necessary for correct video recording- Specified by:
setFrameTimeNanosin interfaceIRenderTarget- Parameters:
timeNanos- current frame drawing time in nanoseconds
-
getFrameTimeNanos
public long getFrameTimeNanos()Description copied from interface:IRenderTargetPresentableGet the drawing time of the current frame- Specified by:
getFrameTimeNanosin interfaceIRenderTargetPresentable- Returns:
- frame drawing time in nanoseconds
-