11 #include "cores/FFmpeg.h"    16 #include <libavutil/avutil.h>    17 #include <libavformat/avformat.h>    18 #include <libavfilter/avfilter.h>    19 #include <libavcodec/avcodec.h>    46   int chroma_format_idc;
    47   int separate_colour_plane_flag;
    48   int bit_depth_luma_minus8;
    49   int bit_depth_chroma_minus8;
    50   int qpprime_y_zero_transform_bypass_flag;
    51   int seq_scaling_matrix_present_flag;
    53   int log2_max_frame_num_minus4;
    54   int pic_order_cnt_type;
    55   int log2_max_pic_order_cnt_lsb_minus4;
    57   int max_num_ref_frames;
    58   int gaps_in_frame_num_value_allowed_flag;
    59   int pic_width_in_mbs_minus1;
    60   int pic_height_in_map_units_minus1;
    62   int frame_mbs_only_flag;
    63   int mb_adaptive_frame_field_flag;
    65   int direct_8x8_inference_flag;
    67   int frame_cropping_flag;
    68   int frame_crop_left_offset;
    69   int frame_crop_right_offset;
    70   int frame_crop_top_offset;
    71   int frame_crop_bottom_offset;
    80   static bool Open() { 
return true; }
    82   static bool CanStartDecode(
const uint8_t *buf, 
int buf_size);
    91   bool              Open(
enum AVCodecID codec, uint8_t *in_extradata, 
int in_extrasize, 
bool to_annexb);
    93   bool NeedConvert(
void)
 const { 
return m_convert_bitstream; }
    94   bool              Convert(uint8_t *pData, 
int iSize);
    95   uint8_t*          GetConvertBuffer(
void) 
const;
    96   int               GetConvertSize() 
const;
    97   uint8_t* GetExtraData();
    98   const uint8_t* GetExtraData() 
const;
    99   int               GetExtraSize() 
const;
   100   void              ResetStartDecode(
void);
   101   bool              CanStartDecode() 
const;
   102   void SetConvertDovi(
bool value) { m_convert_dovi = value; }
   103   void SetRemoveDovi(
bool value) { m_removeDovi = value; }
   104   void SetRemoveHdr10Plus(
bool value) { m_removeHdr10Plus = value; }
   106   static bool       mpeg2_sequence_header(
const uint8_t *data, 
const uint32_t size, 
mpeg2_sequence *sequence);
   109   static int  avc_parse_nal_units(AVIOContext *pb, 
const uint8_t *buf_in, 
int size);
   110   static int  avc_parse_nal_units_buf(
const uint8_t *buf_in, uint8_t **buf, 
int *size);
   111   int         isom_write_avcc(AVIOContext *pb, 
const uint8_t *data, 
int len);
   113   bool              IsIDR(uint8_t unit_type);
   114   bool              IsSlice(uint8_t unit_type);
   115   bool              BitstreamConvertInitAVC(
void *in_extradata, 
int in_extrasize);
   116   bool              BitstreamConvertInitHEVC(
void *in_extradata, 
int in_extrasize);
   117   bool              BitstreamConvert(uint8_t* pData, 
int iSize, uint8_t **poutbuf, 
int *poutbuf_size);
   118   static void BitstreamAllocAndCopy(uint8_t** poutbuf,
   120                                     const uint8_t* sps_pps,
   121                                     uint32_t sps_pps_size,
   129       uint8_t  idr_sps_pps_seen;
   130       uint8_t *sps_pps_data;
   134   uint8_t          *m_convertBuffer;
   136   uint8_t          *m_inputBuffer;
   139   uint32_t          m_sps_pps_size;
   141   bool              m_convert_bitstream;
   145   bool              m_convert_3byteTo4byteNALSize;
   146   bool              m_convert_bytestream;
   151   bool m_removeHdr10Plus;
 
Definition: BitstreamConverter.h:30
Definition: BitstreamConverter.h:40
Definition: BitstreamConverter.h:22
Definition: BitstreamConverter.h:85
Definition: BitstreamConverter.h:74
Definition: BitstreamConverter.h:126