video - 如何使用ffmpeg获取给定时间戳的帧号

标签 video ffmpeg video-processing

如何使用 ffmpeg 获得最接近给定时间(相对于视频开始)的帧号? 视频具有可变帧速率 .我不需要任何其他元数据或实际帧(图像)本身。速度比精度更重要(除非可能的错误超过几秒钟)。
例子:
输入

  • video.mp4(为简单起见,假设理想恒定为 30 fps)
  • 00:00:05 (HH:MM:SS)

  • 输出
  • 150
  • 最佳答案

    ffmpeg -t 01:05 -i input.mp4  -nostats -vcodec copy -y -f rawvideo /dev/null   2>&1  | grep frame | awk '{print $2}' | tr -d ,
    
    这个 ffmpeg 命令获取您的 input.mp4,将其截断为 -t(在上面的示例中 01:05,并将文件写入/dev/null。-y 覆盖/dev/null 上的任何内容。
    grep 命令获取帧数。
    输入:ffmpeg -t 01:05 -i baywatch.mp4 -nostats -vcodec copy -y -f rawvideo /dev/null 2>&1 | grep frame | awk '{print $2}' | tr -d输出:1559

    关于video - 如何使用ffmpeg获取给定时间戳的帧号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69653703/

    相关文章:

    video - mpegts 是如何工作的

    ffmpeg - 我正在从源代码安装 paraview。我没有以前的安装,但我收到 CMake 错误

    opencv - 可以结合使用HoG和AdaBoost算法进行跟踪吗?

    opencv - 使用 OpenCV 寻找戴某种帽子的人

    css - 如何仅在移动版本中停止 youtube 视频自动播放?

    ios - HTML5 视频播放按钮未在 iOS iPad 上显示

    FFMPEG - 制作稳定且零填充的帧计数器

    ffmpeg - 将视频水平或垂直切成两半并稍后重新加入的命令

    ffmpeg - 如何使用 ffmpeg 更改 360 视频投影?

    iphone - 如何让 youtube iframe 视频在 iOS 上观看时正确调整大小?