Class BrightcoveClosedCaptioningController

  • All Implemented Interfaces:
    Component

    @ListensFor(events={"didSetVideo","stop","enterTvMode","hidePlayerOptions"})
    @Emits(events={"captionsDialogOk","captionsDialogSettings","toggleClosedCaptions","captionsLanguages","selectClosedCaptionTrack"})
    public class BrightcoveClosedCaptioningController
    extends AbstractComponent
    A controller class for managing closed captioning dialogue windows.
    • Field Detail

      • context

        protected android.content.Context context
    • Constructor Detail

      • BrightcoveClosedCaptioningController

        public BrightcoveClosedCaptioningController​(BaseVideoView videoView,
                                                    android.content.Context context)
        Constructor
        Parameters:
        videoView - A video view in charge of media playback.
        context - The context of the main application's activity.
    • Method Detail

      • setShouldImportSystemSettings

        public void setShouldImportSystemSettings​(boolean shouldImport)
        Method to set whether to import the system caption settings before displaying captions on a video.
      • getLoadCaptionsService

        public LoadCaptionsService getLoadCaptionsService()
        Method to return the LoadCaptionsService instance for fetching captions URI's.
        Returns:
        the LoadCaptionsService instance.
      • validateCaptionSourcesField

        public boolean validateCaptionSourcesField​(java.lang.Object obj)
        Helper method to validate the types of the CAPTION_SOURCES video field, which should always be a List>.
        Parameters:
        obj - the object to test for the correct type.
        Returns:
        true if the types are correct, false otherwise.
      • checkIfCaptionsExist

        public boolean checkIfCaptionsExist​(Video video)
        Check to see if the Video passed in has closed captioning data.
        Parameters:
        video - The video to check
        Returns:
        true if captions exist, false otherwise.
      • showCaptionsDialog

        public void showCaptionsDialog()
        Helper that prepares the captions dialog with the current state and displays the dialog over the video player.
      • isCaptioningEnabled

        public boolean isCaptioningEnabled()
        Checks the closed captioning enabled/disabled state from the applications shared preferences.
        Returns:
        true for CC enabled, false for disabled.
      • saveClosedCaptioningState

        public void saveClosedCaptioningState​(boolean state)
        Save the closed captioning enabled/disabled state to the applications shared preferences.
        Parameters:
        state - The enabled/disabled state to save.
      • setLocaleCode

        public void setLocaleCode​(java.lang.String localeCode)
        Stores the locale code in the default shared preferences, so it will be persisted.
        Parameters:
        localeCode - The two character locale code.
      • initCaptionsMenu

        protected void initCaptionsMenu()
        Init caption menu for Android TV. It initializes the Player option menu when necessary.
      • showCaptionsMenu

        protected void showCaptionsMenu()
        Show caption menu for Android TV.
      • hideCaptionsMenu

        protected void hideCaptionsMenu()
        Hide caption menu for Android TV.
      • selectCaptions

        public void selectCaptions​(int trackIndex)
        Selects the caption option and and emits the one selected. Making this method public instead of protected allows for its use in custom caption dialogs
        Parameters:
        trackIndex - the caption index