All this talk about Discord replacements plus my own experience attempting to host a Synapse has got me wondering why it seems so hard to implement voice chat.

Stupid idea: back in 2022 I got an Asterisk server working on a raspberry pi over AREDN without too much trouble. What’s stopping people from just using a PBX like that for voice chat?

  • frongt@lemmy.zip
    link
    fedilink
    English
    arrow-up
    84
    ·
    4 days ago

    Simple 1:1 audio stream is easy.

    Groups, screen sharing, noise canceling, NAT traversal, mobile apps, and all those extra features people have come to expect are hard.

    • lambalicious@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      21
      arrow-down
      1
      ·
      4 days ago

      Exactly!

      people act entitled as if all that you mention was trivial and that somehow FOSS devs “owe” people, but we only see those big corpos make it happen because… well, they’re big corpos, burning VC money on makint it happen and making it happen in a controlled jail.

    • matsdis@piefed.social
      link
      fedilink
      English
      arrow-up
      16
      ·
      edit-2
      4 days ago

      As for “why is it hard to self-host”, it is only NAT traversal.

      TURN, STUN, ICE, etc. are not fun to debug. Not sure if anyone still bothers fiddling with TOS/DSCP on their router. You can build a voice server that just exposes a TCP port, but… latency. And corporate firewalls love to randomly block some UDP port ranges but not others.

    • Creat@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 days ago

      The one point that has basically been solved is NAT traversal. Thanks to Wire guard, Tailscale and the like. The relevant parts are open source and can be used basically as a library.

    • Spice Hoarder@lemmy.zip
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      4 days ago

      Groups: just simple Chanels are fine, password lock them if you want.

      Screen sharing: one at a time should be fine. Self hoster can configure max bit rates.

      Mobile apps: building your app to be multiplatform is a lot easier than it was a decade ago.

  • Lumisal@lemmy.world
    link
    fedilink
    English
    arrow-up
    31
    arrow-down
    1
    ·
    4 days ago

    This has big XKCD Energy. It almost feels like an exact recreation of the comic but with tech:

    • early_riser@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      4 days ago

      I meant the OP more as a lament about it being hard rather than a quip about it being easy.

      Though upon reflection it’s not the voice chat that’s a problem, it’s the fact that Discord is a lot of things, a chatroom, a VOIP service, and so on, and recreating all those things on top bolting on federation (which I don’t see as a desirable feature in this case) is what makes it so hard.

  • moonpiedumplings@programming.dev
    link
    fedilink
    English
    arrow-up
    30
    ·
    edit-2
    4 days ago

    It’s easy. Mumble. Or the thing you used probably still works.

    But you see, people never actually seek a discord alternative. They want a discord alternative that includes all the features in one app that is also federated, AND end to end encrypted, and each one makes things vastly more technically challenging and resource intensive and then you want them together.

    A little secret: Matrix is much, much easier to host if you disable encryption and federation. Federation to many servers is the main performance killer, and “failed to decrypt message” will all disappear if you disable encryption.

  • early_riser@lemmy.worldOP
    link
    fedilink
    English
    arrow-up
    12
    ·
    4 days ago

    Update: I got Mumble working without a lot of grief. Their mobile client isn’t great though. I might try Stoat.

    Federation just complicates things, as it’s just for a myself and a few friends.

    • Rednax@lemmy.world
      link
      fedilink
      English
      arrow-up
      6
      ·
      4 days ago

      I remember using mumble in a time when smartphones weren’t even a thing yet. Love to see the open source tool outlive everything else!

    • Holytimes@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      3 days ago

      Look at fluxer it’s stoat developed by someone who isn’t retarded. Has done more in a fraction of the time and actually has functional features

  • falynns@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    4 days ago

    I have a Jitsi server hosted through a docker container that was pretty easy, and ties into Rocket Chat. Jitsi does voice and video, Rocket Chat does chat.

  • brucethemoose@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    ·
    4 days ago

    It’s not! Use SonoBus; it’s dead simple, and superior to Discord. It’s far lower latency, with customizable filters, peer-to-peer; and totally free.

    Now if you want emojis and video and rambling channels and stuff, you will have to go elsewhere.

  • Hazematman@lemmy.ca
    link
    fedilink
    English
    arrow-up
    2
    ·
    3 days ago

    Not a good discord replacement but setting up nextcloud talk (simple p2p voice chat) and then the high performance backend (better supports video/voice calls between 3+ people) was relatively easy. We use it among my family now to have group calls instead of relying on facebook messenger.

  • Ledivin@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    ·
    4 days ago

    It’s not, but the people who are asking are often not tech-savvy, and any amount of self-hosting will be hard for them

  • BlameThePeacock@lemmy.ca
    link
    fedilink
    English
    arrow-up
    4
    ·
    4 days ago

    Nothing is stopping it, it’s just not particularly convenient because it’s designed around the limitations of the phone system.

    SIP could handle it all if you wanted though.

  • hperrin@lemmy.ca
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    4 days ago

    VDO Ninja is really nice. My friend self hosts it, and it didn’t seem that hard.

  • aliceblossom@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    edit-2
    4 days ago

    Since no one has mentioned it yet -

    If you haven’t tried setting Synapse up with the ansible playbook you should. It’s almost push-button and has 1:1 voice calls by default. Setting up group voice from there is a bit challenging, but the playbook has a section for it as well if you’re willing to try.

    Edit: cookbook - > playbook

    • early_riser@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 days ago

      I haven’t messed with Ansible in a bit. Do you mean playbook? Or is cookbook some other concept I haven’t learned about yet?