It serves two purposes on a PeerTube instance: it ensures all videos can be played optimally in the web interface, and it generates different resolutions for the same video.
Storage: can be mitigated using <a target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/admin/remote-storage">S3/Object storage</a>
For example, in September 2021, the 900 platforms listed on our <a target="_blank" rel="noopener noreferrer" href="https://instances.joinpeertube.org/instances">public index</a> host only ~1% videos tagged as containing sensitivecontent.
Control the PeerTube player embed using the <a target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/api/embed-player">embed API</a>
Communicate with the streamer and other viewers using the <a target="_blank" rel="noopener noreferrer" href="https://livingston.frama.io/peertube-plugin-livechat/">livechat PeerTube plugin</a>