Galène videoconferencing server discussion list archives
 help / color / mirror / Atom feed
From: Juliusz Chroboczek <jch@irif.fr>
To: galene@lists.galene.org
Subject: [Galene] Some minor protocol changes
Date: Tue, 13 Aug 2024 13:28:10 +0200	[thread overview]
Message-ID: <87v804d5md.wl-jch@irif.fr> (raw)

Hi,

I'm making some minor tweaks to the Galene protocol.  The new features are
on the branch "protocol-tweaks", which I'm planning to merge when I've
cleaned them up and checked them carefully.  The plan is to *not* bump the
major version of the protocol, since the changes are, to a great extent,
backwards compatible.

At this stage, I'm very much open to changes.


Already done:

1. Simplified peer-to-peer transfer.  This is an incompatible change, but
   it's fairly harmless, it's just file transfer that will fail if you use
   an old client.

2. Added an "id" field to chat messages.  The (source-id, id) pair should
   in principle be globally unique, but this is not enforced.  This is
   a backwards compatible change.

3. Added parameters "userId" and "id" to the clearchat groupaction and the
   clearchat usermessage.  This allows removing a single message from the
   chat (when userId≠null and id≠null) and removing all messages from
   a given user (when userId≠null and id=null).  This is not strictly
   backwards compatible, but the failure mode is fairly harmless, an old
   client will clear the whole chat whenever it is asked to clear a single
   message.

4. Added commands "Remove this message" and "remove all messages from this
   user" to the context menu on chat messages.  (Did you know there's
   a context menu for ops on chat messages?  It's bound to double-click,
   in order to avoid interfering with copy-paste.  Help from a competent
   UI person gratefully accepted.)


Not done yet:

5. Add captions support.  I'm hesitating between a new kind of message,
   and making it a new "kind" of chat message.  The former breaks
   compatibility with existing clients, the latter is less elegant, since
   it means we'd need to special-case some kinds of chat messages
   (captions should not be stored in the chat history, and they require an
   explicit permission, you don't want random users to be able to
   interfere with closed captions).  This is in support of

     https://github.com/jech/galene-stt

   After some experimentation, I've settled for a global caption at the
   bottom of the Galene window instead of captions in individual windows.
   I don't have a good sulution for full-screen and pip videos yet, I'm
   considering using the WebVTT APIs in that case.


Where you can help if you're bored:

1. If you have a GPU with support for CUDA, work out how to compile
   galene-stt for the GPU and add the instructions to the README file in
   galene-stt.  This is required to make galene-stt useful, since on the
   CPU it's pretty much limited to the "base" model, which is not very
   useful.  (The implementation of whisper that I'm using does not
   currently scale beyond 4 CPU cores.)

2. If you have an ARM-based Mac, same as above, but replace CUDA with
   Core ML.

3. Improve the context menus.  I think that having a menu icon that
   appears upon hover would be the nice thing to do.


— Juliusz

                 reply	other threads:[~2024-08-13 11:28 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.galene.org/postorius/lists/galene.lists.galene.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87v804d5md.wl-jch@irif.fr \
    --to=jch@irif.fr \
    --cc=galene@lists.galene.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox