class_docstr: Wrapper which creates and records videos from generated observations.
  
  This will limit itself to recording once every `record_every` episodes and
  videos will be recorded to the directory `path` + '/<unique id>/videos' where
  `path` defaults to '~/acme'. Users can specify the size of the screen by
  passing either a tuple giving height and width or a float giving the size
  of the diagonal.
code: def __init__(
      self,
      environment: dm_env.Environment,
      *,
      path: str = "~/acme",
      filename: str = "",
      process_path: Callable[[str, str], str] = paths.process_path,
      record_every: int = 100,
      frame_rate: int = 30,
      figsize: Optional[Union[float, Tuple[int, int]]] = None,
      to_html: bool = True,
  ):
      super(VideoWrapper, self).__init__(environment)
      self._path = process_path(path, "videos")
      self._filename = filename
      self._record_every = record_every
      self._frame_rate = frame_rate
      self._frames = []
      self._counter = 0
      self._figsize = figsize
      self._to_html = to_html
  
imports: import os.path
  import tempfile
  from typing import Callable, Optional, Sequence, Tuple, Union
  from acme.utils import paths
  from acme.wrappers import base
  import dm_env
  import matplotlib
  import matplotlib.animation
  import matplotlib.pyplot
  import numpy
label_desc: Use image node_id 1 to create a new VideoWrapper object from inherited base classes: base with example: obj = VideoWrapper(environment)