我正在尋找一種方法來檢測使用Linux的動畫GIF的(平均)幀速率。 PHP的Imagick類似乎提供了這種功能,但我寧願避免安裝大量庫來使其運行。如何檢測每秒動畫GIF的刻度?
http://www.php.net/manual/en/function.imagick-getimagetickspersecond.php
有沒有一種簡單的方法來做到這一點?
我正在尋找一種方法來檢測使用Linux的動畫GIF的(平均)幀速率。 PHP的Imagick類似乎提供了這種功能,但我寧願避免安裝大量庫來使其運行。如何檢測每秒動畫GIF的刻度?
http://www.php.net/manual/en/function.imagick-getimagetickspersecond.php
有沒有一種簡單的方法來做到這一點?
我覺得ImageMagick的真的是你最好的選擇。
這是對GIF動畫一個identify filename.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動畫沒有一個全球性的幀速率,他們之間有一個單獨的框架。
更好!這就是我所追求的。 – 2010-08-27 23:22:08
您可以自定義什麼ImageMagick的identify
的信息格式應該向您展示:
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
如何是一個庫 – 2010-08-27 22:58:49
@Bears:這是一個鮮爲人知的事實是,ImageMagick庫約重2,106磅(當源代碼打印在重量級8.5x11in紙在12-PT與在每邊;-) – Josh 2010-08-27 23:03:18
@Josh 1" 邊距:單雙面打印或翻番?什麼字體?_INKJET或激光??? _ GET與它MAN! – 2010-08-27 23:15:27