Back to Projects List
Compressed Video Saving and Loading for Sequences
Key Investigators
  - Longquan Chen (Brigham and Women’s Hospital)
 
  - Kyle Sunderland (Perk Lab)
 
  - Andras Lasso (Perk Lab)
 
  - Étienne Léger (Concordia University)
 
  - Junichi	Tokuda (Brigham and Women’s Hospital)
 
Project Description
The Video streaming saving module Sequence. Video Streaming in Sequence
A 5 minutes HD video without compression will be around 10GB. VP9, H264, HEVC codecs are available for video compression and video streaming.
Objective
  - Implement and test the saving and loading of compressed video files using the Sequences module.
 
  - Should be able to:
    
      - Store video Sequences in memory using a compressed video format
 
      - Save video Sequences to files in a compressed video format
 
      - Load compressed video files into Sequences
 
    
   
Approach and Plan
  - Test the currently implemented version.
 
  - Fix bugs and implement features as necessary.
 
  - Integrate these changes into the master branch of Sequences.
 
Progress and Next Steps
  - An existing version of this feature has already been implemented here.
 
  - Need to test the existing method to see if it still works, and determine if any changes need to be made.
 
The work finished in the project week
  - A new vtkBitStreamMRMLNode is created for displaying video data, the most recent key frame and current frame are stored in this node.
 
  - A new vtkMRMLBitStreamSequenceStorageNode is created for write and read bitstream sequence data in Slicer.
 
  - Video can be replayed at any time point in the Sequence browsing widget. The related key frame will be found and decoded So the current frame can be showed correctly.
 
  - Compressed video data are saved in a binary file, and can be reloaded into Slicer correctly.
 
  - Demo Video IPad real time video, lossy compression, frame rate 30 FPS, compressed data only 1.7% of the original data.
 
  - Added support for AV1 codec in OpenIGTLink
 
Next steps
  - Clean the code, merge branch into upstream, make the new feature in Slicer nightly build
 
Illustrations
Background and References