• 1
  • 2
  • 3
  • 4(current)
  • 5
  • 6
  • 11
Win XBMC crashes when XBOX-controller disconnects
#46
I don't have the problem with playing videos myself (tested over SMB from my dev PC). I don't see why the SDL layer would impact the video player but if it does it can be interesting to investigate.

Take my comments for what they are: I am a long time C++ coder but I have very limited understanding of the XBMC overall architecture. An experienced XBMC dev should be an asset here.
Here is my untested latest build:
http://ryushare.com/ca0nkno3ypc1/XBMC.zip
Be aware that this is for XBMC adventurers only !
Reply
#47
(2012-04-26, 20:53)evil-B Wrote: ah the usual 'do it yourself' answer from the XBMC dev... I understand your position, I am a long time C++ coder myself but I also understand that this is a very frustrating answer for the standard user. But this is another subject...

I'm no developer in my day to day job so you might be even more skilled to find and fix the problem Wink I just could say nothing but I try to give some pointers where others can chime in. budget planning and other things keeping me busy in RL so I'm not really in a mood for fixing bugs I can't replicate with the debugger.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#48
Can´t see movie either with this workaround:

Code:
17:33:28 T:3524   DEBUG: CUtil::ScanForExternalSubtitles: END (total time: 3 ms)
17:33:28 T:3524  NOTICE: Creating Demuxer
17:33:28 T:3524   DEBUG: SECTION:LoadDLL(special://xbmcbin/system/players/dvdplayer/avutil-51.dll)
17:33:28 T:3524   ERROR: Win32DllLoader::Load: Failed to load C:\Program Files (x86)\XBMC\system\players\dvdplayer\avutil-51.dll with error 126:No se puede encontrar el m�dulo especificado.
17:33:28 T:3524   ERROR: CDVDDemuxFFmpeg::Open - failed to load ffmpeg libraries
17:33:28 T:3524   ERROR: CDVDPlayer::OpenDemuxStream - Error creating demuxer
17:33:28 T:3524  NOTICE: CDVDPlayer::OnExit()
17:33:28 T:3524  NOTICE: CDVDPlayer::OnExit() deleting input stream
17:33:28 T:3524   DEBUG: Thread CDVDPlayer 3524 terminating
17:33:28 T:3052   DEBUG: CAnnouncementManager - Announcement: OnStop from xbmc
17:33:28 T:3052   DEBUG: GOT ANNOUNCEMENT, type: 1, from xbmc, message OnStop
17:33:28 T:3052   ERROR: Playlist Player: skipping unplayable item: 0, path [C:\Users\HT\MEDIA\Peliculas\The Tree Of Life.avi]
17:33:28 T:3052   DEBUG: Playlist Player: no more playable items... aborting playback
17:33:28 T:1364   DEBUG: Thread Background Loader start, auto delete: 0
17:33:28 T:3052  NOTICE: CDVDPlayer::CloseFile()
17:33:28 T:3052 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
17:33:28 T:3052  NOTICE: DVDPlayer: waiting for threads to exit
17:33:28 T:3052  NOTICE: DVDPlayer: finished waiting
17:33:28 T:1364   DEBUG: Thread Background Loader 1364 terminating
17:33:35 T:3052   DEBUG: ------ Window Init (Pointer.xml) ------
17:33:41 T:3052   DEBUG: ------ Window Deinit (Pointer.xml) ------
17:33:46 T:3052   ERROR: XFILE::CDirectory::GetDirectory - Error getting C:\Users\HT\MEDIA\Peliculas\/extrafanart\
17:33:57 T:2692   DEBUG: Thread Jobworker 2692 terminating (autodelete)
17:33:57 T:328   DEBUG: Thread Jobworker 328 terminating (autodelete)
17:33:57 T:1136   DEBUG: Thread Jobworker 1136 terminating (autodelete)
17:33:57 T:3052   DEBUG: SECTION:UnloadDelayed(DLL: special://xbmcbin/system/ImageLib.dll)
Reply
#49
(2012-04-26, 22:50)achaw Wrote: Can´t see movie either with this workaround:

Code:
17:33:28 T:3524   DEBUG: CUtil::ScanForExternalSubtitles: END (total time: 3 ms)
17:33:28 T:3524  NOTICE: Creating Demuxer
17:33:28 T:3524   DEBUG: SECTION:LoadDLL(special://xbmcbin/system/players/dvdplayer/avutil-51.dll)
17:33:28 T:3524   ERROR: Win32DllLoader::Load: Failed to load C:\Program Files (x86)\XBMC\system\players\dvdplayer\avutil-51.dll with error 126:No se puede encontrar el m�dulo especificado.
17:33:28 T:3524   ERROR: CDVDDemuxFFmpeg::Open - failed to load ffmpeg libraries
17:33:28 T:3524   ERROR: CDVDPlayer::OpenDemuxStream - Error creating demuxer
17:33:28 T:3524  NOTICE: CDVDPlayer::OnExit()
17:33:28 T:3524  NOTICE: CDVDPlayer::OnExit() deleting input stream
17:33:28 T:3524   DEBUG: Thread CDVDPlayer 3524 terminating
17:33:28 T:3052   DEBUG: CAnnouncementManager - Announcement: OnStop from xbmc
17:33:28 T:3052   DEBUG: GOT ANNOUNCEMENT, type: 1, from xbmc, message OnStop
17:33:28 T:3052   ERROR: Playlist Player: skipping unplayable item: 0, path [C:\Users\HT\MEDIA\Peliculas\The Tree Of Life.avi]
17:33:28 T:3052   DEBUG: Playlist Player: no more playable items... aborting playback
17:33:28 T:1364   DEBUG: Thread Background Loader start, auto delete: 0
17:33:28 T:3052  NOTICE: CDVDPlayer::CloseFile()
17:33:28 T:3052 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
17:33:28 T:3052  NOTICE: DVDPlayer: waiting for threads to exit
17:33:28 T:3052  NOTICE: DVDPlayer: finished waiting
17:33:28 T:1364   DEBUG: Thread Background Loader 1364 terminating
17:33:35 T:3052   DEBUG: ------ Window Init (Pointer.xml) ------
17:33:41 T:3052   DEBUG: ------ Window Deinit (Pointer.xml) ------
17:33:46 T:3052   ERROR: XFILE::CDirectory::GetDirectory - Error getting C:\Users\HT\MEDIA\Peliculas\/extrafanart\
17:33:57 T:2692   DEBUG: Thread Jobworker 2692 terminating (autodelete)
17:33:57 T:328   DEBUG: Thread Jobworker 328 terminating (autodelete)
17:33:57 T:1136   DEBUG: Thread Jobworker 1136 terminating (autodelete)
17:33:57 T:3052   DEBUG: SECTION:UnloadDelayed(DLL: special://xbmcbin/system/ImageLib.dll)

Are you referring to the most recently posted patch?
Frodo Win 8 Pro x64
Fractal Design Node 605 (looks amazing)
i5 3570K, Asus P8Z77V LK
2x80GB Intel 320 SSD, 4TB NAS
GTX 670x2 SLI, 16GB GSkill Ares
Onkyo RC360 with Paradigm piece-by-piece 5.1 build
Nyxboard and AHK full controlled via XBox Controller
Reply
#50
these builds are made from the latest repository version. you seem to be missing at least one dll.
Reply
#51
ok I rushed the previous version a little bit. I made some tests on my HTPC and it would not register the button presses anymore.
here is fixed version:
http://ryushare.com/ik4s6zoac43z/XBMC.zip
tell me how it behaves in your environments.
Reply
#52
Are you referring to the nightly builds? If not how can I tell if am on the most recent build?
Frodo Win 8 Pro x64
Fractal Design Node 605 (looks amazing)
i5 3570K, Asus P8Z77V LK
2x80GB Intel 320 SSD, 4TB NAS
GTX 670x2 SLI, 16GB GSkill Ares
Onkyo RC360 with Paradigm piece-by-piece 5.1 build
Nyxboard and AHK full controlled via XBox Controller
Reply
#53
you should be good with an environment created from the nightly builds. versions don't need to be a perfect match.
Reply
#54
As WiSo wrote I don't have a controller. But I have ideas :-)

@WiSo is it an option to bump the SDL dll? It's pretty ancient.

@evil-B I understand how your change avoids the problem, but it doesn't really fix it. Is there a way to make the SDL recover after the exception and get valid data again? Using functions like SDL_QuitSubSystem, SDL_InitSubSystem, SDL_Init, SDL_Quit...

Maybe sleeping a little in the event handler before calling CJoystick::Reinitialize() would help? Or sleeping between the QuitSubSystem and InitSubSystem?

For video playback, you guys will need to add evil-B's binary on top of the latest xbmc nightly.
Always read the Kodi online-manual, the FAQ and search the forum before posting.
Do not e-mail Kodi Team members directly asking for support. Read/follow the forum rules (wiki).
For troubleshooting and bug reporting please make sure you read this first.
Reply
#55
sure as I said, this is a workaround not a fix.

I made some more tests on my dev machine and I am now able to reproduce the bug more frequently. Turning off the controller while playing a video triggers the bug more often. That way I found out that once SDL_InitSubSystem has crashed, it will always throw an exception for every subsequent calls even if I try to call SDL_Quit / SDL_Init.

If I call SDL_QuitSubSystem, then SDL_Quit and then SDL_Init in Reinitialize() the bug comes up less often but it still does from time to time.
Of course calling SDL_Quit could be a problem on systems where the SDL layer is used for more then just Joystick handling. This SDL layer is a mess.

Anyway here is my latest attempt for those XBMC adventurers:
http://ryushare.com/uhqh6qhvbqqk/XBMC.zip

I am starting to think that I will use xpadder to handle the controller completely...
Reply
#56
(2012-04-27, 12:31)evil-B Wrote: If I call SDL_QuitSubSystem, then SDL_Quit and then SDL_Init in Reinitialize() the bug comes up less often but it still does from time to time.
Of course calling SDL_Quit could be a problem on systems where the SDL layer is used for more then just Joystick handling. This SDL layer is a mess.
Hasn't it always been? Wink
Question would be for example games - most of them use SDL nowadays, so that could indeed produce silly problems...
However - strangely I cannot reproduce the error on my Win-System (Windows Enterprise x64, SP1). Neither with a wired nor with a wireless controller...

Quote:I am starting to think that I will use xpadder to handle the controller completely...
Another solution would be to try to use the EventClient for the controller for XBMC. That should resolve the issue, shouldn't it?
Of course, you have to keep in mind that if XBMC isn't in the focus, the commands of the controller will get passed to it anyhow... this could of course arise other issues, if you use your controller in other situation when XBMC is still open.

Me thinks that this could also be a problem within SDL...?
Maybe this fits somewhere here...?
http://bugzilla.libsdl.org/show_bug.cgi?id=1139
Need help? Check out my XBMC Frodo Guide. It contains full featured guides to Sickbeard and CouchPotato as well.

Image
Reply
#57
yes this fits quite well with our current problem... I guess we'll have to wait for the SDL next version and hope...
I tried the build the latest SDL version but XBMC would not take it and I am not in the mood to investigate this matter.

If we get good reports from my latest patched version I will indicate exactly what I did otherwise... lets dump this.
Reply
#58
I gave it a shot and couldn't play a movie and the controller crashed. Can anyone else confirm this behavior?
Frodo Win 8 Pro x64
Fractal Design Node 605 (looks amazing)
i5 3570K, Asus P8Z77V LK
2x80GB Intel 320 SSD, 4TB NAS
GTX 670x2 SLI, 16GB GSkill Ares
Onkyo RC360 with Paradigm piece-by-piece 5.1 build
Nyxboard and AHK full controlled via XBox Controller
Reply
#59
if you can't play video probably that your installation is not up to date. Do you have a dll load error in the log ?
Reply
#60
(2012-04-27, 04:11)CrystalP Wrote: @WiSo is it an option to bump the SDL dll? It's pretty ancient.

We already wanted to get rid of SDL for all platforms but we still rely on the input layer. topfs2 wanted to abstract it and uses addons for it but afaik never started with it.
We got rid of the SDL window handling on win32 but the last bits are often the difficult ones.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
  • 1
  • 2
  • 3
  • 4(current)
  • 5
  • 6
  • 11

Logout Mark Read Team Forum Stats Members Help
XBMC crashes when XBOX-controller disconnects0