我正在尝试使用一些ffmpeg的库来构建应用程序,我注意到许多数据结构中包含“Context”一词。
你可以在这里看到一些http://www.ffmpeg.org/doxygen/trunk/classes.html
我不明白在这个背景中使用“上下文”一词。
关于它通常意味着什么的暗示?
答案 0 :(得分:2)
查看您提供的文档似乎与特殊编解码器的上下文相关,以便每个SomethingContext
封装
类似“使用H264时......”
答案 1 :(得分:2)
在C中,struct通常是实例化对象的手段。
API将有一个new()类型函数,它将分配其中一个“上下文”结构并提供指向它的指针。
然后,该指针通常会传递给该API的任何公共函数。
e.g。
struct btree_state
*btree_state;
btree_new( &btree_state );
btree_new_element( btree_state, pointer_to_user_data );
这样我们可以拥有给定对象的多个实例。我们通过传递给API函数的状态指针选择使用哪一个。
答案 2 :(得分:2)
对于FFMpeg,将“context”看作有点像对象实例(c ++,java“this”)。在FFmepg中打开格式会话,打开输入设备,编解码器和输出设备时创建上下文