class_docstr: Stochastic Adversarial Video Prediction for RL pipeline.
docstr: No video wide feature.
docstr_tok: ["No","video","wide","feature","."]
code: def video_features(
      self, all_frames, all_actions, all_rewards, all_raw_frames
  ):
      """No video wide feature."""
      del all_actions, all_rewards, all_raw_frames
      # Concatenate x_{t-1} and x_{t} along depth and encode it to
      # produce the mean and standard deviation of z_{t-1}
      seq_len = len(all_frames)
      image_pairs = tf.concat(
          [all_frames[: seq_len - 1], all_frames[1:seq_len]], axis=-1
      )
      z_mu, z_log_sigma_sq = self.encoder(image_pairs)
      # Unstack z_mu and z_log_sigma_sq along the time dimension.
      z_mu = tf.unstack(z_mu, axis=0)
      z_log_sigma_sq = tf.unstack(z_log_sigma_sq, axis=0)
      return [z_mu, z_log_sigma_sq]
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import numbers
  import numpy
  from tensor2tensor.layers import common_layers
  from tensor2tensor.layers import common_video
  from tensor2tensor.models.video import savp_params
  from tensor2tensor.models.video import sv2p
  from tensor2tensor.utils import contrib
  from tensor2tensor.utils import registry
  from tensor2tensor.utils import update_ops_hook
  import tensorflow.compat.v1
  from tensorflow.compat.v1 import estimator
  import tensorflow_gan
label_desc: Use image node_id 1 for calling the NextFrameSavpRl obj's underlying member method code with example usage: obj.video_features(all_frames, all_actions, all_rewards, all_raw_frames) and returns: list