Captioning for Audio files

clammers
clammers Community Member Posts: 122 ♪ Opening Act ♪
Curious to know how everyone handles captioning on audio files. Do you use the captions feature or another method?
The problem I face is not wanting the user to see the player (i.e., allowing them to scrub ahead), and still allow them to toggle CC on/off. Creating a separate text box works, but how to then control global on/off? Change contents action?

Answers

  • nmaharaj
    nmaharaj Moderator Posts: 10 eLearning ROCKSTAR Stage Manager
    This can be done, the setup is a little involved but it can be done!
  • clammers
    clammers Community Member Posts: 122 ♪ Opening Act ♪
    How do you go about it? I tend to overcomplicate things, so I'm wondering if you r solution is simpler.
  • andrew-robertson
    andrew-robertson Community Member Posts: 185 ☆ Superstar ☆
    Just thinking off the top of my head....
    1. Global CC btn that sets _ccVar to TRUE or FALSE when clicked.
    2. Have a timed action that happens every 1s that watches for teh _ccVar for TRUE. If TRUE, set the CC text box to visible, else (the _ccVar = false) then hide CC text box.
    OR

    Global CC btn that sets _ccVar to TRUE or FALSE when clicked and toggles the visibility of the CC TEXT BOX.


    I am not entirely sure how to make your text play along with the audio narration, but I am sure you can use a bunch of text boxes and sync'd events with your audio. This is the time consuming part IMO.
    Andrew R.
    Developing content since 2010 using a mixed bag of tools.
  • carlfink
    carlfink Community Member Posts: 947 ♦ Idol ♦

    Just thinking off the top of my head....

    1. Global CC btn that sets _ccVar to TRUE or FALSE when clicked.
    2. Have a timed action that happens every 1s that watches for teh _ccVar for TRUE. If TRUE, set the CC text box to visible, else (the _ccVar = false) then hide CC text box.
    OR

    Global CC btn that sets _ccVar to TRUE or FALSE when clicked and toggles the visibility of the CC TEXT BOX.
    Why not have a single text box that exists at the Assignable Unit level and is either visible or not visible depending on the variable (that is, at the AU level have an OnPageShow that hides/shows it depending on the variable)? Create a button that changes the value of the variable, and has a second action that hides/shows the (single) caption box?

    You'd have to "reserve" a bit of screen real-estate for the caption box, but that's not necessarily a deal-breaker.
  • clammers
    clammers Community Member Posts: 122 ♪ Opening Act ♪
    Thanks, Andrew. That's the route I was going; however, the issue I was running into was how to separate the captioning by page. The global variable to show/hide the text box is easy to set-up, but would require the text box to contain all the text of the course audio transcript, not just the content on that page. I would need a global button to show a page-specific text box, which I'm not sure how to accomplish.
  • andrew-robertson
    andrew-robertson Community Member Posts: 185 ☆ Superstar ☆
    @carlfink , when I was sending the message, i was thinking of having a text box on every page with the specific text for that page show up when the _varCC is T/F, but then realized that it'd probably be better to have a text box in the AU level and the modify the contents on every page with the narration text as required.
    Andrew R.
    Developing content since 2010 using a mixed bag of tools.
  • carlfink
    carlfink Community Member Posts: 947 ♦ Idol ♦
    clammers said:

    Thanks, Andrew. That's the route I was going; however, the issue I was running into was how to separate the captioning by page. The global variable to show/hide the text box is easy to set-up, but would require the text box to contain all the text of the course audio transcript, not just the content on that page. I would need a global button to show a page-specific text box, which I'm not sure how to accomplish.

    @clammers, as Andrew says above, you can change the contents of a text box using Actions. Just have an Action on each page replace the contents with that page's transcript (or if you're synchronizing with a video, you could use timed actions to replace it repeatedly).
  • clammers
    clammers Community Member Posts: 122 ♪ Opening Act ♪
    edited April 30, 2021
    So, have an action on a global CC button to Toggle Show/Hide a Caption Text Box and an action on every page that would Change Contents of the Caption Text Box? I think that would do it. Initial testing seems positive - thanks!
  • andrew-robertson
    andrew-robertson Community Member Posts: 185 ☆ Superstar ☆
    Yes. That's the idea. I'd even take it one step further because if a user clicks on CC on the previous page, they want it for the entire module and having to click the CC button on every new page become frustrating and detract from the learning experience.

    In my solution, _CC is a user created variable to monitor the ON / OFF state of the _CC text box.
    • Create a global variable called _CC and set it to FALSE.
    • Create a global button to set _CC variable to TRUE when _CC equals FALSE, and to set FALSE when _CC equals TRUE.
    • Create a global Closed Caption Text Box.
    • Create a global action that runs every 0.5s to show Closed Caption Text Box when _CC equals TRUE, and hides Closed Caption Text Box when _CC equals FALSE.
    On every page have an action to change the contents of the Closed Caption Text Box when page is shown.

    There are many ways to do this, but that'd be my method.
    Andrew R.
    Developing content since 2010 using a mixed bag of tools.
  • KaiNie
    KaiNie Community Member, Lectora® Accessibility Group (LAUG) Member, eLearning Brothers® Partner Posts: 10 ☆ Roadie ☆
    Hi there,
    I am also following the same approach noch in a new project.
    How do you change the content efficiently on the single pages?
    I mean where do you take the text from? From text files, other text boxes or do you enter the text to be shown into the action dialog directly?

    Does anyone also have the issue, that the text overflows instead of showing a vertical scroll bar in case the "new" text is longer than the text box can keep?
  • timk
    timk Community Member Posts: 1,197 ♦ Idol ♦
    Adding the text to the Change Contents action should be the only way to achieve it without custom js.

    The textbox has no rule for overflow, so the text is visible if it is longer than the height of the div. Do you have "Vertial scroll" activated?
  • KaiNie
    KaiNie Community Member, Lectora® Accessibility Group (LAUG) Member, eLearning Brothers® Partner Posts: 10 ☆ Roadie ☆
    Yes I do ... and if I enter text into the box it shows the scroll bar. However after using change content action it seems to remove the scroll bar.
  • andrew-robertson
    andrew-robertson Community Member Posts: 185 ☆ Superstar ☆
    Can you post your content?
    Andrew R.
    Developing content since 2010 using a mixed bag of tools.
  • timk
    timk Community Member Posts: 1,197 ♦ Idol ♦
    Which version do you use? In v21 it works when changing the content from short to long and back to short. The scrollbar appears only when required.
  • KaiNie
    KaiNie Community Member, Lectora® Accessibility Group (LAUG) Member, eLearning Brothers® Partner Posts: 10 ☆ Roadie ☆
    🤔 I am on v19 ... Wasn't aware of the update.
    Let me run the upgrade first and continue from there :-)
    Thanks for the hint!
  • KaiNie
    KaiNie Community Member, Lectora® Accessibility Group (LAUG) Member, eLearning Brothers® Partner Posts: 10 ☆ Roadie ☆
    v21 solves the issue :-) Thnx!