code: def test_multiple_labels_per_frame(self):
      frame_names = [f"{str(i)}.png" for i in range(3)]
  
      # Create csv containing a test frame videos.
      with tempfile.NamedTemporaryFile(
          delete=False, suffix=".csv"
      ) as f:
          f.write(
              "original_vido_id video_id frame_id path labels\n".encode()
          )
          with temp_frame_video(frame_names) as (
              frame_1_video_dir,
              data_1,
          ):
              for i, frame_name in enumerate(frame_names):
                  original_video_id = str(frame_1_video_dir)
                  video_id = "1"
                  frame_id = str(i)
                  path = pathlib.Path(frame_1_video_dir) / frame_name
                  label = "0,100"
                  f.write(
                      f"{original_video_id} {video_id} {frame_id} {path} {label}\n".encode()
                  )
  
              f.close()
  
              clip_sampler = make_clip_sampler(
                  "random",
                  0.1,  # Total duration of 3 frames at 30fps is 0.1 seconds.
              )
              dataset = Charades(
                  f.name,
                  clip_sampler=clip_sampler,
                  video_sampler=SequentialSampler,
              )
  
              sample = next(dataset)
              self.assertEqual(
                  sample["label"], [[0, 100], [0, 100], [0, 100]]
              )
              self.assertTrue(sample["video"].equal(data_1))
  
file_path: pytorchvideo/tests/test_data_charades_dataset.py
imports: import contextlib
  import pathlib
  import tempfile
  import unittest
  from pytorchvideo.data import Charades
  from pytorchvideo.data.clip_sampling import make_clip_sampler
  from torch.utils.data import SequentialSampler
  from utils import temp_frame_video, temp_frame_video_dataset
label_desc: Use image node_id 3 for calling the TestCharadesDataset obj's underlying member method code with example usage: obj.test_multiple_labels_per_frame() without return types