FFmpeg
Data Structures | Enumerations | Functions
h264_sei.h File Reference
#include "get_bits.h"
#include "h264_ps.h"

Go to the source code of this file.

Data Structures

struct  H264SEITimeCode
 
struct  H264SEIPictureTiming
 
struct  H264SEIAFD
 
struct  H264SEIA53Caption
 
struct  H264SEIUnregistered
 
struct  H264SEIRecoveryPoint
 
struct  H264SEIBufferingPeriod
 
struct  H264SEIFramePacking
 
struct  H264SEIDisplayOrientation
 
struct  H264SEIGreenMetaData
 
struct  H264SEIAlternativeTransfer
 
struct  H264SEIContext
 

Enumerations

enum  H264_SEI_Type {
  H264_SEI_TYPE_BUFFERING_PERIOD = 0, H264_SEI_TYPE_PIC_TIMING = 1, H264_SEI_TYPE_PAN_SCAN_RECT = 2, H264_SEI_TYPE_FILLER_PAYLOAD = 3,
  H264_SEI_TYPE_USER_DATA_REGISTERED = 4, H264_SEI_TYPE_USER_DATA_UNREGISTERED = 5, H264_SEI_TYPE_RECOVERY_POINT = 6, H264_SEI_TYPE_FRAME_PACKING = 45,
  H264_SEI_TYPE_DISPLAY_ORIENTATION = 47, H264_SEI_TYPE_GREEN_METADATA = 56, H264_SEI_TYPE_MASTERING_DISPLAY_COLOUR_VOLUME = 137, H264_SEI_TYPE_ALTERNATIVE_TRANSFER = 147
}
 SEI message types. More...
 
enum  H264_SEI_PicStructType {
  H264_SEI_PIC_STRUCT_FRAME = 0, H264_SEI_PIC_STRUCT_TOP_FIELD = 1, H264_SEI_PIC_STRUCT_BOTTOM_FIELD = 2, H264_SEI_PIC_STRUCT_TOP_BOTTOM = 3,
  H264_SEI_PIC_STRUCT_BOTTOM_TOP = 4, H264_SEI_PIC_STRUCT_TOP_BOTTOM_TOP = 5, H264_SEI_PIC_STRUCT_BOTTOM_TOP_BOTTOM = 6, H264_SEI_PIC_STRUCT_FRAME_DOUBLING = 7,
  H264_SEI_PIC_STRUCT_FRAME_TRIPLING = 8
}
 pic_struct in picture timing SEI message More...
 
enum  H264_SEI_FpaType {
  H264_SEI_FPA_TYPE_CHECKERBOARD = 0, H264_SEI_FPA_TYPE_INTERLEAVE_COLUMN = 1, H264_SEI_FPA_TYPE_INTERLEAVE_ROW = 2, H264_SEI_FPA_TYPE_SIDE_BY_SIDE = 3,
  H264_SEI_FPA_TYPE_TOP_BOTTOM = 4, H264_SEI_FPA_TYPE_INTERLEAVE_TEMPORAL = 5, H264_SEI_FPA_TYPE_2D = 6
}
 frame_packing_arrangement types More...
 

Functions

int ff_h264_sei_decode (H264SEIContext *h, GetBitContext *gb, const struct H264ParamSets *ps, void *logctx)
 
void ff_h264_sei_uninit (H264SEIContext *h)
 Reset SEI values at the beginning of the frame. More...
 
const char * ff_h264_sei_stereo_mode (const H264SEIFramePacking *h)
 Get stereo_mode string from the h264 frame_packing_arrangement. More...
 
int ff_h264_sei_process_picture_timing (H264SEIPictureTiming *h, const SPS *sps, void *logctx)
 Parse the contents of a picture timing message given an active SPS. More...
 

Enumeration Type Documentation

◆ H264_SEI_Type

SEI message types.

Enumerator
H264_SEI_TYPE_BUFFERING_PERIOD 

buffering period (H.264, D.1.1)

H264_SEI_TYPE_PIC_TIMING 

picture timing

H264_SEI_TYPE_PAN_SCAN_RECT 

pan-scan rectangle

H264_SEI_TYPE_FILLER_PAYLOAD 

filler data

H264_SEI_TYPE_USER_DATA_REGISTERED 

registered user data as specified by Rec. ITU-T T.35

H264_SEI_TYPE_USER_DATA_UNREGISTERED 

unregistered user data

H264_SEI_TYPE_RECOVERY_POINT 

recovery point (frame # to decoder sync)

H264_SEI_TYPE_FRAME_PACKING 

frame packing arrangement

H264_SEI_TYPE_DISPLAY_ORIENTATION 

display orientation

H264_SEI_TYPE_GREEN_METADATA 

GreenMPEG information.

H264_SEI_TYPE_MASTERING_DISPLAY_COLOUR_VOLUME 

mastering display properties

H264_SEI_TYPE_ALTERNATIVE_TRANSFER 

alternative transfer

Definition at line 28 of file h264_sei.h.

◆ H264_SEI_PicStructType

pic_struct in picture timing SEI message

Enumerator
H264_SEI_PIC_STRUCT_FRAME 

0: frame

H264_SEI_PIC_STRUCT_TOP_FIELD 

1: top field

H264_SEI_PIC_STRUCT_BOTTOM_FIELD 

2: bottom field

H264_SEI_PIC_STRUCT_TOP_BOTTOM 

3: top field, bottom field, in that order

H264_SEI_PIC_STRUCT_BOTTOM_TOP 

4: bottom field, top field, in that order

H264_SEI_PIC_STRUCT_TOP_BOTTOM_TOP 

5: top field, bottom field, top field repeated, in that order

H264_SEI_PIC_STRUCT_BOTTOM_TOP_BOTTOM 

6: bottom field, top field, bottom field repeated, in that order

H264_SEI_PIC_STRUCT_FRAME_DOUBLING 

7: frame doubling

H264_SEI_PIC_STRUCT_FRAME_TRIPLING 

8: frame tripling

Definition at line 46 of file h264_sei.h.

◆ H264_SEI_FpaType

frame_packing_arrangement types

Enumerator
H264_SEI_FPA_TYPE_CHECKERBOARD 
H264_SEI_FPA_TYPE_INTERLEAVE_COLUMN 
H264_SEI_FPA_TYPE_INTERLEAVE_ROW 
H264_SEI_FPA_TYPE_SIDE_BY_SIDE 
H264_SEI_FPA_TYPE_TOP_BOTTOM 
H264_SEI_FPA_TYPE_INTERLEAVE_TEMPORAL 
H264_SEI_FPA_TYPE_2D 

Definition at line 61 of file h264_sei.h.

Function Documentation

◆ ff_h264_sei_decode()

int ff_h264_sei_decode ( H264SEIContext h,
GetBitContext gb,
const struct H264ParamSets ps,
void *  logctx 
)

◆ ff_h264_sei_uninit()

void ff_h264_sei_uninit ( H264SEIContext h)

Reset SEI values at the beginning of the frame.

Definition at line 41 of file h264_sei.c.

Referenced by decode_nal_units(), h264_close(), h264_decode_end(), h264_decode_flush(), h264_init_context(), and parse_nal_units().

◆ ff_h264_sei_stereo_mode()

const char* ff_h264_sei_stereo_mode ( const H264SEIFramePacking h)

Get stereo_mode string from the h264 frame_packing_arrangement.

Definition at line 498 of file h264_sei.c.

Referenced by output_frame().

◆ ff_h264_sei_process_picture_timing()

int ff_h264_sei_process_picture_timing ( H264SEIPictureTiming h,
const SPS sps,
void *  logctx 
)

Parse the contents of a picture timing message given an active SPS.

Definition at line 57 of file h264_sei.c.

Referenced by h264_export_frame_props(), and parse_nal_units().