Giter VIP home page Giter VIP logo

Comments (3)

garbear avatar garbear commented on July 25, 2024

I tried to reproduce in Windows 10 and couldn't get IAGL to launch the game. Here's what I see in the log:

Debug Print: IAGL:  M3U File C:\Users\xxx\AppData\Roaming\Kodi\userdata\addon_data\plugin.program.iagl\temp_iagl\Alone_in_the_Dark_The_New_Nightmare_USA\Alone in the Dark - The New Nightmare (USA) (Disc 1).m3u was found for launching.
Debug Print: IAGL:  Offscreen listitem supported
Debug Print: CAddonSettings[plugin.program.iagl]: loading setting definitions
Debug Print: CAddonSettings[plugin.program.iagl]: trying to load setting definitions from old format...
Debug Print: CAddonSettings[plugin.program.iagl]: loading setting values
Debug Print: argument "entry0_1" for method "setInfo" must be unicode or str
Exception thrown at 0x00007FFEF416A388 in kodi.exe: Microsoft C++ exception: XBMCAddon::WrongTypeException at memory location 0x000000F5D6A3C5D0.

from xbmc.

zach-morris avatar zach-morris commented on July 25, 2024

OK, a little more testing. I'm guessing Kodi assumes the m3u file is a playlist file to handle, which xbmc.player().play doesn't seem to handle. However, there are many libretro cores which m3u files are valid input files.

Changing the play call to (just pointing to the filepath for the m3u):

xbmc.Player().play(xbmc.translatePath(self.launch_filenames[0]))

Log shows:

15:03:26.643 T:123145360613376  NOTICE: IAGL:  Attempting to play the following file through Retroplayer: /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).m3u
15:03:26.647 T:123145360613376   DEBUG: IAGL:  History file list cache found, cache file /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/list_cache/game_history.json
15:03:26.649 T:123145354633216   DEBUG: CAnnouncementManager - Announcement: OnAdd from xbmc
15:03:26.650 T:123145354633216   DEBUG: GOT ANNOUNCEMENT, type: 2, from xbmc, message OnAdd
15:03:26.650 T:123145354633216   DEBUG: CAnnouncementManager - Announcement: OnRemove from xbmc
15:03:26.650 T:123145354633216   DEBUG: GOT ANNOUNCEMENT, type: 2, from xbmc, message OnRemove
15:03:26.651 T:123145354633216   DEBUG: CAnnouncementManager - Announcement: OnAdd from xbmc
15:03:26.651 T:123145354633216   DEBUG: GOT ANNOUNCEMENT, type: 2, from xbmc, message OnAdd
15:03:26.653 T:123145360613376   DEBUG: IAGL:  Saving game history cache file
15:03:26.653 T:123145360613376   DEBUG: IAGL:  ATV Racers (USA) added to gameplay history
15:03:26.654 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers(/Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).cue)
15:03:26.654 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: system rules
15:03:26.655 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: matches rule: system rules
15:03:26.655 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: mms/udp
15:03:26.655 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: lastfm/shout
15:03:26.655 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtmp
15:03:26.655 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtsp
15:03:26.655 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: streams
15:03:26.655 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvd
15:03:26.655 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: sdp/asf
15:03:26.656 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: nsv
15:03:26.656 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: radio
15:03:26.656 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers: matched 0 rules with players
15:03:26.656 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers: adding videodefaultplayer (VideoPlayer)
15:03:26.656 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers: for video=1, audio=0
15:03:26.656 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers: for video=1, audio=1
15:03:26.656 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers: added 1 players
15:03:26.658 T:4645807552   DEBUG: Radio UECP (RDS) Processor - new CDVDRadioRDSData
15:03:26.658 T:4645807552  NOTICE: VideoPlayer::OpenFile: /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).m3u
15:03:26.658 T:4645807552   DEBUG: OnPlayBackStarted: CApplication::OnPlayBackStarted
15:03:26.659 T:123145357393920   DEBUG: Thread VideoPlayer start, auto delete: false
15:03:26.659 T:123145357393920  NOTICE: Creating InputStream
15:03:26.660 T:123145360613376   DEBUG: IAGL:  InfoDialog Action ID 7
15:03:26.660 T:123145357393920  NOTICE: Creating Demuxer
15:03:26.661 T:123145357393920   ERROR: Open - error probing input format, /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).cue
15:03:26.661 T:123145357393920   ERROR: OpenDemuxStream - Error creating demuxer
15:03:26.661 T:123145357393920  NOTICE: CVideoPlayer::OnExit()
15:03:26.662 T:123145357393920   DEBUG: Thread VideoPlayer 123145357393920 terminating
15:03:26.664 T:123145353023488   DEBUG: Loading settings for /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).m3u
15:03:26.668 T:123145356857344   DEBUG: DoWork - Saving file state for video item /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).m3u
15:03:26.669 T:4645807552   DEBUG: CVideoGUIInfo::InitCurrentItem(/Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).m3u)
15:03:26.781 T:123145354096640   DEBUG: OnPlayBackStopped: CApplication::OnPlayBackStopped
15:03:26.786 T:123145354633216   DEBUG: CAnnouncementManager - Announcement: OnStop from xbmc
15:03:26.786 T:123145354633216   DEBUG: GOT ANNOUNCEMENT, type: 1, from xbmc, message OnStop
15:03:26.887 T:123145354633216   DEBUG: CAnnouncementManager - Announcement: OnChanged from xbmc
15:03:26.888 T:123145354633216   DEBUG: GOT ANNOUNCEMENT, type: 1024, from xbmc, message OnChanged
15:03:26.891 T:123145354633216   DEBUG: CAnnouncementManager - Announcement: OnPlay from xbmc
15:03:26.892 T:123145354633216   DEBUG: GOT ANNOUNCEMENT, type: 1, from xbmc, message OnPlay
15:03:26.960 T:123145361149952   ERROR: EXCEPTION: XBMC is not playing any media file
15:03:26.962 T:123145361149952   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.RuntimeError'>
                                            Error Contents: XBMC is not playing any media file
                                            Traceback (most recent call last):
                                              File "/Users/xxx/Library/Application Support/Kodi/addons/plugin.video.youtube/resources/lib/youtube_plugin/kodion/utils/player.py", line 74, in onPlayBackStarted
                                                self.current_video_total_time = self.getTotalTime()
                                            RuntimeError: XBMC is not playing any media file
                                            -->End of Python script error report<--
15:03:26.989 T:4645807552   DEBUG: ------ Window Init (DialogBusy.xml) ------
15:03:26.989 T:4645807552   DEBUG: Window DialogBusy.xml was already loaded
15:03:26.989 T:4645807552   DEBUG: Alloc resources: 0.05ms
15:03:26.991 T:4645807552  NOTICE: CVideoPlayer::CloseFile()

Changing the play call to:

xbmc.Player().play(game_listitem)

Where the listitem contains the url, gameclient, etc

Log shows:

15:08:50.433 T:123145356857344   DEBUG: IAGL:  M3U File /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).m3u was found for launching.
15:08:50.433 T:123145356857344   DEBUG: IAGL:  Offscreen listitem supported
15:08:50.435 T:123145356857344   DEBUG: CAddonSettings[plugin.program.iagl]: loading setting definitions
15:08:50.435 T:123145356857344   DEBUG: CAddonSettings[plugin.program.iagl]: trying to load setting definitions from old format...
15:08:50.437 T:123145356857344   DEBUG: CAddonSettings[plugin.program.iagl]: loading setting values
15:08:50.438 T:123145356857344  NOTICE: IAGL:  Gameclient for Retroplayer set to: game.libretro.beetle-psx
15:08:50.438 T:123145356857344  NOTICE: IAGL:  Attempting to play the following file through Retroplayer: /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).m3u
15:08:50.439 T:123145356857344   ERROR: EXCEPTION: Failed to convert to input type to either a std::string or a p.PlayList
15:08:50.439 T:123145356857344   DEBUG: IAGL Error:  Attempt to play game failed with exception Failed to convert to input type to either a std::string or a p.PlayList

However, when I just browse to the m3u file and select it, Kodi finds it to be Retroplayable:

15:17:00.839 T:4645807552 WARNING: CApplication::PlayMedia called to play a playlist /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).m3u but no idea which playlist to use, playing first item
15:17:00.840 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers(/Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).cue)
15:17:00.840 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: system rules
15:17:00.840 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: matches rule: system rules
15:17:00.840 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: mms/udp
15:17:00.840 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: lastfm/shout
15:17:00.841 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtmp
15:17:00.841 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtsp
15:17:00.841 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: streams
15:17:00.841 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvd
15:17:00.841 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: sdp/asf
15:17:00.841 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: nsv
15:17:00.841 T:4645807552   DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: radio
15:17:00.842 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers: matched 0 rules with players
15:17:00.842 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers: adding retroplayer
15:17:00.842 T:4645807552   DEBUG: CPlayerCoreFactory::GetPlayers: added 1 players
15:17:00.843 T:4645807552   DEBUG: CAddonDatabase: SELECT repo.id FROM repo .. took 1 ms
15:17:00.851 T:123145357393920   DEBUG: Thread GUIDialogCache 123145357393920 terminating (autodelete)
15:17:00.851 T:4645807552   DEBUG: CAddonDatabase: query  SELECT * FROM addons JOIN addonlinkrepo ON addons.id=addonlinkrepo.idAddon WHERE addonlinkrepo.idRepo IN (2,3) ORDER BY addons.addonID returned 1156 rows in 8 ms
15:17:00.989 T:4645807552   DEBUG: CAddonDatabase::GetAddons took 147 ms
15:17:00.998 T:4645807552   DEBUG: Select game client dialog: Found 11 candidates
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.beetle-pce-fast as a candidate
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.beetle-supergrafx as a candidate
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.beetle-pcfx as a candidate
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.reicast as a candidate
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.genplus as a candidate
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.picodrive as a candidate
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.beetle-saturn as a candidate
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.yabause as a candidate
15:17:00.998 T:4645807552   DEBUG: Adding game.libretro.beetle-psx as a candidate
15:17:00.999 T:4645807552   DEBUG: Adding game.libretro.pcsx-rearmed as a candidate
15:17:00.999 T:4645807552   DEBUG: Adding game.libretro.4do as a candidate
15:17:00.999 T:4645807552   DEBUG: Select game client dialog: Loading savestate metadata
15:17:00.999 T:4645807552   DEBUG: Loading savestate from /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).sav
15:17:00.999 T:4645807552   ERROR: Failed to open savestate file /Users/xxx/Library/Application Support/Kodi/userdata/addon_data/plugin.program.iagl/temp_iagl/ATV_Racers_USA/ATV Racers (USA).sav
...
15:17:09.129 T:4645807552   DEBUG: Select game client dialog: User selected emulator game.libretro.beetle-psx
15:17:09.130 T:4645807552    INFO: RetroPlayer[PROCESS]: Created process info for macOS
15:17:09.130 T:4645807552   DEBUG: RetroPlayer[PLAYER]: ---------------------------------------
15:17:09.131 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Game tag loaded
15:17:09.131 T:4645807552   DEBUG: RetroPlayer[PLAYER]: URL:
15:17:09.131 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Title:
15:17:09.131 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Platform:
15:17:09.131 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Genres:
15:17:09.131 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Developer:
15:17:09.131 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Game Code:
15:17:09.131 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Region:
15:17:09.132 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Publisher:
15:17:09.132 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Format:
15:17:09.132 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Cartridge type:
15:17:09.132 T:4645807552   DEBUG: RetroPlayer[PLAYER]: Game client: game.libretro.beetle-psx
15:17:09.132 T:4645807552   DEBUG: RetroPlayer[PLAYER]: ---------------------------------------

from xbmc.

garbear avatar garbear commented on July 25, 2024

This issue should be relatively straight forward to fix. I suspect that xbmc.Player().play(game_listitem) uses PlayFile(), whereas playlist detection probably occurs in PlayMedia() (which later calls PlayFile()). We just need a bit of refactoring.

There's a chance I can fix this before 18 release, but I don't have access to the hardware these days. If you know anyone wanting to pick some low-hanging fruit and get some code into Kodi, they'll get my full assistance.

from xbmc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.