class_docstr: This LightningDataModule implementation constructs a PyTorchVideo Kinetics dataset for both
  the train and val partitions. It defines each partition's augmentation and
  preprocessing transforms and configures the PyTorch DataLoaders.
docstr: This function contains example transforms using both PyTorchVideo and TorchAudio
  in the same Callable.
code: def _audio_transform(self):
      """
      This function contains example transforms using both PyTorchVideo and TorchAudio
      in the same Callable.
      """
      args = self.args
      n_fft = int(
          float(args.audio_resampled_rate)
          / 1000
          * args.audio_mel_window_size
      )
      hop_length = int(
          float(args.audio_resampled_rate)
          / 1000
          * args.audio_mel_step_size
      )
      eps = 1e-10
      return ApplyTransformToKey(
          key="audio",
          transform=Compose(
              [
                  Resample(
                      orig_freq=args.audio_raw_sample_rate,
                      new_freq=args.audio_resampled_rate,
                  ),
                  MelSpectrogram(
                      sample_rate=args.audio_resampled_rate,
                      n_fft=n_fft,
                      hop_length=hop_length,
                      n_mels=args.audio_num_mels,
                      center=False,
                  ),
                  Lambda(lambda x: x.clamp(min=eps)),
                  Lambda(torch.log),
                  UniformTemporalSubsample(
                      args.audio_mel_num_subsample
                  ),
                  Lambda(
                      lambda x: x.transpose(1, 0)
                  ),  # (F, T) -> (T, F)
                  Lambda(
                      lambda x: x.view(1, x.size(0), 1, x.size(1))
                  ),  # (T, F) -> (1, T, 1, F)
                  Normalize(
                      (args.audio_logmel_mean,),
                      (args.audio_logmel_std,),
                  ),
              ]
          ),
      )
  
imports: import argparse
  import itertools
  import logging
  import os
  import pytorch_lightning
  import pytorchvideo.data
  import pytorchvideo.models.resnet
  import torch
  import torch.nn.functional
  from pytorch_lightning.callbacks import LearningRateMonitor
  from pytorchvideo.transforms import ApplyTransformToKey, Normalize, RandomShortSideScale, RemoveKey, ShortSideScale, UniformTemporalSubsample
  from slurm import copy_and_run_with_config
  from torch.utils.data import DistributedSampler, RandomSampler
  from torchaudio.transforms import MelSpectrogram, Resample
  from torchvision.transforms import CenterCrop, Compose, Lambda, RandomCrop, RandomHorizontalFlip
label_desc: Use image node_id 4 for calling the KineticsDataModule obj's underlying member method code with example usage: obj._audio_transform() and returns: ApplyTransformToKey