gpt4 book ai didi

c - AVFrame 弃用属性重新获得?

转载 作者:太空宇宙 更新时间:2023-11-04 00:02:39 26 4
gpt4 key购买 nike

我想打印出视频帧的一些属性:我研究了 AVFrame 结构,但只发现了以下令人失望的地方:

attribute_deprecated short *    dct_coeff
attribute_deprecated uint32_t * mb_type

在我看来,我感兴趣的一切都已经过时了。顺便说一句,我没有找到

int16_t(*[2]    motion_val )[2]

我捕获的实际帧中的属性。我的问题是:我怎样才能访问帧的 dct_coeff 或 motion_vector 或 mb_type 等属性?

最佳答案

参见 av_frame_get_side_data (frame, AV_FRAME_DATA_MOTION_VECTORS ) 用于运动 vector 。其他两个没有替代品。文档指出它们是 mpeg 特定的并使用内部实现细节,这就是为什么没有提供替代品的原因。

(不要忘记设置 avctx-> flags2 & AV_CODEC_FLAG2_EXPORT_MVS ,否则不导出。)

对于没有替代品的两个,我知道如果您是(例如),您可能需要此类信息。编写流分析器,但 FFmpeg 现在确实不提供流分析器级别的 API。如果有更通用的 API,它们显然可以作为单独的辅助数据类型添加。如果你想要那样,你可能应该成为一名 FFmpeg 开发人员并使用更广泛的非 MPEG 特定的 API(例如,不使用 mb_type 的内部宏),甚至可能为其他编解码器实现它。在任何其他情况下,我真的不明白您为什么需要该信息。能详细说说吗?

关于c - AVFrame 弃用属性重新获得?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36883792/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com