Galène videoconferencing server discussion list archives
 help / color / mirror / Atom feed
* [Galene] Examples for one to many distribution?
@ 2024-11-16 12:09 Stefan Bethke
  2024-11-16 14:39 ` [Galene] " Juliusz Chroboczek
  0 siblings, 1 reply; 8+ messages in thread
From: Stefan Bethke @ 2024-11-16 12:09 UTC (permalink / raw)
  To: galene

Hi, new user and subscriber here,

I'm trying to create a setup where I feed audio into an SFU, and people can connect to the SFU and listen to the audio. Obviously, Galène can do that, but I would like to:
* have a minimal user interface, where users simply choose the group they would like to listen to
* only have audio playing, no video
* disable all other features like chat

I've tried to find information in the documentation, but I didn't immediately see (for example) which permissions exist and if they would allow me to configure a group like that. Are there examples that I could base a custom frontend on, apart from the minimal client?

I'm happy to customize Go and JS/TS code, or even write something from scratch, but I would be really happy to customize something existing.


Regards,
Stefan

-- 
Stefan Bethke <stb@lassitu.de>   Fon +49 175 3288861


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Galene] Re: Examples for one to many distribution?
  2024-11-16 12:09 [Galene] Examples for one to many distribution? Stefan Bethke
@ 2024-11-16 14:39 ` Juliusz Chroboczek
  2024-11-16 14:45   ` Stefan Bethke
  0 siblings, 1 reply; 8+ messages in thread
From: Juliusz Chroboczek @ 2024-11-16 14:39 UTC (permalink / raw)
  To: Stefan Bethke; +Cc: galene

Hello Stefan,

> I'm trying to create a setup where I feed audio into an SFU, and people
> can connect to the SFU and listen to the audio.

Where does the audio come from?

> * have a minimal user interface, where users simply choose the group they would like to listen to
> * only have audio playing, no video
> * disable all other features like chat

I think the current client can do that

  1. set the "public" flag on your groups to true, this will cause the
     groups to appear on the landing page;

  2. only send audio to the group, this way no video will be played;

  3. give your users the "observe" permission, so they cannot open new
     streams or add messages to the chat:

    "users": {
        "bob": {
            "password": ...,
            "permissions": "observe",
        }
    }

> Are there examples that I could base a custom frontend on, apart from
> the minimal client?

The minimal client should be a good starting point, at least that's what
I wrote it for.  Please let me know if there's anything that's not clear.

> I'm happy to customize Go and JS/TS code, or even write something from
> scratch, but I would be really happy to customize something existing.

I suggest you start with the full client configured as above, and then
we can think together about what further changes are required.

Regards,

-- Juliusz

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Galene] Re: Examples for one to many distribution?
  2024-11-16 14:39 ` [Galene] " Juliusz Chroboczek
@ 2024-11-16 14:45   ` Stefan Bethke
  2024-11-16 16:07     ` Juliusz Chroboczek
  0 siblings, 1 reply; 8+ messages in thread
From: Stefan Bethke @ 2024-11-16 14:45 UTC (permalink / raw)
  To: Juliusz Chroboczek; +Cc: galene


> On 16. Nov 2024, at 15:39, Juliusz Chroboczek <jch@irif.fr> wrote:
> 
> Hello Stefan,
> 
>> I'm trying to create a setup where I feed audio into an SFU, and people
>> can connect to the SFU and listen to the audio.
> 
> Where does the audio come from?

I'm building a custom pion client to send audio from a multi-channel USB audio interface.

>> * have a minimal user interface, where users simply choose the group they would like to listen to
>> * only have audio playing, no video
>> * disable all other features like chat
> 
> I think the current client can do that
> 
>  1. set the "public" flag on your groups to true, this will cause the
>     groups to appear on the landing page;
> 
>  2. only send audio to the group, this way no video will be played;
> 
>  3. give your users the "observe" permission, so they cannot open new
>     streams or add messages to the chat:
> 
>    "users": {
>        "bob": {
>            "password": ...,
>            "permissions": "observe",
>        }
>    }

Excellent, I will give that a try and will report back.

> 
>> Are there examples that I could base a custom frontend on, apart from
>> the minimal client?
> 
> The minimal client should be a good starting point, at least that's what
> I wrote it for.  Please let me know if there's anything that's not clear.
> 
>> I'm happy to customize Go and JS/TS code, or even write something from
>> scratch, but I would be really happy to customize something existing.
> 
> I suggest you start with the full client configured as above, and then
> we can think together about what further changes are required.

Will do!


Regards,
Stefan

-- 
Stefan Bethke <stb@lassitu.de>   Fon +49 175 3288861


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Galene] Re: Examples for one to many distribution?
  2024-11-16 14:45   ` Stefan Bethke
@ 2024-11-16 16:07     ` Juliusz Chroboczek
  2024-11-16 16:46       ` Tim Panton
  0 siblings, 1 reply; 8+ messages in thread
From: Juliusz Chroboczek @ 2024-11-16 16:07 UTC (permalink / raw)
  To: Stefan Bethke; +Cc: galene

>> Where does the audio come from?

> I'm building a custom pion client to send audio from a multi-channel USB
> audio interface.

I see.  You may either use WHIP for pushing the audio into Galene, or else
crib the code in galene-stt to use the native protocol.

Please report back with your results.

-- Juliusz

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Galene] Re: Examples for one to many distribution?
  2024-11-16 16:07     ` Juliusz Chroboczek
@ 2024-11-16 16:46       ` Tim Panton
  2024-11-24 22:32         ` Stefan Bethke
  0 siblings, 1 reply; 8+ messages in thread
From: Tim Panton @ 2024-11-16 16:46 UTC (permalink / raw)
  To: Stefan Bethke; +Cc: galene

If you want a quick hack to test WHIP out  there’s a WHIP simple source here:

https://github.com/pipe/whipi/

It says it is for the raspberry pi - but the pi specific stuff is only the video encoder, the audio should work on any linux/unix.

If you remove 
https://github.com/pipe/whipi/blob/a0c30db9b0ff8b10a85f7f3a49854b2312ec6ae1/src/main/java/pe/pi/whipi/Whipi.java#L80

It should just send audio from the default alsa device. 

T.


> On 16 Nov 2024, at 17:07, Juliusz Chroboczek <jch@irif.fr> wrote:
> 
>>> Where does the audio come from?
> 
>> I'm building a custom pion client to send audio from a multi-channel USB
>> audio interface.
> 
> I see.  You may either use WHIP for pushing the audio into Galene, or else
> crib the code in galene-stt to use the native protocol.
> 
> Please report back with your results.
> 
> -- Juliusz
> _______________________________________________
> Galene mailing list -- galene@lists.galene.org
> To unsubscribe send an email to galene-leave@lists.galene.org


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Galene] Re: Examples for one to many distribution?
  2024-11-16 16:46       ` Tim Panton
@ 2024-11-24 22:32         ` Stefan Bethke
  2024-12-17 16:14           ` Stefan Bethke
  0 siblings, 1 reply; 8+ messages in thread
From: Stefan Bethke @ 2024-11-24 22:32 UTC (permalink / raw)
  To: galene

Quick update: I have a test setup running, with my custom pion code sending live audio to Galène. A friend will take a look at customizing the frontend so people can start playing audio from a group with a single tap/click.

I'll post a link to the code shortly.

> On 16. Nov 2024, at 17:46, Tim Panton <tim@pi.pe> wrote:
> 
> If you want a quick hack to test WHIP out  there’s a WHIP simple source here:
> 
> https://github.com/pipe/whipi/
> 
> It says it is for the raspberry pi - but the pi specific stuff is only the video encoder, the audio should work on any linux/unix.
> 
> If you remove 
> https://github.com/pipe/whipi/blob/a0c30db9b0ff8b10a85f7f3a49854b2312ec6ae1/src/main/java/pe/pi/whipi/Whipi.java#L80
> 
> It should just send audio from the default alsa device. 
> 
> T.
> 
> 
>> On 16 Nov 2024, at 17:07, Juliusz Chroboczek <jch@irif.fr> wrote:
>> 
>>>> Where does the audio come from?
>> 
>>> I'm building a custom pion client to send audio from a multi-channel USB
>>> audio interface.
>> 
>> I see.  You may either use WHIP for pushing the audio into Galene, or else
>> crib the code in galene-stt to use the native protocol.
>> 
>> Please report back with your results.
>> 
>> -- Juliusz
>> _______________________________________________
>> Galene mailing list -- galene@lists.galene.org
>> To unsubscribe send an email to galene-leave@lists.galene.org
> 
> _______________________________________________
> Galene mailing list -- galene@lists.galene.org
> To unsubscribe send an email to galene-leave@lists.galene.org

-- 
Stefan Bethke <stb@lassitu.de>   Fon +49 175 3288861


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Galene] Re: Examples for one to many distribution?
  2024-11-24 22:32         ` Stefan Bethke
@ 2024-12-17 16:14           ` Stefan Bethke
  2024-12-17 18:33             ` Juliusz Chroboczek
  0 siblings, 1 reply; 8+ messages in thread
From: Stefan Bethke @ 2024-12-17 16:14 UTC (permalink / raw)
  To: galene

We have the basic infrastructure up and running, and are fiddling with the custom front-end.

The question has come up if we can monitor Galène, for example with a Prometheus exporter that would show us which groups have how many participants, and maybe even some media statistics?


Stefan

> On 24. Nov 2024, at 23:32, Stefan Bethke <stb@lassitu.de> wrote:
> 
> Quick update: I have a test setup running, with my custom pion code sending live audio to Galène. A friend will take a look at customizing the frontend so people can start playing audio from a group with a single tap/click.
> 
> I'll post a link to the code shortly.
> 
>> On 16. Nov 2024, at 17:46, Tim Panton <tim@pi.pe> wrote:
>> 
>> If you want a quick hack to test WHIP out  there’s a WHIP simple source here:
>> 
>> https://github.com/pipe/whipi/
>> 
>> It says it is for the raspberry pi - but the pi specific stuff is only the video encoder, the audio should work on any linux/unix.
>> 
>> If you remove 
>> https://github.com/pipe/whipi/blob/a0c30db9b0ff8b10a85f7f3a49854b2312ec6ae1/src/main/java/pe/pi/whipi/Whipi.java#L80
>> 
>> It should just send audio from the default alsa device. 
>> 
>> T.
>> 
>> 
>>> On 16 Nov 2024, at 17:07, Juliusz Chroboczek <jch@irif.fr> wrote:
>>> 
>>>>> Where does the audio come from?
>>> 
>>>> I'm building a custom pion client to send audio from a multi-channel USB
>>>> audio interface.
>>> 
>>> I see.  You may either use WHIP for pushing the audio into Galene, or else
>>> crib the code in galene-stt to use the native protocol.
>>> 
>>> Please report back with your results.
>>> 
>>> -- Juliusz
>>> _______________________________________________
>>> Galene mailing list -- galene@lists.galene.org
>>> To unsubscribe send an email to galene-leave@lists.galene.org
>> 
>> _______________________________________________
>> Galene mailing list -- galene@lists.galene.org
>> To unsubscribe send an email to galene-leave@lists.galene.org
> 
> -- 
> Stefan Bethke <stb@lassitu.de>   Fon +49 175 3288861
> 
> _______________________________________________
> Galene mailing list -- galene@lists.galene.org
> To unsubscribe send an email to galene-leave@lists.galene.org

-- 
Stefan Bethke <stb@lassitu.de>   Fon +49 175 3288861


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Galene] Re: Examples for one to many distribution?
  2024-12-17 16:14           ` Stefan Bethke
@ 2024-12-17 18:33             ` Juliusz Chroboczek
  0 siblings, 0 replies; 8+ messages in thread
From: Juliusz Chroboczek @ 2024-12-17 18:33 UTC (permalink / raw)
  To: Stefan Bethke; +Cc: galene

> We have the basic infrastructure up and running, and are fiddling with
> the custom front-end.

Cool.

> The question has come up if we can monitor Galène, for example with
> a Prometheus exporter that would show us which groups have how many
> participants, and maybe even some media statistics?

You can get exactly this data by sending a GET request to

    /galene-api/v0/.stats

See the file static/stats.js for an example.

-- Juliusz


  

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2024-12-17 18:33 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-11-16 12:09 [Galene] Examples for one to many distribution? Stefan Bethke
2024-11-16 14:39 ` [Galene] " Juliusz Chroboczek
2024-11-16 14:45   ` Stefan Bethke
2024-11-16 16:07     ` Juliusz Chroboczek
2024-11-16 16:46       ` Tim Panton
2024-11-24 22:32         ` Stefan Bethke
2024-12-17 16:14           ` Stefan Bethke
2024-12-17 18:33             ` Juliusz Chroboczek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox