查看: 930|回复: 17
收起左侧

[软件] 关于转码,有没有不加工画面,只改变视频fps的方法

[复制链接]
mifanu
发表于 2020-10-3 11:33:00 | 显示全部楼层 |阅读模式
本帖最后由 mifanu 于 2020-10-3 12:08 编辑

按理说,60fps的视频,变成30fps的视频。画面大小不变。那么300兆的文件,就应该变成150兆。是这个理吧。也就是说一秒钟是60张画面,只取30张。其他都不变。

但是我用ffmpep,ffmpeg -i input -r 30 output 之后 300兆的视频,变成了252兆。而且花费的时间也是十多分钟。看来他还是对画面逐张压缩了。

我的需求是,不对画面进行处理,只裁减fps。也就是传说中的无损。能吗?

---------分割-------
自己找了个方案。还没试
https://www.zhihu.com/question/45060242
nmyh
发表于 2020-10-3 12:16:47 | 显示全部楼层
不是这个理,如果视频的每帧都是由同样清晰的画面叠在一起,那么视频容量就大了去了,视频有自己的压缩算法。
设置帧率是不能无损转换的。无损转换的代码是“ -c:v copy -c:a copy”,它不能跟“ -r”一起用是无效的。

评分

参与人数 1人气 +1 收起 理由
mifanu + 1 看看。

查看全部评分

送外卖的
发表于 2020-10-3 13:42:52 | 显示全部楼层
本帖最后由 送外卖的 于 2020-10-3 13:43 编辑

抱歉 回复错 编辑掉。
mifanu
 楼主| 发表于 2020-10-3 14:27:00 | 显示全部楼层
本帖最后由 mifanu 于 2020-10-3 14:31 编辑

根据之乎的指点。我用mkvmerge  --default-duration 0:30fps --fix-bitstream-timing-information 0 input -o output。果然瞬间就把视频调整为了30fps。但是视频也从8分钟,变成了16分钟。看来这个命令只是调整了速度,没有筛选祯。看来这个完全不符合我的要求。
ffmpeg倒是符合2祯取1祯的要求,但是它估计还是对画面处理了,不然用不了那么多分钟。
nmyh
发表于 2020-10-3 15:18:29 | 显示全部楼层
我收集了几个ffmpeg无损处理视频的方法:
  1. REM 无损转视频(含音频)
  2. ffmpeg.exe -i "In.flv" -c:v copy -c:a copy "Out.mp4"

  3. REM 仅无损提取音频文件
  4. ffmpeg.exe -i "In.mp4" -vn -c:a copy "Out.m4a"

  5. REM 无损调整视频显示宽高比(Display Aspect Ratio)
  6. ffmpeg.exe -i "In.mp4" -aspect 16:9 -c:v copy -c:a copy "Out.mp4"

  7. REM 视频逆时针旋转多少度(无损,仅metadata),rotate参考值:90、180、270、-90、-180、-270(负值是顺时针旋转多少度)
  8. ffmpeg.exe -i "In.mp4" -metadata:s:v:0 rotate=90 -c:v copy -c:a copy "Out.mp4"
复制代码


Kenvix007
发表于 2020-10-3 16:56:53 | 显示全部楼层
nmyh 发表于 2020-10-3 15:18
我收集了几个ffmpeg无损处理视频的方法:

没有楼主需要的视频帧率调节?
指定30 FPS 或者 60 FPS.
nmyh
发表于 2020-10-3 17:22:43 来自手机 | 显示全部楼层
Kenvix007 发表于 2020-10-3 16:56
没有楼主需要的视频帧率调节?
指定30 FPS 或者 60 FPS.

不能无损转。除了我贴的几个,其余情况似乎都不能无损转
Kukon
发表于 2020-10-3 17:59:25 | 显示全部楼层
按照我的理解应该是不能的。帧数变少,视频压缩的时候相邻帧的预测是需要重新计算的。
mifanu
 楼主| 发表于 2020-10-3 18:37:01 | 显示全部楼层
本帖最后由 mifanu 于 2020-10-3 18:42 编辑
nmyh 发表于 2020-10-3 17:22
不能无损转。除了我贴的几个,其余情况似乎都不能无损转

每秒60祯变成,每秒30祯,总时长不变。也就是说10分钟视频总共36000祯,现在我只取18000祯,drop18000祯。
这总祯数减少了一半,按说大小是不是应该减小一半?而且如果不加工画面,只是隔一祯取一祯的话,这个操作是不是应该比较快?
但是现在60fps变成30fps之后,300兆大小,变成了250兆大小。这似乎与丢掉的内容不成比例。

不知道视频能不能这样。反正我做gif的时候,就是把全部祯分解,然后把其中一半的祯连成gif,就能制成一个相对流畅的画面,而且肉眼几乎看不出与原视频有区别。

nmyh
发表于 2020-10-3 21:02:09 | 显示全部楼层
本帖最后由 nmyh 于 2020-10-3 21:23 编辑
mifanu 发表于 2020-10-3 18:37
每秒60祯变成,每秒30祯,总时长不变。也就是说10分钟视频总共36000祯,现在我只取18000祯,drop18000祯 ...

你熟悉GIF,我就传两个GIF动态图压缩包上来。


两张GIF图片都是同样画质的,一个是原图,就是6帧都是完整的画面重叠在一起的,大小是742KiB。
另一个是经过优化压缩处理的GIF,由于大多数画面内容都是一样的,所以这个的大小就只有135KiB了。虽然优化压缩了,但是可以通过GIF Movie Gear工具先反优化,再导出所有帧画面图片,每一张图都是一样的完整清晰。

补充,由下图可以看出,经过优化压缩后的GIF动图在删除3帧之后,体积并没缩小多少,只有几KiB:



视频的压缩参数比GIF多了去了,希望有人更了解的来解答一下吧。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-11-24 16:24 , Processed in 0.140877 second(s), 18 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表