code: def pipe_gaussian_noise(
      mean, stddev, variable_dist_params, device=None
  ):
      encoded, _ = fn.readers.file(file_root=images_dir)
      in_data = fn.cast(
          fn.decoders.image(
              encoded, device="cpu", output_type=types.RGB
          ),
          dtype=types.FLOAT,
      )
      if device == "gpu":
          in_data = in_data.gpu()
      mean_arg = mean
      stddev_arg = stddev
      if variable_dist_params:
          mean_arg = fn.random.uniform(range=(-50.0, 50.0))
          stddev_arg = fn.random.uniform(range=(1.0, 10.0))
      seed = 12345
      out_data1 = fn.noise.gaussian(
          in_data, mean=mean_arg, stddev=stddev_arg, seed=seed
      )
      out_data2 = in_data + fn.random.normal(
          in_data, mean=mean_arg, stddev=stddev_arg, seed=seed
      )
      return out_data1, out_data2
  
imports: from nvidia.dali import pipeline_def
  import nvidia.dali.fn
  import nvidia.dali.types
  import os
  from test_utils import get_dali_extra_path, check_batch
label_desc: Use image node_id 1 for calling a global function with example usage: pipe_gaussian_noise(mean, stddev, variable_dist_params, device) and returns: out_data1,  out_data2