XBMC crashes trying to browse videos.
#1
I'm using the SVN ebuilds for XBMC, and ffmpeg on Gentoo, and every time I try to browse a folder with video in it, XBMC will crash. It looks like trying to generate the thumbnails is what's causing it, but I'm not sure what to try to debug this.

http://gist.github.com/273198
Reply
#2
I was able to confirm that ffmpeg is able to generate thumbnails using the examples from http://blog.prashanthellina.com/2008/03/...ng-ffmpeg/.

The following command generates a good thumbnail image for me:
ffmpeg -itsoffset -4 -i 3x3\ Eyes\ -\ 02.avi -vcodec mjpeg -vframes 1 -an -f rawvideo -s 320x240 test.jpg
Reply
#3
Install gdb and try again. We need the stack trace.
Reply
#4
I do have gdb installed. XBMC isn't generating a core file, even if I manually run:

ulimit -c unlimited && /usr/share/xbmc/xbmc.bin
Reply
#5
XBMC doesn't generate cores, the OS does. This might say something about the state of your system...
Reply
#6
althekiller Wrote:XBMC doesn't generate cores, the OS does. This might say something about the state of your system...

...and the system has no troubles generating core files.

% rm core
% > segfault.c int main(void)
{
char *s = "hello world";
*s = 'H';
}
% gcc segfault.c -g -o segfault
% ulimit -c unlimited && ./segfault
zsh: segmentation fault (core dumped) ./segfault
sigsegv % gdb -c core
warning: Can not parse XML syscalls information; XML support was disabled at compile time.
GNU gdb (Gentoo 7.0 p1) 7.0
Copyright © 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
Core was generated by `./segfault'.
Program terminated with signal 11, Segmentation fault.
#0 0x0804839f in ?? ()
(gdb) bt
#0 0x0804839f in ?? ()
(gdb) quit


Please try to keep the snarky comments to a minimum. I came here genuinely looking for help. Not abuse.
Reply
#7
Things appear to work just fine using the 9.11 ebuild. I'll try bisecting to see exactly where things break.
Reply
#8
@jhelwig

Any progress on this?
Reply
#9
Unfortunately I've been really busy. I'm hoping to have some time to do this this weekend.
Reply
#10
Unfortunately, I wasn't able to narrow it down to a single commit. There were a large number of commits that would not build for me. Bisecting shows that it was introduced by any one of these:
Code:
29160fdacb6c2812ed0603494c1fcfa8edd0b8bb
bc7889b1514905550b2772b43317802cb3c646e8
cb6431a42688f113f493fab164bb7726b3acfba7
5229f7fd35b141f2d0be2e7a3c8a013962e90f76
cb96b78aa4bab79355824dda8fd3fad7835f5e66
06780ec17ac55ce48c79c59b11219b881c5c5c43
5819b8568d06918ced4f5518e7e7288f9650cde8
8110dc5bbb3f1ce0f866f2842b4be058bec8402f
c7e1df03be56384ac74dde41dbb0cc34df066c79
f6acd1163b68a3074f7cd411bf7022c5bbf4d2ea

Script I used to build XBMC for testing:
Code:
#!/bin/sh

rm -rf $HOME/tmp/xbmc \
    && mkdir $HOME/tmp/xbmc \
    && git clean -xfd \
    && ./bootstrap \
    && ./configure --prefix=$HOME/tmp/xbmc --enable-external-libraries --disable-ccache \
    && make -j8 \
    && make install

INSTALL_RETURN=$?

rm -rf $HOME/.xbmc/userdata/Thumbnails/*
git clean -xfd \
    && echo \
    && echo \
    && echo \
    && echo

exit $INSTALL_RETURN

Here is my "git bisect log" output in case that helps anyone:
Code:
git bisect start
# good: [f8d3bc5022814be6f9076691f67a1fbda5e9c6dc] tagged: Camelot final.  Merry Christmas!
git bisect good f8d3bc5022814be6f9076691f67a1fbda5e9c6dc
# bad: [379c93b4f621359542a16b3907a2e7855614b156] updated: Swedish translation, grammar och cosmetic updated: Greek translation #8416, based on English r26459 (thanks to ydatografida) updated: Chinese (Traditional) translation #8426, based on English r25744 (thanks to dog099) updated: Korean translation #8434, based on English r26459 (thanks to airplanez) updated: Spanish translation #8440, based on English r25744 (thanks to adsoto)
git bisect bad 379c93b4f621359542a16b3907a2e7855614b156
# good: [7e506a5b253ec37b3433398a7a44198b6c8f3b88] fixed: Check range of item number passed to CFileItemList::Get(), c/o http://github.com/elan/plex/commit/e46be856ca98e493f084f2d496e8d6b8e9950645
git bisect good 7e506a5b253ec37b3433398a7a44198b6c8f3b88
# good: [b1f52f3214a088426d1582b68360ccfb5e4fe8af] updated: Swedish translation updated: better meaning of remove from library, see http://forum.xbmc.org/showthread.php?tid=64166
git bisect good b1f52f3214a088426d1582b68360ccfb5e4fe8af
# bad: [a511534301ad2ef2143a4964c4bd64e9f0caa2ff] fixed, check for VDP_DECODER_PROFILE_MPEG4_PART2_ASP define before using it
git bisect bad a511534301ad2ef2143a4964c4bd64e9f0caa2ff
# bad: [54157c33fe9d47fe0e0f1b713c85d88419705b70] Changed : [Confluence] Lower cased heaps of stuff in the skin by default (mostly the thick title font) this makes the skin much more usable for foreign languages and other weird character sets. Changed : Renamed the font files back to their original names
git bisect bad 54157c33fe9d47fe0e0f1b713c85d88419705b70
# good: [420ef53c203817faa85043d83f15ac1713bc3602] added: M1905(chinese) movie scraper
git bisect good 420ef53c203817faa85043d83f15ac1713bc3602
# good: [6fe6b1b9b722cfa776e87a1b306a4e61bc32ab15] fixed: Ticket #8219 - Daum Movie Scraper Patch (thanks hojel!)
git bisect good 6fe6b1b9b722cfa776e87a1b306a4e61bc32ab15
# skip: [c7e1df03be56384ac74dde41dbb0cc34df066c79] changed: get rid of cores/ffmpeg - use the headers directly from the ffmpeg directories instead. needs attention on win32 and i need some help to quell a warning or two triggered from config.h on linux.
git bisect skip c7e1df03be56384ac74dde41dbb0cc34df066c79
# skip: [5819b8568d06918ced4f5518e7e7288f9650cde8] changed: remove old deprecated album/artist properties
git bisect skip 5819b8568d06918ced4f5518e7e7288f9650cde8
# bad: [048ead8ce0326909e517b73dc4698c8c9ee9886b] fixed: Suppress one more compile warning.
git bisect bad 048ead8ce0326909e517b73dc4698c8c9ee9886b
# bad: [048ef80c326e809eb27779dcfd61870fc26f6c62] changed: CLog now uses a FILE*. avoids crashes if we cannot write the log for some reason (usually permissions)
git bisect bad 048ef80c326e809eb27779dcfd61870fc26f6c62
# good: [a5c8798590b31c9a6816babdfe895432a0db099e] [WIN32] changed: if BeginScene() fails try to call EndScene() as it might wasn't called due to an earlier exception. This could fail too on older cards because of a missing Present().
git bisect good a5c8798590b31c9a6816babdfe895432a0db099e
# skip: [29160fdacb6c2812ed0603494c1fcfa8edd0b8bb] [WIN32] fixed build. cores/ffmpeg gone.
git bisect skip 29160fdacb6c2812ed0603494c1fcfa8edd0b8bb
# skip: [cb6431a42688f113f493fab164bb7726b3acfba7] reverted parts of r25901 to not harm external ffmpeg
git bisect skip cb6431a42688f113f493fab164bb7726b3acfba7
# skip: [5229f7fd35b141f2d0be2e7a3c8a013962e90f76] merged: r25753,r25754 from Camelot branch - useful logging changes.
git bisect skip 5229f7fd35b141f2d0be2e7a3c8a013962e90f76
# skip: [bc7889b1514905550b2772b43317802cb3c646e8] fixed: vdpau build (hopefully)
git bisect skip bc7889b1514905550b2772b43317802cb3c646e8
# bad: [f6acd1163b68a3074f7cd411bf7022c5bbf4d2ea] fixed: Linux compile error with VDPAU enabled
git bisect bad f6acd1163b68a3074f7cd411bf7022c5bbf4d2ea
# skip: [06780ec17ac55ce48c79c59b11219b881c5c5c43] merged: Fixes from camelot branch, r25905, r25907.
git bisect skip 06780ec17ac55ce48c79c59b11219b881c5c5c43
# skip: [cb96b78aa4bab79355824dda8fd3fad7835f5e66] [WIN32] updated ffmpeg dlls to current svn
git bisect skip cb96b78aa4bab79355824dda8fd3fad7835f5e66
# skip: [8110dc5bbb3f1ce0f866f2842b4be058bec8402f] fixed: Ticket #8111 - the mystery of the disappearing mouse, merge from camelot r25910.
git bisect skip 8110dc5bbb3f1ce0f866f2842b4be058bec8402f
# good: [e886a1bf803fe74b00edf6f8d57711f5ee340866] updated: ffmpeg to r20894
git bisect good e886a1bf803fe74b00edf6f8d57711f5ee340866
Reply

Logout Mark Read Team Forum Stats Members Help
XBMC crashes trying to browse videos.0