Streaming Status in ParaView

ParaView has a little known and little used streaming options, available in “Edit → Settings → Enable Streaming”.

Once enabled, some streaming are supposed to be available, however they have been forgotten for a while, so I’m trying to at least list what works and what doesn’t before we try to fix them (maybe).

Original implementation (2012)

  • Added the “EnableStreaming” option

  • Added a generic framework for streaming support within readers, filters and representations using the COMPOSITE_DATA_META_DATA key.

  • Implemented only in specific readers, filters and representations

    • Readers: vtkXMLMultiBlockDataReader, vtkXMLUniformGridAMRReader, vtkAMRBaseReader (Flash, Enzo, Velodyne, AMReX)
    • Filters: vtkAMRCutPlane, vtkAMRSliceFilter, vtkAMRResampleFilter, vtkCompositeCutter, vtkHierarchicalFractal, vtkPVExtractVOI
    • Representations: vtkAMRStreamingVolumeRepresentation, vtkAMROutlineRepresentation
  • Status in 2026 of this implementation

    • Compiled in CI on all platforms
    • NOT tested in CI as it relies on a data not available in ParaView data (smooth.flash). This data is considered lost for now.
    • Manual testing:
      • vtkAMROutlineRepresentation with vtkXMLUniformGridAMRReader/vtkAMRFlashReader
        • AMROutline is correctly visible
        • streaming feature itself doesnt seems functional, as all blocks appears on first render.
        • Streaming feature seems to break other rendering mode like surface
      • vtkAMRStreamingVolumeRepresentation

Streaming Particles plugin (2014/2016)

  • Added a plugin using the Streaming feature
  • Added a new “Streaming Particles” representation
  • Rely on cosmo tools data for testing
  • Status in 2026 of this implementation
    • Partially compiled in CI because some parts (tests) require cosmotools to be enabled, it is not.
    • NOT tested in CI because cosmo tools is not enabled
    • Manual testing
      • pv.StreamingParticles fails and the streaming feature itself doesn’t seem to work, no particles are loaded as we zoom in
      • Another test just segfault when reading another cosmo data

Streaming Raytracing (2017)

  • Adds a new option in OSPRay pathtracer: “Progressive Passes”
  • Do not use the VTK pipeline at all, it is pure rendering.
  • Status in 2026 of the implementation:
    • Compiled in CI alongside OSPray
    • NOT tested in CI at all, no tests for it in ParaView
    • Actually works great!
      • Edit → Settings → Enable Streaming → Restart
      • Sphere, Apply
      • Set Progressive Passes to 20
      • Enjoy actual streaming of raytracing passes :slight_smile:

Conclusion:

  • Cosmotools stack seems unstable. It should be enabled in CI and tested thouroughly
  • AMR Volume rendering is broken and should be fixed
  • Streaming feature itself seems non-fonctionnal although it does something, it doesnt seem to do what the representation sink expect
  • OSPray rendering streaming works
1 Like

If anyone here is using the “Enable Streaming” option, please report your usage here! I’d be very happy to test your usage and make sure it keeps working if we start working on this again in the future.