4 ms·
MoQ Boy
- chaghalibaghali 5mo agoTangential, but it’s so refreshing these days to read a post with an actual writing style. Reminded me a bit of _why.
- deleted 5mo ago[deleted]
- ipdashc 5mo agoAll the MoQ articles have such a good writing style, I read them every time a new one gets posted on here. It makes me kind of sad I have no excuse to use it for anything...
- throawayonthe 5mo agoi also appreciate the doodle-recreations-of memes on every post
- ddtaylor 5mo agoI'm out of the loop. What is MoQ?
- mmcclure 5mo agoMoQ is “Media over QUIC,” although I suspect it’ll eventually go the npm path and just end up being MoQ means MoQ. Depending on the use case you could think of it as an alternative to WebRTC with lower level control, but honestly it’s a lot more open ended than that.
- sahil-kang 5mo agoor perhaps it'll go down the QUIC path instead :) context: QUIC was originally an acronym as well
- flashdesk 5mo agoThat framing helps. When people compare MoQ with WebRTC, is the main attraction lower-level control over transport/media semantics, or are there cases where MoQ is expected to be materially better for latency or reliability? I’m trying to understand whether it’s mainly a replacement for specific WebRTC use cases, or more of a building block for new kinds of real-time systems.
- jprjr_ 5mo agoThere's a few cases where WebRTC falls apart that I think MoQ could help with. It doesn't work so well for having a low-latency broadcast. Your choices right now are - use WebRTC and deploy selective forwarding units, which are going to be something custom, and likely involve spinning up a bunch of geographically-distributed virtual machines, figuring out signalling and whatnot. Or - use HLS so you can use more standard HTTP CDN tech, but you gain orders of magnitude of latency. MoQ should allow for a standardized CDN stack, meaning we should be able to have a more abstract service (instead of spinning up VMs, you just employ some company's CDN service and tell it where to get media from). There's a lot of other little issues with WebRTC for certain, specific applications. Like - last I tried it, browsers will subtly speed up audio/video to keep everything in sync, and you can have scenarios where you'd rather just let the viewer fall behind a bit and skip ahead later (say you're listening to music, speeding it up isn't ideal). Or - say you want to have a group call and capture each participant's audio individually and edit it together later for something like a podcast. It's been a while since I've tried this, but I recall it being pretty difficult to do that with WebRTC. I remember all the mixing would happen in the browser's libwebrtc and I had really limited control over things.
- Sean-Der 5mo ago> use WebRTC and deploy selective forwarding units, which are going to be something custom Would you mind explaining more? If you are doing WHIP/WHEP you should be able to drop in Broadcast Box/MediaMTX etc... and switch out servers and no one should notice. You can use browser/mobile/ffmpeg/OBS etc... get the same behavior. I care a lot about the broadcast space, want to learn about other problems. > subtly speed up audio/video to keep everything in sync You can use https://webrtc.googlesource.com/src/+/refs/heads/main/docs/native-code/rtp-hdrext/playout-delay/README.md https://webrtc.googlesource.com/src/+/refs/heads/main/docs/n... to add more delay (if you want to force more buffering). Or if you don't link the media together (via MediaStream) you don't get the behavior you describe either! > capture each participant's audio individually That's a neat problem. I haven't solved this one myself, I wonder if it's easier with RtpTransport or insertable streams?
- emmelaich 5mo agoI was taught it's an alternative "spelling" of cat. M O Q