View Full Version : Sound streams mixing
Hi, I was surprised I didn't find any post about that, so I write it now, hoping I won't be aimed with machineguns :)
I think I've read somewhere that Audio streams are not mixed into TS engine for CPU reasons.
Well, I understand the problem but look at my example, that maybe a usual case: I have two comps at home, two good ones. I'm playing BF1942 (DC) from my first computer, and the other is doing nothing, they are both on my Router.
I could just forward the 8767 (or any other) port on the LAN IP of the other comp and he could quietly do all the job as a true server, so stream mixing wouldn't be a problem.
Because handling the usual 10 players we are by team (that means 20 at all, but on two chanels) is much too hard for my poor 1024/128 ADSL connection, which must also handle my game UPload. While with a stream mixing, it could work almost fine even with a 7.2 SpeeX kb codec, which really sounds better than the 3.4 SpeeX codec I use now (and even that way it won't work well).
I'm impatient to know what about mixing, and would gretly appreciate the work ;) I already love TS, anyway, my clan's using it for a little while. We would be very happy to speak fine at 20 :)
hosting 20 people behind a, sry, lousy 128 upload ? For me this sounds like dreaming. Be aware, you can never use your bandwith up to 100 %
However I must agree to you. In your case it would make sense. But what if someone hosts the server on a low machine ?
Both ways have it advantages and disadvantages.
I think steam mixing should be a server side option. If your server is capable of it, than use it. If not, go for the current method.
Stream mixing should be transparent to the client. The packets still need to pass-thru the server anyways. Stream mixing would save bandwidth on both server and client. Some people have dedicated servers where CPU cycles don't matter
The only diference for the listening client is that instead of recieving 1, 2, 3...N streams from the server (each from a different person) They would recieve 1 mixed stream.
But the problem is that each client connected to the server requires a mixed stream where they don't hear themselves. If you send the same mixed stream to everyone, than those that are talking would hear just that.
Here is where cpu cycles are really spent, maybe more than what we could imagine. Maybe some sort of down-mixing could be done. But down-mixing requires correct alignment, and this could take a big chunk at the CPU.
The obvious solution would be to supply a common stream for those that are quiet, and a new stream per talking person. If only a few people speak at the same time, this should not be a problem. But otherwise, it would present a big problem.
I think the only way to really know is to beta test it and see...
Hi, yes exactly, I thought of course of an option in the server. You make a server, you know if it can handle it or not.
I think most of dedicated servers could handle it.
Because you wouldn't have so many streams to mix, look:
Mostly, on one channel, 2 or 3 peoples speaks at the same time. It means that the other ones receive the same unique mixing (of the two or three streams), so you have to mix it one time at all for them, and the ones who are speaking get a special mixed stream without their voice.
I'm even sure there's some improvement to do in that so that you dont mix so much (like mixing first two ones, sending it to the third speaker, then mix it with the third one and sending it to the rest. And doing it for the two other speakers, etc...)
I'm not a specialist, but it doesn't look so scaring in CPU-time.
For the 20 people at 128, I know it sounds terrible, but I also know in Roger Wilco (which provides a good voice quality), I get easy 12 peoples on a unique channel. And I was speaking about 20 people with 10 and 10, on two channel I mean.
Even thought it sounds like a dream, I know, for me already 10 people could be great, someone else could do the second one on his computer.
But 10 on 128 connection, it's impossible even at 3.4kbs codec.
So if someone of the team could tell us what about this feature, it could be really nice :)
Hum team must be very busy for now on the new release :)
Would be nice to get an answer from one of them, really needing this feature :(
I thought: maybe you don"t want to include a Stream Mixing so that users quickly need to rent a TS2 server, which, by licenses, gives you back money...
:(
Or maybe is it in TS3 but You don't want to tell about it.
vBulletin® v3.7.3, Copyright ©2000-2009, Jelsoft Enterprises Ltd.