uniform float intensity = 16.0;

void mainImage( out vec4 fragColor, in vec2 fragCoord ) {
    vec2 uv = fragCoord.xy / iResolution.xy;
    vec4 color = texture(iChannel0, uv), outcolor;

    float x = (uv.x + 4.0 ) * (uv.y + 4.0 ) * (iTime * 10.0);
    vec4 grain = vec4(mod((mod(x, 13.0) + 1.0) * (mod(x, 123.0) + 1.0), 0.01)-0.005) * intensity;

    outcolor = color + grain; // method 1
    // outcolor = color * (1.0 - grain); // method 2

    FRAGCOLOR = vec4(outcolor.rgb, color.a);
}