2017-03-27 15 views
1

私のip camからjpgファイルをダウンロードしました。jpgファイルはChromeで表示されますがサファリでは表示されません

ただし、ファイルが壊れているか、その形式に関するものです。私はサファリやpreview.app(MacOSの)を使用して、それを開くことができませんでした

それはクロームで示しています。

私が実際にやろうとしているのは、プログラムでダウンロードしてUIImageViewで表示することですが、画像データは常にnilです。


あなたは私を助け、いただきましたが、その絵で起こって見て喜んでいる場合は、その

を私は画像フォーマットについて多くを知らないと質問が奇妙である、

画像:broken jpg

お時間をいただきありがとうございます。


UPDATEの2017年3月30日:

はまだモーションJPEGフレームをデコードする方法については答えを見つけることができます。

私はグーグルでは、違いはDHTですが、フレームに追加する方法はわかりません。

私が知る限り、libjpeg-turbo、ffmpegのような第三者のライブラリはほとんどありませんが、例は見つかりませんでした。

これまでにCやObjective-Cで書いたことがあれば、私を助けてくれることを願っています!

本当に欲しい、知りたい!

ありがとうございます!

+0

PSでファイルを開くと、次のエラーが表示されます。* JPEG SOSマーカーの前にSOFn、DQT、またはDHT JPEGマーカーがないため、リクエストを完了できませんでした。あなたのイメージをもう一度保存する必要があります。 – Kaiido

+0

こんにちは@カイード、私は私のip camから画像をダウンロードしました。私はプログラムでそれを追加しなければならないようだ、それは本当の面倒で時間の無駄だ。ご協力いただきありがとうございます! – gabrielchn

答えて

1

あなたのファイルMotion JPEGファイルではなく、JPEG画像です...

ブラウザがそれを開くことができます、あなたがコーデック情報を見て、VLCでこれを確認することができます理由を説明するん:

モーションJPEG動画(MJPG)

あるいはffmpeg -i MeQ6p.jpg通過:

ストリーム#0:0:ビデオ:MJPEG、(PC、bt470bg /不明/不明)yuvj422p、640×480、25 TBR、25 TBN、25

TBCはだからあなたの問題はあなたのファイルのみにありこれはおそらくMJPEGストリームの代わりに静止JPEG画像を保存するようにip-camを設定することで修正できます。

+0

もう一度別のjpegファイルとして自分の「イメージ」をラップする方法を見つけましたが、それはうまくいきましたが、これが本当の解決策であるはずです。再度、感謝します! – gabrielchn

+0

ところで、フレームごとにmjpegストリームをffmpegでデコードできますか?私はtcp接続を介してデータを取得し、HTTP以外のデータを結合する必要があるので、Webビューで表示するだけではなりません。誰かが教えてくれることを願っている。その間、私は私の研究をしています。ただこれをできるだけ早く解決したい。 – gabrielchn

+0

@gabrielchn、はい、確かに 'ffmpeg -i MeQ6p.jpg outputframe%d.jpg'を実行するだけで、' outputframe [n] .jpg'という名前の静止画ファイルにmjpegのすべてのフレームが抽出されます1つのフレームしかない場合) – Kaiido

0

私はちょうど試したところ、あなたの投稿されたURLからデータが取得され、約17750バイトが得られたことがわかりました。

let imageURL = NSURL(string : "https://i.stack.imgur.com/MeQ6p.jpg") 
let imageData = NSData(contentsOfURL: imageURLFromParse! as NSURL) 
+0

あなたの返信ありがとう!しかし、あなたがこの行を書くならば:let im = UIImage(data:imgData!); 'img'はゼロになります。 – gabrielchn

+0

うん、あなたの画像に間違っているように見えます。私は他の画像で試してみました。新しい画像をアップロードしてみてください。コーディングの問題ではないようです。 – Joe

+0

すべての画像に同じ問題があります。私はウェブサイトがjpgにイメージを隠すことができることを発見しました、私は単に他のオプションなしでイメージをアップロードして変換し、イメージは修復されました。 – gabrielchn

関連する問題