OpenELEC / OpenELEC.tv

OpenELEC - The living room PC for everyone
http://openelec.tv
1.6k stars 887 forks source link

OpenELEC 8.0.0 crashes browsing file trees #5034

Open simpz opened 7 years ago

simpz commented 7 years ago

Since upgrading to OpenELEC 8.0.0 (and blanking the config), every time I browse the file tree it crashes out and restarts. This happens with many directories and I have also retried blanking out the Thumbnails dir, but it doesn't help. I'm guessing crashing in the thumbnails code somewhere.

I can't see much in the logs, maybe you can? Any ideas, it's very frustrating.

Thanks

`21:22:29.183 T:1946824720 DEBUG: LIRC: Update - NEW at 374982:67 0 KEY_UP devinput (KEY_UP)

21:22:29.183 T:1946824720 DEBUG: OnKey: 166 (0xa6, obc89) pressed, action is Up

21:22:29.197 T:1530917792 DEBUG: CNFSFile::Open - opened home/simpz/multi/Yes Minister/Yes Minister - Series 3 DVD/folder.jpg

21:22:29.198 T:1946824720 DEBUG: LIRC: Update - NEW at 374997:67 0 KEY_UP_UP devinput (KEY_UP_UP)

21:22:29.224 T:1946824720 DEBUG: LIRC: Update - NEW at 375023:67 0 KEY_UP devinput (KEY_UP)

21:22:29.225 T:1946824720 DEBUG: OnKey: 166 (0xa6, obc89) pressed, action is Up

21:22:29.235 T:1859122080 DEBUG: Thread JobWorker start, auto delete: true

21:22:29.254 T:1859122080 DEBUG: COMXCoreComponent::Initialize OMX.broadcom.image_decode input port 320 output port 321 m_handle 0x72e0c0b8

21:22:29.256 T:1859122080 DEBUG: COMXCoreComponent::AllocInputBuffers component(OMX.broadcom.image_decode) - port(320), nBufferCountMin(2), nBufferCountActual(2), nBufferSize(130112), nBufferAlignmen(16)

21:22:29.261 T:1859122080 DEBUG: COMXCoreComponent::Initialize OMX.broadcom.egl_render input port 220 output port 221 m_handle 0x72e2ee20

21:22:29.262 T:1859122080 DEBUG: COMXCoreComponent::UseEGLImage component(OMX.broadcom.egl_render) - port(221), nBufferCountMin(1), nBufferCountActual(1), nBufferSize(15360) nBufferAlignmen(16)

21:22:29.279 T:1859122080 DEBUG: COMXCoreComponent::Deinitialize : OMX.broadcom.image_decode handle 0x72e0c0b8

21:22:29.281 T:1946824720 DEBUG: LIRC: Update - NEW at 375080:67 0 KEY_UP_UP devinput (KEY_UP_UP)

21:22:29.281 T:1859122080 DEBUG: COMXCoreComponent::Deinitialize : OMX.broadcom.egl_render handle 0x72e2ee20

21:22:29.282 T:1859122080 DEBUG: DecodeJpegToTexture: decoded special://masterprofile/Thumbnails/8/83263e00.jpg 801x540

21:22:29.470 T:1530917792 DEBUG: CNFSFile::Close closing file home/simpz/multi/Yes Minister/Yes Minister - Series 3 DVD/folder.jpg

21:22:29.473 T:1530917792 DEBUG: COMXCoreComponent::Initialize OMX.broadcom.image_decode input port 320 output port 321 m_handle 0x5ffaeab0

21:22:29.475 T:1530917792 DEBUG: COMXCoreComponent::AllocInputBuffers component(OMX.broadcom.image_decode) - port(320), nBufferCountMin(2), nBufferCountActual(2), nBufferSize(2489888), nBufferAlignmen(16)

21:22:29.498 T:1530917792 DEBUG: COMXCoreComponent::Initialize OMX.broadcom.resize input port 60 output port 61 m_handle 0x5ffaea50

21:22:29.502 T:1530917792 DEBUG: COMXCoreComponent::Initialize OMX.broadcom.image_encode input port 340 output port 341 m_handle 0x5ffcff98`

simpz commented 7 years ago

Still present in 8.0.1 just tried. Definitely to do with loading folder.jpg files. If I remove them from one tree the crash doesn't happen. BTW this is on a RPi2

simpz commented 7 years ago

I have narrowed this down to particular folder.jpg files. Put the attached file into a folder and enter a folder containing this one, and OpenELEC 8.0.1 will crash our INSTANTLY. folder

This is on a RPi2 via NFS (if either of these are significant).

simpz commented 7 years ago

Still seeing this in 8.0.2.

I'm surprised everyone isn't seeing this!

It maybe because this image has a transform in it, it's stored upside down with an EXIF tag to rotate it. Which I see the web preview on this page is also ignoring :(

waukn commented 7 years ago

I have just installed Openelec 8.0.3 with KODI 17.1 Git: 39e9963 and experience the same problem on my Raspberry Pi3. I have created a test directory on my Windows PC with only one JPG image from my Sony RX100 camera. When I try to access this directory the system crashes immediately (obviously while creating the thumbnail image) and restarts. When I switch off the display of thumbnails, the system crashes when the JPG image is selected for display.

I have done a second test and made a copy of this file. The copy was opened in GIMP and stored again without any changes. This JPG file can be displayed without any problems.

Here are the properties of the crashing image:

properties of crashing jpg image

and this is the file itself:

dsc05975

Hopefully someone takes care of this malfunction. Thanks in advance.

I have attached the Logfile for further information. log-2017-05-08-20.23.53.zip

simpz commented 7 years ago

I'm glad someone else sees this issue.

I have also reduced a test dir to just a single folder.jpg that crashes (presumably when the thumbnail is generating) by moving over this folder.

I then removed the EXIF tag from the file,

exiftool -all= folder.jpg

And it no longer crashes, but obviously the image (in my case) is now upside down.

Not sure if it's just the orientation exif, or more than this that cause an issue. Don't want to go through my whole directory tree removing EXIF tags!

Still present in 8.0.3.

waukn commented 7 years ago

I have created a bug ticket on KODI bug tracker: #17464: KODI 17.1 crashes while displaying JPG files. Now they are informed and have all necessary information to find the bug.

Emil66 commented 7 years ago

I can confirm that the issue exists in the latest version of OpenELEC on a Raspberry Pi 3 Model B and is triggered by the EXIF orientation flag. A minimal 400x300 pixel JPG file with an orientation value of 8 causes an immediate crash of Kodi when a preview for that JPG file is generated. The system itself is fine. Files with the orientation flag present but set to 1 (picture orientation the same as camera orientation) do not cause a crash. Presence of an internal preview image does not affect the outcome.

popcornmix commented 7 years ago

@Emil66 Can you provide a sample jpg with the orientation=8 issue? I've tried adjusting a working jpg with: exiftool -Orientation=8 -n image.jpg and it still works fine. The "Yes Minister" image earlier in this post also decodes correctly.

waukn commented 7 years ago

Hi, here you can find my two demo images: the one that crashes KODI immediately(directly from my camera) and the one that was opened and saved in GIMP and now works:

https://www.dropbox.com/sh/j6hkvx5l28gi5hy/AAAaTj6kH-EVultQP-hVTeSEa?dl=0

popcornmix commented 7 years ago

@waukn I can reproduce the crash caused by jpegs with large thumbnails.

I'm interested in the "orinentation=8" crash which I can't currently reproduce.

Emil66 commented 7 years ago

I constructed a minimal test image (1KB, 400x300, orientation 8, no thumbnail) which crashes Kodi 17.1 on a RaspberryPi3 with the latest OpenELEC. It is attached to the corresponding Kodi bug report, because I can't upload it here. It's at https://trac.kodi.tv/ticket/17464

The bug occurs when previews are created for such images. The images themselves can be viewed without issue. The crash occurs whether previews are created automatically or the preview creation is started manually.

OpenELEC was installed via BerryBoot, if that makes a difference.

simpz commented 6 years ago

There seems to have been no feedback if any progress has been made with this bug. Either here or at the upstream bug?

Anyone know if anything else is needed to progress this bug?

rmathews1 commented 6 years ago

Really....any progress on this bug?

CvH commented 6 years ago

@rmathews1 there was no reply since an ~half year :) its unrealistic to hope for an fix

waukn commented 6 years ago

I ran OpenElec and OSMC, both with logging enabled and then downloaded the log files. On both systems OMX say that your picture is corrupt, but OSMC can move on, OpenElec can't.

ERROR: COMXCoreComponent::DecoderEventHandler OMX.broadcom.image_decode - OMX_ErrorStreamCorrupt, Bitstream corrupt

Emil66 commented 6 years ago

I don't think the image is corrupt. It's as simple as it can be and it was constructed with image tools, not manual bitstream manipulation. It makes Kodi/OpenElec crash exactly like other pictures right out of several different cameras do.

Anyway, the 8.1.1 beta of LibreElec does not crash, so I assume this bug has been fixed upstream.

fmvdb commented 6 years ago

I am experiencing the same issue with OpenELEC 8.0.4 on a Raspberry Pi 2.

Browsing and viewing my photo's with the same setup on OpenELEC 6.x.x worked fine. I skipped 7.xx and installed 8.0.4 today. At first as an update and now also with a completely fresh install.

Hope it gets fixed soon.

simpz commented 6 years ago

I tried the release of LibreElec 8.2.0 and it indeed doesn't crash with these (I guess due to Kodi bump to 17.5. But it also doesn't do the transformations on these images so thumbnails appear upside down etc. Better than crashing just not great. I'll update the upstream.

m43stro commented 6 years ago

just want to add my two cents with similar issue on Raspi 2 with Kodi 17.4

blackscreen during browsing new directories with fotos, where not all thumbnails are created. log showing always similar pattern as you can see below

22:20:09.342 T:1858069424 ERROR: COMXCoreComponent::WaitForEvent OMX.broadcom.image_decode wait event 0x00000003 timeout 1000 22:20:09.343 T:1858069424 ERROR: COMXTexture::Decode WaitForEvent:OMX_EventPortSettingsChanged failed (80001011) 22:20:09.343 T:1858069424 NOTICE: DecodeJpegToTexture: unable to decode to texture special://masterprofile/Thumbnails/8/8aa7824c.jpg 810x540 22:20:09.546 T:1723020208 NOTICE: DecodeJpeg: unable to decode /media/usbplatte/fotos/2017/unterordner/ausflug/DSC01919_lr.jpg 810x540 22:20:10.120 T:1731408816 ERROR: COMXCoreComponent::WaitForOutputDone OMX.broadcom.image_encode wait event timeout 22:20:10.121 T:1731408816 ERROR: COMXReEnc::ReEncode /media/usbplatte/fotos/2017/unterordner/ausflug/DSC01946_lr.jpg m_omx_encoder.WaitForOutputDone result(0x80001011) 22:20:11.548 T:1731408816 ERROR: COMXCoreComponent::WaitForOutputDone OMX.broadcom.resize wait event timeout 22:20:11.550 T:1731408816 ERROR: COMXImageDec::Decode m_omx_resize.WaitForOutputDone result(0x80001011) 22:20:11.550 T:1731408816 NOTICE: DecodeJpeg: unable to decode /media/usbplatte/fotos/2017/unterordner/ausflug/DSC01946_lr.jpg 540x360 22:20:13.591 T:1741108144 ERROR: COMXCoreComponent::WaitForOutputDone OMX.broadcom.image_encode wait event timeout 22:20:13.592 T:1741108144 ERROR: COMXReEnc::ReEncode /media/usbplatte/fotos/2017/unterordner/ausflug/DSC01925_lr.jpg m_omx_encoder.WaitForOutputDone result(0x80001011) 22:20:13.592 T:1849680816 ERROR: COMXCoreComponent::DecoderEventHandler OMX.broadcom.image_decode - OMX_ErrorStreamCorrupt, Bitstream corrupt 22:20:13.593 T:1741108144 ERROR: COMXCoreComponent::WaitForCommand - OMX.broadcom.image_decode failed with omx_err(0x8000100b) 22:20:15.175 T:1741108144 ERROR: COMXCoreComponent::WaitForOutputDone OMX.broadcom.resize wait event timeout 22:20:15.175 T:1741108144 ERROR: COMXImageDec::Decode m_omx_resize.WaitForOutputDone result(0x80001011) 22:20:15.176 T:1741108144 NOTICE: DecodeJpeg: unable to decode /media/usbplatte/fotos/2017/unterordner/ausflug/DSC01925_lr.jpg 810x540 22:20:15.179 T:1849680816 ERROR: COMXCoreComponent::DecoderEventHandler OMX.broadcom.image_decode - OMX_ErrorStreamCorrupt, Bitstream corrupt 22:20:15.179 T:1741108144 ERROR: COMXCoreComponent::WaitForCommand - OMX.broadcom.image_decode failed with omx_err(0x8000100b)