Hi James, everyone,
I've been watching this thread unfold and am quite pleased with the
ideas. Some of the outcome is simple and robust : the slider thing
that adjusts the set of codecs and so on sounds like a good thing to
have, provided that it can be calibrated easily.
Remember that different people (industry, home user, academic) have
different parameters and expectations. Same goes for countries : even
if you managed to get some information like "this interface is 3G" you
should see the difference of 3G service between TokyoJP and
StrasbourgFR, it is quite surprising.
upstream bandwidth but it could have also been that bandwidth is hogged
by your torrent client...
This would be solved by QoS. Jitsi can't do anything about this and it
has to be implemented by the router, right?
True jitsi can't do anything about unfair clients. Nor can QoS, there
is no real way to make sure that your
room-mate/husband/wife/neighbor/wifisquatter plays fair. The only
proven way to achieve QoS that I know of, is called
over-provisionning. It is very efficient and it scales well, as I
could witness during the terrible incidents here in Japan. As long as
the fibers were not severed, voip was rolling and beating cellphones
single handed (sic).
I understand you were talking about QoS on the local side, but it does
not really solve the problem especially if wifi is involved.
It should be the receiver that chooses the settings of the sender.
I see a few good reasons that I would not want a receiver to change my
sending settings. One of them is 'none of your business' ;-).
But anyway, it is very difficult to assert the state of the system
locally in a OS-independent and network agnostic way (bandwidth
available [all the way to the peer], cpu load, etc...) so it is an
order of magnitude harder to figure this out remotely.
I agree that you might have your receiving preferences, so do I, they
should be mapped to the magic slider in the best possible way.
Probably you can't tradeoff framerate for frame quality and so on, but
it stays very simple.
Note that in this case, there is no need for the sender to detect
packet loss. The receiver notices a problem with the quality and
adjusts the controls. Simple! XMPP messages are sent back to the
sender which adjusts the quality accordingly.
Of course it sounds simple. Now imagine you're sitting across the
street of your favorite hotspot and here comes the bus (Emil's
example). I actually clearly remember this happening to me and what
should happen ? All adaptive processes have
hysteresis/thresholds/ping-pong problems and the moment you decide on
threshold values, you start having those false positives and the
system is just globally useless.
My point of view is that given the complexity of the system, we should
not put too much effort in it, if these problems do not impact a
significant part of the users. Now if jitsi if currently not useable
for you in this situation, we should investigate indeed.
What do you think ?