Bug #1770

Problem with decoding some JPG images

Added by Leonid Protasov over 7 years ago. Updated about 7 years ago.

Status:FixedStart date:09/23/2013
Priority:NormalDue date:
Assignee:Andreas Smas% Done:

100%

Category:Photos/Images
Target version:4.6
Found in version:4.3.531 Platform:RPi

Description

GLW [ERROR]: Unable to load http://ororo.tv/uploads/show/poster/192/thumb_S1Poster1.jpg -- Unable to decode image of size (210 x 280)

1600x1200.jpg (374 KB) Leonid Protasov, 03/17/2014 07:00 PM


Related issues

Related to Bug #2063: ST doesn't support decoding of some JPG pixel formats (Al... Fixed 03/19/2014

Associated revisions

Revision bbe1d3d1
Added by Andreas Smas about 7 years ago

Add some ugly hacks for decoding RGBA lossy jpegs

Fixes #1770

Change included in version 4.5.255

History

#2 Updated by Leonid Protasov over 7 years ago

Invaluable info is here: http://www.raspberrypi.org/phpBB3/viewtopic.php?f=35&t=7167&start=500

Running out of GPU memory used to be caused by too many image decoder threads running on XBMC.

sudo /opt/vc/bin/vcdbg -m128 reloc

will show you the GPU memory used. Can you run that whilst browsing thumbnails, and look at the "free: xxxM" value?
If that gets close to zero when you see the corruption then it's probably memory related (although I'm guessing it won't be).

And that's how ST crashes in Ororo plugin:
00:02:02.859: HTTP [DEBUG]:Parking connection to ororo.tv:80 (id=4)
00:02:08.001: Settings [DEBUG]:Wrote 7929 bytes to "/stos/persistent/showtime/settings/httpcookies"
00:02:24.174: Freetype [DEBUG]:Unloading 'Ubuntu Mono' [Regular] originally from dataroot://resources/fonts/UbuntuMono-Regular.ttf
00:02:25.539: Freetype [DEBUG]:Loaded 'Ubuntu Mono' [Regular] domain:11
00:02:27.935: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:28.801: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:29.273: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:29.548: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:30.042: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:30.062: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:30.310: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:30.946: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:31.011: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:31.838: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:31.975: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:33.003: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:36.057: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream
00:02:36.101: GLW [ERROR]:Unable to load http://ororo.tv/uploads/show/poster/192/thumb_S1Poster1.jpg -- Unable to decode image of size (210 x 280)
00:03:23.681: navigator [INFO]:Opening http://ororo.tv/uploads/show/poster/192/thumb_S1Poster1.jpg
00:03:23.778: RPI [DEBUG]:Backdrop loading skin://graphics/background.jpg
00:03:26.454: OMX [INFO]:OMX.broadcom.image_decode: Corrupt stream

#3 Updated by Leonid Protasov over 7 years ago

  • Category set to Photos/Images
  • Assignee set to Andreas Smas
  • Target version set to 4.4
  • Platform changed from Linux to RPi

This has nothing to do with running out of GPU memory.
Try to open http://ororo.tv/uploads/show/poster/192/thumb_S1Poster1.jpg
and http://ororo.tv/uploads/show/poster/66/thumb_MV5BMTgwNTM0MTkzMF5BMl5BanBnXkFtZTcwMDk1NTIzNA__.jpg
via webui open and errors are 100% reproducible

#4 Updated by Andreas Smas over 7 years ago

  • Status changed from New to Accepted
  • Priority changed from High to Normal
  • Target version changed from 4.4 to 33

Seems libav can't decode these either (which is the default JPEG decoder)

Might be fixed when I upgrade libav. But i won't do that for 4.4

#5 Updated by Andreas Smas over 7 years ago

  • Target version deleted (33)

#6 Updated by Leonid Protasov about 7 years ago

  • Target version set to 4.6

#7 Updated by Leonid Protasov about 7 years ago

That images are JPG 32bit while other on that site are 24bit

Checked XBMC on OpenElec and it decodes that JPG ok.

Maybe this helps:
https://github.com/xbmc/xbmc-rbp/blob/master/xbmc/cores/omxplayer/OMXImage.cpp
https://github.com/xbmc/xbmc-rbp/blob/master/xbmc/cores/omxplayer/OMXCore.cpp

Taken from here:
http://www.raspberrypi.org/phpBB3/viewtopic.php?t=15463

#8 Updated by Andreas Smas about 7 years ago

  • Status changed from Accepted to Fixed
  • % Done changed from 0 to 100

Applied in changeset git|commit:bbe1d3d14f8eadf81be430a312a0180c7c3f0022.

#10 Updated by Leonid Protasov about 7 years ago

One more sample attached.

Also available in: Atom PDF