Jamulus: A genre-based central server scheme

Created on 25 Apr 2020  Â·  31Comments  Â·  Source: corrados/jamulus

We still hit the 200 server limit happening pretty regularly. I suspect it's because people don't understanding (or care much) about the reason why they should register or connect to a particular Central Server. They just want to start jamming.

We could instead align the "200 limit" problem with musicians' desire to jam by having a split based on musical style/genre instead.

This would mean some relatively minor changes to the UI and labelling, which I can explore, but what do you think?

See also #140

development in progress feature request

Most helpful comment

The North America server list still has a lot of slots free. I can see a lot of United States servers listed in the Default Central Server. So maybe it takes some time so that the servers are registered in the correct list. That would make space for other servers.
E.g. an Asia or other Central Server lists can be created. But since North America is still not full, I'll wait for there to be created.

All 31 comments

Having genre-based rooms is a super cool idea.

However I fear that binding this to servers is too strict. Imagine only two styles : rock/jazz, 100 server for each. 199 bands wants to play rock and 1 want to play jazz. I would prefer that someone entering a room declare this room for jazz and that the room becomes unlabeled once everybody goes out (to avoid labeling "jazz" eternaly). This is more "dynamic".

I presume people tend to choose server based on latency mainly.

The proposal is designed to overcome the 200 server limit by aligning it with musicians' desire to play with like-minded people, not to address the issue of genre-based rooms, which could be done in a number of ways.

I presume people tend to choose server based on latency mainly.

Indeed, and this proposal wouldn't change that assuming a Jazz musician wouldn't want their server listed along with Heavy Metal ones :-) And the more genres we make available, the smaller the 200 limit problem becomes.

To be able to jam with Jamulus, the ping time must be small. It does not make sense to search for Jazz servers, e.g., in the US if I am in Europe. The Central Servers have to be location based, otherwise it does not make sense to split them.
If a user in the US starts Jamulus for the first time, North America Central Server is automatically selected by the location set in his operating system.

The Central Servers have to be location based, otherwise it does not make sense to split them.

@corrados If I understand correctly, the split is designed to multiply the number of available registration slots to overcome the 200 limit. And as @pljones has pointed out, physical distance isn't a very strong determinant of latency, but even if it was, how would moving to a genre-based splitting scheme change that? If I am a Jazz musician in Spain and find I can play OK on a US server, I should be able to do so, no?

Unfortunately, the central servers are co-located so can't, themselves, determine ping times - Europe, Asia/Pac and Americas are the "normal" splits, due to where the long trunk routes still tend to cause most latency. But the more splits, the harder the management...

It's quite interesting that there are many servers in the US with a lower ping than a lot in Western Europe, near where I am in the UK - but that probably means no matter how close you are - network or physical - to those servers, they'll have a high ping.

If I am a Jazz musician in Spain and find I can play OK on a US server, I should be able to do so, no?

No, actually. From Spain to the US you have a minimum ping time of over 100 ms. Jamulus does not make sense. You should use Ninjam or other tools not relying on real-time performance if you want to jam with others on different continents.

Relates to discussion https://github.com/corrados/jamulus/issues/50 (Problem with Central Server listing limit of 200 servers)

the central servers are co-located so can't, themselves, determine ping times

@pljones OK, but I'm not sure how that's relevant to what I'm proposing.

From Spain to the US you have a minimum ping time of over 100 ms. Jamulus does not make sense.

@corrados OK so that was a bad example :-) Regardless, I see US musicians on European servers quite a lot.

But anyway... This proposal is, as @vocobox notes, about the 200 server limit. Assuming we still think that's an issue, this proposal seeks to use musicians' desire to play within genres in a way that helps solve that problem. Maybe :-)

I'm not sure if you are saying it's technically impossible, or that there's some other issue with it though.

The North America server list still has a lot of slots free. I can see a lot of United States servers listed in the Default Central Server. So maybe it takes some time so that the servers are registered in the correct list. That would make space for other servers.
E.g. an Asia or other Central Server lists can be created. But since North America is still not full, I'll wait for there to be created.

@gilgongo what are we doing with this issue now? I don't think that a genre-based central server scheme is a good idea since the central server should created based on, e.g., continents. It is better to have servers listed in the server list which have a name of a specific genre, e.g. create a server with the name "Rock music only" or similar. What do you think?

I think there may be some misunderstanding about the purpose of this ticket :-) It's about using musicians' desire to play in genres to help solve the "200 server limit" problem (that is, migrating from one Central Server to another).

However, I take it we don't think the server limit problem is significant enough, since we expect US servers to eventually migrate.

So I'm OK closing it, but I'd prefer to resolve it in way that allows me to understand why the proposal wouldn't work.

I think the main need is for a bit more metadata to be available about each server. Having just a short server name isn't enough for someone to decide whether it's appropriate or desirable to join the server.

Maybe add fields for genre, license, and a freeform description of the purpose of the server...?

@elliotclee Perhaps, but that would be the subject of a separate ticket and has nothing to do with this one, I'm afraid.

People want to find other people to jam with that play the same kind of
music. Same basic problem, different solution.

On Sun, Apr 26, 2020, 14:37 Jonathan notifications@github.com wrote:

@elliotclee https://github.com/elliotclee Perhaps, but that would be
the subject of a separate ticket and has nothing to do with this one, I'm
afraid.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/corrados/jamulus/issues/139#issuecomment-619602679,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJNWQFD7YJVMSHWWRIAL2KDROR5P5ANCNFSM4MQVJFVQ
.

People want to find other people to jam with that play the same kind of
music.

I agree, but this ticket isn't about that problem :-)

This ticket is a proposal to use the desire you describe to solve _another_ issue which is detailed in (and currently resolved) by #50 but only if that current resolution doesn't work.

The fix is only ten days old, after all, and not everyone is running the latest version. So I think I'll close this ticket for now as it seems to be generating too much smoke and not enough fire :-)

Here - just so I've got somewhere to put it - is a mockup of what it might mean in the UI:

scheme

What happens if, as a server operator, I don't want any genre restriction implied by use of my server? Why should specifying a genre be mandated?

What happens if, as a musician, I don't really care what genre of jam session I join, I just want to join a session where music's being made?

What happens if, as a server operator, I don't want any genre restriction implied by use of my server? Why should specifying a genre be mandated?

Indeed - and equally, what happens if I don't want any geographic restriction implied by use of my server? Why should specifying a continent be mandated? Genre is more natural a split for musicians than geography is in the context of an Internet jamming tool.

Ideally of course, no specification of anything would be needed in this context. If people wanted to specify that their rooms were for a certain style, geography, or anything else, they would simply label them as such (as indeed they do today).

Unfortunately however, we have the 200 server limit to deal with. Which is the reason for the proposal in this ticket if we find that the geographic split doesn't work.

The big advantage for location based server list is that I can pre-select the correct list based on the operating system local settings. This is what I do right now.

Regarding your proposal in https://github.com/corrados/jamulus/issues/139#issuecomment-621070831: If the server operators do not put their servers in the correct list now with the location based server list, do you think this situation will improve with genre based lists? I think then it will even be worse.

The big advantage for location based server list is that I can pre-select the correct list

Yes, that's a system thing though born out of the need to put the server onto the right list.

do you think this situation will improve with genre based lists? I think then it will even be worse.

Do you think it would be worse because people would put their servers on "Other" because they wouldn't identify as "Rock", "Jazz" or "Folk"?

Yes, that's a system thing though born out of the need to put the server onto the right list.

Well, not really. Technically it makes sense to provide the Jamulus users with servers which have low ping times.

Do you think it would be worse because people would put their servers on "Other" because they wouldn't identify as "Rock", "Jazz" or "Folk"?

Maybe. Good question.

Right now people may just be using the Central Server dropdown to switch to one that has free slots if they see the "server full" message (the "overflow" phenomenon). If so, they're overriding the function anyway.

If it was genre-based, would they be more likely to wait for a slot to become free? Or would a Rock server operator decide to list in the Folk list just to get listed? Perhaps, but I think it's less likely because they'd naturally understand that there wouldn't be (many) musicians there who wanted to play with them. None of that is true about geography - an American guitarist is as good as a Spanish one, as long as the ping times allow it.

I've not seen, from London, any US servers with a ping time low enough to allow sensible use. The couple of times I've been in jams and a US musician manages to connect successfully to a London server, their delay is noticeable - not necessarily stopping their use but it's a little off-putting. Mostly they can't stay connected (packet loss, I guess). So it makes a lot of sense to restrict more by geography - which is the closest thing to approximate ping time easily available - rather than anything else.

(However, I've been in sessions with Western European musicians with far more delay - but I can't tell if that's entirely ping times or other factors, like bad soundcard configuration, of course.)

Any "ideal" solution is going to be transparent to a musician who just wants to join in a jam near them and have some fun making music. Having to go through a list of genres hoping you'll find somewhere with a low ping and other people online removes a lot of fun.

Having to go through a list of genres hoping you'll find somewhere with a low ping and other people online removes a lot of fun.

I don't disagree with the bit about removing the fun. But I do disagree with the implication that musicians aren't strongly motivated by genre.

If the discussions on the forums are anything to go by, it seems rather unlikely that a folk singer would join a rock jam on the basis of its ping time, for example. I'm not saying it wouldn't happen, or that some musicians would be happy to play jazz even if they prefer metal, I just mean it's not a big enough issue in the face of people setting up servers in whichever central server will have them. It's possible that if this "overflow" behaviour takes over, the whole idea of location-based listing is rendered meaningless. At which point, it becomes like you say, only mostly having to go through a list of servers hoping you'll find somewhere with a low ping :-)

However, I think the issue of ping times is really a separate topic that may need a different analysis. This ticket is about spreading people across Central Servers in order to help the 200 server limit (as was the original ticket that led to the geographic split in fact).

BTW This ticket supports the idea that people may just be using the Central Server dropdown to hunt for one that has free slots regardless of location.

Update:
It seems the location based server list does not work as expected. Too many servers are listed in the incorrect location. If we create genre-based lists we still have the servers listed by the ping times so the location does not matter. This is what I have just implemented:
grafik
In the list selection you will then find entries like:

  • General
  • General (North America)
  • Genre Rock
  • Genre Jazz

and so on...
How do you like that?

That's the sort of thing I had in mind on the client side.

Does what you have implemented also imply the same drop-down exists on the server as well (like this)?

This combo box is already present in the server GUI:
grafik
We might change the order (combo box first, then edit box) and adjust the labels. But the functionality is completely implemented already.

Good. That's what I'd hoped - a very simple change :-)

Ok, it is implemented now. We start with Rock and Jazz genres for now.
The server GUI is not yet changed. I want to wait until pljones finishes his changes to the GUI.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

chrisrimple picture chrisrimple  Â·  8Comments

sthenos picture sthenos  Â·  4Comments

gilgongo picture gilgongo  Â·  11Comments

mawess picture mawess  Â·  14Comments

lefty665 picture lefty665  Â·  14Comments