You are almost completely saturating your upload bandwidth with the stream you're sending. Despite streaming out not using much of your download speed, you need plenty of bandwidth available in both directions to have reduced latency in games.

As I see it, you've two options.


Increase the available bandwidth on your upload speed. You can achieve this by either reducing the quality of your stream, or increasing the available upload speed.
Purchase a router with Quality of Service (QoS), this will you to prioritise traffic. You need to set a lower priority on stream traffic, so the game latency is reduced.


Ideally, I'd suggest you considered implementing both options, if you want the best performance for both the stream and the game.

For what it's worth, I do think trying to stream at 1700kbps is way too high for an upload speed of 1.92Mbps. For best performance, I'd be reducing that to around half of your available upload bandwidth, i.e. 1000kbps.

High ping on games while streaming
I have an angular controller that calls a service. The service is responsible for returning data from a json file.

controller:

function projectController($scope, ajaxServices) {
$scope.projects = ajaxServices.getProjects();
}


service:

projectManagerApp.factory('ajaxServices', function ($http) {
  return {
    getProjects : function () {
      $http.get('projects.json', { data: {} }).success(function (data) {
      if (window.console &amp;&amp; console.log) {
        console.log("objects returned: " + data.length); // shows # of items
      }  
      return data   //nothing ng-repeated, no console errors.
    })
    // Exact same data from json file hard-coded, works fine
    // when not commented out.
    // return [{ "id": 1, "name": "Project 1 }, { "id": 2, "name": "Project 2" }]
    }
   }
});


html: ng-repeat="project in projects"

In the success function I can see the data returned in the console log but if I try to return the data the ng-repeat ul element on my page is empty. In the same service if I simply return the same data logged to the console hard coded (outside of the success function, of course it works just fine. 

How can I return the data into the ng-repeat using my ajax call?

I'm just as new to Plunker as I am Angular but here is my attempt at a Plunk:
http://plnkr.co/edit/ALa9q6
