• 締切済み

PHPでのプログレッシブJPEGの判定方法

PHPで、GIFかJPEGかの判定方法はわかるのですが、 JPEGで、プログレッシブJPEGかどうかの判定方法がわかりません 同様に、GIFで、インターレースGIFなのかや、アニメーションGIFなのかや、透過GIFなのかの判定方法もわかりません どなかたご存知な方がいらっしゃいましたら、 教えて下さい。よろしくお願いします。

  • PHP
  • 回答数1
  • ありがとう数1

みんなの回答

回答No.1

結局、通常のWindowsアプリケーション(ビューアーやphotoshopなど)は、画像のバイナリを読んで判別したりおりますので、 http://www.marguerite.jp/Nihongo/Labo/Image/JPEG2.html こちらや、 http://hp.vector.co.jp/authors/VA032610/JPEGFormat/JPEGsegment.htm こちらの内容を読んでいただいて、JPEGのヘッダファイルがどのようになっているかを見ていただいて、PHPで処理するといったところになります。 一応、簡単にサンプルを作ってみました。 function is_pjpeg($path){ $match = '|^ffd8ffe0.{4}4a46494600(.+?)ffdb(.+?)ffc4(.+?)ffc2|'; $fp = fopen($path, 'r'); if(!$fp) return false; $check_data = fread($fp, 4096); fclose($fp); $pack = unpack('H*', $check_data); $check_data = $pack[1]; $flag = preg_match($match, $check_data, $m); return $flag; } わーっと作りましたので、実際判別ミスをするかもしれません。

hoge--hoge
質問者

お礼

サンプルまで作成いただきありがとうございます さっそく、活用させていただきます やはり、すてきなライブラリなどはないのですね

関連するQ&A

  • EXIF情報を持つjpeg画像かどうかの判定方法

    以前、透過GIFの判定方法を質問させていただきました。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1816606 同じくEXIF情報を持つ画像もエラーにしたいと考えていますが、Javaで判定可能でしょうか。 Javaはまだ対応できていないのでは?というのが、周りの回答です。 よろしくお願いします。

  • プログレッシブJPEGは普通のJPEGよりも圧縮効率がいい?

    読み込み中でも徐々に内容が分かるプログレッシブJPEGですが、 同画質でもプログレッシブJPEGの方が サイズファイルが小さいかもと書いてあるBBSがありました。 同じ画質なのにサイズが変わるというのは同じJPEGなのに ありえるのかどうか疑問でしたので質問させていただきました。 ご存知の方よろしくお願いします。

  • プログレッシブに詳しいかたに聞きたいです。

    インターレースとプログレッシブの違いは理解できましたが色々とプログレッシブに対し分からないことがあります。  1.デジタルカメラで撮影する時にプログレッシブ方式で撮影しないとプログレッシブで見ることは出来ないのか(インターレース方式で撮影したものをPCに取り込みEDIUSなどでプログレッシブ編集、書き出しが出来ないのか)ということ。  2.プログレッシブ方式の場合、インターレース方式でしか見ることの出来ないTVでは映らないのでしょうか。  3.2012年8月現在では、一般的に綺麗に見えるDVDを商用として作成する場合インターレースとプログレッシブではどちらで作成したほうが良いのか。  4.プログレッシブについての質問を調べていたらプログレッシブ方式ではDVDやBRに書き出しが出来ないと回答にあったのですが本当でしょうか。 プログレッシブに詳しい方、教えてください。よろしくお願いします。

  • プログレッシブとインターレース

    DVDを再生する場合、インターレース(飛び越し走査)よりプログレッシブ表示(順次走査)にしたほうが画質がきれいというイメージがあるのですが、本当のところはどうなんでしょうか?プログレッシブのほうがきれいだと周りの人はいうのですが本当でしょうか?私には違いが分かりません。インターレースはプログレッシブと比較して劣っているという事でしょうか?私は、どちらも優劣は無くインターレースにもプログレッシブにもそれぞれメリットやデメリットがあると思うのですが間違いでしょうか。

  • jpegファイルがプログレッシブ方式かそうじゃないかを見分ける方法はないですか?

    jpegファイルがプログレッシブ方式かそうじゃないかを見分ける方法はないですか?

  • プログレッシブについて

    現在DVD/HDDハイブリッドレコーダを購入検討中です。プログレッシブ出力のありなしで悩んでいる機種があります。(プログレッシブなしだと結構安くなる) 今もっているテレビはD端子などついてなく、当然インターレス映像のみなので関係ないのですが、将来プログレッシブ対応テレビを購入した際には、映画などはプログレッシブで観たいと思っています。 1) レコーダ側でプログレッシブ出力(D2端子以上)し、プログレッシブ対応TVで見た場合。 2) レコーダ側で映画などを視聴する場合、一旦インターレスで出力(D2端子以上)して、TV側のインターレス→プログレッシブ変換機能によってプログレッシブ視聴した場合。 1)と2)どちらが画質は良いのでしょうか? 映画などの本来プログレッシブ素材のソフトもたしかDVDソフトにはインターレスで記録されていると聞いたことがあります。 だとすると、1)の場合も、レコーダ側(この場合、レコーダのプレー機能側といったほうが良い)でインターレス→プログレッシブ変換していることになり、結局レコーダ側とTV側のどちらの変換機能が優秀かに依存するということでしょうか? だとすれば、DVD側は安価なプログレッシブ非対応(ただしD端子出力は持つ)のプレーヤで後に高級な(!)テレビを購入するという選択肢もあるのですが。。。

  • プログレッシブJPEG→普通のJPEGへの変換

    インターネット上で手に入れた画像を切り出して 携帯の待ち受けを作ろうと思ったのですが、 JPEGの画質を劣化させずに切り出しが出来るソフト 「BUFF」では、どうやらプログレッシブJPEGが読み込めないようで 切り出しができませんでした。 そこで、プログレッシブJPEGをベースラインJPEGに変換したいのですが、一括で変換が行えるソフトはありませんでしょうか? もし知っている方がいましたら、教えていただきたいです。 OSはVISTA ULTIMATE 32BITです。

  • インターレースとプログレッシブ

    基本は、TVモニタはインターレース、PCモニタはプログレッシブと聞きます。これは、動画表示を考慮してらしいです。インターレースの方が、動画表示に優れているっていう意味なのか、TVがあまり賢くないから、仕方なく、インターレースでごまかしているのか、どちらなのでしょうか? TVにもプログレッシブはあるのですが、動画の見え方はどうなのでしょうか?PCでDVD見ている時のように、微妙に不自然なのでしょうか?

  • インターレース・プログレッシブ化ソフトとかって...

    所持しているjpgやgif画像をドラックドロップなどの操作で一括でインターレース・プログレッシブ化してくれるツールってありますかね? フォトショでいちいち編集・保存するのがだるくて困ってます。

  • (再度)JPEG→プログレッシブJPEGの一括変換

    再度質問します。前回は急いでいたため、詳細なこちらの状況をかけませんでした。すみません。 さて、今回の質問なんですが、私はJPEG画像をたくさん(60枚程度)掲載したwebページを作っているのですが(もう公開しているのですが)、なにより画像がたくさんあるので、すべて表示するまでに回線が遅い方には時間がかかりすぎてしまうのではないかと思い、何かいい方法はと探していたところ、プログレッシブJPEGにすればよいのではないかと思いました。そのためのふつうのJPEGからプログレッシブJPEGへ変換できるフリーソフトを教えてください。ただ前途の通り画像がたくさんあるので、フォルダごと変換できたり、複数選択したファイルをドラック&ドロップで一括変換できるもの、等が個人的には使いやすそうなので、そんな感じのものを教えてください。

専門家に質問してみよう