Google PageSpeed は、私の Web ページの画像を最適化できることを推奨しています。無損失圧縮では平均 11% 節約できますが、私の画像は次の FFmpeg コマンドで作成されています。
ffmpeg -i '$video_path' -vcodec mjpeg -vframes 1 -an -f rawvideo -ss 00:00:20 -s 145*108 $thumb_image
これらの画像を最適化する方法はありますか?
Google PageSpeed は、私の Web ページの画像を最適化できることを推奨しています。無損失圧縮では平均 11% 節約できますが、私の画像は次の FFmpeg コマンドで作成されています。
ffmpeg -i '$video_path' -vcodec mjpeg -vframes 1 -an -f rawvideo -ss 00:00:20 -s 145*108 $thumb_image
これらの画像を最適化する方法はありますか?
まず-s 145*108、有効な ffmpeg オプションではありません。である必要があります-s 145x108。画像の適切なスケーリングについては、ffmpeg を使用して .flv ビデオからサムネイル画像を作成する方法への回答を参照してください。アスペクト比を維持するいくつかの例については。画像の種類を指定していないので、jpeg に出力していると仮定します。-qscale:v(または-qscale古いffmpeg構文を使用している場合)出力品質を変更できます。jpeg の範囲は 1 ~ 31 の線形スケールで、1 が最高品質、31 が最低品質です。
ロスレスで jpeg を最適化する場合は、jpgcrushまたはを使用できjpegtranます。
jpegtran -optimize -copy none -perfect -v input.jpg > output.jpg
Opera で処理された画像が正しく表示されないことに気付きましたjpgcrushが、これは私が確認したのは少し前のことです。
pngcrushpng の場合、 、optipng、およびadvpngその他のいくつかのツールを含むさまざまなツールがあります。
optipng -o7 input.png
FFmpeg の使用に関する質問は、スーパーユーザーに適していることに注意してください。