OK, I found a little something here: https://docs.joinpeertube.org/contribute/architecture#concepts-1
It says this:
Segments are loaded by HTTP from the origin server + servers that mirrored the video and by WebRTC from other web browsers that are watching the video. They are used by hls.js to stream them into the HTML element
That "from other web browsers that are watching the video" is what I'm curious about: how does it know who those people are?
Sounds like I need to learn more about hls.js and Peertube's custom loader for it.