加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

FFMPEG中重要的数据结构的挖掘

发布时间:2020-12-14 03:54:26 所属栏目:大数据 来源:网络整理
导读:typedef struct AVFormatContext { struct AVInputFormat *iformat; void *priv_data; ByteIOContext *pb; unsigned int nb_streams; AVStream *streams[MAX_STREAMS];} AVFormatContext;typedef struct AVStream { int index; /** stream index in AVFormat
typedef struct AVFormatContext {
    struct AVInputFormat *iformat;
    void *priv_data;
	
    ByteIOContext *pb;
	
    unsigned int nb_streams;
    AVStream *streams[MAX_STREAMS];
} AVFormatContext;


typedef struct AVStream {
    int index;    /**< stream index in AVFormatContext */
    int id;       /**< format-specific stream ID */
    AVCodecContext *codec; /**< codec context */

    AVRational time_base;

    struct AVCodecParserContext *parser;
} AVStream;


typedef struct AVCodecContext {

    uint8_t *extradata;
    int extradata_size;

    AVRational time_base;

    int width,height;

    enum PixelFormat pix_fmt;

    /* audio only */
    int sample_rate; ///< samples per second
    int channels;    ///< number of audio channels

    char codec_name[32];
    enum CodecType codec_type; /* see CODEC_TYPE_xxx */
    enum CodecID codec_id; /* see CODEC_ID_xxx */

    unsigned int codec_tag;

	struct AVCodec *codec;

	void *priv_data;
} AVCodecContext;

typedef struct AVCodec {
    int (*init)(AVCodecContext *);
    int (*encode)(AVCodecContext *,uint8_t *buf,int buf_size,void *data);
    int (*close)(AVCodecContext *);
    int (*decode)(AVCodecContext *,void *outdata,int *outdata_size,const uint8_t *buf,int buf_size);
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读