bash - 将视频从 60 FPS 转换为 25 FPS 而不会减慢它
问题描述
我正在尝试ffmpeg
在 Linux 系统中对视频进行编码。原始视频有 60 FPS,我需要将其更改为 25,但是当我这样做时,视频比原始视频慢。
当我将其更改为 30 时,一切都很好(我想编码器每秒播放一次比将其计算为 25 更容易)。我怎样才能实现该视频将具有与原始视频相同的速度 25 FPS?
目前我正在使用这个命令:
ffmpeg -i "test.mkv" -r 30 -vcodec libx264 -x264-params keyint=10:scenecut=0 -an -bsf:v dump_extra -video_size hd720 test2.mp4
谢谢您的帮助!
解决方案
“视频比原始视频慢”是什么意思?我试试这个:
ffmpeg -i BQTerrace_1920x1080_60.mp4 -r 25 -vcodec libx264 -x264-params keyint=10:scenecut=0 -an -bsf:v dump_extra BQTerrace_1920x1080_25.mp4
输出的视频并不比原始视频慢,但看起来比原始视频更不流畅。这是因为输出视频每秒的帧数少于原始视频。
就我而言,总帧数、帧速率和视频时间为:
BQTerrace_1920x1080_60.mp4: 600 frames, 60 fps, 10s
BQTerrace_1920x1080_25.mp4: 250 frames, 25 fps, 10s
推荐阅读
- python - Why can't I rename column names and why are column names in my pandas DataFrame in parentheses?
- anaconda - What is conda shell activation?
- python - Errors with SSL verification with my python webscraping program using selenium and chromedriver
- spring - Spring Security OAuth 2 Password Grant Disable Query Parameters
- python-3.x - BeautifulSoup 找不到表
- bash - 向 Git 存储库中的所有文件添加缺少的尾随换行符
- node.js - 无法在 nodejs 中使用带有 kubernetes 的 ingress-nginx 访问服务器
- java - 将完整文本传递给应用的 Google Assistant actions.intent
- android - 如何使用媒体投影 API 屏幕录制辅助显示?
- javascript - 如何从一个函数表达式访问/使用变量或数据到另一个函数表达式?