Uploaded image for project: 'Opencast'
  1. MH-11790

Slide Previews and slide text are not shown in Theodul Engage player

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed and reviewed
    • Affects versions: 2.2.1
    • Fix versions: 2.3.2
    • Components: Player
    • Labels:
      None
    • Severity:
      Incorrectly Functioning With Workaround
    • Steps to reproduce:
      Hide
      Steps to reproduce:
      1. Ingest a video as presentation
      2. Run full workflow including slide detection and OCR
      3. View the result in Theodul engage player
       
       Actual Results:
      Slide Previews and corresponding slide text are not shown in most cases, only sometimes (unable to reproduce this behaviour!)
       
       Expected Results:
       Slide Previews and corresponding slide text are shown ALWAYS.
       
       Workaround (if any):
      Replaced the following code fragment in main.js of module
      matterhorn-engage-theodul-plugin-tab-slidetext-2.2.1 (line 157 ff.):
      ...
                      if (segmentInformation !== undefined) {
                          $(segmentInformation).each(function(index, element) {
                            if (Engage.model.get("videoDataModel") && Engage.model.get("videoDataModel").get("duration") &&
                                    element.time <= parseInt(Engage.model.get("videoDataModel").get("duration"))) {
                              var segmentText = "No slide text available.";

                              if (element.text)
                                  segmentText = element.text;
                              
                              var segmentPreview = undefined;
                                if (element !== undefined && element.previews !== undefined &&
                                      element.previews.preview !== undefined && element.previews.preview.$ !== undefined) {
                                  segmentPreview = element.previews.preview.$;
                                }
                              segments.push(new Segment((element.time / 1000), segmentPreview, segmentText));
                            } else {
                              Engage.log("Tab:Slidetext: Detected Segment with start time " + element.time / 1000 +
                                      " that exceeds the duration of the video ");
                            }
                          });
      ...

      with the code from 2.1.1:
      ...
                      if (segmentInformation !== undefined) {
                          $(segmentInformation).each(function(index, element) {
                              var segmentText = "No slide text available.";

                              if (element.text)
                                  segmentText = element.text;

                              var segmentPreview = element.previews.preview.$;
                              segments.push(new Segment((element.time / 1000), segmentPreview, segmentText));
                          });

      ...

      Now it's working!!
      Show
      Steps to reproduce: 1. Ingest a video as presentation 2. Run full workflow including slide detection and OCR 3. View the result in Theodul engage player    Actual Results: Slide Previews and corresponding slide text are not shown in most cases, only sometimes (unable to reproduce this behaviour!)    Expected Results:  Slide Previews and corresponding slide text are shown ALWAYS.    Workaround (if any): Replaced the following code fragment in main.js of module matterhorn-engage-theodul-plugin-tab-slidetext-2.2.1 (line 157 ff.): ...                 if (segmentInformation !== undefined) {                     $(segmentInformation).each(function(index, element) {                       if (Engage.model.get("videoDataModel") && Engage.model.get("videoDataModel").get("duration") &&                               element.time <= parseInt(Engage.model.get("videoDataModel").get("duration"))) {                         var segmentText = "No slide text available.";                         if (element.text)                             segmentText = element.text;                                                  var segmentPreview = undefined;                           if (element !== undefined && element.previews !== undefined &&                                 element.previews.preview !== undefined && element.previews.preview.$ !== undefined) {                             segmentPreview = element.previews.preview.$;                           }                         segments.push(new Segment((element.time / 1000), segmentPreview, segmentText));                       } else {                         Engage.log("Tab:Slidetext: Detected Segment with start time " + element.time / 1000 +                                 " that exceeds the duration of the video ");                       }                     }); ... with the code from 2.1.1: ...                 if (segmentInformation !== undefined) {                     $(segmentInformation).each(function(index, element) {                         var segmentText = "No slide text available.";                         if (element.text)                             segmentText = element.text;                         var segmentPreview = element.previews.preview.$;                         segments.push(new Segment((element.time / 1000), segmentPreview, segmentText));                     }); ... Now it's working!!

      TestRail: Results

        Attachments

          Activity

            People

            • Assignee:
              rrolf RĂ¼diger Rolf
              Reporter:
              zenker-hsf Dietmar Zenker
            • Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                TestRail: Cases