FFmpeg
Macros | Functions | Variables
h264_sei.c File Reference
#include <limits.h>
#include <stdio.h>
#include <string.h>
#include "libavutil/error.h"
#include "libavutil/log.h"
#include "libavutil/macros.h"
#include "libavutil/mem.h"
#include "bytestream.h"
#include "get_bits.h"
#include "golomb.h"
#include "h264_ps.h"
#include "h264_sei.h"
#include "sei.h"

Go to the source code of this file.

Macros

#define AVERROR_PS_NOT_FOUND   FFERRTAG(0xF8,'?','P','S')
 

Functions

void ff_h264_sei_uninit (H264SEIContext *h)
 Reset SEI values at the beginning of the frame. 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...
 
static int decode_picture_timing (H264SEIPictureTiming *h, GetByteContext *gb, void *logctx)
 
static int decode_recovery_point (H264SEIRecoveryPoint *h, GetBitContext *gb, void *logctx)
 
static int decode_buffering_period (H264SEIBufferingPeriod *h, GetBitContext *gb, const H264ParamSets *ps, void *logctx)
 
static int decode_green_metadata (H264SEIGreenMetaData *h, GetByteContext *gb)
 
int ff_h264_sei_decode (H264SEIContext *h, GetBitContext *gb, const H264ParamSets *ps, void *logctx)
 
const char * ff_h264_sei_stereo_mode (const H2645SEIFramePacking *h)
 Get stereo_mode string from the h264 frame_packing_arrangement. More...
 

Variables

static const uint8_t sei_num_clock_ts_table [9]
 

Detailed Description

H.264 / AVC / MPEG-4 part10 SEI decoding.

Author
Michael Niedermayer micha.nosp@m.elni.nosp@m.@gmx..nosp@m.at

Definition in file h264_sei.c.

Macro Definition Documentation

◆ AVERROR_PS_NOT_FOUND

#define AVERROR_PS_NOT_FOUND   FFERRTAG(0xF8,'?','P','S')

Definition at line 42 of file h264_sei.c.

Function Documentation

◆ ff_h264_sei_uninit()

void ff_h264_sei_uninit ( H264SEIContext h)

Reset SEI values at the beginning of the frame.

Definition at line 48 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_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 65 of file h264_sei.c.

Referenced by h264_export_frame_props(), and parse_nal_units().

◆ decode_picture_timing()

static int decode_picture_timing ( H264SEIPictureTiming h,
GetByteContext gb,
void *  logctx 
)
static

Definition at line 134 of file h264_sei.c.

Referenced by ff_h264_sei_decode().

◆ decode_recovery_point()

static int decode_recovery_point ( H264SEIRecoveryPoint h,
GetBitContext gb,
void *  logctx 
)
static

Definition at line 151 of file h264_sei.c.

Referenced by ff_h264_sei_decode().

◆ decode_buffering_period()

static int decode_buffering_period ( H264SEIBufferingPeriod h,
GetBitContext gb,
const H264ParamSets ps,
void *  logctx 
)
static

Definition at line 169 of file h264_sei.c.

Referenced by ff_h264_sei_decode().

◆ decode_green_metadata()

static int decode_green_metadata ( H264SEIGreenMetaData h,
GetByteContext gb 
)
static

Definition at line 206 of file h264_sei.c.

Referenced by ff_h264_sei_decode().

◆ ff_h264_sei_decode()

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

Definition at line 231 of file h264_sei.c.

Referenced by decode_nal_units(), and parse_nal_units().

◆ ff_h264_sei_stereo_mode()

const char* ff_h264_sei_stereo_mode ( const H2645SEIFramePacking h)

Get stereo_mode string from the h264 frame_packing_arrangement.

Definition at line 306 of file h264_sei.c.

Referenced by output_frame().

Variable Documentation

◆ sei_num_clock_ts_table

const uint8_t sei_num_clock_ts_table[9]
static
Initial value:
= {
1, 1, 1, 2, 2, 3, 3, 2, 3
}

Definition at line 44 of file h264_sei.c.

Referenced by ff_h264_sei_process_picture_timing().