class_docstr: Ucf101 action recognition dataset.
  
  Note that in contrast to the labels provided in the original dataset, here the
  labels start at zero, not at one.
code: def _info(self):
      if self.builder_config.width is not None:
          if self.builder_config.height is None:
              raise ValueError(
                  "Provide either both height and width or none."
              )
          ffmpeg_extra_args = (
              "-vf",
              "scale={}x{}".format(
                  self.builder_config.height, self.builder_config.width
              ),
          )
      else:
          ffmpeg_extra_args = []
  
      video_shape = (
          None,
          self.builder_config.height,
          self.builder_config.width,
          3,
      )
      labels_names_file = tfds.core.tfds_path(_LABELS_FNAME)
      features = tfds.features.FeaturesDict(
          {
              "video": tfds.features.Video(
                  video_shape,
                  ffmpeg_extra_args=ffmpeg_extra_args,
                  encoding_format="jpeg",
              ),  # pytype: disable=wrong-arg-types  # gen-stub-imports
              "label": tfds.features.ClassLabel(
                  names_file=labels_names_file
              ),
          }
      )
      return tfds.core.DatasetInfo(
          builder=self,
          description="A 101-label video classification dataset.",
          features=features,
          homepage="https://www.crcv.ucf.edu/data-sets/ucf101/",
          citation=_CITATION,
      )
  
file_path: datasets/tensorflow_datasets/video/ucf101.py
imports: import os
  from absl import logging
  from tensorflow_datasets.core.utils.lazy_imports_utils import tensorflow
  import tensorflow_datasets.public_api
label_desc: Use image node_id 1 for calling the Ucf101 obj's underlying member method code with example usage: obj._info() and returns: tfds