Skip to content
Snippets Groups Projects
  1. Dec 17, 2018
  2. Dec 11, 2018
    • Calvin Walton's avatar
      Ensure the archiver deletes events from redis for the last segment · beab29d3
      Calvin Walton authored
      Issue #6338
      
      It looks like there was a logic error in the code that was causing it
      to break out of the event deletion loop early when deleting events for
      the last (or only) segment in a recording. (In this case, last_index
      is -1, so i >= last_index is always true).
      
      The trim_events_for call was always succeeding, so the events were
      being removed from the event list (meeting:{ID}:recordings key) even
      though the events themselves hadn't been deleted in the loop.
      
      I've moved the trim_events_for call to below the event deletion loop
      to ensure that if the archive script is interrupted, the events list
      will contain all not-yet-deleted events.
      beab29d3
  3. Oct 12, 2018
  4. Oct 02, 2018
  5. Sep 25, 2018
  6. Sep 20, 2018
  7. Jul 12, 2018
  8. Jul 06, 2018
  9. Jun 22, 2018
  10. Jun 21, 2018
  11. Jun 20, 2018
  12. Jun 13, 2018
  13. May 30, 2018
    • Calvin Walton's avatar
      RaP: Workaround broken seeking in flv after red5 update. · 4554e3ea
      Calvin Walton authored
      Since the update to the newer red5, seeking in flv files (webcams in
      particular are noticable) has been broken, resulting in cameras
      appearing to "hang" any time there is a cut in the generated video -
      which happens when start/stop button is pushed, or when cameras are
      added or removed.
      
      We can detect the problematic video files because the timestamp of the
      first frame is large (old red5 versions always set first frame
      timestamp to 0.001 seconds). If we see a file like this, having ffmpeg
      remux the file - rewriting the timestamps and index - works around the
      problem.
      4554e3ea
  14. May 23, 2018
    • Calvin Walton's avatar
    • Calvin Walton's avatar
      RaP: Merge the sanity script from master branch · 9cdafbdf
      Calvin Walton authored
      Due to improvements in the recording scripts, most of the stuff the sanity
      script was checking for is no longer needed (missing/corrupt video files
      are handled by the processing scripts). The version of this script in
      master has been cleaned up so that the only things it does are:
      
      - Check that the events.xml exists and is properly formatted xml
      - Rebuild flv files from red5 .flv.ser/.flv.info files
      
      The script from master is compatible with the 2.0 code, so just use it
      as-is.
      
      This fixes a problem where following the recent red5 upgrade in 2.0 branch,
      an flv file is never written for webcam streams where no frames were
      received, despite there being recording events.
      9cdafbdf
  15. May 16, 2018
    • Calvin Walton's avatar
      RaP: Scale to a square when generating slide images for pres. format · 36a6b0f5
      Calvin Walton authored
      This improves the quality of portrait documents, before they were
      1200px when landscape documents got 1600px.
      
      Switching to scaling to a square means that we can use the "-scale-to"
      option on pdftocaio, which means that it generates images directly
      at the desired size. This can save quite a bit of time (and memory)
      if a document was uploaded with extremely large page size.
      36a6b0f5
    • Calvin Walton's avatar
      RaP: Improve check for record events in archive, sanity scripts · 18d472e3
      Calvin Walton authored
      There's some cases where you can get 0-duration recordings due to
      recording event placement (e.g. a single recording event is the last
      event in the events.xml). Detect these cases, and treat them like
      no recording marks in the archive script (it will stop the recording
      from being automatically processed).
      
      I've also adjusted the sanity script to detect these cases and error
      out. The recording processing scripts cannot handle 0-length recordings,
      you have to manually edit the events. I've added a message to the
      sanity log about this.
      18d472e3
  16. May 07, 2018
    • Calvin Walton's avatar
      Fix handling webcam videos that end early in recording processing · e034b9c7
      Calvin Walton authored
      In some cases (due to network issues), the webcam video can be shorter
      than the time between the start/stop events. Pad the input video with a
      blank video to make sure that there's input to the video tiling filters,
      to fix a problem where the video won't render correctly with ffmpeg v3.4
      and later.
      e034b9c7
  17. Apr 26, 2018
  18. Apr 25, 2018
  19. Apr 24, 2018
  20. Feb 13, 2018
    • Calvin Walton's avatar
      Rework audio processing to avoid seeking past end of file · cafa9fd8
      Calvin Walton authored
      In some cases when there is a slight mismatch between audio file
      duration and event timestamp difference, and we have a record
      status or chapter break event in a certain location, it could
      trigger a seek past the end of an audio file. Detect this
      condition and just render silence instead.
      
      Also adjust the thresholds for the audio length scaling - they
      were being triggered on short recordings that should be correct.
      cafa9fd8
  21. Feb 12, 2018
    • Calvin Walton's avatar
      Rework audio processing to avoid seeking past end of file · e30d5e39
      Calvin Walton authored
      In some cases when there is a slight mismatch between audio file
      duration and event timestamp difference, and we have a record
      status or chapter break event in a certain location, it could
      trigger a seek past the end of an audio file. Detect this
      condition and just render silence instead.
      
      Also adjust the thresholds for the audio length scaling - they
      were being triggered on short recordings that should be correct.
      e30d5e39
    • Calvin Walton's avatar
      Archive events.xml file in a concurrency-friendly way. · c1258ed3
      Calvin Walton authored
      With the current segment processing, we might be processing one segment
      while archiving a different segment from the same recording. To avoid
      that the processing scripts see an incomplete events.xml file, write to
      a temp file then rename.
      c1258ed3
    • Calvin Walton's avatar
      Workaround video sync issue due to red5 timestamp offset · c44d94b4
      Calvin Walton authored
      Red5 sometimes writes webcam video files with a large offset in the
      video frame offsets, sometimes up to 30 or even 60 seconds. However,
      the start event in the events.xml file corresponds to the time at
      which red5 received the first keyframe (recorded frame) in the video.
      
      The end result is that the video will sometimes appear to be
      delayed (out of sync) in the processed recording.
      
      The correction is simple: We're already reading video metadata,
      including the timestamp of the first frame, so we just have to apply
      a correction during video processing to undo the frame timestamp
      offsets in the video file.
      c44d94b4
    • Calvin Walton's avatar
      Workaround video sync issue due to red5 timestamp offset · 0701bf87
      Calvin Walton authored
      Red5 sometimes writes webcam video files with a large offset in the
      video frame offsets, sometimes up to 30 or even 60 seconds. However,
      the start event in the events.xml file corresponds to the time at
      which red5 received the first keyframe (recorded frame) in the video.
      
      The end result is that the video will sometimes appear to be
      delayed (out of sync) in the processed recording.
      
      The correction is simple: We're already reading video metadata,
      including the timestamp of the first frame, so we just have to apply
      a correction during video processing to undo the frame timestamp
      offsets in the video file.
      0701bf87
  22. Dec 14, 2017
    • Calvin Walton's avatar
      Don't delete video events in the sanity script. · d8c0f7a6
      Calvin Walton authored
      When working with the segmented recording format, the events file might
      end with a mismatched start video event for an incomplete file. The
      sanity script was removing this event, meaning the video didn't show up
      in future segments.
      
      Simply drop the code that tries to find invalid video files and removes
      them from the events file. The new video processing code is already
      robust against missing or corrupt files.
      d8c0f7a6
  23. Nov 17, 2017
  24. Nov 10, 2017
  25. Nov 09, 2017
Loading