怎么修改ffmpeg里面的源码,让它实现流共享
1 回答
慕运维8079593
TA贡献1876条经验 获得超5个赞
while (1) {
AVPacket pkt;
// 不知道pkt是否完整
ret = av_read_frame(f->ctx, &pkt);
if (ret == AVERROR(EAGAIN)) {
av_usleep(10000);
continue;
}
if (ret < 0) {
av_thread_message_queue_set_err_recv(f->in_thread_queue, ret);
break;
}
}
FFMpeg不提供接口,那么就只有修改FFMpeg源码,浏览FFMpeg源码一天后,对外的接口只需要在AVPacket结构体里面增加一个判断包完整性的标志变量,修改源码后的接口调用如下:
while (1) {
AVPacket pkt;
ret = av_read_frame(f->ctx, &pkt);
if (pkt.nLostPackets) {
// Do something.
} else {
// Do something
}
}
- 1 回答
- 0 关注
- 1162 浏览
添加回答
举报
0/150
提交
取消