Is there a way to get ONE random value as seed for Cyles per render? I know, this question sounds old, but there is a twist.

If you want to use image stacking to reduce noise, you have to choose a different seed for every render.

To do that automatically I found the following methods so far:


using #frame as driver in the seed field.  This however only works if you have multiple frames (i.e. render an animation) - not for a single frame rendered repeatedly.
using the small Python snippet noise.random() * 10000.
This works fine for normal renders, but it screws up viewport rendering (at least in 2.71): the render never ends


Is there something, that can do both?
Instead of using a driver, use that Python snippet to set the value in the render_pre application handler. This should stop it continuously restarting the viewport render.