Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I've been trying to make a sample webcam app in c#, and I discovered the app cannot run at the same time Skype or Oovoo or any other application is running? (and vice versa) Why do applications get exclusive locks over a webc
Video capture APIs come from time when adding layers to share video hardware was unreasonable in terms of performance. Also, with 2+ apps working with a camera one would have to make them agree on capture format in some way that both are satisfied. So it was made the simplest and straightforward way: you grabbed the camera, it's yours and you can set it up for your own needs. However others would wait for you to release the hardware before anyone else can use it.
You can find third party software that shares a camera, which internally grabs it exclusively and then exposes virtual camera that is shareable. This trades off performance for flexibility.
Audio APIs were also locking hardware exclusively some time ago, but then at some point OS APIs introduced hardware abstraction layers to share hardware and do mixing from multiple applications behind the scene.
This is probably intended to avoid an application spying on people while they are using their webcam through skype or whatever.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
As per my understanding, DNX (.Net execution environment) is provided to support cross platform web applications, which sounds good but it would be more useful if it were to support desktop applications.
Why would you need a cross platform web based application ? usually a web application/web site is hosted once and it shouldn't be an issue to host it on IIS on a windows machine. Is there something with DNX that I am completely missing or is it somewhat useful for desktop/console based applications as well.
What if you had a web-based application that you intended to run on both embedded devices like a Raspberry Pi as well as more conventional servers? The Pi may not be able to run a full Windows installation and thus may need to run Mono or some alternative solution.
The idea of a previous place was to have a self-configured, low power solution for doing some tracking through RFID. The embedded devices would have to have a scaled down version of the system but be able to synchronize with the bigger systems as there could be various reports and other data to be generated on the big servers in the overall system. Imagine tracking wildlife or a big farmer's field with various sensors that could report the data that then has to get sent up to the big central DB so data can be compared over time with bigger resources than the embedded device would have. Thus, you could have a dozen or so of the small embedded devices in the field and have a beefy server back at a home base that could generate reports, maintain dashboards, etc. from traditional infrastructure in terms of electricity, connectivity, etc.
There was also the potential for this to lead to something like Skynet if the embedded devices could form a collective consciousness but the project never got to that stage of things.
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 9 years ago.
Improve this question
I'm refactoring an application used by the employees of an insurance carrier, they have had some problems with some kind of malware on their computers that was controlling this application to do bad things, or at least that's what they say.
I'm pretty sure the malware is using the Win API to make calls to the application instance, so my question is, there's any way to detect if a real user is controlling the application or it's being controlled by another process through calls to the Win API? The app is coded in C#.
This answer is coming from my experience with developing Win32 apps using C++.
I can only think of two ways in which the app is being controlled -- one using OLE automation, using automation verbs and secondly inserting keyboard/mouse events into the system event queue. (I'm assuming that this app is not listening for any network originated commands). You can verify the first by checking the source code and using a debugger with some OutputDebugString calls. The second can only be detected by a malware scanner. Any COTS/free AV or MS security essentials should be able to identify a malware, unless of course it's written internally by a malicious employee.
Have you taken a look at the task manager process list and gone through them one-by-one to see if there's anything that looks suspicious? Can you run the app with elevated privileges? Then the OLE automation client, if one is present, won't be able to access the process.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions concerning problems with code you've written must describe the specific problem — and include valid code to reproduce it — in the question itself. See SSCCE.org for guidance.
Closed 9 years ago.
Improve this question
I'm totally new to windows development.I'm coming from Objective-c but now i wanna start to develop for the solution Kinect-Windows. I have to choose between C++ and C# , one of this languages is more appropriate to kinect development? I'm inclined to C++ but i don't know if C# will made all things easier, maybe more support for kinect?
EDIT
Another question, i need to buy the Kinect window sensor ? Or to develop i can use a standard xbox Kinect sensor?
Assuming you are using the official Kinect SDK, it supports C++, C# and VB. Use the language which best suites your needs.
To answer your second question, you can use the Kinect for Windows sensor or the Kinect for Xbox 360 sensor. The choice is yours.
However, there are some notable differences. This blog post does a good job of explaining them. Below are the main features that the Windows sensors offers over the Xbox sensor, taken from the blog encase the link breaks in the future.
Near mode: Enables the camera to see objects as close as 40 centimeters
in front of the device without losing accuracy or precision, with
graceful degradation out to 3 meters.
Seated or “10 joint” mode: Skeletal tracking which provides the
capability to track the head, neck and arms of either a seated or
standing user.
USB cable: Ensures reliability across a broad range of computers and
improves coexistence with other USB peripherals.
Extended camera settings: Provides extra settings such as brightness,
exposure, etc. so you can tune it even more.
Kinect Fusion: Maps the environnement to 3D on the fly or lets you use
object replacement.
Handgrip: Hand detection enables you to implement gestures like
pinch-to-zoom, grab, etc. to improve your apps and build whole new
kind of applications.
Licensing: When you want to go public with you’re application you’ll need to use a Kinect for Windows. Kinect for Xbox 360 isn’t legal.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
Some friends and I are creating a Google music type of project in order to learn a few Microsoft technologies.
I am responsible for the Windows phone app and having it interact with WCF to get a music stream and play it. After reading, I have found many ways to play music including XNA, SoundEffect, MediaElement, and MediaPlayerLauncher.
Having such a variety to choose from, I am stuck on what would be best for the job.
The XNA player seems fully featured but requires me to initialize the gaming-like update loop for it to work. This seems like a waste of resources.
SoundEffect seems geared towards sound effect.
Media Element seems okay, and Launcher even has a ui!
I am trying to stay away from writing my own player so which one should I choose? I am okay with writing some functionality, but it would be nice to have queuing, scrubbing, etc built in. Any of you have success with something similar to this?
Don't use SoundEffect for playing streams. It is for playing short WAV files as sound effects or other incidental noises in an application.
If you want to create your own UI or encapsulate the player inside your own application then the MediaElement is the way to go.
If you want the simplest option possible then go with the MediaPlayerLauncher. This will also give you the standard look and feel and UX that your users will be familiar with.
If you don't want create your own player take a look at Microsoft Media Platform: Player Framework. This project has built-in player with UI controls. However this project is designed to play streams from IIS Smooth Streaming, but you cant try to play your streams. If this approach fail, then using MediaElement is good option as Matt Lacey noted.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
NOTE: This isn't something that would use a mic. I want to INTERNALLY record audio.
I would like to write a program in C# or Java that records audio data sent to the speakers in my computer. The end product would allow the user to hit a "record" button, and anything being played at the moment would be recorded internally until the user hits the "stop" button, at which point all data collected is saved to an audio file like a wav, mp3, etc.
I have a MacBook Pro that runs Windows 7 in parallel. I have access to several PCs, so I also can work on a pure Windows platform. Ideally it wouldn't matter what platform, though.
I have no idea where to get started--the most I've ever done with music is to play a .wav file in Java. If anyone has any advice, references, suggestions, technology preferences for either language, etc., I'd love to here it!
What you are trying to do is very operating system dependent. You would need to write a program that creates a fake audio output device that the operating system could send the sounds to. Instead of playing the audio you would capture the audio stream once the user hits "record" and stop capturing when the user hits "stop". Then you would need to encode the captured audio data into the desired sound file format (wav, mp3, etc.).
It is possible to do what you are asking, but it is a non-trivial task since you are interfacing with the operating system's audio hardware abstraction layer and encoding audio.
To point you to right direction if you are going to use C#.
There is no support for doing this in .NET framework, however you can access Windows API from .NET. A good start point is http://www.pinvoke.net.
You’ll also find the code for each API write in C#. I have no clue which API calls you should use, but if there is any then it exit in Win32 API. I know of a software that dose what you try accomplish. The name of the software is Spotify Ripper. If you use an API spy software you may be able to see which API calls this software is using!