饰品的英文译语怎么说-maroon5好听的歌
2023年4月2日发(作者:化妆师培训)
AVFormatContext
/**
*格式化I/O上下⽂。
*新的字段可以添加到⼩版本颠簸的末尾。
*删除、重新排序和更改现有字段需要⼀个主要的
*版本凹凸。
*sizeof(AVFormatContext)不能在libav*之外使⽤,使⽤
*avformat_alloc_context()创建⼀个AVFormatContext。
*
*字段可以通过AVOptions(av_opt*)访问,
*使⽤的名李清照的诗句 称字符串匹配相关的命令⾏参数名称和
*可以在libavformat/options_table.h中找到。
*AVOption/命令⾏参数名称在某些情况下与C不同
*出于历史原因或简洁起见,结构字段名称。
*/
typedefstructAVFormatContext{
/**
*⽤于⽇志记录和@refavoptions的类。由avformat_alloc_context()设置。
*导出(de)muxer私有选项(如果存在)。
*/
constAVClass*av_class;
/**
*输⼊容器格式。
*
*仅解复⽤,由avformat_open_input()设置。
*/
ff_const59structAVInputFormat*iformat;
/**
*输出容器格式。
*
*仅Muxing,必须由调⽤者在avformat_write_header()之前设置。
*/
ff_const59structAVOutputFormat*oformat;
/**
*格式化私⼈数据。这是⼀个启⽤AVOptions的结构
*当且仅当iformat/_class不为NULL。
*
*-多路复⽤:由avformat_write_header()设置
*-解复⽤:由avformat_open_input()设置
*/
void*priv_data;
/**
*I/O上下⽂。
*
*-解复⽤:要么由⽤户在avformat_open_input()之前设置(然后
*⽤户必须⼿动关闭它)或由avformat_open_input()设置。
*-muxing:由⽤户在avformat_write_header()之前设置。来电者必须
*负责关闭/释放IO上下⽂。
*
*如果设置了AVFMT_NOFILE标志,请不要设置此字段
*iformat/。在这种情况下,(解)复⽤器将处理
*以其他⽅式进⾏I/O,该字段将为NULL。
*/
AVIOContext*pb;
/*流信息*/
/**
*标志信号流属性。AVFMTCTX_*的组合。
*由libavformat设置。
*/
intctx_flags;
/**
*s中的元素数量。
*
*由avformat_new_stream()设置,不得被任何其他代码修改。
*由avformat_new_stream()设置,不得被任何其他代码修改。
*/
unsignedintnb_streams;
/**
*⽂件中所有流的列表。创建新的流
*avformat_new_stream()。
*
*-解复⽤:流由libavformat在avformat_open_input()中创建。
*如果在ctx_flags中设置了AVFMTCTX_NOHEADER,那么新的流也可能
*出现在av_read_frame()中。
*-muxing:流由⽤户在avformat_write_header()之前创建。
*
*由libavformat在avformat_free_context()中释放。
*/
AVStream**streams;
#ifFF_API_FORMAT_FILENAME
/**
*输⼊或输出⽂件名
*
*-解复⽤:由avformat_open_input()设置
*-muxing:可以在avformat_write_header()之前由调⽤者设置
*
*@deprecated改⽤url。
*/
attribute_deprecated
charfilename[1024];
#endif
/**
*输⼊或输出URL。与旧的⽂件名字段不同,该字段没有
*长度限制。
*
*-分离:由avformat_open_input()设置,初始化为空
*字符串,如果avformat_open_input()中的u鸡冠的拼音 rl参数为NULL。
*-muxing:可以在调⽤avformat_write_header()之前由调⽤者设置
*(或avformat_init_output()如果⾸先调⽤)到字符串
*可以通过av_free()释放。如果它设置为空字符串
*在avformat_init_output()中为NULL。
*
*由libavformat在avf山中古诗 ormat_free_context()中释放。
*/
char*url;
/**
*组件第⼀帧的位置,在
*AV_TIME_BASE⼩数秒。切勿直接设置此值:
*它是从AVStream值推导出来的。
*
*仅解复⽤,由libavformat设置。
*/
int64_tstart_time;
/**
*流的持续时间,以AV_TIME_BASE⼩数表⽰
*秒。仅当您不知道单个流时才设置此值
*持续时间,也不要设置它们中的任何⼀个。这是从
*如果未设置,则为AVStream值。
*
*仅解复⽤,由libavformat设置。
*/
int64_tduration;
/**
*以⽐特/秒为单位的总流⽐特率,如果不是则为0
*可⽤的。如果file_size和
*持续时间被称为FFmpeg可以⾃动计算。
*/
int64_tbit_rate;
unsignedintpacket_size;
intmax_delay;
/**
*修改(去)复⽤器⾏为的标志。AVFMT_FLAG_*的组合。
*由⽤户在avformat_open_input()/avformat_write_header()之前设置。
*/
intflags;
#defineAVFMT_FLAG_GENPTS0x0001///<即使需要解析未来的帧,也会⽣成丢失的pts。
#defineAVFMT_FLAG_IGNIDX0x0002///<忽略索引。
#defineAVFMT_FLAG_NONBLOCK0x0004///<从输⼊读取数据包时不要阻塞。
#defineAVFMT_FLAG_IGNDTS0x0008///<忽略包含DTS和PTS的帧上的DTS
#defineAVFMT_FLAG_NOFILLIN0x0010///<不要从其他值推断任何值,只返回存储在容器中的内容
#defineAVFMT_FLAG_NOPARSE0x0020///<不要使⽤AVParsers,您还必须设置AVFMT_FLAG_NOFILLIN,因为填充代码适⽤于帧并且没有解析->
没有帧。如果已禁⽤解析以查找帧边界,则查找帧也将⽆法⼯作
#defineAVFMT_FLAG_NOBUFFER0x0040///<尽可能不要缓冲帧
#defineAVFMT_FLAG_CUSTOM_IO0x0080///<调⽤者提供了⼀个⾃定义的AVIOContext,不要avio_close()它。
#defineAVFMT_FLAG_DISCARD_CORRUPT0x0100///<丢弃标记为损坏的帧
#defineAVFMT_FLAG_FLUSH_PACKETS0x0200///<刷新AVIOContext每个数据包。
/**
*混合时,尽量避免将任何随机/易失性数据写⼊输出。
*这包括任何随机ID、实时时间戳/⽇期、多路复⽤器版本等。
*
*此标志主要⽤于测试。
*/
#defineAVFMT_FLAG_BITEXACT0x0黄河入海流 400
#ifFF_API_LAVF_MP4A_LATM
#defineAVFMT_FLAG_MP4A_LATM0x8000///<已弃⽤,什么都不做。
#endif
#defineAVFMT_FLAG_SORT_DTS0x10000///<尝试通过dts交错输出数据包(使⽤此标志可以减慢解复⽤速度)
#defineAVFMT_FLAG_PRIV_OPT0x20000///<通过延迟编解码器打开启⽤私有选项(⼀旦所有代码都被转换,这可以设为默认值)
#ifFF_API_LAVF_KEEPSIDE_FLAG
#defineAVFMT_FLAG_KEEP_SIDE_DATA0x40000///<已弃⽤,什么都不做。
#endif
#defineAVFMT_FLAG_FAST_SEEK0x80000///<启⽤快速但不准确的搜索某些格式
#defineAVFMT_FLAG_SHORTEST0x100000///
#defineAVFMT_FLAG_AUTO_BSF0x200000///<根据多路复⽤器的要求添加⽐特流过滤器
/**
*从输⼊读取的数据的最⼤⼤⼩以确定
*输⼊容器格式。
*仅解复⽤,由调⽤者在avformat_open_input()之前设置。
*/
int64_tprobesize;
/**
*读取数据的最⼤持续时间(以AV_TIME_BASE为单位)
*来⾃avformat_find_stream_info()的输⼊。
*仅解复⽤,由调⽤者在avformat_find_stream_info()之前设置。
*可以设置为0以让avformat使⽤启发式进⾏选择。
*/
int64_tmax_analyze_duration;
constuint8_t*key;
intkeylen;
unsignedintnb_programs;
AVProgram**programs;
/**
*强制视频codec_id。
*解复⽤:由⽤户设置。
*/
enumAVCodecIDvideo_codec_id;
/**
*强制⾳频codec_id。
*解复⽤:由⽤户设置。
*/
enumAVCodecIDaudio_codec_id;
/**
/**
*强制字幕codec_id。
*解复⽤:由⽤户设置。
*/
enumAVCodecIDsubtitle_codec_id;
/**
*⽤于每个流的索引的最⼤内存量(以字节为单位)。
*如果索引超过此⼤⼩,条⽬将被丢弃为
*需要保持较⼩的尺⼨。这可能会导致更慢或更少
*准确搜索(取决于多路分配器)。
*强制使⽤完整内存索引的解复⽤器将忽略
*这个。
*-多路复⽤:未使⽤
*-解复⽤:由⽤户设置
*/
unsignedintmax_index_size;
/**
*⽤于缓冲帧的最⼤内存量(以字节为单位)
*从实时捕获设备获得。
*/
unsignedintmax_picture_buffer;
/**
*AVChapter数组中的章节数。
*muxing时,章节⼀般写在⽂件头中,
*所以nb_chapters通常应该在write_header之前初管鲍之交的故事100字 始化
*叫做。⼀些多路复⽤器(例如mov和mkv)也可以编写章节
*在预告⽚中。要在预告⽚中写章节,nb_chapters
*调⽤write_header时必须为零,调⽤时必须为⾮零
*write_trailer被调⽤。
*-复⽤:由⽤户设置
*-解复⽤:由libavformat设置
*/
unsignedintnb_chapters;
AVChapter**chapters;
/**
*适⽤于整个⽂件的元数据。
*
*-解复⽤:由libavformat在avformat_open_input()中设置
*-muxing:可以在avformat_write_header()之前由调⽤者设置
*
*由libavformat在avformat_free_context()中释放。
*/
AVDictionary*metadata;
/**
*真实世界时间中流的开始时间,以微秒为单位
*⾃Unix时代(1970年1⽉1⽇00:00)以来。也就是说,pts=0在
*流是在这个现实世界时间捕获的。
*-muxing:由调⽤者在avformat_write_header()之前设置。如果设置为
*0或AV_NOPTS_VALUE,则当前挂墙时间将
*使⽤。
*-分离:由libavformat设置。AV_NOPTS_VALUE如果未知。注意
*该值可能会在⼀定数量的帧后为⼈所知
*已收到。
*/
int64_tstart_time_realtime;
/**
*⽤于确定帧率的帧数
*avformat_find_stream_info()。
*仅解复⽤,由调⽤者在avformat_find_stream_info()之前设置。
*/
intfps_probe_size;
/**
*错误识别;较⾼的春思皇甫冉拼音版 值会检测到更多的错误,但可能
*将⼀些或多或少的有效部分误检测为错误。
*仅解复⽤,由调⽤者在avformat_open_input()之前设置。
*/
interror_recognition;
interror_recognition;
/**
*I/O层的⾃定义中断回调。
*
*demuxing:由⽤户在avformat_open_input()之前设置。
*muxing:由⽤户在avformat_write_header()之前设置
*(主要⽤于AVFMT_NOFILE格式)。回调
*也应该传递给avio_open2()如果它⽤于
*打开⽂件。
*/
AVIOInterruptCBinterrupt_callback;
/**
*启⽤调试的标志。
*/
intdebug;
#defineFF_FDEBUG_TS0x0001
/**
*交错的最⼤缓冲持续时间。
*
*为确保所有流正确交错,
*av_interleaved_write_frame()将等待,直到它⾄少有⼀个数据包
*在实际将任何数据包写⼊输出⽂件之前,针对每个流。
*当⼀些流是“稀疏的”(即之间有很⼤的差距
*连续数据包),这可能会导致过度缓冲。
*
*该字段指定时间戳之间的最⼤差异
*混合队列中的第⼀个和最后⼀个数据包,在其上⽅libavformat
*将输出⼀个数据包,不管它是否已经为所有⼈排队了⼀个数据包
*流。
*
*仅混合,由调⽤者在avformat_write_header()之前设置。
*/
int64_tmax_interleave_delta;
/**
*允许⾮标准和实验性扩展
*@见_std_compliance
*/
intstrict_std_compliance;
/**
*⽤于⽤户检测⽂件上发⽣的事件的标志。标志必须
*事件处理完毕后由⽤户清除。
*AVFMT_EVENT_FLAG_*的组合。
*/
intevent_flags;
#defineAVFMT_EVENT_FLAG_METADATA_UPDATED0x0001///
/**
*等待第⼀个时间戳时要读取的最⼤数据包数。
*仅解码。
*/
intmax_ts_probe;
/**
*在多路复⽤期间避免负时间戳。
*AVFMT_AVOID_NEG_TS_*常量的任何值。
*注意,这仅在使⽤av_interleaved_write_frame时有效。(interleave_packet_per_dts正在使⽤中)
*-复⽤:由⽤户设置
*-解复⽤:未使⽤
*/
intavoid_negative_ts;
#defineAVFMT_AVOID_NEG_TS_AUTO-1///<⽬标格式需要时启⽤
#defineAVFMT_AVOID_NEG_TS_MAKE_NON_NEGATIVE1///<移动时间戳,使它们⾮负
#defineAVFMT_AVOID_NEG_TS_MAKE_ZERO2///<移动时间戳,使它们从0开始
/**
*传输流ID。
*这将被移到demuxer私有选项中。因此没有API/ABI兼容性
*这将被移到demuxer私有选项中。因此没有API/ABI兼容性
*/
intts_id;
/**
*以微秒为单位的⾳频预加载。
*请注意,并⾮所有格式都⽀持此功能,如果在不⽀持的情况下使⽤它,可能会发⽣不可预测的事情。
*-编码:由⽤户设置
*-解码:未使⽤
*/
intaudio_preload;
/**
*以微秒为单位的最⼤块时间。
*请注意,并⾮所有格式都⽀持此功能,如果在不⽀持的情况下使⽤它,可能会发⽣不可预测的事情。
*-编码:由⽤户设置
*-解码:未使⽤
*/
intmax_chunk_duration;
/**
*最⼤块⼤⼩(以字节为单位)
*请注意,并⾮所有格式都⽀持此功能,如果在不⽀持的情况下使⽤它,可能会发⽣不可预测的事情。
*-编码:由⽤户设置
*-解码:未使⽤
*/
intmax_chunk_size;
/**
*强制使⽤挂钟时间戳作为数据包的pts/dts
*这在存在B帧的情况下具有未定义的结果。
*-编码:未使⽤
*-解码:由⽤户设置
*/
intuse_wallclock_as_timestamps;
/**
*avio标志,⽤于强制AVIO_FLAG_DIRECT。
*-编码:未使⽤
*-解码:由⽤户设置
*/
intavio_flags;
/**
*持续时间字段可以通过多种⽅式估算,可以使⽤该字段
*了解持续时间是如何估计的。
*-编码:未使⽤
*-解码:由⽤户读取
*/
enumAVDurationEstimationMethodduration_estimation_method;
/**
*打开流时跳过初始字节
*-编码:未使⽤
*-解码:由⽤户设置
*/
int64_tskip_initial_bytes;
/**
*纠正单个时间戳溢出
*-编码:未使⽤
*-解码:由⽤户设置
*/
unsignedintcorrect_ts_overflow;
/**
*强制寻找任何(也是⾮关键)帧。
*-编码:未使⽤
*-解码:由⽤户设置
*/
intseek2any;
/**
*在每个数据包之后刷新I/O上下⽂。
*-编码:由⽤户设置
*-解码:未使⽤
*/
intflush_packets;
/**
*格式探测分数。
*最⼤得分为AVPROBE_SCORE_MAX,它在demuxer探测时设置
*格式。
*-编码:未使⽤
*-解码:由avformat设置,由⽤户读取
*/
intprobe_score;
/**
*最⼤读取字节数以识别格式。
*-编码:未使⽤
*-解码:由⽤户设置
*/
intformat_probesize;
/**
*\',\'分隔的允许解码器列表。
*如果为NULL则允许所有
*-编码:未使⽤
*-解码:由⽤户设置
*/
char*codec_whitelist;
/**
*\',\'分隔的允许分路器列表。
*如果为NULL则允许所有
*-编码:未使⽤
*-解码:由⽤户设置
*/
char*format_whitelist;
/**
*libavformat内部使⽤的不透明字段。
*呼叫者不得以任何⽅式访问。
*/
AVFormatInternal*internal;
/**
*IO重新定位标志。
*这是在底层IO上下⽂读取指针时由avformat设置的
*被重新定位,例如在进⾏基于字节的查找时。
*分路器可以使⽤该标志来检测此类更改。
*/
intio_repositioned;
/**
*强制视频编解码器。
*这允许强制特定的解码器,即使有多个
*相同的codec_id。
*解复⽤:由⽤户设置
*/
AVCodec*video_codec;
/**
*强制⾳频编解码器。
*这允许强制特定的解码器,即使有多个
*相同的codec_id。
*解复⽤:由⽤户设置
*/
AVCodec*audio_codec;
/**
*强制字幕编解码器。
*强制字幕编解码器。
*这允许强制特定的解码器,即使有多个
*相同的codec_id。
*解复⽤:由⽤户设置
*/
AVCodec*subtitle_codec;
/**
*强制数据编解码器。
*这允许强制特定的解码器,即使有多个
*相同的codec_id。
*解复⽤:由⽤户设置
*/
AVCodec*data_codec;
/**
*在元数据头中作为填充写⼊的字节数。
*解复⽤:未使⽤。
*Muxing:由⽤户通过av_format_set_metadata_header_padding设置。
*/
intmetadata_header_padding;
/**
*⽤户数据。
*这是⽤户的⼀些私⼈数据的地⽅。
*/
void*opaque;
/**
*设备⽤于与应⽤程序通信的回调。
*/
av_format_control_messagecontrol_message_cb;
/**
*输出时间戳偏移,以微秒为单位。
*Muxing:由⽤户设置
*/
int64_toutput_ts_offset;
/**
*转储格式分隔符。
*可以是\",\"或\"n\"或其他任何东西
*-多路复⽤:由⽤户设置。
*-分离:由⽤户设置。
*/
uint8_t*dump_separator;
/**
*强制数据codec_id。
*解复⽤:由⽤户设置。
*/
enumAVCodecIDdata_codec_id;
#ifFF_API_OLD_OPEN_CALLBACKS
/**
*在需要进⾏多路复⽤时调⽤以打开更多IO上下⽂。
*
*这可以由⽤户应⽤程序设置来执⾏安全检查
*打开它们之前的URL。
*该函数的⾏为应该类似于avio_open2(),提供了AVFormatContext
*作为上下⽂信息并到达。
*
*如果为NULL,则⼀些简单的检查与avio_open2()⼀起使⽤。
*
*不得直接从avformat外部访问。
*@见av_format_set_open_cb()
*
*解复⽤:由⽤户设置。
*
*@deprecated使⽤io_open和io_close。
*/
attribute_deprecated
int(*open_cb)(structAVFormatContext*s,AVIOContext**p,constchar*url,intflags,constAVIOInterruptCB*int_cb,AVDictionary**options);
int(*open_cb)(structAVFormatContext*s,AVIOContext**p,constchar*url,intflags,constAVIOInterruptCB*int_cb,AVDictionary**options);
#endif
/**
*\',\'分隔的允许协议列表。
*-编码:未使⽤
*-解码:由⽤户设置
*/
char*protocol_whitelist;
/**
*⽤于打开新IO流的回调。
*
*每当复⽤器或解复⽤器需要打开IO流(通常来⾃
*avformat_open_input()⽤于分路器,但对于某些格式可能发⽣在
*其他时候也是),它将调⽤此回调来获取IO上下⽂。
*
*@params格式上下⽂
*@parampb成功时,这⾥应该返回新打开的IO上下⽂
*@paramurl要打开的url
*@param标记AVIO_FLAG_*的组合
*@paramoptions附加选项的字典,与
*avio_open2()中的语义
*@return成功时返回0,失败时返回负的AVERROR代码
*
*@note某些muxers和demuxers会嵌套,即它们打开⼀个或多个
*额外的内部格式上下⽂。因此AVFormatContext指针
*传递给此回调的可能与⾯向调⽤者的回调不同。
*但是,它将具有相同的“不透明”字段。
*/
int(*io_open)(structAVFormatContext*s,AVIOContext**pb,constchar*url,
intflags,AVDictionary**options);
/**
*关闭使⽤_open()打开的流的回调。
*/
void(*io_close)(structAVFormatContext*s,AVIOContext*pb);
/**
*\',\'分隔的禁⽌协议列表。
*-编码:未使⽤
*-解码:由⽤户设置
*/
char*protocol_blacklist;
/**
*最⼤流数。
*-编码:未使⽤
*-解码:由⽤户设置
*/
intmax_streams;
/**
*在estimating_timings_from_pts中跳过持续时间计算。*-编码:未使⽤*-解码:由⽤户设置
*/
intskip_estimate_duration_from_pts;
}AVFormatContext;
更多推荐
Avio是什么意思o在线翻译读音例句
发布评论