计算器通过发送和接收数据包进行通信。通常,系统会在每个输入时间戳处沿每个输入流发送一个数据包。数据包可以包含任何类型的数据,例如单个视频帧或单个整数检测计数。
创建数据包
数据包通常使用 mediapipe::MakePacket<T>()
或 mediapipe::Adopt()
(来自 packet.h)创建。
// Create a packet containing some new data.
Packet p = MakePacket<MyDataClass>("constructor_argument");
// Make a new packet with the same data and a different timestamp.
Packet p2 = p.At(Timestamp::PostStream());
或:
// Create some new data.
auto data = absl::make_unique<MyDataClass>("constructor_argument");
// Create a packet to own the data.
Packet p = Adopt(data.release()).At(Timestamp::PostStream());
数据包中的数据通过 Packet::Get<T>()
访问