Class BaseVideoView

java.lang.Object
android.view.View
android.view.ViewGroup
android.widget.FrameLayout
com.brightcove.player.view.BaseVideoView
All Implemented Interfaces:
android.graphics.drawable.Drawable.Callback, android.view.accessibility.AccessibilityEventSource, android.view.KeyEvent.Callback, android.view.ViewManager, android.view.ViewParent, android.widget.MediaController.MediaPlayerControl, Component
Direct Known Subclasses:
BrightcoveTextureVideoView, BrightcoveVideoView

@Emits(events={"error","pause","play","readyToPlay","seekTo","stop","willChangeVideo","on360FrameAvailable","projectionFormatChanged"}) @ListensFor(events={"activityCreated","activitySaveInstanceState","activityStarted","adProgress","captionsLanguages","completed","didLoadClosedCaptions","didPause","didPlay","didSeekTo","didSetSource","didSetVideo","didStop","hideSeekControls","progress","seekTo","showSeekControls","sourceNotPlayable","videoDurationChanged","willChangeVideo","willInterruptContent"}) public abstract class BaseVideoView extends android.widget.FrameLayout implements Component, android.widget.MediaController.MediaPlayerControl
BaseVideoView provides the base functionality for BrightcoveVideoView, which for historical reasons isn't named BrightcoveSurfaceVideoView, and BrightcoveTextureVideoView. Those two classes are designed to be dropped into your XML layouts as a replacement for Android's native VideoView. This class provides public methods to mirror that of VideoView, plus additional logic for handling things like playlists. This class uses an EventEmitter to wire together components, like the VideoDisplayComponent and VideoPlaybackController.
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected class 
     
    static interface 
    Interface definition for a callback to be invoked when the BaseVideoView's size changes.

    Nested classes/interfaces inherited from class android.widget.FrameLayout

    android.widget.FrameLayout.LayoutParams

    Nested classes/interfaces inherited from class android.view.ViewGroup

    android.view.ViewGroup.MarginLayoutParams, android.view.ViewGroup.OnHierarchyChangeListener

    Nested classes/interfaces inherited from class android.view.View

    android.view.View.AccessibilityDelegate, android.view.View.BaseSavedState, android.view.View.DragShadowBuilder, android.view.View.MeasureSpec, android.view.View.OnApplyWindowInsetsListener, android.view.View.OnAttachStateChangeListener, android.view.View.OnCapturedPointerListener, android.view.View.OnClickListener, android.view.View.OnContextClickListener, android.view.View.OnCreateContextMenuListener, android.view.View.OnDragListener, android.view.View.OnFocusChangeListener, android.view.View.OnGenericMotionListener, android.view.View.OnHoverListener, android.view.View.OnKeyListener, android.view.View.OnLayoutChangeListener, android.view.View.OnLongClickListener, android.view.View.OnScrollChangeListener, android.view.View.OnSystemUiVisibilityChangeListener, android.view.View.OnTouchListener, android.view.View.OnUnhandledKeyEventListener
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
     
     
    protected int
    Deprecated.
    protected long
     
    protected EventEmitter
     
    protected android.widget.ImageView
     
    protected Map<String,Integer>
     
    protected android.media.MediaPlayer.OnPreparedListener
     
     
    protected int
    Deprecated.
    protected long
     
     
    protected android.view.View
     
     
     
     

    Fields inherited from class android.view.ViewGroup

    CLIP_TO_PADDING_MASK, FOCUS_AFTER_DESCENDANTS, FOCUS_BEFORE_DESCENDANTS, FOCUS_BLOCK_DESCENDANTS, LAYOUT_MODE_CLIP_BOUNDS, LAYOUT_MODE_OPTICAL_BOUNDS, PERSISTENT_ALL_CACHES, PERSISTENT_ANIMATION_CACHE, PERSISTENT_NO_CACHE, PERSISTENT_SCROLLING_CACHE

    Fields inherited from class android.view.View

    ACCESSIBILITY_LIVE_REGION_ASSERTIVE, ACCESSIBILITY_LIVE_REGION_NONE, ACCESSIBILITY_LIVE_REGION_POLITE, ALPHA, AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR, AUTOFILL_HINT_CREDIT_CARD_NUMBER, AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE, AUTOFILL_HINT_EMAIL_ADDRESS, AUTOFILL_HINT_NAME, AUTOFILL_HINT_PASSWORD, AUTOFILL_HINT_PHONE, AUTOFILL_HINT_POSTAL_ADDRESS, AUTOFILL_HINT_POSTAL_CODE, AUTOFILL_HINT_USERNAME, AUTOFILL_TYPE_DATE, AUTOFILL_TYPE_LIST, AUTOFILL_TYPE_NONE, AUTOFILL_TYPE_TEXT, AUTOFILL_TYPE_TOGGLE, DRAG_FLAG_ACCESSIBILITY_ACTION, DRAG_FLAG_GLOBAL, DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION, DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION, DRAG_FLAG_GLOBAL_URI_READ, DRAG_FLAG_GLOBAL_URI_WRITE, DRAG_FLAG_OPAQUE, DRAWING_CACHE_QUALITY_AUTO, DRAWING_CACHE_QUALITY_HIGH, DRAWING_CACHE_QUALITY_LOW, EMPTY_STATE_SET, ENABLED_FOCUSED_SELECTED_STATE_SET, ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_FOCUSED_STATE_SET, ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, ENABLED_SELECTED_STATE_SET, ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_STATE_SET, ENABLED_WINDOW_FOCUSED_STATE_SET, FIND_VIEWS_WITH_CONTENT_DESCRIPTION, FIND_VIEWS_WITH_TEXT, FOCUS_BACKWARD, FOCUS_DOWN, FOCUS_FORWARD, FOCUS_LEFT, FOCUS_RIGHT, FOCUS_UP, FOCUSABLE, FOCUSABLE_AUTO, FOCUSABLES_ALL, FOCUSABLES_TOUCH_MODE, FOCUSED_SELECTED_STATE_SET, FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, FOCUSED_STATE_SET, FOCUSED_WINDOW_FOCUSED_STATE_SET, GONE, HAPTIC_FEEDBACK_ENABLED, IMPORTANT_FOR_ACCESSIBILITY_AUTO, IMPORTANT_FOR_ACCESSIBILITY_NO, IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS, IMPORTANT_FOR_ACCESSIBILITY_YES, IMPORTANT_FOR_AUTOFILL_AUTO, IMPORTANT_FOR_AUTOFILL_NO, IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_AUTOFILL_YES, IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_CONTENT_CAPTURE_AUTO, IMPORTANT_FOR_CONTENT_CAPTURE_NO, IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_CONTENT_CAPTURE_YES, IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS, INVISIBLE, KEEP_SCREEN_ON, LAYER_TYPE_HARDWARE, LAYER_TYPE_NONE, LAYER_TYPE_SOFTWARE, LAYOUT_DIRECTION_INHERIT, LAYOUT_DIRECTION_LOCALE, LAYOUT_DIRECTION_LTR, LAYOUT_DIRECTION_RTL, MEASURED_HEIGHT_STATE_SHIFT, MEASURED_SIZE_MASK, MEASURED_STATE_MASK, MEASURED_STATE_TOO_SMALL, NO_ID, NOT_FOCUSABLE, OVER_SCROLL_ALWAYS, OVER_SCROLL_IF_CONTENT_SCROLLS, OVER_SCROLL_NEVER, PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET, PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_SELECTED_STATE_SET, PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_STATE_SET, PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_SELECTED_STATE_SET, PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_STATE_SET, PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_SELECTED_STATE_SET, PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_STATE_SET, PRESSED_WINDOW_FOCUSED_STATE_SET, ROTATION, ROTATION_X, ROTATION_Y, SCALE_X, SCALE_Y, SCREEN_STATE_OFF, SCREEN_STATE_ON, SCROLL_AXIS_HORIZONTAL, SCROLL_AXIS_NONE, SCROLL_AXIS_VERTICAL, SCROLL_CAPTURE_HINT_AUTO, SCROLL_CAPTURE_HINT_EXCLUDE, SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS, SCROLL_CAPTURE_HINT_INCLUDE, SCROLL_INDICATOR_BOTTOM, SCROLL_INDICATOR_END, SCROLL_INDICATOR_LEFT, SCROLL_INDICATOR_RIGHT, SCROLL_INDICATOR_START, SCROLL_INDICATOR_TOP, SCROLLBAR_POSITION_DEFAULT, SCROLLBAR_POSITION_LEFT, SCROLLBAR_POSITION_RIGHT, SCROLLBARS_INSIDE_INSET, SCROLLBARS_INSIDE_OVERLAY, SCROLLBARS_OUTSIDE_INSET, SCROLLBARS_OUTSIDE_OVERLAY, SELECTED_STATE_SET, SELECTED_WINDOW_FOCUSED_STATE_SET, SOUND_EFFECTS_ENABLED, STATUS_BAR_HIDDEN, STATUS_BAR_VISIBLE, SYSTEM_UI_FLAG_FULLSCREEN, SYSTEM_UI_FLAG_HIDE_NAVIGATION, SYSTEM_UI_FLAG_IMMERSIVE, SYSTEM_UI_FLAG_IMMERSIVE_STICKY, SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN, SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION, SYSTEM_UI_FLAG_LAYOUT_STABLE, SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR, SYSTEM_UI_FLAG_LIGHT_STATUS_BAR, SYSTEM_UI_FLAG_LOW_PROFILE, SYSTEM_UI_FLAG_VISIBLE, SYSTEM_UI_LAYOUT_FLAGS, TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_GRAVITY, TEXT_ALIGNMENT_INHERIT, TEXT_ALIGNMENT_TEXT_END, TEXT_ALIGNMENT_TEXT_START, TEXT_ALIGNMENT_VIEW_END, TEXT_ALIGNMENT_VIEW_START, TEXT_DIRECTION_ANY_RTL, TEXT_DIRECTION_FIRST_STRONG, TEXT_DIRECTION_FIRST_STRONG_LTR, TEXT_DIRECTION_FIRST_STRONG_RTL, TEXT_DIRECTION_INHERIT, TEXT_DIRECTION_LOCALE, TEXT_DIRECTION_LTR, TEXT_DIRECTION_RTL, TRANSLATION_X, TRANSLATION_Y, TRANSLATION_Z, VIEW_LOG_TAG, VISIBLE, WINDOW_FOCUSED_STATE_SET, X, Y, Z
  • Constructor Summary

    Constructors
    Constructor
    Description
    BaseVideoView(android.content.Context context)
     
    BaseVideoView(android.content.Context context, android.util.AttributeSet attributeSet)
     
    BaseVideoView(android.content.Context context, android.util.AttributeSet attributeSet, int defStyle)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    add(int index, Video video)
    Adds the video to the video list at the specified index.
    void
    add(Video video)
    Adds the video to the end of the video list.
    void
    addAll(int index, Collection<Video> newVideos)
    Inserts all videos in the collection at the specified index.
    void
    addAll(Collection<Video> newVideos)
    Add all videos in the collection to the end of the list.
    void
    addListener(String eventType, EventListener listener)
     
    void
     
    void
    addSubtitleSource(android.net.Uri uri, BrightcoveCaptionFormat format)
    For adding subtitle sources to the Brightcove Player.
    protected void
    adjustPosterImageViewSize(int width, int height)
     
    boolean
     
    boolean
     
    boolean
     
    protected abstract boolean
     
    void
    Removes all videos from the list.
    void
     
    void
     
    protected abstract VideoDisplayComponent
     
     
    void
     
    boolean
    dispatchKeyEvent(android.view.KeyEvent event)
     
    protected void
     
    void
    This method finishes initializing the BaseVideoView.
    get(int index)
     
    Returns the analytics component, the part of the player that monitors and tracks video playback and engagement.
    int
     
     
    Access the Brightcove media controller.
    int
     
     
     
    Gets the {#ConcurrencyClient} instance being used interact with the Generic Stream Concurrency mechanism
    int
     
    int
    Deprecated.
    long
     
     
    int
    Deprecated.
    long
     
    Getter for the EventEmitter used by this View
     
    int
    Gets the rendered height of the video on the screen.
    int
    Gets the rendered width of the video on the screen.
    android.widget.MediaController
    Access the legacy media controller.
     
     
    Returns the video playback controller, the component of the player responsible for managing video playback and emitting cue points.
    abstract RenderView
    Gets refers to the view that will render the video.
    Returns the source controller, the component of the player that selects the source to play for a video.
    android.widget.ImageView
     
    Returns the video display, the low-level component responsible for decoding and rendering a video.
    abstract int
     
    Returns the video still display, the component of the player that shows and hides the still image if one is available for a video.
    abstract int
     
    protected boolean
     
    protected void
    init(android.content.Context context)
     
    protected void
     
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    boolean
    Checks whether Generic Stream Concurrency is enabled or not
    void
     
    protected void
     
    boolean
    onInterceptTouchEvent(android.view.MotionEvent ev)
     
    protected void
    onLayout(boolean changed, int left, int top, int right, int bottom)
     
    protected void
    onMeasure(int widthMeasureSpec, int heightMeasureSpec)
     
    protected void
     
    protected void
    onSizeChanged(int w, int h, int oldw, int oldh)
     
    boolean
    onTouchEvent(android.view.MotionEvent ev)
     
    void
    Pause playback
    void
    remove(int index)
    Removes the video at the specified index.
    void
     
    void
     
    void
     
    void
    replace(int index, Video video)
    Removes and replaces the video at the specified index.
    void
    Request the current active sessions.
    void
     
    protected void
    Restores the meta data surrounding a video to its default state
    void
    seekTo(int msec)
    Deprecated.
    void
    seekTo(long msec)
    Seek to the time specified
    void
     
    protected void
    setChildLayoutParams(android.view.ViewGroup.LayoutParams layoutParams)
     
    void
     
    void
    setCurrentIndex(int index)
    Sets the current video to the specified index.
    void
    Sets the eventEmitter and instantiates all inner components.
    void
    setLayoutParams(android.view.ViewGroup.LayoutParams layoutParams)
     
    void
    setMediaController(android.widget.MediaController mediaController)
    Establishes a legacy Android media controller to provide media controls.
    void
    Establishes the Brightcove media controller to provide a modern set of media controls.
    void
    setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener onCompletionListener)
     
    void
    setOnInfoListener(android.media.MediaPlayer.OnInfoListener onInfoListener)
     
    void
    setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener onPreparedListener)
     
    void
    setStreamConcurrencyEnabled(boolean enabled)
    Enable Generic Stream Concurrency
    void
    Sets the headers values that will be passed on each request to the Generic Stream Concurrency.
    void
    Sets a listener to get the active sessions
    void
    Sets the locale for a caption source to load, based on the caption locale pulled in.
    void
    Instantiates the Brightcove captioning view.
    protected void
    Decide if the captioning view should be instantiated, based on the controller.
    Replaces player content with the video at the specified path.
    setVideoPath(String videoPath, Map<String,String> languageCodeCaptionsMap)
    Replace player content with the video and captions at the specified paths.
    setVideoURI(android.net.Uri uri)
    Replaces player content with the video at the specified URI.
    void
    Start playback
    void
    Stop playback
    void
    Toggles the BrightcoveMediaController's visibility when one is set.

    Methods inherited from class android.widget.FrameLayout

    checkLayoutParams, generateDefaultLayoutParams, generateLayoutParams, generateLayoutParams, getAccessibilityClassName, getConsiderGoneChildrenWhenMeasuring, getMeasureAllChildren, setForegroundGravity, setMeasureAllChildren, shouldDelayChildPressedState

    Methods inherited from class android.view.ViewGroup

    addChildrenForAccessibility, addExtraDataToAccessibilityNodeInfo, addFocusables, addKeyboardNavigationClusters, addStatesFromChildren, addTouchables, addView, addView, addView, addView, addView, addViewInLayout, addViewInLayout, attachLayoutAnimationParameters, attachViewToParent, bringChildToFront, canAnimate, childDrawableStateChanged, childHasTransientStateChanged, cleanupLayoutState, clearChildFocus, clearDisappearingChildren, clearFocus, debug, detachAllViewsFromParent, detachViewFromParent, detachViewFromParent, detachViewsFromParent, dispatchApplyWindowInsets, dispatchCapturedPointerEvent, dispatchConfigurationChanged, dispatchCreateViewTranslationRequest, dispatchDisplayHint, dispatchDragEvent, dispatchDraw, dispatchDrawableHotspotChanged, dispatchFinishTemporaryDetach, dispatchFreezeSelfOnly, dispatchGenericFocusedEvent, dispatchGenericPointerEvent, dispatchHoverEvent, dispatchKeyEventPreIme, dispatchKeyShortcutEvent, dispatchPointerCaptureChanged, dispatchProvideAutofillStructure, dispatchProvideStructure, dispatchRestoreInstanceState, dispatchSaveInstanceState, dispatchScrollCaptureSearch, dispatchSetActivated, dispatchSetPressed, dispatchSetSelected, dispatchStartTemporaryDetach, dispatchSystemUiVisibilityChanged, dispatchThawSelfOnly, dispatchTouchEvent, dispatchTrackballEvent, dispatchUnhandledMove, dispatchVisibilityChanged, dispatchWindowFocusChanged, dispatchWindowInsetsAnimationEnd, dispatchWindowInsetsAnimationPrepare, dispatchWindowInsetsAnimationProgress, dispatchWindowInsetsAnimationStart, dispatchWindowSystemUiVisiblityChanged, dispatchWindowVisibilityChanged, drawableStateChanged, drawChild, endViewTransition, findFocus, findOnBackInvokedDispatcherForChild, findViewsWithText, focusableViewAvailable, focusSearch, gatherTransparentRegion, getChildAt, getChildCount, getChildDrawingOrder, getChildDrawingOrder, getChildMeasureSpec, getChildStaticTransformation, getChildVisibleRect, getClipChildren, getClipToPadding, getDescendantFocusability, getFocusedChild, getLayoutAnimation, getLayoutAnimationListener, getLayoutMode, getLayoutTransition, getNestedScrollAxes, getOverlay, getPersistentDrawingCache, getTouchscreenBlocksFocus, hasFocus, hasTransientState, indexOfChild, invalidateChild, invalidateChildInParent, isAlwaysDrawnWithCacheEnabled, isAnimationCacheEnabled, isChildrenDrawingOrderEnabled, isChildrenDrawnWithCacheEnabled, isLayoutSuppressed, isMotionEventSplittingEnabled, isTransitionGroup, jumpDrawablesToCurrentState, layout, measureChild, measureChildren, measureChildWithMargins, notifySubtreeAccessibilityStateChanged, offsetDescendantRectToMyCoords, offsetRectIntoDescendantCoords, onAttachedToWindow, onCreateDrawableState, onDescendantInvalidated, onDetachedFromWindow, onInterceptHoverEvent, onNestedFling, onNestedPreFling, onNestedPrePerformAccessibilityAction, onNestedPreScroll, onNestedScroll, onNestedScrollAccepted, onRequestFocusInDescendants, onRequestSendAccessibilityEvent, onResolvePointerIcon, onStartNestedScroll, onStopNestedScroll, onViewAdded, onViewRemoved, recomputeViewAttributes, removeAllViews, removeAllViewsInLayout, removeDetachedView, removeView, removeViewAt, removeViewInLayout, removeViews, removeViewsInLayout, requestChildFocus, requestChildRectangleOnScreen, requestDisallowInterceptTouchEvent, requestFocus, requestSendAccessibilityEvent, requestTransparentRegion, restoreDefaultFocus, scheduleLayoutAnimation, setAddStatesFromChildren, setAlwaysDrawnWithCacheEnabled, setAnimationCacheEnabled, setChildrenDrawingCacheEnabled, setChildrenDrawingOrderEnabled, setChildrenDrawnWithCacheEnabled, setClipChildren, setClipToPadding, setDescendantFocusability, setLayoutAnimation, setLayoutAnimationListener, setLayoutMode, setLayoutTransition, setMotionEventSplittingEnabled, setOnHierarchyChangeListener, setPersistentDrawingCache, setStaticTransformationsEnabled, setTouchscreenBlocksFocus, setTransitionGroup, setWindowInsetsAnimationCallback, showContextMenuForChild, showContextMenuForChild, startActionModeForChild, startActionModeForChild, startLayoutAnimation, startViewTransition, suppressLayout, updateViewLayout

    Methods inherited from class android.view.View

    addFocusables, addOnAttachStateChangeListener, addOnLayoutChangeListener, addOnUnhandledKeyEventListener, animate, announceForAccessibility, autofill, autofill, awakenScrollBars, awakenScrollBars, awakenScrollBars, bringToFront, buildDrawingCache, buildDrawingCache, buildLayer, callOnClick, cancelDragAndDrop, cancelLongPress, cancelPendingInputEvents, canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, canScrollHorizontally, canScrollVertically, checkInputConnectionProxy, clearAnimation, clearViewTranslationCallback, combineMeasuredStates, computeHorizontalScrollExtent, computeHorizontalScrollOffset, computeHorizontalScrollRange, computeScroll, computeSystemWindowInsets, computeVerticalScrollExtent, computeVerticalScrollOffset, computeVerticalScrollRange, createAccessibilityNodeInfo, createContextMenu, destroyDrawingCache, dispatchGenericMotionEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPopulateAccessibilityEvent, draw, drawableHotspotChanged, findOnBackInvokedDispatcher, findViewById, findViewWithTag, fitSystemWindows, focusSearch, forceHasOverlappingRendering, forceLayout, generateDisplayHash, generateViewId, getAccessibilityDelegate, getAccessibilityLiveRegion, getAccessibilityNodeProvider, getAccessibilityPaneTitle, getAccessibilityTraversalAfter, getAccessibilityTraversalBefore, getAlpha, getAnimation, getAnimationMatrix, getApplicationWindowToken, getAttributeResolutionStack, getAttributeSourceResourceMap, getAutofillHints, getAutofillId, getAutofillType, getAutofillValue, getBackground, getBackgroundTintBlendMode, getBackgroundTintList, getBackgroundTintMode, getBaseline, getBottom, getBottomFadingEdgeStrength, getBottomPaddingOffset, getCameraDistance, getClipBounds, getClipBounds, getClipToOutline, getContentCaptureSession, getContentDescription, getContext, getContextMenuInfo, getDefaultFocusHighlightEnabled, getDefaultSize, getDisplay, getDrawableState, getDrawingCache, getDrawingCache, getDrawingCacheBackgroundColor, getDrawingCacheQuality, getDrawingRect, getDrawingTime, getElevation, getExplicitStyle, getFilterTouchesWhenObscured, getFitsSystemWindows, getFocusable, getFocusables, getFocusedRect, getForeground, getForegroundGravity, getForegroundTintBlendMode, getForegroundTintList, getForegroundTintMode, getGlobalVisibleRect, getGlobalVisibleRect, getHandler, getHasOverlappingRendering, getHeight, getHitRect, getHorizontalFadingEdgeLength, getHorizontalScrollbarHeight, getHorizontalScrollbarThumbDrawable, getHorizontalScrollbarTrackDrawable, getId, getImportantForAccessibility, getImportantForAutofill, getImportantForContentCapture, getKeepScreenOn, getKeyDispatcherState, getLabelFor, getLayerType, getLayoutDirection, getLayoutParams, getLeft, getLeftFadingEdgeStrength, getLeftPaddingOffset, getLocalVisibleRect, getLocationInSurface, getLocationInWindow, getLocationOnScreen, getMatrix, getMeasuredHeight, getMeasuredHeightAndState, getMeasuredState, getMeasuredWidth, getMeasuredWidthAndState, getMinimumHeight, getMinimumWidth, getNextClusterForwardId, getNextFocusDownId, getNextFocusForwardId, getNextFocusLeftId, getNextFocusRightId, getNextFocusUpId, getOnFocusChangeListener, getOutlineAmbientShadowColor, getOutlineProvider, getOutlineSpotShadowColor, getOverScrollMode, getPaddingBottom, getPaddingEnd, getPaddingLeft, getPaddingRight, getPaddingStart, getPaddingTop, getParent, getParentForAccessibility, getPivotX, getPivotY, getPointerIcon, getPreferKeepClearRects, getReceiveContentMimeTypes, getResources, getRevealOnFocusHint, getRight, getRightFadingEdgeStrength, getRightPaddingOffset, getRootSurfaceControl, getRootView, getRootWindowInsets, getRotation, getRotationX, getRotationY, getScaleX, getScaleY, getScrollBarDefaultDelayBeforeFade, getScrollBarFadeDuration, getScrollBarSize, getScrollBarStyle, getScrollCaptureHint, getScrollIndicators, getScrollX, getScrollY, getSolidColor, getSourceLayoutResId, getStateDescription, getStateListAnimator, getSuggestedMinimumHeight, getSuggestedMinimumWidth, getSystemGestureExclusionRects, getSystemUiVisibility, getTag, getTag, getTextAlignment, getTextDirection, getTooltipText, getTop, getTopFadingEdgeStrength, getTopPaddingOffset, getTouchables, getTouchDelegate, getTransitionAlpha, getTransitionName, getTranslationX, getTranslationY, getTranslationZ, getUniqueDrawingId, getVerticalFadingEdgeLength, getVerticalScrollbarPosition, getVerticalScrollbarThumbDrawable, getVerticalScrollbarTrackDrawable, getVerticalScrollbarWidth, getViewTranslationResponse, getViewTreeObserver, getVisibility, getWidth, getWindowAttachCount, getWindowId, getWindowInsetsController, getWindowSystemUiVisibility, getWindowToken, getWindowVisibility, getWindowVisibleDisplayFrame, getX, getY, getZ, hasExplicitFocusable, hasFocusable, hasNestedScrollingParent, hasOnClickListeners, hasOnLongClickListeners, hasOverlappingRendering, hasPointerCapture, hasWindowFocus, inflate, invalidate, invalidate, invalidate, invalidateDrawable, invalidateOutline, isAccessibilityFocused, isAccessibilityHeading, isActivated, isAttachedToWindow, isAutoHandwritingEnabled, isClickable, isContextClickable, isDirty, isDrawingCacheEnabled, isDuplicateParentStateEnabled, isEnabled, isFocusable, isFocusableInTouchMode, isFocused, isFocusedByDefault, isForceDarkAllowed, isHapticFeedbackEnabled, isHardwareAccelerated, isHorizontalFadingEdgeEnabled, isHorizontalScrollBarEnabled, isHovered, isImportantForAccessibility, isImportantForAutofill, isImportantForContentCapture, isInEditMode, isInLayout, isInTouchMode, isKeyboardNavigationCluster, isLaidOut, isLayoutDirectionResolved, isLayoutRequested, isLongClickable, isNestedScrollingEnabled, isOpaque, isPaddingOffsetRequired, isPaddingRelative, isPivotSet, isPreferKeepClear, isPressed, isSaveEnabled, isSaveFromParentEnabled, isScreenReaderFocusable, isScrollbarFadingEnabled, isScrollContainer, isSelected, isShowingLayoutBounds, isShown, isSoundEffectsEnabled, isTemporarilyDetached, isTextAlignmentResolved, isTextDirectionResolved, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, isVisibleToUserForAutofill, keyboardNavigationClusterSearch, measure, mergeDrawableStates, offsetLeftAndRight, offsetTopAndBottom, onAnimationEnd, onAnimationStart, onApplyWindowInsets, onCancelPendingInputEvents, onCapturedPointerEvent, onCheckIsTextEditor, onConfigurationChanged, onCreateContextMenu, onCreateInputConnection, onCreateViewTranslationRequest, onCreateVirtualViewTranslationRequests, onDisplayHint, onDragEvent, onDraw, onDrawForeground, onDrawScrollBars, onFilterTouchEventForSecurity, onFinishTemporaryDetach, onFocusChanged, onGenericMotionEvent, onHoverChanged, onHoverEvent, onInitializeAccessibilityEvent, onInitializeAccessibilityNodeInfo, onKeyDown, onKeyLongPress, onKeyMultiple, onKeyPreIme, onKeyShortcut, onKeyUp, onOverScrolled, onPointerCaptureChange, onPopulateAccessibilityEvent, onProvideAutofillStructure, onProvideAutofillVirtualStructure, onProvideContentCaptureStructure, onProvideStructure, onProvideVirtualStructure, onReceiveContent, onRestoreInstanceState, onRtlPropertiesChanged, onSaveInstanceState, onScreenStateChanged, onScrollCaptureSearch, onScrollChanged, onSetAlpha, onStartTemporaryDetach, onTrackballEvent, onViewTranslationResponse, onVirtualViewTranslationResponses, onVisibilityAggregated, onVisibilityChanged, onWindowFocusChanged, onWindowSystemUiVisibilityChanged, onWindowVisibilityChanged, overScrollBy, performAccessibilityAction, performClick, performContextClick, performContextClick, performHapticFeedback, performHapticFeedback, performLongClick, performLongClick, performReceiveContent, playSoundEffect, post, postDelayed, postInvalidate, postInvalidate, postInvalidateDelayed, postInvalidateDelayed, postInvalidateOnAnimation, postInvalidateOnAnimation, postOnAnimation, postOnAnimationDelayed, refreshDrawableState, releasePointerCapture, removeCallbacks, removeOnAttachStateChangeListener, removeOnLayoutChangeListener, removeOnUnhandledKeyEventListener, requestApplyInsets, requestFitSystemWindows, requestFocus, requestFocus, requestFocusFromTouch, requestPointerCapture, requestRectangleOnScreen, requestRectangleOnScreen, requestUnbufferedDispatch, requestUnbufferedDispatch, requireViewById, resetPivot, resolveSize, resolveSizeAndState, restoreHierarchyState, saveAttributeDataForStyleable, saveHierarchyState, scheduleDrawable, scrollBy, scrollTo, sendAccessibilityEvent, sendAccessibilityEventUnchecked, setAccessibilityDelegate, setAccessibilityHeading, setAccessibilityLiveRegion, setAccessibilityPaneTitle, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAllowClickWhenDisabled, setAlpha, setAnimation, setAnimationMatrix, setAutofillHints, setAutofillId, setAutoHandwritingEnabled, setBackground, setBackgroundColor, setBackgroundDrawable, setBackgroundResource, setBackgroundTintBlendMode, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClickable, setClipBounds, setClipToOutline, setContentCaptureSession, setContentDescription, setContextClickable, setDefaultFocusHighlightEnabled, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, setElevation, setEnabled, setFadingEdgeLength, setFilterTouchesWhenObscured, setFitsSystemWindows, setFocusable, setFocusable, setFocusableInTouchMode, setFocusedByDefault, setForceDarkAllowed, setForeground, setForegroundTintBlendMode, setForegroundTintList, setForegroundTintMode, setHapticFeedbackEnabled, setHasTransientState, setHorizontalFadingEdgeEnabled, setHorizontalScrollBarEnabled, setHorizontalScrollbarThumbDrawable, setHorizontalScrollbarTrackDrawable, setHovered, setId, setImportantForAccessibility, setImportantForAutofill, setImportantForContentCapture, setKeepScreenOn, setKeyboardNavigationCluster, setLabelFor, setLayerPaint, setLayerType, setLayoutDirection, setLeft, setLeftTopRightBottom, setLongClickable, setMeasuredDimension, setMinimumHeight, setMinimumWidth, setNestedScrollingEnabled, setNextClusterForwardId, setNextFocusDownId, setNextFocusForwardId, setNextFocusLeftId, setNextFocusRightId, setNextFocusUpId, setOnApplyWindowInsetsListener, setOnCapturedPointerListener, setOnClickListener, setOnContextClickListener, setOnCreateContextMenuListener, setOnDragListener, setOnFocusChangeListener, setOnGenericMotionListener, setOnHoverListener, setOnKeyListener, setOnLongClickListener, setOnReceiveContentListener, setOnScrollChangeListener, setOnSystemUiVisibilityChangeListener, setOnTouchListener, setOutlineAmbientShadowColor, setOutlineProvider, setOutlineSpotShadowColor, setOverScrollMode, setPadding, setPaddingRelative, setPivotX, setPivotY, setPointerIcon, setPreferKeepClear, setPreferKeepClearRects, setPressed, setRenderEffect, setRevealOnFocusHint, setRight, setRotation, setRotationX, setRotationY, setSaveEnabled, setSaveFromParentEnabled, setScaleX, setScaleY, setScreenReaderFocusable, setScrollBarDefaultDelayBeforeFade, setScrollBarFadeDuration, setScrollbarFadingEnabled, setScrollBarSize, setScrollBarStyle, setScrollCaptureCallback, setScrollCaptureHint, setScrollContainer, setScrollIndicators, setScrollIndicators, setScrollX, setScrollY, setSelected, setSoundEffectsEnabled, setStateDescription, setStateListAnimator, setSystemGestureExclusionRects, setSystemUiVisibility, setTag, setTag, setTextAlignment, setTextDirection, setTooltipText, setTop, setTouchDelegate, setTransitionAlpha, setTransitionName, setTransitionVisibility, setTranslationX, setTranslationY, setTranslationZ, setVerticalFadingEdgeEnabled, setVerticalScrollBarEnabled, setVerticalScrollbarPosition, setVerticalScrollbarThumbDrawable, setVerticalScrollbarTrackDrawable, setViewTranslationCallback, setVisibility, setWillNotCacheDrawing, setWillNotDraw, setX, setY, setZ, showContextMenu, showContextMenu, startActionMode, startActionMode, startAnimation, startDrag, startDragAndDrop, startNestedScroll, stopNestedScroll, toString, transformMatrixToGlobal, transformMatrixToLocal, unscheduleDrawable, unscheduleDrawable, updateDragShadow, verifyDrawable, willNotCacheDrawing, willNotDraw

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface android.view.ViewParent

    canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, createContextMenu, getLayoutDirection, getParent, getParentForAccessibility, getTextAlignment, getTextDirection, isLayoutDirectionResolved, isLayoutRequested, isTextAlignmentResolved, isTextDirectionResolved, keyboardNavigationClusterSearch, requestFitSystemWindows
  • Field Details

  • Constructor Details

    • BaseVideoView

      public BaseVideoView(android.content.Context context)
    • BaseVideoView

      public BaseVideoView(android.content.Context context, android.util.AttributeSet attributeSet)
    • BaseVideoView

      public BaseVideoView(android.content.Context context, android.util.AttributeSet attributeSet, int defStyle)
  • Method Details

    • addOnVideoViewSizeChangedListener

      public void addOnVideoViewSizeChangedListener(BaseVideoView.OnVideoViewSizeChangedListener onVideoViewSizeChangedListener)
    • removeOnVideoViewSizeChangedListener

      public void removeOnVideoViewSizeChangedListener(BaseVideoView.OnVideoViewSizeChangedListener onVideoViewSizeChangedListener)
    • setStreamConcurrencyEnabled

      public void setStreamConcurrencyEnabled(boolean enabled)
      Enable Generic Stream Concurrency
      Parameters:
      enabled -
    • setStreamConcurrencyRequestHeaders

      public void setStreamConcurrencyRequestHeaders(Map<String,String> requestHeaders)
      Sets the headers values that will be passed on each request to the Generic Stream Concurrency. The values should be for the account ID, video ID and the JWT.
      Parameters:
      requestHeaders -
    • setStreamConcurrencySessionsListener

      public void setStreamConcurrencySessionsListener(ConcurrencyClient.SessionsListener listener)
      Sets a listener to get the active sessions
      Parameters:
      listener -
    • requestActiveSessions

      public void requestActiveSessions()
      Request the current active sessions. Set a {#SessionsListener} to get the returned active sessions through {setStreamConcurrencySessionsListener(ConcurrencyClient.SessionsListener)}
    • isStreamConcurrencyEnabled

      public boolean isStreamConcurrencyEnabled()
      Checks whether Generic Stream Concurrency is enabled or not
      Returns:
    • getConcurrencyClient

      public final ConcurrencyClient getConcurrencyClient()
      Gets the {#ConcurrencyClient} instance being used interact with the Generic Stream Concurrency mechanism
      Returns:
    • onLayout

      protected void onLayout(boolean changed, int left, int top, int right, int bottom)
      Overrides:
      onLayout in class android.widget.FrameLayout
    • onSizeChanged

      protected void onSizeChanged(int w, int h, int oldw, int oldh)
      Overrides:
      onSizeChanged in class android.view.View
    • requestLayout

      public void requestLayout()
      Specified by:
      requestLayout in interface android.view.ViewParent
      Overrides:
      requestLayout in class android.view.View
    • onMeasure

      protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
      Overrides:
      onMeasure in class android.widget.FrameLayout
    • onTouchEvent

      public boolean onTouchEvent(android.view.MotionEvent ev)
      Overrides:
      onTouchEvent in class android.view.View
    • onInterceptTouchEvent

      public boolean onInterceptTouchEvent(android.view.MotionEvent ev)
      Overrides:
      onInterceptTouchEvent in class android.view.ViewGroup
    • init

      protected void init(android.content.Context context)
    • setLayoutParams

      public void setLayoutParams(android.view.ViewGroup.LayoutParams layoutParams)
      Overrides:
      setLayoutParams in class android.view.View
    • setChildLayoutParams

      protected void setChildLayoutParams(android.view.ViewGroup.LayoutParams layoutParams)
    • onFinishInflate

      protected void onFinishInflate()
      Overrides:
      onFinishInflate in class android.view.View
    • finishInitialization

      public void finishInitialization()
      This method finishes initializing the BaseVideoView. It should only be called when creating an instance programatically. Otherwise, it is automatically called by onFinishInflate().
    • resetMetaData

      protected void resetMetaData()
      Restores the meta data surrounding a video to its default state
    • getMediaController

      public android.widget.MediaController getMediaController()
      Access the legacy media controller.
      Returns:
      null if no legacy media controller is in use, the legacy media controller currently in use otherwise.
    • getBrightcoveMediaController

      public BrightcoveMediaController getBrightcoveMediaController()
      Access the Brightcove media controller.
      Returns:
      null if no Brightcove media controller is in use, the Brightcove media controller currently in use otherwise.
    • getPictureInPictureManager

      @NonNull public PictureInPictureManager getPictureInPictureManager()
    • createVideoDisplayComponent

      protected abstract VideoDisplayComponent createVideoDisplayComponent(EventEmitter eventEmitter)
    • createVideoPlaybackController

      protected VideoPlaybackController createVideoPlaybackController(EventEmitter eventEmitter)
    • setEventEmitter

      public void setEventEmitter(EventEmitter eventEmitter)
      Sets the eventEmitter and instantiates all inner components. Required to be called before further interactions with the eventEmitter.
      Parameters:
      eventEmitter -
    • getEventEmitter

      public EventEmitter getEventEmitter()
      Getter for the EventEmitter used by this View
      Returns:
      An instance of EventEmitter
    • getRenderView

      @Nullable public abstract RenderView getRenderView()
      Gets refers to the view that will render the video.
      Returns:
      null if the view is not available, otherwise reference to the view.
    • getVideoWidth

      public abstract int getVideoWidth()
    • getVideoHeight

      public abstract int getVideoHeight()
    • getMeasuredVideoWidth

      public int getMeasuredVideoWidth()
      Gets the rendered width of the video on the screen.
      Returns:
      the width of the video as measured by the RenderView
    • getMeasuredVideoHeight

      public int getMeasuredVideoHeight()
      Gets the rendered height of the video on the screen.
      Returns:
      the height of the video as measured by the RenderView
    • getDuration

      @Deprecated public int getDuration()
      Deprecated.
      Specified by:
      getDuration in interface android.widget.MediaController.MediaPlayerControl
    • getDurationLong

      public long getDurationLong()
    • getCurrentPosition

      @Deprecated public int getCurrentPosition()
      Deprecated.
      Specified by:
      getCurrentPosition in interface android.widget.MediaController.MediaPlayerControl
    • getCurrentPositionLong

      public long getCurrentPositionLong()
    • getBufferPercentage

      public int getBufferPercentage()
      Specified by:
      getBufferPercentage in interface android.widget.MediaController.MediaPlayerControl
    • isHlsRecommended

      public boolean isHlsRecommended()
    • canPause

      public boolean canPause()
      Specified by:
      canPause in interface android.widget.MediaController.MediaPlayerControl
    • canSeekForward

      public boolean canSeekForward()
      Specified by:
      canSeekForward in interface android.widget.MediaController.MediaPlayerControl
    • canSeekBackward

      public boolean canSeekBackward()
      Specified by:
      canSeekBackward in interface android.widget.MediaController.MediaPlayerControl
    • getAudioSessionId

      public int getAudioSessionId()
      Specified by:
      getAudioSessionId in interface android.widget.MediaController.MediaPlayerControl
    • isFullScreen

      public boolean isFullScreen()
    • initListeners

      protected void initListeners()
    • adjustPosterImageViewSize

      protected void adjustPosterImageViewSize(int width, int height)
    • onPrepared

      protected void onPrepared()
    • setOnCompletionListener

      public void setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener onCompletionListener)
    • clearOnCompletionListener

      public void clearOnCompletionListener()
    • setOnInfoListener

      public void setOnInfoListener(android.media.MediaPlayer.OnInfoListener onInfoListener)
    • setOnPreparedListener

      public void setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener onPreparedListener)
    • clearOnPreparedListener

      public void clearOnPreparedListener()
    • setMediaController

      public void setMediaController(BrightcoveMediaController mediaController)
      Establishes the Brightcove media controller to provide a modern set of media controls.
      Parameters:
      mediaController - The Brightcove media controller being established or null to have no media controller.
    • setMediaController

      public void setMediaController(android.widget.MediaController mediaController)
      Establishes a legacy Android media controller to provide media controls.
      Parameters:
      mediaController - The legacy Android media controller to use or null to have no media controller.
    • toggleMediaControlsVisibility

      public void toggleMediaControlsVisibility()
      Toggles the BrightcoveMediaController's visibility when one is set.
    • canShowMediaControls

      protected abstract boolean canShowMediaControls()
    • hasPlayer

      protected boolean hasPlayer()
    • onControllerHide

      public void onControllerHide()
    • isPlaying

      public boolean isPlaying()
      Specified by:
      isPlaying in interface android.widget.MediaController.MediaPlayerControl
      Returns:
      True if the player is currently playing.
    • start

      public void start()
      Start playback
      Specified by:
      start in interface android.widget.MediaController.MediaPlayerControl
    • pause

      public void pause()
      Pause playback
      Specified by:
      pause in interface android.widget.MediaController.MediaPlayerControl
    • stopPlayback

      public void stopPlayback()
      Stop playback
    • seekTo

      @Deprecated public void seekTo(int msec)
      Deprecated.
      Seek to the time specified
      Specified by:
      seekTo in interface android.widget.MediaController.MediaPlayerControl
      Parameters:
      msec - time in milliseconds
    • seekTo

      public void seekTo(long msec)
      Seek to the time specified
      Parameters:
      msec - time in milliseconds
    • seekToLive

      public void seekToLive()
    • setVideoPath

      public Video setVideoPath(String path)
      Replaces player content with the video at the specified path.
      Parameters:
      path - HTTP path to a video
      Returns:
      The created Video object.
    • setVideoURI

      public Video setVideoURI(android.net.Uri uri)
      Replaces player content with the video at the specified URI.
      Parameters:
      uri - Video URI
      Returns:
      The created Video object.
    • setVideoPath

      public Video setVideoPath(String videoPath, Map<String,String> languageCodeCaptionsMap)
      Replace player content with the video and captions at the specified paths.
      Parameters:
      videoPath - HTTP path to the video
      languageCodeCaptionsMap - A map of language code to caption urls.
    • add

      public void add(Video video)
      Adds the video to the end of the video list.
      Parameters:
      video -
    • getPlayback

      public MediaPlayback getPlayback()
    • add

      public void add(int index, Video video) throws IndexOutOfBoundsException
      Adds the video to the video list at the specified index.
      Parameters:
      index -
      video -
      Throws:
      IndexOutOfBoundsException - when index < 0 or index is larger than the size of the video list.
    • addAll

      public void addAll(Collection<Video> newVideos)
      Add all videos in the collection to the end of the list.
      Parameters:
      newVideos - The videos to append.
    • addAll

      public void addAll(int index, Collection<Video> newVideos) throws IndexOutOfBoundsException
      Inserts all videos in the collection at the specified index.
      Parameters:
      index -
      newVideos - The videos to append.
      Throws:
      IndexOutOfBoundsException - when index < 0 or index is larger than the size of the video list.
    • replace

      public void replace(int index, Video video) throws IndexOutOfBoundsException
      Removes and replaces the video at the specified index.
      Parameters:
      index - The index to replace a media item.
      video - The video to replace
      Throws:
      IndexOutOfBoundsException - when index < 0 or index is larger than the size of the video list.
    • get

      public Video get(int index)
      Parameters:
      index -
      Returns:
      The video at the specified index.
    • getCurrentIndex

      public int getCurrentIndex()
      Returns:
      The index of the current video or -1 if there are none.
    • getCurrentVideo

      public Video getCurrentVideo()
    • setCurrentIndex

      public void setCurrentIndex(int index) throws IndexOutOfBoundsException
      Sets the current video to the specified index.
      Parameters:
      index -
      Throws:
      IndexOutOfBoundsException - when index < 0 or index is larger than the size of the video list.
    • getList

      public List<Video> getList()
      Returns:
      A immutable copy of the video list.
    • remove

      public void remove(int index) throws IndexOutOfBoundsException
      Removes the video at the specified index.
      Parameters:
      index -
      Throws:
      IndexOutOfBoundsException - when index < 0 or index is larger than the size of the video list.
    • clear

      public void clear()
      Removes all videos from the list.
    • getPlaybackController

      public VideoPlaybackController getPlaybackController()
      Returns the video playback controller, the component of the player responsible for managing video playback and emitting cue points.
      Returns:
      the playbackController
    • getSourceController

      public DefaultSourceSelectionController getSourceController()
      Returns the source controller, the component of the player that selects the source to play for a video.
      Returns:
      the sourceController
    • getVideoDisplay

      public VideoDisplayComponent getVideoDisplay()
      Returns the video display, the low-level component responsible for decoding and rendering a video.
      Returns:
      the videoDisplay
    • getVideoStillDisplay

      public VideoStillDisplayComponent getVideoStillDisplay()
      Returns the video still display, the component of the player that shows and hides the still image if one is available for a video.
      Returns:
      the videoStillDisplay
    • getAnalytics

      public Analytics getAnalytics()
      Returns the analytics component, the part of the player that monitors and tracks video playback and engagement.
      Returns:
      the analytics component
    • addSubtitleSource

      public void addSubtitleSource(android.net.Uri uri, BrightcoveCaptionFormat format)
      For adding subtitle sources to the Brightcove Player. Loosely based off of the Android SDK method addSubtitleSource.
      See Also:
      • VideoView.addSubtitleSource(java.io.InputStream, android.media.MediaFormat)
    • setSubtitleLocale

      public void setSubtitleLocale(String localeCode)
      Sets the locale for a caption source to load, based on the caption locale pulled in. NOTE ABOUT USING WITH THE BRIGHTCOVE CAPTION CONTROLLER ONLY. ANDROID SUBTITLE MANAGER DOESNT NEED THIS.
      Parameters:
      localeCode - the two character locale code for the caption URI.
    • getClosedCaptioningView

      public BrightcoveClosedCaptioningView getClosedCaptioningView()
    • getClosedCaptioningController

      public BrightcoveClosedCaptioningController getClosedCaptioningController()
    • getAudioTracksController

      public BrightcoveAudioTracksController getAudioTracksController()
    • setClosedCaptioningEnabled

      public void setClosedCaptioningEnabled(boolean value)
    • addListener

      public void addListener(String eventType, EventListener listener)
    • removeListener

      public void removeListener(String eventType)
    • removeListeners

      public void removeListeners()
    • setupClosedCaptioningRendering

      protected void setupClosedCaptioningRendering(Video video)
      Decide if the captioning view should be instantiated, based on the controller.
      Parameters:
      video - - the video with or without captioning
    • setupClosedCaptioningRendering

      public void setupClosedCaptioningRendering()
      Instantiates the Brightcove captioning view.
    • disableClosedCaptioningRendering

      public void disableClosedCaptioningRendering()
    • emitErrorEvent

      protected void emitErrorEvent(String message)
    • getStillView

      public android.widget.ImageView getStillView()
    • isShutterVisible

      public boolean isShutterVisible()
    • dispatchKeyEvent

      public boolean dispatchKeyEvent(android.view.KeyEvent event)
      Overrides:
      dispatchKeyEvent in class android.view.ViewGroup