Roku Developer Program

Developers and content creators—a complete solution for growing an audience directly.
cancel
Showing results for 
Search instead for 
Did you mean: 
jaxim
Level 7

New Close Captions window in New firmware

I just updated the roku's firmware and it broke how I was dealing with closed captions.  The firmware stops the dispatching of the options click so my pas resolution no longer works. 

Now when I click the options button, it opens a window on the left hand side allowing the user to change the close captions in this window. Right now the window doesn't work properly because I assume I have to listen to dispatching of new events. I checked our 3rd party apps (i.e. Amazon Video) and this seems like it is a consistent UI change. Other apps's handling of closed captioning is also broken.

1) Is there any info on this new change?
2) I assume this was a change in the new UI. Can someone confirm this?
0 Kudos
14 Replies
RokuCC
Level 7

Re: New Close Captions window in New firmware

The options button was partly repurposed when Roku TVs arrived on the market. Even if your solution would work on a box, it would still have an issue on a RokuTV.
The UI of Roku boxes is converging to one similar to the Roku TVs.
These TVs are required to show the sidebar menu when the option button is pressed whenever video is playing. If there is another UI element on top of the video, shown to the user, that UI element can use the options button. Users need to get to the side bar menu for all the picture settings. The TV menu has many more items than the Roku boxes.
As such a channel is forced to add a button or so for CC. Or just leave it to the firmware as described below.

In 8.0 firmware an option was added called  "preferred caption language" and the firmware will automatically select the track according to the language setting. When the user changes the track, the new language setting will become the preferred setting (if the track has the language set).
This way in playlists and when going back and forth to playing a video, and when switching channels, the user will get the preferred caption languange. Instead of having to select the track again for each video in the playlist. (TED channel is an example).

Since it selects tracks automatically, a channel need not do much at all anymore.
In "SubtitleTracks"  part of "Content Meta-Data" add the track, the language of the track, and leave the description empty (unless it is a special track).
When no description is provided it will show the language instead. When a description is added, it should preferably contain the language.

No need to add SubtitleConfig. It would get in the way of the automatic track selection in the 8.0 firmware.

On the video node, availableSubtitleTracks and subtitleTrack still work. Also setting subtitleTrack there would get in the way of the automatic track selection.
Unless creating an own UI with the user selecting a subtitle track causing subtitleTrack to be set, a channel should not set subtitleTrack.
0 Kudos
jaxim
Level 7

Re: New Close Captions window in New firmware

thanks! I will make the appropriate changes. 

I noticed that the settings are not saved from one video to another video. If I turn on Closed captioning in one video, it doesn;t stay on when the next video plays. (But I have not yet implemented SubtitleTracks so perhaps that is why this setting is not saved.) Is there a way to tell the setting window to remember the closed captioning settings from one video to the next?

Also, is there a way to be alerted of any firmware changes so we can make quick changes without having to accidentally find a new or missing feature? This feature was very obvious, but other changes may not be so obvious,
0 Kudos
RokuCC
Level 7

Re: New Close Captions window in New firmware

release notes are here but are fairly compact.
https://sdkdocs.roku.com/display/sdkdoc ... -10/2/2017
updates to SDK documentation are coming.

If a track list is provided, and the language fields are set to the proper 3 letter code, and SubtitleConfig is not overriding the automatically selected track, then in 8.0 firmware the next video will select the track with the same language (could be a different track)..
The caption track list will show, for example :

Show French captions when Available
Currently showing English
Captioning Track <*French>

The *entry is the preferred caption language.
If that track is not available, it will still show up in the list ... but "Currently showing" will specify the track that is actually selected.

(Note I mentioned TED channel as an example before ... but it was not a good example ... there the channel defaults to the first track each time).

Main thing is to not use SubtitleConfig ... for backwards compatibility the firmware is forced to select that track and has to forego automatic track selection based on language.
0 Kudos
jaxim
Level 7

Re: New Close Captions window in New firmware

thanks!

I was able to implement the closed captioning pretty easily by using the following line of code.

   content.SubtitleTracks = [{Language: "eng", TrackName: subtitleURL}]



But there is a problem. When I have the closed captioning side window appear (after clicking the * options button), there are 2 possible languages: "*English" and "English". If I select "English", the closed captions appears. However, by default the 1st option is selected "*English" - that is English with a "*" in front of it. Selecting this language does nothing.

Do you know what "*English" is appearing as an option?
0 Kudos
RokuCC
Level 7

Re: New Close Captions window in New firmware

The language with the * in front of it is the preferred caption language setting.
It will always be in the list even if the language is not in the list of tracks.

If a video only has English captions and French is the preferred caption language setting, the accompanying text will show:

"Show French captions when available.
Currently showing English."
0 Kudos
jaxim
Level 7

Re: New Close Captions window in New firmware

The problem is that when "*English" is pre-selected with the "On Always" setting is set, the closed captioning does not appear. It's only when I select "English" w/o the asterisks does the captioning show up. Or the closed captioning shows up after I select "English" but then go back and select "*English". Is this a firmware issue?
0 Kudos
RokuCC
Level 7

Re: New Close Captions window in New firmware

At this point I'd be guessing...
Maybe there are 2 English tracks, one without caption, one with? Set your track language to fre and see if the demux found another one. Look at AvailableSubtitleTracks field. That includes the tracks the demux finds.
0 Kudos
jaxim
Level 7

Re: New Close Captions window in New firmware

I change the language to French. Uploaded the app to the roku and saw the following. *English is the default value again. I selected French and the subtitles appeared. Then I exited the video to the main window and selected the same video. Opened the closed captions window and this time *French was preselected. Even though the "Always On" option was selected, the closed captions were not appearing. I changed the language from *French to French, and the closed captions appeared.

So I would like to get rid of the 1st language option because it is causing issues. Is that possible?
 
0 Kudos
RokuCC
Level 7

Re: New Close Captions window in New firmware

The language with the * is the UI presenting the preferred caption language... It's not really a track. So nothing to get rid of really.
What caption format is used (webvtt, ttml) ? What video container format (hls, smooth, mp4)?
0 Kudos