【问题标题】:Frames per second Conceptual Details每秒帧数 概念细节
【发布时间】:2014-02-25 18:53:01
【问题描述】:

我是一个新手,正在尝试理解 ffmpeg/video 背后的概念。

FPS 表示每秒帧数,例如

25fps -> 25 frames captured in a second

从展示角度来看

25 frames need to be displayed in a second.

如果我错了,请纠正我?

现在我已经在 ffmpeg 中编写了一个简单的视频播放器来显示。我读 av_read_frame() 的帧,如果 fps 为 25,则为 25

 av_read_frame()

每秒返回 25 帧?我怎么能把它联系起来?

【问题讨论】:

    标签: ffmpeg libavcodec libavformat


    【解决方案1】:

    读取和写入操作不必考虑相关流的数据速率。相反,它们会尽快发生,不会有任何延迟。毕竟,如果您对文件进行转码,您通常对以 100% 的播放速度进行转码不感兴趣,您更有可能对快速完成文件感兴趣,尽可能快地完成读取、写入、编码等操作。

    任何生成内容的源都有兴趣为其正确添加时间戳,附加帧速率和单独的时间戳,以便播放可以准确地再现流,包括相对于其他流(“lipsync”)。

    任何演示系统都有兴趣在考虑时间戳的情况下呈现数据,必要时添加延迟和空闲时间,以便准确播放。

    介于两者之间的所有其他内容,包括 av_read_frame,只关心不丢失附加到数据的时间,并且执行时不会有任何延迟(如果 av_read_frame 每秒返回尽可能多的帧数)。

    【讨论】:

      猜你喜欢
      • 2012-04-20
      • 1970-01-01
      • 2023-04-01
      • 2013-09-23
      • 2018-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-11
      相关资源
      最近更新 更多