首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >视频流中的mv、fd、aq、vq、sq、f是什么?

视频流中的mv、fd、aq、vq、sq、f是什么?
EN

Stack Overflow用户
提问于 2015-01-05 19:32:55
回答 2查看 5.9K关注 0票数 10

我使用FFPLAY在TCP上使用RTSP播放视频流,当VQ值增加时播放正常,但当只有M-V之前的值增加时,它在5-6秒后停止。

代码语言:javascript
复制
nan M-V:    nan fd=   0 aq=    0KB vq=    0KB sq=    0B f=0/0   
......
......

Duration: N/A, start: 2.133467, bitrate: N/A
    Stream #0:0: Video: h264 (Main), yuvj420p(pc), 1280x1024, 15 fps, 25 tbr, 90k tbn, 30 tbc
[swscaler @ 0x7fd9502403c0] deprecated pixel format used, make sure you did set range correctly
  "76.81" M-V: -5.409 fd=   0 aq=    0KB vq=    0KB sq=    0B f=2/2 ` 

谁能解释一下这些M-V,fd,aq,vq,f是什么,以及M-V之前的值("76.81")?

EN

回答 2

Stack Overflow用户

发布于 2016-12-23 07:51:34

我也有同样的问题,通过查看ffplay源代码,我发现了以下内容:

代码语言:javascript
复制
        av_log(NULL, AV_LOG_INFO,
               "%7.2f %s:%7.3f fd=%4d aq=%5dKB vq=%5dKB sq=%5dB f=%"PRId64"/%"PRId64"   \r",
               get_master_clock(is),
               (is->audio_st && is->video_st) ? "A-V" : (is->video_st ? "M-V" : (is->audio_st ? "M-A" : "   ")),
               av_diff,
               is->frame_drops_early + is->frame_drops_late,
               aqsize / 1024,
               vqsize / 1024,
               sqsize,
               is->video_st ? is->viddec.avctx->pts_correction_num_faulty_dts : 0,
               is->video_st ? is->viddec.avctx->pts_correction_num_faulty_pts : 0)

播放样例视频得到了输出的样例:

7.11 A-V: 0.003 fd= 1 aq= 21KB vq= 321KB sq= 0B f=0/0

7.11 (master clock)是从流/视频开始的时间

音频和视频时间戳之间的A-V (avdiff)差异

fd丢弃的帧数

音频帧的aq大小

视频帧的vq大小

字幕帧的sq大小

f时间戳纠错率(不是100%确定)

M-VM-A分别表示只有视频流,只有音频流。

票数 10
EN

Stack Overflow用户

发布于 2019-03-20 05:58:43

我想澄清的是,aq, vq分别是“音频队列大小”和“视频队列大小”,而不是Marware answer中的“音频/视频帧大小”。

很抱歉发布了一个不完整的答案,但这个帖子是谷歌搜索ffmpeg vq的第一个结果,我希望我的澄清能对那些碰巧在这里寻找vq含义的人有所帮助。

下面是vq (视频队列大小)在实际意义上的一些实用(但利基)示例。

假设您正在使用ffplay来显示来自安全摄像头的视频。在这种特定情况下,vq号(连同摄像机流带宽)将定义从“实时”到在ffplay中看到画面的延迟。

例如,如果安全摄像头提供高质量的10 10Mbps流,而vq在300K左右,则延迟/延迟约为1/4秒。四分之一秒的延迟几乎是不可察觉的。

delay (seconds) = vq_number * 8 * 1024 / video_stream_bits_per_second

现在,如果摄像头以2 2Mbps的速度传输,vq为1000K (并不少见),则延迟(延迟)约为4秒。这意味着你现在在ffplay中看到的东西是四秒前发生的。

在任何其他情况下- vq越多越好。更大的vq意味着有足够的数据排队(缓冲)以流畅地播放视频。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27778678

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档