获取h265编码,getActiveDatta()获取到的是空数据
这个接口是我在进行h265模块编码后,调用的回调,获取h265编码。使用getActiveData()函数获取h265编码数据,但是为什么获取的都是空数据。在回调中打印一下buf->getActiveData() 前面5个字节和buf->getActiveSize()的大小
dengkx 发表于 2024-4-30 17:26
在回调中打印一下buf->getActiveData() 前面5个字节和buf->getActiveSize()的大小
getActiveSize: 499
getActiveData : 00 00 00 01 02 。
大小为499,前五个byte为00 00 00 01 02。 Zxj1351064076 发表于 2024-4-30 17:38
getActiveSize: 499
getActiveData : 00 00 00 01 02 。
大小为499,前五个byte为00 00...
这不有数据吗? dengkx 发表于 2024-4-30 17:50
这不有数据吗?
这样按字节打印是有数据。但是 shared_ptr<VideoBuffer> buf = static_pointer_cast<VideoBuffer>(buffer);
char* char_data = static_cast<char*>(buf->getActiveData());
std::vector<char> videobuffer(char_data, char_data + buf->getActiveSize());
// 分块处理数据
for (size_t i = 0; i < videobuffer.size(); i += BUFFER_SIZE) {
size_t chunk_size = std::min(BUFFER_SIZE, videobuffer.size() - i);
std::cout <<"chunk_size: "<< chunk_size << std::endl;
// std::cout <<"videobuffer.data(): "<< videobuffer.data() << std::endl;
shared_memory.writeData(videobuffer.data() + i, chunk_size);
}这个有错误吗?写入的数据是一个空 dengkx 发表于 2024-4-30 17:50
这不有数据吗?
你好!请问一下,getActiveData和getActivesize获取的是一个完整的视频帧是吗? Zxj1351064076 发表于 2024-5-8 10:50
你好!请问一下,getActiveData和getActivesize获取的是一个完整的视频帧是吗?
是
页:
[1]