[HN Gopher] Jam - Self-Hosted Clubhouse
___________________________________________________________________
Jam - Self-Hosted Clubhouse
Author : synergy20
Score : 205 points
Date : 2021-12-09 04:41 UTC (18 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| boredumb wrote:
| No host and guest speaker functionality and a bit unpolished, but
| free p2p chat/screenshare/video chat in the browser
| https://teamvideo.app/
| dxbydt wrote:
| i gave this a shot. you have some kind of weird bug, if you
| click share and try to share teamvideo you get this infinity
| hall of mirrors - https://imgur.com/a/ymujedG
| orlovs wrote:
| Is Clubhouse still a thing?
| [deleted]
| progx wrote:
| I was wondering too. Since the little hype no one talk about
| it.
| tosh wrote:
| Wow, I just woke up to this. Glad to see Jam here on hn. We've
| come a long way since the initial release earlier this year (Show
| HN: https://news.ycombinator.com/item?id=26131123).
|
| Most of our efforts since february went into making the rooms
| more reliable which sounds simple but there are actually
| countless of different reasons for why audio might not work or
| not work as well as it could (switching from wifi to mobile data,
| microphone permissions, bandwidth problems, OS forces app into
| background, ...) some are solvable others at least need to be
| documented and tracked.
|
| What else is new other than reliability?:
|
| # Support for large rooms (think: thousands of people in the
| audience) using an SFU
|
| Initially Jam only had support for p2p rooms which is great for
| small rooms (up to like ~20 people depending on upstream
| bandwidth of the speakers) but for online conferences, meetups
| and so on you often need rooms that support 100s or 1000s of
| participants so we added an SFU where the speakers still send
| audio to each other p2p to keep conversations low-latency but we
| use a server to stream audio to all users that are in the
| audience.
|
| (That said: you can still run Jam p2p-only if you prefer that)
|
| # Locally recorded multi-track audio (think: podcasts with
| multiple guests, where you get one high quality audio track per
| speaker)
|
| You can try multi-track audio recordings on our public beta
| server (https://beta.jam.systems). Tap on our own user and then
| "Start Podcast Recording". When you tap on your own user again
| and then "Stop Podcast Recording" the browser will prompt you
| with downloads for all audio tracks (we will make this more
| smooth going forward).
|
| # Custom UI
|
| For everyone who wants to add audio rooms to their own app but
| needs full control over the look and feel we have added an API
| and JavaScript library (and NPM package) so you can "build your
| own" ui for Jam. This basically means that Jam is running
| "headless" as an audio room server and makes sure audio works
| while you can build exactly the ui that you want.
|
| E.g. let's say you have an app like Google Docs and you want to
| allow people to talk about a document. In this case you might
| want something that doesn't look like a room on Clubhouse or
| Twitter Spaces but rather like a line of avatars and with the API
| and library you can build this yourself now:
|
| https://www.npmjs.com/package/jam-core
|
| https://gitlab.com/jam-systems/jam/-/tree/master/ui/examples
|
| # Managed hosting
|
| For everyone who wants to use Jam but doesn't want to install and
| maintain Jam themselves we are run and support Jam for you
| (think: what Wordpress.com is to Wordpress.org):
|
| https://jamshelf.com
| aSig wrote:
| This is interesting, thanks for sharing.
|
| How do you stream the audio to the people in the audience? Are
| you still using WebRTC or do you add some latency and use
| something like HLS? If WebRTC do you know the number of maximum
| listeners you can get to on the SFU?
| tosh wrote:
| We were able to serve 500-1000 participants from a mid-sized
| VPS a few weeks ago and were CPU constrained iirc so a
| beefier server should go further than that.
| fancy_pantser wrote:
| There's no mention of privacy I can find; should you mention
| anything in the README about encryption? In particular with an
| SFU.
| johnchristopher wrote:
| Ahaaa ! I see you setup your docker compose with traefik for the
| reverse proxy, with automatic http-to-https ! Really cool to see
| a docker-compose file almost ready-to-deploy without passing the
| buck of configuring the reverse proxy to users :).
| hda111 wrote:
| This is the feature that docker-compose lacks but is needed the
| most. There should be something like traefik-compose or caddy-
| compose with simple YAML config. I forget how the traefik
| labels work all the time.
| rexreed wrote:
| I'm still new to Clubhouse and trying to understand the appeal.
| Is Clubhouse basically like the old radio call-in talk radio
| (live talk radio shows) where you basically can have your
| audience "call in" and join the hosts? Is it anything more than
| live podcasting with an audience that can also be made to be
| guests and you get their reactions? Am I missing something? Or is
| Clubhouse more of a free-for-all group voice chat with no real
| leader, like just getting onto a Discord channel and talking?
| Clue me in!
| halfeatenpie wrote:
| I'm still new to Clubhouse as well but my understanding of the
| ecosystem is that it's a lot more interactive than just a "live
| podcast" as there's ability for more audience engagement,
| community interviews, and basically a two-way interaction space
| where the audience can participate in the "live event". It's
| basically a discord channel but with more structure on who has
| the floor and moderation tools.
|
| I think it's definitely an interesting approach to community
| creation and engaging with your audience. What I'm still trying
| to learn and understand is where it's going, as I don't think I
| use it enough yet to fully see the "road to monetization,
| profitability, and sustainability" of the platform. I kind of
| wish room discovery was a bit easier beyond the network-based
| approach that they're using, but I'm just being nitpicky now.
| rexreed wrote:
| Any pointers to some good overviews on well-run Clubhouse
| groups and the sort of interaction that happens? Any recorded
| sessions that might be somehow viewed to see how the
| interaction happened during that session?
| ggambetta wrote:
| Clubhouse is _so_ earlier 2021
| pxeger1 wrote:
| What's with the emoji vomit in the README?
| user-the-name wrote:
| It's 2021, and people use and like emoji, and you probably need
| to find a way to accept this.
| GoatHerders2 wrote:
| Calm down.
| goodpoint wrote:
| How about using them in reasonable amounts? They mostly only
| add visual clutter without conveying any meaningful
| information.
| tosh wrote:
| Point taken, I'll look into whether we can tone down the
| feature comparison table to make it easier to read.
| majkinetor wrote:
| It looks like there was a party last night and every emoji in
| existence was invited.
| eloeffler wrote:
| I see no mention of federation capabilities in the readme. Is
| something like that planned? It would be nice to have the
| possibility to join across hosted instances.
| rapnie wrote:
| Pity there's no issue tracker on the repo. I am not on Discord
| or Slack but maybe it was discussed there, and maybe that can
| still be found.
| tosh wrote:
| The main repo is over at Gitlab: https://gitlab.com/jam-
| systems/jam/ which also has the issue tracker (we could do a
| better job keeping that up to date though tbh).
| rapnie wrote:
| Thanks. Completely missed that.
| tosh wrote:
| We're interested in federation and discussed it a couple of
| times but we don't fully support it yet. Happy to learn more
| about what you have in mind.
| xtf wrote:
| Needs websitecode to be public, if this AGPL-Programm is shown in
| an I-Frame?
| ushakov wrote:
| is this p2p?
| tosh wrote:
| You can run Jam in p2p mode where all users in a room are
| connected to each other. That's great for scenarios where you
| have lots of small rooms and also great if you want to save
| cost.
|
| If you want to support large rooms with hundreds or thousands
| of participants well be aware that p2p might run into issues if
| speakers are bandwidth constrained (since every speaker has to
| send their audio to every other participant). That's why we've
| added a mode where the speakers are p2p (low latency) and also
| send their audio to the server which then sends it to the
| audience members (SFU).
|
| Edit: out of the box you get p2p for speakers and SFU for
| audience members, you can configure Jam to not use the SFU
| ushakov wrote:
| that's a neat solution!
| timar wrote:
| neat, you can join instantly for discussions no fuss with
| registrations and with no video possible it there's no awkward
| cams on/cams off dynamic.
| imgabe wrote:
| I hate to be this guy, but why is this better than using
| teamspeak, ventrilo, discord, or any of the other group voice
| chat programs?
| DarylZero wrote:
| You can't self-host them. They're not even options. It's like
| saying "why is your car better than Amtrak." Maybe it's not
| better -- it's certainly worth less money -- but you're not
| shopping for a railroad. The only way to self-host Discord is
| to buy the entire company, valued $15B.
| proxysna wrote:
| IIRC you can self-host Teamspeak and Ventrillo.
| DarylZero wrote:
| You can, so they're more similar to Jam as far as software.
| On the licensing, not so much. Teamspeak requires a
| recurring payment.
| imgabe wrote:
| I have definitely done so with both of them, but it was
| quite a while ago, not sure if that has changed.
| [deleted]
| goodpoint wrote:
| You cannot self-host those.
|
| Instead, how is it better than Jitsi and Mumble, given that
| they are already well tested and widespread?
| tosh wrote:
| In the beginning we actually were looking at whether we can
| use Jitsi for the audio part of Jam and just focus on the ui
| but Jitsi is huge and difficult to get into so we (arguably)
| naively started from scratch and then had to solve many
| problems that Jitsi probably already solves (?).
|
| That said: if you are looking for something that has room
| concepts close to Clubhouse or Twitter Spaces (you see who is
| in the room, who is speaking, you can move people between
| audience and stage and so on) and an easy way to add those
| rooms to existing (web) or mobile apps then Jam is great out
| of the box. If you are looking for screen sharing or video
| then Jitsi is a better starting point right now I think.
|
| Mumble I am not very familiar with but it looks interesting.
| As far as I understand it is not web based but like Jam it
| also is p2p and uses opus for audio (low latency, high
| quality)? Perhaps someone who knows Mumble can do a
| comparison.
| im_dario wrote:
| Mumble isn't exactly P2P. It has a server (murmurd) that
| handles all the streams. I think it could work as SFU. And,
| actually, there is a web frontend:
| https://github.com/Johni0702/mumble-web
|
| Your use of Opus and the option to run a SFU makes this a
| suitable replacement of Mumble for meetings, like in the
| Pirate Parties around the world. We are heavy users of
| Mumble.
| tosh wrote:
| For users: Jam works in the browser without having to install
| anything (Discord does too though) and without having to create
| an account. You just need the URL of a room and you can join.
|
| Jam is open source so you can look at the code but also make
| changes if you want to (e.g. if you prefer different reaction
| emoji). While not trivial it definitely is a great option to
| have imho.
|
| Last but not least we designed Jam in a way that works well
| stand-alone but also makes it easy to integrate in existing web
| and mobile apps. For example there are people who run
| forums/communities or saas b2b apps (e.g. productivity tools)
| who want to add audio rooms as a feature and with Jam they can
| just grab the code and add rooms using an iframe (or use the
| JavaScript library for more advanced integrations). Not sure if
| that's possible with teamspeak, ventrilo or discord?
|
| Jam is p2p WebRTC w/ low-latency and high-quality audio (opus)
| so it _should_ work well for competitive gaming. If you are
| looking for an audio chat tool designed for gaming the existing
| solutions you mentioned might be a better fit but happy to
| learn more about how we could make Jam better there as well.
| dsr_ wrote:
| What do I do if a troll joins the room and starts playing
| Rick Astley non-stop?
| tosh wrote:
| You join in the audience (others only can hear you if you
| are on stage), moderators can move trolls back to the
| audience. Simple but works quite well.
| gnomewascool wrote:
| Unlike all the software you listed, it's open source and can be
| self-hosted in a way that you can be relatively confident that
| you're running what you intended to run?
| billconan wrote:
| I kind want a asynchronized audio social network. like a forum
| where content can persist.
| loceng wrote:
| Can you explain a little more? Do you mean like a threaded
| audio stream, so anyone at a future point can reply to a
| specific recording/response by someone? E.g. Interjecting your
| own thought, that could notify the OP that the reply was made,
| etc?
| qvq wrote:
| I wonder if sub-groups would be a good feature. Sort of like
| "tables" you could join to speak to others at the table. You
| would still be able to hear the speakers on stage but users at
| tables can only speak to each other.
| tosh wrote:
| Great idea, we do not have support for sub-groups yet but I can
| see how this could be very useful for meetups and other
| formats. We'll think about it!
| michihuber wrote:
| Nice, knew about Jam before, but just learned about jam-core.
| Will integrate into our app, thanks for sharing.
| rvz wrote:
| Now that one can roll their own 'Clubhouse' alternative for free
| using Jam, how is the original Clubhouse remotely worthy of being
| valued at $4B with users running to the competitors like Twitter
| Spaces, Discord Stage Channels, etc and no route to making money?
|
| Perhaps Clubhouse is on a similar road like Genius; a devalued
| exit. All because this concept has been copied to death, users
| still running to alternatives and now reduced to an open-source
| contraption on GitHub for everyone to self-host themselves.
|
| Quite unsurprising.
| spoonjim wrote:
| Clubhouse's free fall has nothing to do with open source
| alternatives. Social apps are powered by the user base, not the
| technology.
| jamil7 wrote:
| Yep. Despite the initial few interesting talks it's now just
| self promoters and NFT cultists.
| LudwigNagasena wrote:
| So they should do an ICO exit
| [deleted]
| rvz wrote:
| True. That explains why tons of users are still using Twitter
| Spaces, Discord Stage Channels and the rest of the
| competition and Clubhouse is still struggling even after
| opening the invites late; as predicted. [0]
|
| I consider Jam, the second last nail in the coffin for
| Clubhouse.
|
| [0] https://news.ycombinator.com/item?id=27490149
| usrusr wrote:
| Unsurprising indeed. You can't fly that high on technological
| merits, at least as long as it's just some web software thing
| and not something as extraordinary as reusable space rockets.
| It's all about brand on that level. And sure, a brand as fresh
| as Clubhouse can drop to irrelevancy in weeks because everybody
| who is already connected to the brand is, by definition, an
| early adopter. And early adopters are the quickest to jump ship
| when something new and shiny appears elsewhere.
| Nextgrid wrote:
| To be fair, none of these competitors are making money either.
| It's hard to make money from "growth and engagement" in a world
| already saturated with advertising.
| tosh wrote:
| Jam is to Clubhouse (and Twitter Spaces) a bit like what
| Magento is to Amazon.
|
| I'm quite optimistic when it comes to Clubhouse. Discovery is
| definitely a challenge but I think with replays (room
| recordings) and mixing those into the feed next to live rooms
| they are on the right track.
___________________________________________________________________
(page generated 2021-12-09 23:02 UTC)