Php 如何检测动画GIF';每秒有多少滴答声?

Php 如何检测动画GIF';每秒有多少滴答声?,php,linux,imagemagick,gif,Php,Linux,Imagemagick,Gif,我正在寻找一种使用Linux检测动画GIF的(平均)帧速率的方法。PHP的Imagick类似乎提供了这个功能,但我宁愿避免安装大量的库来让它工作 有什么简单的方法可以做到这一点吗?我认为ImageMagick确实是你最好的选择 这就是动画gif上的标识文件名.gif的外观: gif.gif[1] GIF 350x350 350x350+0+0 8-bit PseudoClass 256c 145KB 0.000u 0:00.003 gif.gif[2] GIF 350x350 350x350+

我正在寻找一种使用Linux检测动画GIF的(平均)帧速率的方法。PHP的Imagick类似乎提供了这个功能,但我宁愿避免安装大量的库来让它工作


有什么简单的方法可以做到这一点吗?

我认为ImageMagick确实是你最好的选择

这就是动画gif上的
标识文件名.gif
的外观:

gif.gif[1] GIF 350x350 350x350+0+0 8-bit PseudoClass 256c 145KB 0.000u 0:00.003
gif.gif[2] GIF 350x350 350x350+0+0 8-bit PseudoClass 256c 145KB 0.000u 0:00.006
gif.gif[3] GIF 350x350 350x350+0+0 8-bit PseudoClass 256c 145KB 0.000u 0:00.010

这并没有给出帧速率,这很好,因为动画GIF没有全局帧速率,它们在帧之间有一个单独的帧速率

您可以自定义ImageMagick的
标识
应显示给您的信息格式:

identify \
      -format "%T ticks:  %f: Frame[%s]  %m %wx%h %P%O %r %z-bit\n" \
       anim.gif
这应该能奏效

示例输出:

 50 ticks:  anim.gif: Frame[0]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[1]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[2]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[3]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[4]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 50 ticks:  anim.gif: Frame[5]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[6]  GIF 1x1 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[7]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[8]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[9]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit
 10 ticks:  anim.gif: Frame[10]  GIF 128x128 128x128+0+0 PseudoClass sRGB Matte 8-bit

一个库“一吨”是怎么回事?@Bears:一个鲜为人知的事实是imagemagick库的重量约为2106磅(当源代码以12磅的12磅重8.5x11英寸的纸张打印出来时,两边各有1英寸的边距;-)@Josh:单面打印还是双面打印?什么字体?喷墨打印还是激光打印???随它去吧,伙计!@Bears我相信我还需要一个依赖性很强的libmagick9开发工具(总共74个包)。我有点怀疑,鉴于libmagick9开发工具看起来很像一个开发工具库——”这个包包括使用libMagick编译程序所需的头文件和静态库。