Package com.castlabs.android.hybridads
Class AdNativeAudioRenderer
java.lang.Object
com.google.android.exoplayer2.BaseRenderer
com.google.android.exoplayer2.audio.SimpleDecoderAudioRenderer
com.castlabs.android.hybridads.AdNativeAudioRenderer
- All Implemented Interfaces:
com.google.android.exoplayer2.drm.DrmSession.EventListener,com.google.android.exoplayer2.PlayerMessage.Target,com.google.android.exoplayer2.Renderer,com.google.android.exoplayer2.RendererCapabilities,com.google.android.exoplayer2.util.MediaClock
public class AdNativeAudioRenderer
extends com.google.android.exoplayer2.audio.SimpleDecoderAudioRenderer
Renders audio that is decoded by a native audio decoder.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.android.exoplayer2.BaseRenderer
com.google.android.exoplayer2.BaseRenderer.RendererStreamExceptionNested classes/interfaces inherited from interface com.google.android.exoplayer2.Renderer
com.google.android.exoplayer2.Renderer.Listener, com.google.android.exoplayer2.Renderer.StateNested classes/interfaces inherited from interface com.google.android.exoplayer2.RendererCapabilities
com.google.android.exoplayer2.RendererCapabilities.AdaptiveSupport, com.google.android.exoplayer2.RendererCapabilities.Capabilities, com.google.android.exoplayer2.RendererCapabilities.CodecImplementation, com.google.android.exoplayer2.RendererCapabilities.FormatSupport, com.google.android.exoplayer2.RendererCapabilities.Listener, com.google.android.exoplayer2.RendererCapabilities.TunnelingSupport -
Field Summary
Fields inherited from interface com.google.android.exoplayer2.Renderer
STATE_DISABLED, STATE_ENABLED, STATE_STARTEDFields inherited from interface com.google.android.exoplayer2.RendererCapabilities
ADAPTIVE_NOT_SEAMLESS, ADAPTIVE_NOT_SUPPORTED, ADAPTIVE_SEAMLESS, ADAPTIVE_SUPPORT_MASK, CODEC_IMPLEMENTATION_HARDWARE, CODEC_IMPLEMENTATION_MASK, CODEC_IMPLEMENTATION_SOFTWARE, FORMAT_EXCEEDS_CAPABILITIES, FORMAT_HANDLED, FORMAT_SUPPORT_MASK, FORMAT_UNSUPPORTED_DRM, FORMAT_UNSUPPORTED_SUBTYPE, FORMAT_UNSUPPORTED_TYPE, TUNNELING_NOT_SUPPORTED, TUNNELING_SUPPORT_MASK, TUNNELING_SUPPORTED -
Constructor Summary
ConstructorsConstructorDescriptionAdNativeAudioRenderer(AdNativeDecoder decoder, com.castlabs.android.tunerhal.aidl.IPlayerService tunerhalPlayerService, boolean rendererUsesSharedMemory, int sharedMemorySizeInBytes, Handler eventHandler, PlayerConfig playerConfig, com.google.android.exoplayer2.audio.AudioRendererEventListener eventListener, int playerServiceInstance, long splicePts, long adDuration, HybridAdView hybridAdView) Creates a new instance. -
Method Summary
Methods inherited from class com.google.android.exoplayer2.audio.SimpleDecoderAudioRenderer
getMediaClock, getPlaybackParameters, handleMessage, isEnded, setPlaybackParameters, supportsFormatMethods inherited from class com.google.android.exoplayer2.BaseRenderer
clearListener, disable, enable, getCapabilities, getReadingPositionUs, getState, getStream, getStreamOffsetUs, getTrackType, hasReadStreamToEnd, isCurrentStreamFinal, maybeThrowStreamError, onRenewed, release, replaceStream, reset, resetPosition, setCurrentStreamFinal, setIndex, setListener, setListener, setRenderingIntervalManager, start, stop, supportsMixedMimeTypeAdaptationMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.google.android.exoplayer2.Renderer
setOperatingRate
-
Constructor Details
-
AdNativeAudioRenderer
public AdNativeAudioRenderer(AdNativeDecoder decoder, com.castlabs.android.tunerhal.aidl.IPlayerService tunerhalPlayerService, boolean rendererUsesSharedMemory, int sharedMemorySizeInBytes, @Nullable Handler eventHandler, PlayerConfig playerConfig, @Nullable com.google.android.exoplayer2.audio.AudioRendererEventListener eventListener, int playerServiceInstance, long splicePts, long adDuration, HybridAdView hybridAdView) throws CastlabsPlayerException Creates a new instance.- Parameters:
decoder- The decoder to use.tunerhalPlayerService- The player service to use.rendererUsesSharedMemory- Whether the renderer uses shared memory.sharedMemorySizeInBytes- The size of the shared memory in bytes.eventHandler- A handler to use when delivering events toeventListener. May be null if delivery of events is not required.playerConfig- The player config to use.eventListener- A listener of events. May be null if delivery of events is not required.playerServiceInstance- The player service instance to use.splicePts- The splice point in presentation timestamps (PTS).adDuration- The duration of the ad in presentation timestamps (PTS).hybridAdView- The hybrid ad view to use.- Throws:
CastlabsPlayerException- If an error occurs.
-
-
Method Details
-
isReady
public boolean isReady()- Specified by:
isReadyin interfacecom.google.android.exoplayer2.Renderer- Overrides:
isReadyin classcom.google.android.exoplayer2.audio.SimpleDecoderAudioRenderer
-
render
public void render(long positionUs, long elapsedRealtimeUs) throws com.google.android.exoplayer2.ExoPlaybackException - Specified by:
renderin interfacecom.google.android.exoplayer2.Renderer- Overrides:
renderin classcom.google.android.exoplayer2.audio.SimpleDecoderAudioRenderer- Throws:
com.google.android.exoplayer2.ExoPlaybackException
-
getPositionUs
public long getPositionUs()- Specified by:
getPositionUsin interfacecom.google.android.exoplayer2.util.MediaClock- Overrides:
getPositionUsin classcom.google.android.exoplayer2.audio.SimpleDecoderAudioRenderer
-