GeForce Experience share feature generates whitelist errors and slows performance - directshow

I'm developing an application which is previewing video feeds from a capture card and/or a webcam. I've noticed a lot of errors in my console that look like:
IGIESW [path to my.exe] found in whitelist: NO
IGIWHW Game [path to my.exe] found in whitelist: NO
These repeat each time I try to activate a preview window or switch the source feed I'm trying to preview. It actually takes a few seconds each time and it really kills the responsiveness of my application. I'm also seeing a similar slowdown in other applications which are previewing and switching between sources.
I have two nearly identical machines and I only see the errors on the machine with the NVIDIA graphics card; it doesn't happen on the machine using the built-in Intel HD graphics. This lead me to believe it was an NVIDIA setting and on a hunch I tried disabling the "Share" feature in GeForce Experience and that fixed the problem! I really need to use the screen capture capability to record my application so simply leaving it disabled isn't an option.
I searched online for information about IGIWHW and IGIESW but I really couldn't find much other than a few "my game won't work" type forum posts.
I don't see any reference to a whitelist in the Share settings nor in the online help for the NVIDIA control panel. I tried adding my path to the list of paths in the Games scanning settings but it didn't help. Does anyone know where this whitelist is setup? It's strange that even though the errors seem to indicate that my app isn't whitelisted it still works (just very slowly).
I have GeForce Experience 3.6.0.74 and driver 381.65 running on Windows 10.

Related

Monitor system resources in QT

Is there anyway to monitor system resources, namely network statistics (ping, download, upload) in Windows? I've looked at a couple of similar threads and one mentions using WinPcap is the only way to do this, just wanted to get any recent answers if there are any?
I've done a ping tool utilizing Window's ping.exe which works great but struggling to get ideas for other data.
Cheers!

Is WWW available on all platforms that Unity supports?

Somewhat related to this question I just asked, but I know it isn't good to have multiple questions in one, so making a separate question.
I know Licenses Comparison shows that it is available on all versions (even free) of Unity on all platforms in that list. However, I've found other mistakes/misleading info in that list, so I'd rather hear from someone with experience or someone from Unity.
Also, if I do end up using WWW, I'd need to use a long-polling design (where server waits several seconds, even minutes to reply). Any issues I'll run in to on different platforms?
Main platforms I know I need to target: Windows Store 8 (Surface RT), iOS, Android -- tablets and phones -- probably desktops later (Windows and Mac)
WWW reference
EDIT: I'll be using HTTP and HTTPS in case not obvious (not file: or ftp: protocols).
I have used the WWW-class on PC standalone and Android builds. It worked well with both text and textures. Only platform that requires additional tweaking, that I know of, is the web player where you have to add crossdomain-settings for fetching files.

Gstreamer support for Qt5 on Raspberry Pi

I need to play audio from my Qt project deployed on Raspberry Pi. Everything works fine except that I don't get any audio out, instead I get the following error message
defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"
After googling around I have come to the conclusion that the problem is that Gstreamer is not installed and recognized by Qt (more precisely gst-omx). Also, I have tried for many days to proper install gst-omx on Raspberry Pi without much luck.
Can anyone guide me to how I solve this issue???
One hack would of course just to use an external application to play the audio like mpeg321 and just start it up by QProcess, but I need to control volume and be able to start, stop, and pause, so such a solution is not really feasible...
Short answer: Well man, you found what many people find. Qt won't work with the Raspberry Pi just like that. You might get it to work, but without accelerated decoding it will just run as slow as it can get, and crash every few seconds. Sorry.
Long Answer #1: Qt needs to be compiled with special routines in order to get access to the omx stuff. This is, accessing the dedicated hardware embedded into the board which handles accelerated decoding of the h.264 (an a few others) files.
You have two choices, one is to build a special module from here: Carlon Luca's Github or you get a baked in Raspbian image with everything compiled in place from here: The Bugfree Blog. If you are a newbie on this, building it might give you a very hard time but you will get rather stable code and your choice of Qt and an up to date raspbian. The precompiled image on the other hand is just a matter of download, burn and run, very easy!, but it has some older code, so it has some rough edges and it's a bit unstable (almost every video i've tried shows garbled for the first 2-3 seconds and had crashes from time to time), also you will get Qt 5.1.2 without some of the speedups Qt guys added at 5.2.x.
Long answer #2: There are indeed gst-omx libraries which supposedly work with Qt and supposedly are way more stable, I've never tested them. But you can check for yourself Google: Qt Bellagio, I tried to post the links for them, but had not enough rep. You will have to build your own Qt btw.
Update:
If what you need is video playback, i forgot to mention Boot2Qt for the Pi, but you have to pay Digia for the license. It's called Qt Enterprise Embedded, google it.

Managed library / component / api for Windows Mobile WiFi management and control?

Does anyone know of a commercial or free .NET CF library/component/api that I can use within my Windows Mobile 6 and .NET CF 3.5 application?
I need to: enumerate the list of available WiFi networks in range, connect and disconnect specific SSIDs/networks in the list, and manage switching between SSIDs programatically (e.g. I'm currently connected to "public1" and want to switch to "public2" to do some stuff, and then switch back to "public1").
I have tried the OpenNETCF library for this and it somewhat works, but it's crashing quite often with Native Exceptions, which I can't handle with a catch() in my C# code so they bubble up to the end user and they get a nasty windows crash screen with the "send" and "don't send" buttons.
OpenNETCF forums seem to be dead, with lots of posts but no replies to most of them, and the last release from those guys was way back in March 2009.
Last I remember the OpenNETCF code was decent and worked without any issues on a number of devices I tried it on. I certainly don't remember getting native exceptions from it.
Is it possible that you're working on a customised platform? It is possible that the real issue might be due to modifications made to your particular device / operating system.
IIRC we eventually switched to Summit cards for hardware or cost reasons which uses a different API but obviously an API that would only work with Summit cards.
I'm afraid I don't know of any other alternatives atm. Sorry. :(

Flex application suspended while in the background using Safari on Mac

Users of my Flex application report that sometimes the application is freezed when the browser window is minimized or they select another active tab over it. In this suspended state, the application receives no CPU share and all network connections it uses are closed. When the browser window is restored, the application is resumed. This happened with Safari 5 on Mac OS Leopard, with both Flash player 10.0 and 10.1. I searched a lot but I could not find any information about such behavior.
This behavior is not reproducible on each Mac with Safari, so my questions are:
Under which circumstances this may happen?
Is it possible entering in suspended state to be prevented and how?
Is it possible for the Flex application to be notified about going into sleep mode and wake up back?
This is a Safari thing and is by design. Newer versions of Safari suspend flash content that is not in the foreground tab (not sure when this started, version 4?) For instance, if you have multiple tabs open, each with a youtube video playing and you go back and forth between the tabs, only one of the videos will be playing at a time. To answer your specific questions:
This will happen to any flash content that is in a background tab (not sure about the minimized state.)
Not aware of a means of disabling this behavior.
You may want to dig around in the Safari documentation to see if there is some sort of JavaScript event that you can grab onto, but I don't think you are likely to have success there.
Good luck.
Are your users using Flash Player 10.1 ? As part of the performance improvements in 10.1; I believe an application in a minimized state will get throttled in order to use less system resources / battery power.
I don't think there is any way to prevent this; and no APIs exposed that relate to this.
Other people I've spoken to have had issues with using local connections between minimized apps and active apps. I'd bet there is already a bug in the bug base on that.
Wrt the following above:
.I don't think there is any way to prevent this; and no APIs exposed that relate to this.
You may want to check out if Silverline from Librato can help you control how much and which applications get what system resources (CPU, memory, Disk and Network IO) with dynamic control based on application demand. If the above issue is a feature of flash - then obviously it may not help. But if you are trying to say run multiple applications / processes and would like to control who gets how much system resources (dynamically) then you could try Silverline - it does not require any changes to OS or app. http://silverline.librato.com

Resources