显示实时码率的代码片段
  1z4DPON8I3dd 2023年11月02日 44 0

对于采集视频的C程序,有时需要知道当前视频的实时码率,可以用以下片段实现打印。

 
#define SHOW_BITRATE
#define FRM_BIT_RATE_TIME 3
#define STREAM_TYPE_NUM 3
static unsigned short frmrate_sp[STREAM_TYPE_NUM] = { 0 };
static unsigned short statime_sp[STREAM_TYPE_NUM] = { 0 };
static unsigned short bitrate_sp[STREAM_TYPE_NUM] = { 0 };
 
#ifdef SHOW_BITRATE
	int chnNum = m_devId;
	bitrate_sp[chnNum] += nSize;
	frmrate_sp[chnNum]++;

 

	struct timeval start;
	gettimeofday(&start, NULL);
    unsigned short now = start.tv_sec * 1000 + start.tv_usec / 1000;

	if (((now - statime_sp[chnNum]) / 1000) >= FRM_BIT_RATE_TIME)
	{
		double fps = (double)frmrate_sp[chnNum] / ((double)(now - statime_sp[chnNum]) / 1000);
		double  kbr = (double)bitrate_sp[chnNum] * 8 / (double)(now - statime_sp[chnNum]);

		printf("dev:%d,framerate:%0.2f,bitrate:%0.2f(kbps)\n",m_devId,fps,kbr);

		frmrate_sp[chnNum] = 0;
		bitrate_sp[chnNum] = 0;
		statime_sp[chnNum] = now;
	}
#endif
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  Qgw4UHkx7saV   2023年11月02日   53   0   0 #include#define头文件
1z4DPON8I3dd