计算压缩后视频的ssim,到底是哪个放在前面哪个放在后面?
dwing吧
全部回复
仅看楼主
level 1
ffmpeg -y -i v1.mp4 -i v2.mp4 -lavfi ssim="stats_file=ssim.log" -f null -
压缩后的视频放在前面v1.mp4的位置原视频放在后面v2.mp4的位置,还是反过来放?
2021年01月24日 18点01分 1
吧务
level 14
差别其实不在于实际上的ssim计算过程,而在于ffmpeg会自动把ref的格式转换成符合main的,main是第一个,ref是第二个(源在后面)
2021年01月24日 21点01分 2
网上有人和你说的不一样 https://www.zhihu.com/question/67326571
2021年01月25日 00点01分
https://www.zhihu.com/question/67326571
2021年01月25日 00点01分
ref会转换成main的格式? 那前面是h265 后面是h264的话 h264会转成h265 还是有损转换吧?
2021年01月25日 13点01分
我把源h264转换成lossless的h265 然后计算两个视频的ssim h265放后面ssim值等于1.00 h265放前面ssim值等于0.94
2021年01月25日 13点01分
level 14
ffmpeg -h filter=ssim可以看到相关的help信息。
Filter ssim
Calculate the SSIM between two video streams.
Inputs:
#0: main (video)
#1: reference (video)
Outputs:
#0: default (video)
ssim AVOptions:
stats_file <string> ..FV...... Set file where to store per-frame difference information
f <string> ..FV...... Set file where to store per-frame difference information
framesync AVOptions:
eof_action <int> ..FV...... Action to take when encountering EOF from secondary input (from 0 to 2) (default repeat)
repeat 0 ..FV...... Repeat the previous frame.
endall 1 ..FV...... End both streams.
pass 2 ..FV...... Pass through the main input.
shortest <boolean> ..FV...... force termination when the shortest input terminates (default false)
repeatlast <boolean> ..FV...... extend last frame of secondary streams beyond EOF (default true)
2021年01月25日 01点01分 3
还是没看懂[泪]
2021年01月25日 05点01分
@贴吧用户_Qb3eaSS🐾 第一个是你想计算ssim的视频,第二个是参考视频(源)
2021年01月25日 05点01分
它这里好像没讲哪个是原视频哪个是有损后的视频啊 只讲了main主视频和reference参考视频 那主视频和参考视频哪个才是原视频呢?
2021年01月25日 05点01分
@贴吧用户_Qb3eaSS🐾 reference是原视频
2021年01月25日 05点01分
level 6
lz
自己看看公式,xy反过来有区别吗
2021年01月25日 06点01分 4
得到的ssim值不一样[小乖]
2021年01月25日 06点01分
@贴吧用户_Qb3eaSS🐾 那是别的原因引入的,2L就已经说了,帧率分辨率都有影响
2021年01月25日 06点01分
@LuckyDisc 如果两个视频格式不一样 ssim值是不是会小很多? 我把源h264视频转成 h265视频(参数medium crf18)和h264视频(参数medium crf18) h265的ssim值只有0.94 而h264的ssim值有0.99
2021年01月25日 09点01分
level 5
ffmpeg -i videoToCompare.mp4 -i originalVideo.mp4 -lavfi ssim="stats_file=ssim.log" -f null - 大概是这样子。
不过SSIM的理论值和视频的顺序无关,所以哪个在前哪个在后都无所谓。
楼主如果有问题的话不妨把视频什么的都发出来,这样也方便知道问题在哪
2021年01月25日 15点01分 5
可能是帧率导致的问题吧 用shana压制 可变帧率变成了恒定帧率
2021年01月25日 15点01分
@贴吧用户_Qb3eaSS🐾 用吧里的xmedia recode压一次试试
2021年01月25日 17点01分
@i990049 为啥叫吧里的? 是吧里大神开发的吗?
2021年01月25日 17点01分
@贴吧用户_Qb3eaSS🐾 怎么说呗,这个吧里可能就他一个人在用,估计他觉得这个吧是他家的
2021年01月25日 18点01分
1