当前位置:网站首页>av_read_frame 阻塞,基于回调的解决办法
av_read_frame 阻塞,基于回调的解决办法
2022-08-04 05:34:00 【_杜竞宁_】
设置回调,每次 av_read_frame 前刷新时间
static int InterruptFouction(void *theTimeSpec)
{
if (!theTimeSpec) {
return 0;
}
std::cout << "InterruptFouction called~!" << std::endl;
time_t mtime;
time(&mtime);
time_t *t = (time_t*)theTimeSpec;
if( ( mtime - *t ) > 5) {
return 1;
}
return 0;
}
time_t TimeNow;
m_pFmtCtx->interrupt_callback.callback = InterruptFouction;
m_pFmtCtx->interrupt_callback.opaque = &TimeNow;
while(isRunning){
time(&TimeNow);
ret = av_read_frame(m_pFmtCtx, m_pAVPacket);
if ( ret == 0 ) {
// to do something
} else {
break;
}
}
边栏推荐
猜你喜欢
随机推荐
JUC锁框架——基于AQS的实现,从ReentrantLock认识独占和共享
库函数的模拟实现-C语言
跑跑飞弹室外跑步AR游戏代码方案设计
华为鲲鹏arm服务器下使用webrtc和boost踩坑记--编译篇
基于Event Stream操作JSON
【HIT-SC-MEMO5】哈工大2022软件构造 复习笔记5
杰哥带大家做一次meterpreter内网渗透模拟
[Development Miscellaneous][Editor][Code Reading]ctags & vim
MySQL基础
指针运算相关面试题详解【C语言】
常见的一些排序
MySQL存储过程学习笔记(基于8.0)
复杂格式的json转递
Operating System Random
实现高并发服务器(二)
【HIT-SC-LAB1】哈工大2022软件构造 实验1
树和二叉树
Usage of SFTP
C语言对文件的操作(完整版)
新冠病毒和网络安全的异同及思考