当前位置:网站首页>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;
}
}
边栏推荐
猜你喜欢
随机推荐
如何在Excel 里倒序排列表格数据 || csv表格倒序排列数据
Multi-threaded sequential output
自学网络安全你为什么一学就废?
JUC锁框架——初识AQS
给想要转行渗透测试人的忠告
并发概念基础:线程,死锁
MySQL存储过程学习笔记(基于8.0)
C语言数组的深度分析
虚幻引擎 5 完整指南[2022六月最新课程学习内容]
基于Webrtc和Janus的多人视频会议系统开发7 - publish和subscribe声音设备冲突导致对方听不到声音
Pfsense漏洞复现(CVE-2021-41282)
selenium webdriver 防爬问题 C#
杰哥带大家做一次meterpreter内网渗透模拟
Memory limit should be smaller than already set memoryswap limit, update the memoryswap at the same
[daily office][ssh]cheatsheet
bitnami/mongodb-sharded在AWS EKS扩展shard失败解决
结构体内存对齐-C语言
Uos统信系统 chrony配置
并发概念基础:并发、同步、阻塞
淘宝分布式文件系统存储引擎(一)