Reducing Latency in Rocksmith (PC)

April 14, 2013

Recently I have been posting about the Real Tone cable for use as a guitar audio interface for amp modelling and other Digital Audio Workstation duties.  I’ve also been comparing its performance with a proper audio interface.  One of the areas that I noted a large difference was that of latency – the gap in time between plucking a string and having the computer emit the sound as a note through the speakers.  Lower latency of course is always desirable, but a little latency can be lived with without ruining the experience.  However, once it climbs too high it becomes unplayable.

What I haven’t discussed much is using the cable for what it was originally designed for: playing Rocksmith!  Plenty of criticism comes from the latency present in-game – and I agree, it can be distracting.  Ideally I would like to be able to use my new TASCAM audio interface as my guitar input, but Ubisoft also use the Real Tone cable as their form of copy protection.  You must own the cable to play the game.  There are No-Cable hacks which allow you to play the game using your on-board soundcard (which presumably would suffer from high noise issues without the proper pre-amps of an instrument specific interface), and this hack should allow me to use my hardware instead of the Real Tone (one should imagine).  But I’m loathed to hack about my game in a way that could make it look like I’m pirating something on Steam that I totally legitimately own, just so that I can use some hardware that never would have been considered when they designed this game for console (grrr, console-ports).

Thankfully however, there are some configuration settings that can be tweaked to improve the performance of the Real Tone cable.  The file that you’re looking for is rocksmith.ini located in your Steam/steamapps/common/Rocksmith directory.   And it would seem that these are set by default very conservatively (resulting in high latency).

rocksmith_ini

The two key variables here are LatencyBuffer and MaxOutputBufferSize.  In effect, the resulting latency of the system is proportional to LatencyBuffer x MaxOutputBufferSize.  By default LatencyBuffer is set to 4 and MaxOutputBufferSize is set to 0 which means automatic, although in practice this almost always ends up being 1024 for pretty much all standard motherboard soundcards.

The purpose of the buffer is to provide uninterrupted sound when the processors cannot keep up and it does this by introducing a lag (hence, buffer) allowing time gap in which everything can catch up before you hear an interruption.    So the first thing to do is to set both variables to their default states of 4 and 1024, respectively, and then work them down until clicks and other artefacts start appearing.  Then just back them up a little.

Looking at the maths of it all, simply changing the value for LatencyBuffer is going to make a big difference so I started by moving it down from 4 to 2.  In one step this reduces latency by a full 50% and I found it to be the difference between a noticeably laggy, somewhat annoying in-game experience and a very playable, acceptable one!  And to put this in perspective I don’t have an epic gaming rig, yet making this change improved gameplay without degrading the sound at all.  Clearly those default settings are very conservative indeed.

I encourage all owners of Rocksmith to give this a go.  It’s not complicated or time consuming, and if it doesn’t work out then just bump the numbers back again.  But I’m confident that you’ll be pleasantly surprised at what a difference it makes.  Why this isn’t a prominent option available through the in-game menus boggles me – but then anyone who’s played the PC version probably knows it’s best not to get started on that infuriating menu system…!

Advertisements

TASCAM US-200 Audio Interface

April 3, 2013

Earlier I posted a guide to using a Real Tone cable (which comes with the game Rocksmith) to connect to Guitar Rig 5.  With the success of that experiment I went ahead and bought a proper audio interface.  In this post I will give a rundown of the rationale behind my decisions and highlight the differences between the two approaches.

tascam-us200

The unit that I chose was the TASCAM US-200.  This USB audio interface has 2 microphone-in (one of which can be instrument); gain knobs for each mic input; selectable 48V phantom power for professional microphones; 4 line-out channels (channel assignment software configurable); 1 independent headphone-out (with dedicated volume control); MIDI in and MIDI out.  This cost about $100.

The benefits of running this unit over the Real Tone are:

  • the Real Tone cable is only an audio input device so you need to use ASIO4ALL to bridge the sound output to your motherboard’s sound chip which can be annoying to configure (your settings don’t always ‘stick’)
  • the software bridging performed by ASIO4ALL, combined with the fact that the Real Tone is a budget item, means that latency is high (eminently playable, but clearly noticeable)
  • the TASCAM takes care of both audio input and output so configuration is super easy and reliable
  • the TASCAM has knobs for input gains and output volume so adjustments don’t require driving a mouse around the screen (which gets old pretty quick while you’re trying to play an instrument)

So what have I thought of it so far? Well latency is significantly lower!  I also found the Real Tone cable prone to noise – both clicks from artefacts and analog cable noise.  There are no artefacts with the TASCAM and any cable noise is virtually eliminated (probably in part due to the fact that I can use my better quality instrument cables than what the Real Tone is made from).  Any residual noise, where it may exist, is ruthlessly gobbled up by noise gate settings in GR5.

I also am a huge fan of the ability to set my external speakers and amplifier to a direct line-out and be able to adjust my headphones with the volume control (ie independent of the speakers).  This is a far better outcome than trying to get the single motherboard output to do everything.

The MIDI interface is also a nice bonus.  Although I don’t actually own any MIDI devices I can see the appeal of, say, a simple MIDI foot switch array to mimic the functionality of a traditional pedal board (and to do tap-tempos, etc).  Indeed that might be an excellent project for a future post!

But it isn’t all good news… (the update after 2 months use)

While from a hardware perspective the US-200 is a great bit of kit, the drivers are truly horrendous.  There are a number of pretty big issues with the driver but the greatest is its inability to cope with an operating system that implements suspend or sleep modes.  This little gem is buried away on page 11 of the manual – and I would have thought that this limitation is pretty important information for a buyer to know before they make their purchase.  Windows users have had sleep/suspend for EIGHTEEN YEARS, and yet the plebs at Tascam still cannot wrap their puny minds around writing a driver that can cope.  The result is that any time my PC goes to sleep I lose all sound both in and out.  The only remedy is a full reboot!  Totally unacceptable.

Next, the line out connectors are software-configurable.  Yet the driver is incapable of retaining my choices for more than a couple of hours.  So on a very regular basis I get put into an audio black-hole until I work out that the output routing has changed itself (again!).

And lastly, the drivers periodically just totally crap out and require a complete uninstall and reinstall.  I have had occasions where I’ve wanted to play and then had to restart my computer no less than SIX TIMES to actually return everything to correct working order.  If you want reliability this product is definitely not the one for you.

I have contacted Tascam about all these issues and they don’t even reply to support requests (I’ve waited over a month).  This is not a new product and clearly no new firmware or driver updates are going to come out for it.

Would I recommend this purchase to anyone else? Absolutely not.  Would I buy again?  Absolutely not.  Would I buy another Tascam product after this experience?  No, I wouldn’t – I really can’t think of a more substandard buying experience.

And I have to say this is all such a shame, because when it all works properly it’s a good unit.  Clearly the hardware is sound.  But, my goodness, what a terrible software implementation!  Definitely get an external audio interface (they’re great), but don’t buy a Tascam and don’t buy this one!


Easy Way To Roll Out Pie Pastry

April 2, 2013

This is one of those posts that runs the risk of pointing out the obvious, but then it wasn’t as obvious to me as perhaps it should have been…

I like to bake an apple and pear pie with very short pastry.  I like it to be like a shortbread biscuit (only not quite as sweet).  This means that the pastry is hard to roll out without it splitting and crumbling.  And certainly getting it into the tin can be a challenge without breaking it.  Usually I would flour the work top and roll it out to size.  Once it’s thin and circular I’d roll it onto the rolling pin to bring it over to the tin, then roll it off the pin onto the tin.  Inevitably I’d then have to go around fixing the splits.

The new technique is to use greaseproof baking paper the same way that adhesive stickers are lined with a non-stick backing.

First place down a square of baking paper.  The place the chilled sphere of pastry on top (cold pastry is way easier to work with than unchilled).  Place a second piece of baking paper over this.  Roll out the pastry between the paper.

pastry1

Of course you can check the size by placing the tin over what you’ve done.  I found the rolling pin good for most of the rough work, then the whole thing can be smoothed with a gentle rubbing of the hands.

Peel the top layer of paper off, keeping it for the lid.  Place the pastry in the pie tin with the remaining paper uppermost.  This is easy to do because the pastry sticks to the paper while you carry it over.

pastry2

Tease the paper away from the edges first then remove it from the centre.  Then the pastry can be worked into all the nooks and crannies of the pie tin.  Notice no splits at all!

pastry3

After putting in the filling the same process is used for the lid.  Roll the edges together to seal and add vent holes.

pastry4

Couldn’t be easier.

Finally here’s the recipe for my pastry for those following along at home:

  • 1.75 cups plain flour
  • 0.5 cup self raising flour
  • 185g butter
  • 75g raw sugar
  • 2 eggs
  • 1tbsp milk

Sieve the plain and self raising flour together, add the raw sugar.  Chop the butter into small cubes and work the mix through your fingers until you have the consistency of breadcrumbs.  Whisk the eggs and milk together.  Add to the mix and combine with the hands until it has all come together as a smooth ball.  Divide into 60/40 spheres (for base and lid, respectively), wrap in plastic kitchen wrap and chill in the bottom of the fridge for 20min.

For the pie I use 2 green apples and 2 pears, some brown sugar, cinnamon and nutmeg.  Bake for 50-60min 180C.  Can also be partially baked for 40min the day before and then freshened up for 20min in the oven on the day.