Skip to content

Commit b76c0bc

Browse files
authored
Montevideo (#68)
1 parent 3780ef9 commit b76c0bc

3 files changed

Lines changed: 120 additions & 7 deletions

File tree

103 KB
Loading
Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
---
2+
layout: "@/layouts/global.astro"
3+
title: "Monte<video>: A Real Place"
4+
author: kixelated
5+
description: "Maybe join us in Uruguay this year? We'll be working on MoQ and stuff."
6+
cover: "/blog/monte-video/uruguay.png"
7+
date: 2025-11-11
8+
---
9+
10+
# Monte\<video\>: A Real Place
11+
Who knew?
12+
13+
No like seriously, they named a place after video encoding.
14+
And it's the capital of Uruguay???
15+
16+
## Summer Camp
17+
πŸŽ‰ [kixelated/moq](https://github.com/kixelated/moq) was selected for the 2026 [Montevideo Tech Summer Camp](https://montevideotech.dev/summercamp2026/). πŸŽ‰
18+
19+
This means that Mike (Cloudflare) and I (painfully unemployed) will be mentoring MoQ newbies or whatever.
20+
It's a multi-month community effort to make some poor open source project (ours) a little bit better.
21+
22+
And it all culminates in an IRL event in Montevideo at the end of January.
23+
**Fun fact**: it's summer there while it's winter (mostly) everywhere else.
24+
25+
<figure>
26+
![Uruguay](/blog/monte-video/uruguay.png)
27+
<figcaption>AND they have an awesome thing on their flag.</figcaption>
28+
</figure>
29+
30+
## Should you participate?
31+
So I actually went to Uruguay last year.
32+
[Mike's moq-js fork](https://github.com/video-dev/moq-js) was selected as a 2025 project and I thought it would be cool to help out in person.
33+
34+
Yes it was super awkward contributing to a fork of my own project.
35+
Yes I'm just an awkward person in general.
36+
But it was still fun, I recommend it, and I'll be heading there again this year.
37+
38+
If you want an excuse to work on MoQ or a business justification to visit Uruguay, this is your chance.
39+
The Qualabs folks legitimately provide a full-blown vacation with organized events, tours, meals, etc.
40+
You have to pay for flights+hotel... but that's about it.
41+
42+
And you don't actually spend much time doing "work".
43+
The event is mostly about hanging out with other video nerds.
44+
The Whatapp Group from last year is somehow still active.
45+
You can *and should* bring your family\* or spouse or cat or whatever.
46+
47+
\* Steve (aka da Heff) brought his two daughters and wife last year.
48+
They cackled like maniacs lighting the bonfire.
49+
50+
## What are we working on?
51+
But before the event, we'll be working on MoQ.
52+
If you just want to submit pull requests and don't want to hang out IRL, that's totally fine.
53+
Approved, merged, and deployed straight to production.
54+
55+
I'll be filing a boatload of issues in the next few days in a vain attempt at project planning.
56+
If you have any ideas or feature requests, file an issue or ping me on Discord.
57+
58+
And to be clear, you don't need permission and can work on whatever you want.
59+
This event is more about bringing value to the community than serving any specific agenda.
60+
61+
But if you're out of ideas, here's some free ones:
62+
63+
### Conferencing
64+
Steal the rendering engine from [hang.live](/blog/first-app) and make a general purpose conferencing app.
65+
Without the copious amount of cringe and meme videos.
66+
Throw in some lame corporate branding and you've got a legitimate product..?
67+
68+
### MoQ+HLS+DASH
69+
One of the biggest barriers to adoption is getting MoQ to work with an existing HLS/DASH stack.
70+
It turns out that it's not viable to instantaneously migrate all clients to MoQ.
71+
I've got some ideas on how to simultaneously support MoQ, HLS, and DASH with a unified MoQ relay.
72+
73+
### OBS and Friends
74+
Another barrier to adoption is getting the media in the first place.
75+
I've got a crude gstreamer plugin already but it kind of sucks and needs a fresh coat of paint.
76+
Going further and getting OBS to work with MoQ would be a HUGE milestone.
77+
78+
### POLISH
79+
We can also just polish the MoQ player and make it (more) ready for production.
80+
Stuff like better bundling, better documentation, better examples, etc.
81+
You know, the really boring stuff.
82+
83+
84+
## What next?
85+
The kick-off meeting is [this Friday](https://meetu.ps/e/PF7F0/GFW4z/i).
86+
That's in two days if you're reading this on the (exact) Wednesday that I'm writing this.
87+
88+
It'll be a recurring thing until the end of January.
89+
I'm going to have to set an alarm for 3am to make the meeting (Australia) but sacrifice is part of my "job description".
90+
91+
- If you're interested in the IRL event, [email to get on the guest list](mailto:summercamp@montevideotech.dev).
92+
- If you want to work on MoQ over the holidays, join the meetings to coordinate?
93+
- Otherwise, why are you still reading this?
94+
95+
Or just hang out on [Discord](https://discord.gg/FCYF3p99mr).
96+
Direct social interaction is overrated.
97+
I'll make a `#montevideo` channel or something.
98+
99+
## One Last Thing
100+
I want to thank JP, Nico, and the rest of [Qualabs](https://qualabs.com/) for being great hosts.
101+
102+
It's fantastic that they sponsor this event.
103+
It's fantastic that they pay their employees to contribute to open source projects for a few months.
104+
It's even more fantastic that they throw parties for video nerds.
105+
They literally invite you to visit their home.
106+
107+
I had a blast last year and (hopefully) I'll see you there this year.
108+
109+
Written by [@kixelated](https://github.com/kixelated).
110+
![@kixelated](/blog/avatar.png)
111+

β€Žsrc/pages/index.mdxβ€Ž

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ layout: "@/layouts/global.astro"
1010
a super-charged TCP/UDP replacement that powers [HTTP/3](https://en.wikipedia.org/wiki/HTTP/3).
1111
It's being developed by the [IETF](https://www.ietf.org/)\* and your _favorite_ big tech companies such as Google, Meta, Cisco, Akamai, Cloudflare, etc.
1212

13-
That's right, *soon* you will never have to deal with WebRTC again.
14-
Unless masochism is your thing.
13+
That's right, you no longer need to hack WebRTC!
14+
There's a new way to achieve **real-time latency** in the browser, including contribution and mass distribution via generic CDNs.
1515

1616
<p class="tagline">Try out the web demo! [Watch](/watch) or [Publish](/publish) a broadcast</p>
1717

@@ -21,7 +21,8 @@ Unless masochism is your thing.
2121
</a>
2222
<div>
2323
Want a better demo?
24-
<a href="https://hang.live" rel="noreferrer" target="_blank">hang.live</a> uses the same open-source libraries but adds more functionality on top.
24+
<a href="https://hang.live" rel="noreferrer" target="_blank">hang.live</a> uses the same open-source libraries.
25+
But with more features and cringe layered on top.
2526
</div>
2627
</div>
2728

@@ -30,12 +31,13 @@ Unless masochism is your thing.
3031

3132
- πŸ”“ **Open Source**: Production-ready [Rust and TypeScript libraries](/source).
3233
- 🌐 **100% Web**: Utilizes [WebTransport](https://developer.mozilla.org/en-US/docs/Web/API/WebTransport), [WebCodecs](https://developer.mozilla.org/en-US/docs/Web/API/WebCodecs_API), [WebAudio](https://developer.mozilla.org/en-US/docs/Web/API/WebAudio_API), WebEtc.
33-
- ⚑ **Real-time**: Minimal latency by skipping unimportant media during congestion.
34+
- ⚑ **Real-time**: Minimal latency by skipping less important media during congestion.
3435
- πŸš€ **Massive Scale**: Host your own CDN with [moq-relay](https://github.com/kixelated/moq/tree/main/rs/moq-relay) or use [Cloudflare](/blog/first-cdn).
35-
- 🎬 **Multi-Platform**: [Web](https://github.com/kixelated/moq/tree/main/js/hang), [FFmpeg](https://github.com/kixelated/moq/tree/main/rs/hang-cli), and [GStreamer](https://github.com/kixelated/hang-gst) clients available.
36-
- πŸ” **Discoverable**: Live notifications when broadcasts are published.
36+
- 🎬 **Multi-Platform**: [Web](https://github.com/kixelated/moq/tree/main/js/hang), [FFmpeg](https://github.com/kixelated/moq/tree/main/rs/hang-cli), [GStreamer](https://github.com/kixelated/hang-gst), and [native](/source) clients available.
37+
- πŸ” **Discoverable**: Live notifications when broadcasts are published or finish.
3738
- πŸ’ͺ **Efficient**: No encoding or bandwidth usage until a viewer needs it.
38-
- πŸ”§ **Compatible**: TCP fallback via [WebSocket](https://github.com/kixelated/web-transport/tree/main/web-transport-ws), Safari fallback via [libav.js](https://github.com/Yahweasel/libav.js/).
39+
- 🌍 **Compatible**: TCP fallback via [WebSocket](https://github.com/kixelated/web-transport/tree/main/web-transport-ws), Safari fallback via [libav.js](https://github.com/Yahweasel/libav.js/).
40+
- πŸ”§ **Customizable**: Hardware accelerated encoding, the rest is in your control.
3941

4042
### *Standards
4143
This website uses a [fork](/blog/transfork) of the IETF draft called [moq-lite](https://kixelated.github.io/moq-drafts/draft-lcurley-moq-lite.html) and a media layer called [hang](https://kixelated.github.io/moq-drafts/draft-lcurley-moq-hang.html).

0 commit comments

Comments
Β (0)