nickeh Posted December 9, 2014 Share Posted December 9, 2014 Hi,I have read the Slice API Documentation but I did not find any information about about who is speaking/whispering/shouting so is it possible? Or is there any other way to get information about who is speaking to my client using python? I have the normal Mumble client running on a headless computer and I need to show who is talking by using leds above "push to talk" buttons so the user knows which button to press to talk to that user (without the others listening).If this sound strange please take a look at my thread about using Mumble as a intercom system http://forums.mumble.info/viewtopic.php?f=7&t=1517#p5415Thanks in advance. Quote Link to comment Share on other sites More sharing options...
Moderators Natenom Posted December 9, 2014 Moderators Share Posted December 9, 2014 You can use idlesecs to get that, from the documentation:int idlesecs; Idle time. This is how many seconds it is since the user last spoke. Other activity is not counted. A user who is currently speaking has a idlesecs value of 0. Quote Link to comment Share on other sites More sharing options...
nickeh Posted December 9, 2014 Author Share Posted December 9, 2014 Yes, but I do not know if the users is talking to my client. If a user is talking to somebody else the idleseconds is also 0, right?In my case I have different channels, for example one for the video crew, one for the audio crew, one for light and so on. There can be many conversations going on in the different channels at the same time. But sometimes a users (one pre assigned in every channel) from another channel needs to talk (pre assigned whisper shortcut) to me and I need to know who that is. I would need to get the same data that the client uses to drive the blue/red lips, is that even possible using ICE or by any other method? Quote Link to comment Share on other sites More sharing options...
Moderators fwaggle Posted December 10, 2014 Moderators Share Posted December 10, 2014 I don't believe the server provides that information to anyone. You can't even do it with a connected client, because the server only tells your client a) that a user is speaking and you can hear it and b) I believe they're flagged for whisper/shout versus regular speech.The server doesn't communicate why you can hear someone, which could be that they're in the same channel as you (trivially guessed), that they're whispering/shouting (I believe they're flagged with the same flag, so you can't tell whether they're whispering your client directly, or shouting at the channel you're in), that you're in a linked channel, etc.And as far as I know, Ice doesn't have any information on who's talking to who and why, you can just tell if someone has talked recently as detailed above. Quote Full disclosure: I used to run a commercial Mumble host, and my opinions do not reflect the opinions of the Mumble project. Avatar is stolen from here Link to comment Share on other sites More sharing options...
nickeh Posted December 10, 2014 Author Share Posted December 10, 2014 OK, I was afraid of that :(Would it be possible to get information about who is talking from the client in any way? Maybe by making a plugin that relays the data to the clipboard for example? I could maybe read the clipboard from my python script... Quote Link to comment Share on other sites More sharing options...
Moderators fwaggle Posted December 10, 2014 Moderators Share Posted December 10, 2014 We don't really have any decent framework for general purpose plugins - our only plugins are for positional audio at the moment.We could, in theory, expand the RPC stuff that's in the client to allow this, but it would be the same caveats as I mentioned above: you could tell who is talking that you can hear, and I believe you can tell whether it's "normal talking" or "whisper/shouting" (as a binary choice, ie you cannot, as far as I know, discern whispering from shouting). The client has no way of knowing if people are talking in other channels, etc.From the sounds of it, with your project, you're going to want to build a modified server that does expose this information via Ice as that would be the cleanest way to accomplish it. Quote Full disclosure: I used to run a commercial Mumble host, and my opinions do not reflect the opinions of the Mumble project. Avatar is stolen from here Link to comment Share on other sites More sharing options...
nickeh Posted December 11, 2014 Author Share Posted December 11, 2014 I see...I was just thinking that by doing it in the client I could handle everything locally and the client would also only see users that are talking to me. I do not need to see if they are speaking/whispering/shouting it is enough if I know that they are speaking to me... Quote Link to comment Share on other sites More sharing options...
Lindee Posted December 11, 2014 Share Posted December 11, 2014 Can you run a separate program/routine/whatever to just check the status of the PTT button? and use that program for activation/notification via the lights? Quote Link to comment Share on other sites More sharing options...
nickeh Posted December 11, 2014 Author Share Posted December 11, 2014 Lindee: Great idea, yes that would work since all the clients are triggered by a python middleware but I'll first try to make it work within the client. But if I can't make it work, I'll use your idea. Thx!I'm now plowing thru the sourcecode of Mumble to find where the lips and username are being rendered onto screen. When I find it I will try to make it do something besides changing .svg images onscreen :) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.