To the best of my knowledge, this hasn't been asked or addressed before. Here is my question:
I am using Windows 8.1 and want to write an application that will work between the microphone and any other application that uses the microphone like Skype, Hangout .... I can further exemplify the the application in my mind as follows: For a very simple case I would like to add noise to the input of the microphone whether it is being used by Skype or Hangout or any voice recording app. You can think of any signal processing method to be a possible candidate for my application aside noise.
I have to make the microphone input go through my application whatever requests the usage of the microphone. I know this sounds like overwriting the microphone firmware but I would like to do it at the application level. It is almost like I want to redirect all the microphone input through my application and give the output of my application as the microphone source to all other microphone dependent applications.
Do you know of any way to do this or any similar application?
Thanks for the help!
Related
I am developing an application, which uses microphone. And I want to develop a functionality, allowing users to select microphone and to see input level. Something like you see in MacOS settings. I am able to read data from microphone with no problems, but I don't know how to get input level from this data. I googled a lot and only found some projects for Windows.
Is it possible for Windows 10 to choose what apps should mute all other sounds when I am on a VOIP call?
I know that Windows does it for Skype and games, but I use mostly SIP protocol programs like Zoiper or Jitsy. When using these, and when I make / receive a call, other sounds are never muted. I am usually listening to music simultaneously from a browser, and its annoying to have to manually lower the volume everytime I have to VOIP. Its even harder because I have to switch virtual desktops also to do it, because I keep work v.desktop away from the rest.
I've searched all over the windows control panel, and also googled around but couldn't find any options for this. Any recommendations?
It is not possible. The app have to make some system call so the OS will recognize it as a VoIP app and reduce the volume for all other apps.
However I don't know on which API call this is relied on.
I hope that somebody will answer this.
Selectively quoting a blog piece entitled What's an audio endpoint by one of the chief architects of the post-XP Windows audio system:
an endpoint is a "piece of plastic" (hopefully with some wires in it) "to which users relate" such as "the microphone or headset connected to your laptop".
Which sounds great. Except that on every desktop machine I have ever used in the past 15 years, there has been a microphone AND a line-in input jack, and they exist (at least in my mind) with equal status. As a user, I strongly relate to "pieces of plastic" I connect to the line-in jack. They certainly look very much like an audio endpoint to me. The trouble is:
When I use IMMDeviceEnumerator and IMMDeviceCollction to discover the devices on my desktop machine, and use Microsoft's own example code to do so (e.g. the "CaptureSharedTimerDriven" audio sample in Microsoft's SDK) they only list the microphone as an endpoint.
So if my line-in jack is NOT an audio endpoint, what is it, how do I access it, set the volume on it, and so on? How can I make an application use it (exclusively) even when a user has selected the microphone as the default endpoint?
Partial (and perplexing) answer: it is possible for a microphone to be listed as an audio endpoint even when there is nothing connected to the microphone jack, but a line-in input might only be listed and confirm itself as a legitimate audio endpoint when there is a device physically connected to the line-in jack. This makes no obvious sense, but is nonetheless the way things are... at least on my machine.
I'm currently working at a project to develop an App for firefox os similar to: http://www.zoobe.com/.
So it's basicly a hosted app, where you can choose a 3D-character. Then you have to make a picture for the background and record your voice on the phone. A Video will be rendered then and the 3d-character will speak the recorded message for you!
So my generell question is: Does anybody know, if its possible to develop such complex app for firefox os at this stage?
I've read, that all the APIs required for the project, like camera API and so on are already working.
I would implement the data-flow between server and client with node.js.
I would be greatful for any evaluations, tips and help.
There is no sound recording API yet, so I fear you will have to wait for it to be implemented for this kind of app to be possible. You can track the work on this API at https://bugzilla.mozilla.org/show_bug.cgi?id=803414
My question is similar to this question. I want to capture and modify video stream from web camera in Windows transparently to all applications using web camera. Whether should it be some kind of driver? Is it possible? Is there API for such tasks? I'm reading about DirectShow filters. Am I on the right direction?
Thanks for your help!
You can use DirectShow to capture the video stream from the camera, modify it, and then pass it on to either a DirectShow source filter (will be seen by some apps as "webcam") or to a kernel driver (will be seen by pretty much every app). If you're new to this do realize this is a lot of work. Depending on what you want to do, consider buying ready made components for your developing environment or even complete applications that can do this (I developed one).