vpx_codec_cx_pkt Struct Reference

Encoder output packet. More...

Public Attributes

enum vpx_codec_cx_pkt_kind kind
 packet variant More...
 
union {
   struct {
      void *   buf
 compressed data buffer More...
 
      size_t   sz
 length of compressed data More...
 
      vpx_codec_pts_t   pts
 time stamp to show frame (in timebase units) More...
 
      unsigned long   duration
 duration to show frame (in timebase units) More...
 
      vpx_codec_frame_flags_t   flags
 flags for this frame More...
 
      int   partition_id
 the partition id defines the decoding order of the partitions. More...
 
      unsigned int   width [VPX_SS_MAX_LAYERS]
 Width and height of frames in this packet. More...
 
      unsigned int   height [VPX_SS_MAX_LAYERS]
 frame height More...
 
      uint8_t   spatial_layer_encoded [VPX_SS_MAX_LAYERS]
 Flag to indicate if spatial layer frame in this packet is encoded or dropped. More...
 
   }   frame
 data for compressed frame packet More...
 
   vpx_fixed_buf_t   twopass_stats
 data for two-pass packet More...
 
   vpx_fixed_buf_t   firstpass_mb_stats
 first pass mb packet More...
 
   struct vpx_psnr_pkt {
      unsigned int   samples [4]
 Number of samples, total/y/u/v. More...
 
      uint64_t   sse [4]
 sum squared error, total/y/u/v More...
 
      double   psnr [4]
 PSNR, total/y/u/v. More...
 
   }   psnr
 data for PSNR packet More...
 
   vpx_fixed_buf_t   raw
 data for arbitrary packets More...
 
   char   pad [128 - sizeof(enum
      vpx_codec_cx_pkt_kind)]
 fixed sz More...
 
data
 packet data More...
 
union {
   struct {
      void *   buf
 compressed data buffer More...
 
      size_t   sz
 length of compressed data More...
 
      vpx_codec_pts_t   pts
 time stamp to show frame (in timebase units) More...
 
      unsigned long   duration
 duration to show frame (in timebase units) More...
 
      vpx_codec_frame_flags_t   flags
 flags for this frame More...
 
      int   partition_id
 the partition id defines the decoding order of the partitions. More...
 
   }   frame
 data for compressed frame packet More...
 
   vpx_fixed_buf_t   twopass_stats
 data for two-pass packet More...
 
   vpx_fixed_buf_t   firstpass_mb_stats
 first pass mb packet More...
 
   struct vpx_psnr_pkt {
      unsigned int   samples [4]
 Number of samples, total/y/u/v. More...
 
      uint64_t   sse [4]
 sum squared error, total/y/u/v More...
 
      double   psnr [4]
 PSNR, total/y/u/v. More...
 
   }   psnr
 data for PSNR packet More...
 
   vpx_fixed_buf_t   raw
 data for arbitrary packets More...
 
   size_t   layer_sizes [VPX_SS_MAX_LAYERS]
 
   struct vpx_psnr_pkt   layer_psnr [VPX_SS_MAX_LAYERS]
 
   char   pad [128 - sizeof(enum
      vpx_codec_cx_pkt_kind)]
 fixed sz More...
 
data
 packet data More...
 

Detailed Description

Encoder output packet.

This structure contains the different kinds of output data the encoder may produce while compressing a frame.

Member Data Documentation

◆ buf

void* vpx_codec_cx_pkt::buf

compressed data buffer

◆  [1/2]

union { ... } vpx_codec_cx_pkt::data

packet data

◆  [2/2]

union { ... } vpx_codec_cx_pkt::data

packet data

◆ duration

unsigned long vpx_codec_cx_pkt::duration

duration to show frame (in timebase units)

◆ firstpass_mb_stats

vpx_fixed_buf_t vpx_codec_cx_pkt::firstpass_mb_stats

first pass mb packet

◆ flags

vpx_codec_frame_flags_t vpx_codec_cx_pkt::flags

flags for this frame

◆  [1/2]

struct { ... } vpx_codec_cx_pkt::frame

data for compressed frame packet

◆  [2/2]

struct { ... } vpx_codec_cx_pkt::frame

data for compressed frame packet

◆ height

unsigned int vpx_codec_cx_pkt::height[VPX_SS_MAX_LAYERS]

frame height

◆ kind

enum vpx_codec_cx_pkt_kind vpx_codec_cx_pkt::kind

packet variant

◆ layer_psnr

struct vpx_psnr_pkt vpx_codec_cx_pkt::layer_psnr[VPX_SS_MAX_LAYERS]

◆ layer_sizes

size_t vpx_codec_cx_pkt::layer_sizes[VPX_SS_MAX_LAYERS]

◆ pad

char vpx_codec_cx_pkt::pad[128 - sizeof(enum vpx_codec_cx_pkt_kind)]

fixed sz

◆ partition_id

int vpx_codec_cx_pkt::partition_id

the partition id defines the decoding order of the partitions.

Only applicable when "output partition" mode is enabled. First partition has id 0.

◆ psnr [1/3]

double vpx_codec_cx_pkt::psnr[4]

PSNR, total/y/u/v.

◆  [2/3]

struct { ... } ::vpx_psnr_pkt vpx_codec_cx_pkt::psnr

data for PSNR packet

◆  [3/3]

struct { ... } ::vpx_psnr_pkt vpx_codec_cx_pkt::psnr

data for PSNR packet

◆ pts

vpx_codec_pts_t vpx_codec_cx_pkt::pts

time stamp to show frame (in timebase units)

◆ raw

vpx_fixed_buf_t vpx_codec_cx_pkt::raw

data for arbitrary packets

◆ samples

unsigned int vpx_codec_cx_pkt::samples[4]

Number of samples, total/y/u/v.

◆ spatial_layer_encoded

uint8_t vpx_codec_cx_pkt::spatial_layer_encoded[VPX_SS_MAX_LAYERS]

Flag to indicate if spatial layer frame in this packet is encoded or dropped.

VP8 will always be set to 1.

◆ sse

uint64_t vpx_codec_cx_pkt::sse[4]

sum squared error, total/y/u/v

◆ sz

size_t vpx_codec_cx_pkt::sz

length of compressed data

◆ twopass_stats

vpx_fixed_buf_t vpx_codec_cx_pkt::twopass_stats

data for two-pass packet

◆ width

unsigned int vpx_codec_cx_pkt::width[VPX_SS_MAX_LAYERS]

Width and height of frames in this packet.

VP8 will only use the first one. frame width