class_docstr: Glue together encoder transform, entropy model and decoder transform
code: def decompress_video(
      self,
      frames_shape,
      bottleneck_args: Sequence,  # [rec_scenes] of shape [B, T, C, H, W]
      force_cpu: bool = False,
  ) -> Tensor:
      # TODO We might want to do the deccoding here (it is doen in compress_video)
      # Here we only apply image synthesis
      if not self._on_cpu() and force_cpu:
          raise ValueError("Decompression not supported on GPU.")
  
      reconstructions_frames = self.synthesis_transform(
          bottleneck_args[0], frames_shape
      )
  
      assert len(frames_shape) == 5
      return reconstructions_frames
  
imports: import itertools
  import math
  from typing import Generator, List, NamedTuple, Optional, Sequence, Tuple, Union
  import torch
  import torch.nn
  import utils.memoize
  from datamodules.video_data_api import Scenes, VideoData
  from neural.entropy_model import PreviousLatent, VCTEntropyModel
  from torch import Tensor
label_desc: Use image node_id 15 for calling the VCTPipeline obj's underlying member method code with example usage: obj.decompress_video(frames_shape, bottleneck_args, force_cpu) and returns: reconstructions_frames