gpt4 book ai didi

ffmpeg - 如何在降低视频持续时间的同时提高视频帧率?

转载 作者:行者123 更新时间:2023-12-04 23:06:46 25 4
gpt4 key购买 nike

我有一个 fps 为 30 的视频文件,但视频播放器(例如 VLC)将 fps 读取为 25(我不知道为什么!)。这会导致实际视频时长与视频播放器显示的内容不匹配。例如,开始帧和结束帧(见附图)顶部中心显示的视频时间戳之间的时间差为 12 分 36 秒,但视频播放器显示的视频时长为 15 分 7 秒(见两个图像中的任何一个的右下角)。我认为视频播放器将原始视频持续时间乘以 1.2 (30/25)。
我尝试使用 ffmpeg使用以下命令将 fps 更改为 30:

ffmpeg -i input.mp4 -filter:v fps=30 output.mp4
但是 ffmpeg doc on changing frame rate表示“ 视频的输出持续时间将保持不变。
我需要在我的代码中进行哪些更改,以使播放器中显示的视频时长与实际视频时长匹配?
起始帧:
enter image description here
结束帧:
enter image description here

最佳答案

如果问题是文件中存储了不正确的帧速率(25 fps)(vlc 报告文件告诉它的内容),您可以尝试:

ffmpeg -r 30 -i input.mp4 [-c copy] output.mp4
  • 指定 -r 30输入选项覆盖文件指定的帧速率。
  • 试试 -c copy首先(没有括号)看看你是否可以复制编码数据。如果它不起作用,请将其删除并重新编码视频流。
  • 关于ffmpeg - 如何在降低视频持续时间的同时提高视频帧率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71549570/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com