View Source GoogleApi.ContentWarehouse.V1.Model.VideoVideoStreamInfoVideoStream (google_api_content_warehouse v0.2.0)

TODO(yanghu) add 25/50/75 percentiles of FPS to have a 5 number summary. Next id: 48

Attributes

  • length (type: float(), default: nil) - video length in seconds Note that when the VSI is from users videos, it is not guaranteed to be the same as transcode lengths and it could be 0 when the full VSI cannot compute the length from the source header and timestamps (for example when header and timestamps are too broken).
  • masteringDisplayMetadata (type: GoogleApi.ContentWarehouse.V1.Model.VideoFileMasteringDisplayMetadata.t, default: nil) -
  • maxFps (type: float(), default: nil) - Maximum instantaneous frame rate seen from analyzing the entire stream.
  • contentLightLevel (type: GoogleApi.ContentWarehouse.V1.Model.VideoFileContentLightLevel.t, default: nil) -
  • pixFmt (type: String.t, default: nil) - Pixel format for the video stream.
  • interlace (type: String.t, default: nil) - Information on interlaced video.
  • averageFps (type: float(), default: nil) - This represents the canonical frame rate of the video. This is named average_fps for historical reasons, and may not actually be the arithmetic mean. For variable frame rate videos, the algorithm may change again in future. Currently, full vsi set it with arithmetic mean, and partial vsi set it with median.
  • numberOfInvisibleFrames (type: integer(), default: nil) - Invisible frame count Keep a count of frames that are not displayed should the full frame count be needed for the video stream. The only codec currently reporting this value is VP8 with alternate reference frames enabled
  • bitrate (type: String.t, default: nil) - video bitrate in bits/s
  • isInsaneSize (type: boolean(), default: nil) - Check if a video size insane or not. It is set if the input file is an MOV file.
  • frameSize (type: String.t, default: nil) - video frame size
  • decodeOffset (type: String.t, default: nil) - The bytes offset of the end of the first decodable packet.
  • fps (type: float(), default: nil) - video frame per second, obtained by parsing video header information. It could be inaccurate for some types of codecs, notably, WMV, ASF, and FLV. It will be inaccurate for videos that does not have constant frame rate since it is the smallest framerate that can accurately represent all timestamps (see ffmpeg doc for AVStream.r_frame_rate). Also frame rate can be parsed from headers and can be wrong if it is not available there since ffmpeg uses a heuristic for determining it.
  • width (type: integer(), default: nil) - source video width and height
  • metadata (type: list(GoogleApi.ContentWarehouse.V1.Model.VideoClipInfo.t), default: nil) - Metadata for video elementary stream;
  • seiMessage (type: list(GoogleApi.ContentWarehouse.V1.Model.VideoSEIMessage.t), default: nil) - video SEI payload types and total payload size of a type this is only for H.264 and H.265
  • ituTT35 (type: list(GoogleApi.ContentWarehouse.V1.Model.VideoUserDataRegisteredItuTT35.t), default: nil) - User data registered Itu-T T.35 SEI message
  • gopSize (type: GoogleApi.ContentWarehouse.V1.Model.VideoVideoStreamInfoVideoStreamStatistics.t, default: nil) - Statistics about gop sizes of the video.
  • profile (type: String.t, default: nil) -
  • displayWidth (type: integer(), default: nil) - final display video width and height if explicitly set in the video otherwise this can be calculated from source width/height and video_pixel_aspect_ratio
  • endTimestamp (type: String.t, default: nil) -
  • startTimestamp (type: String.t, default: nil) - Start/end timestamps of audio/video in ms.
  • hasBFrames (type: boolean(), default: nil) - video has b frames
  • userDataUnregistered (type: list(GoogleApi.ContentWarehouse.V1.Model.VideoUserDataUnregistered.t), default: nil) - User data unregistered SEI message
  • height (type: integer(), default: nil) -
  • rotation (type: String.t, default: nil) - Is the video rotated ?
  • colorInfo (type: GoogleApi.ContentWarehouse.V1.Model.VideoFileColorInfo.t, default: nil) -
  • codecFourcc (type: String.t, default: nil) -
  • closedCaptions (type: GoogleApi.ContentWarehouse.V1.Model.VideoClosedCaptions.t, default: nil) -
  • codecId (type: String.t, default: nil) - Primary video codec information
  • clockDiscontinuityUs (type: String.t, default: nil) - some container allows for a clock discontinuity. In this case, the end_timestamp may not be the correct DTS of the stream.
  • doviConfiguration (type: GoogleApi.ContentWarehouse.V1.Model.VideoDoViDecoderConfiguration.t, default: nil) - Dolby Vision configuration if stream is compatible.
  • cleanAperture (type: GoogleApi.ContentWarehouse.V1.Model.VideoVideoStreamInfoVideoStreamCleanAperture.t, default: nil) -
  • spherical (type: GoogleApi.ContentWarehouse.V1.Model.VideoFileSphericalMetadata.t, default: nil) - Optional spherical video information.
  • hdr10PlusStats (type: GoogleApi.ContentWarehouse.V1.Model.VideoFileHDR10PlusStats.t, default: nil) - Stats on HDR10+ over video frames.
  • rationalFps (type: GoogleApi.ContentWarehouse.V1.Model.VideoRational32.t, default: nil) - The nominal frame rate ('fps' field) represented as a fraction.
  • numberOfFrames (type: String.t, default: nil) - Number of video frames.
  • minFps (type: float(), default: nil) - Minimum instantaneous frame rate seen from analyzing the entire stream.
  • pixelAspectRatio (type: float(), default: nil) - video pixel aspect ratio
  • bitstreamColorInfo (type: GoogleApi.ContentWarehouse.V1.Model.VideoFileColorInfo.t, default: nil) - Contains the color information obtained after inspection of the bitstream in cases where there may be inconsistencies between container and coded bitstream that are resolved in favor of the container.
  • streamIndex (type: String.t, default: nil) - Index of the stream in the file. it is 0 based.
  • level (type: integer(), default: nil) -
  • codecString (type: String.t, default: nil) - RFC6381 Codec string.
  • closedGopSize (type: GoogleApi.ContentWarehouse.V1.Model.VideoVideoStreamInfoVideoStreamStatistics.t, default: nil) - closed_gop_size refers to chunkable boundaries for each specified codec and may actually contain one or more GOPs, e.g. for H.264, closed_gop_size will denote the distance (frame count) between two IDR frames.
  • displayHeight (type: integer(), default: nil) -
  • flip (type: String.t, default: nil) - Should the video be mirrored horizontally / vertically? When rotation and flip both are present for a video, it is assumed that the flip is applied first, and then the rotation.
  • streamCodecTag (type: String.t, default: nil) -

Summary

Functions

Unwrap a decoded JSON object into its complex fields.

Types

@type t() :: %GoogleApi.ContentWarehouse.V1.Model.VideoVideoStreamInfoVideoStream{
  averageFps: float() | nil,
  bitrate: String.t() | nil,
  bitstreamColorInfo:
    GoogleApi.ContentWarehouse.V1.Model.VideoFileColorInfo.t() | nil,
  cleanAperture:
    GoogleApi.ContentWarehouse.V1.Model.VideoVideoStreamInfoVideoStreamCleanAperture.t()
    | nil,
  clockDiscontinuityUs: String.t() | nil,
  closedCaptions:
    GoogleApi.ContentWarehouse.V1.Model.VideoClosedCaptions.t() | nil,
  closedGopSize:
    GoogleApi.ContentWarehouse.V1.Model.VideoVideoStreamInfoVideoStreamStatistics.t()
    | nil,
  codecFourcc: String.t() | nil,
  codecId: String.t() | nil,
  codecString: String.t() | nil,
  colorInfo: GoogleApi.ContentWarehouse.V1.Model.VideoFileColorInfo.t() | nil,
  contentLightLevel:
    GoogleApi.ContentWarehouse.V1.Model.VideoFileContentLightLevel.t() | nil,
  decodeOffset: String.t() | nil,
  displayHeight: integer() | nil,
  displayWidth: integer() | nil,
  doviConfiguration:
    GoogleApi.ContentWarehouse.V1.Model.VideoDoViDecoderConfiguration.t() | nil,
  endTimestamp: String.t() | nil,
  flip: String.t() | nil,
  fps: float() | nil,
  frameSize: String.t() | nil,
  gopSize:
    GoogleApi.ContentWarehouse.V1.Model.VideoVideoStreamInfoVideoStreamStatistics.t()
    | nil,
  hasBFrames: boolean() | nil,
  hdr10PlusStats:
    GoogleApi.ContentWarehouse.V1.Model.VideoFileHDR10PlusStats.t() | nil,
  height: integer() | nil,
  interlace: String.t() | nil,
  isInsaneSize: boolean() | nil,
  ituTT35:
    [GoogleApi.ContentWarehouse.V1.Model.VideoUserDataRegisteredItuTT35.t()]
    | nil,
  length: float() | nil,
  level: integer() | nil,
  masteringDisplayMetadata:
    GoogleApi.ContentWarehouse.V1.Model.VideoFileMasteringDisplayMetadata.t()
    | nil,
  maxFps: float() | nil,
  metadata: [GoogleApi.ContentWarehouse.V1.Model.VideoClipInfo.t()] | nil,
  minFps: float() | nil,
  numberOfFrames: String.t() | nil,
  numberOfInvisibleFrames: integer() | nil,
  pixFmt: String.t() | nil,
  pixelAspectRatio: float() | nil,
  profile: String.t() | nil,
  rationalFps: GoogleApi.ContentWarehouse.V1.Model.VideoRational32.t() | nil,
  rotation: String.t() | nil,
  seiMessage: [GoogleApi.ContentWarehouse.V1.Model.VideoSEIMessage.t()] | nil,
  spherical:
    GoogleApi.ContentWarehouse.V1.Model.VideoFileSphericalMetadata.t() | nil,
  startTimestamp: String.t() | nil,
  streamCodecTag: String.t() | nil,
  streamIndex: String.t() | nil,
  userDataUnregistered:
    [GoogleApi.ContentWarehouse.V1.Model.VideoUserDataUnregistered.t()] | nil,
  width: integer() | nil
}

Functions

@spec decode(struct(), keyword()) :: struct()

Unwrap a decoded JSON object into its complex fields.