localhost/winapi;how to redirect Skype speech from speakers to the other application?

Status
Not open for further replies.

johnyjj2

Solid State Member
Messages
15
Hello!

I've got Skype. When Skype receives a call, it sends speech to speakers. I'd like it to send it to the other application. So there must be something like "port" to which I can redirect speech from Skype and then to receive this speech in other application from this "port". What can be this port and how to implement it?

So you know what I don't know. But what I have is: [1] Skype on mobile phone, [2] Skype on server, [3] My 3rd party application on server (plugin to Skype), [4] Speech recognition Sphinx4 on server. [2] and [3] can easily communicate with each other by sending Skype4COM commands. When the new call is established on Skype (in other words when I call from [1] to [2] and [2] automatically answers this call), plugin [3] enters OurCallStatus function. And inside this function I need to change default output of Skype sound which is set to speakers and make it to be "port".

Why do I have to use "port" (Skype -> "port" -> Spinx4)? Because I guess it may be impossible or difficult to forward it directly. I need to change this line in code of Sphinx4 application "Microphone microphone = (Microphone) cm.lookup("microphone");" to such a line which would be able to receive speech from "port". I cannot simply save the whole speech from Skype to mp3/wav file and then to open this mp3/wav file in Sphinx4 because it must be done in real time.

Why do I post it on this forum? Because I thought this "port" may be somehow usage of one of those thousand ports numbers (like 80 for http and so on) on localhost. The other approach which I thought about is usage of WinAPI. However I don't know if any of these two approaches is doable and how to do it, if it is doable.

Greetings!
 
Re: localhost/winapi;how to redirect Skype speech from speakers to the other applicat

Hello!

I found that it should be possible to do it with the use of ordinary TCP socket or with IPC (Inter-Process Communication -> look at wikipedia for more info).

I think that solving my problem with the use of TCP socket shouldn't be difficult because it is rather well-known term. May I ask you for any advices, please?

Greetings!

PS Let me summarize what I want to do. I'd like to create plugin for Skype. Normally Skype sends received speech to speakers. I'd like it to send it to the other application. This other application is speech recognition engine. I thought it can be done through some kind of port. So it would be not: Skype -> speaker AND microphone -> Sphinx4. But it would be: Skype -> port -> Sphinx4 and vice versa. I am more or less familiar with creating plugins for Skype (3rd party applications).
 
Re: localhost/winapi;how to redirect Skype speech from speakers to the other applicat

Interesting idea...I thought of doing something like that once but after 5 seconds of thinking about it, I knew I wasn't gonna be able to (I'm a web developer, not a Win32 app developer). I look forward to seeing your results though!
 
Re: localhost/winapi;how to redirect Skype speech from speakers to the other applicat

Thank you for your reply!

That's good to hear that my idea is doable and somebody else at least thought about doing it :). Which of those approaches is the best (winapi, tcp socket, localhost, ipc)?

Does anybody have got working example with code, preferably in C# but not only? I would be very greatful for that :).

Greetings!
 
Status
Not open for further replies.
Back
Top Bottom