Kodi Community Forum

Full Version: Internet Archive Game Launcher
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(2018-11-07, 17:33)bfalese Wrote: [ -> ]Hi,

I have been using IARL in FireTv, it is excellent, thanks Zack for your hard work.
I'm using Kodi installed on sdcard1, external storage in AFTV, and Retroarch in sdcard0, internal storage at AFTV. On demand download works great to temp forlder, but if i change download folder to anything else, download complete in instant time and then IARL says that the game is not present on archive.org.
I suspect this problem is related to one app installed on sdcard0 and the other in sdcard1.

I moved kodi installation following this post:  http://www.aftvnews.com/how-to-partially...b-storage/

The relevant part is:

Create a blank Kodi configuration file by running the command:
touch /sdcard/xbmc_env.properties

xbmc_env.properties file contents:
xbmc.data=/storage/sdcard1/Android/data/org.xbmc.kodi/files

Can this kodi redirection be affecting IAGL ability to download to any other directory than temp folder? 
Thanks
I dont think that should matter - I've actually had the opposite issue with Android where I couldn't download to the temp folder but could to an alternate folder (see here).  I'm guessing it's a permissions error in Android.  Would it be possible to get a debug log when the error is occurring?
Hi zackmorris

Love this so far! It's been easy to use and has been working great. If I ever have an issue, I start with seeing if things work on RetroArch. If they do, I move onto IAGL. 

Anyway, I recently decided that instead of using the internal storage of my nVidia Shield, I decided to change the download path to my local NAS drive using NFS. Everything seems to work fine - the roms download and are stored correctly to the NAS - but I keep getting error messages that say it can't extract the files. I noticed in the FAQ you said you can use external storage if it's accessible via http. 

Is there anyway to make this work with NFS or SMB at all before I start looking at a workaround like a WebDAV server?


Thanks
I think you misunderstand what "accessible" means in this context. The files can be hosted elsewhere, and you can configure how to connect to that source, but the files still have to download to a temp folder locally in order to be played. If you can mount your NFS share as a system drive, it should work.
(2018-11-09, 00:29)skorpi0wn Wrote: [ -> ]Hi zackmorris

Love this so far! It's been easy to use and has been working great. If I ever have an issue, I start with seeing if things work on RetroArch. If they do, I move onto IAGL. 

Anyway, I recently decided that instead of using the internal storage of my nVidia Shield, I decided to change the download path to my local NAS drive using NFS. Everything seems to work fine - the roms download and are stored correctly to the NAS - but I keep getting error messages that say it can't extract the files. I noticed in the FAQ you said you can use external storage if it's accessible via http. 

Is there anyway to make this work with NFS or SMB at all before I start looking at a workaround like a WebDAV server?


Thanks

Unzip currently has limitations on Android.  There's an issue here for Kodi, and some more info here.

Long and short of it:
The current Android dev kit has f*cked this up, and there's currently no fix for internal Kodi functions that work with files / unzip files.
I believe there's going to be an alternate method to make unarchiving/unzipping work in Kodi v18 with binary addons and an addon called vfs.libarchive, but it currently does not work on my dev machine, so I haven't incorporated it into the addon yet.

External storage via http is available as a source, rather than a save location (i.e. you'd connect to your NAS via webdav instead of archive.org to access the entire archive).  If you're hell bent on pursuing this method, you can PM me, I think you'd likely be the first person to try it.
Launching a game (Using external Retroarch, on Win10, Leia V18) seems to stop any media that is currently playing, is there any way to allow it to continue like in IARL?

Here's my Settings if it helps: https://pastebin.com/raw/ZGz0PSHS
Full Log: https://pastebin.com/raw/sTQvN8uj

Just found this new project btw, and loving it so far!
(2018-11-06, 23:57)zachmorris Wrote: [ -> ]
(2018-11-05, 23:18)Relic1882 Wrote: [ -> ]I have a quick question. When playing large games like for PS1, it takes time to download the file before launching. When I click Download instead, it shows it downloading, but then it wants to download again when trying to launch. Where do the downloads go and how do you keep the file so you don't have to download it again? 
See this info 
 Sweet. I missed that. Thanks a lot and brilliant work on the whole thing! 

I have one last question though. Currently when I launch a game through IAGM, what appears to be a piece of the word "Buffering" gets stuck on the play screen whenever the game is running. It does it to every game no matter which system and restarting Kodi, clearing cache or even restarting the whole PC doesn't fix it. I can always see the "ffer" of "Buffering". It's weird because it only does it in RetroPlayer, not in any other media within Kodi.
Answering my own question, commenting out line 3805 of main.py will prevent Kodi from stopping playback when launching an external player:
python:
        if self.external_launch_command != 'none':
            #if xbmc.Player().isPlaying():
                #xbmc.Player().stop()
                #xbmc.sleep(500)
            #xbmc.audioSuspend()
            #xbmc.enableNavSounds(False)

Seems to be working fine after a few test runs, but will post back if I run into any issues!
(2018-11-13, 07:22)GriffeyJuni0r Wrote: [ -> ]Answering my own question, commenting out line 3805 of main.py will prevent Kodi from stopping playback when launching an external player:
python:
        if self.external_launch_command != 'none':
            #if xbmc.Player().isPlaying():
                #xbmc.Player().stop()
                #xbmc.sleep(500)
            #xbmc.audioSuspend()
            #xbmc.enableNavSounds(False)

Seems to be working fine after a few test runs, but will post back if I run into any issues!
 Yeah, you got it.  Maybe you can comment on why you'd want this option (i.e. whats the use case?)  Stopping the audio / video in Kodi is on purpose, so that it's not 'in the way' for the game that is launched.  I could potentially make an 'advanced setting' so you can disable it in addon settings.
(2018-11-12, 00:28)Relic1882 Wrote: [ -> ]
(2018-11-06, 23:57)zachmorris Wrote: [ -> ]
(2018-11-05, 23:18)Relic1882 Wrote: [ -> ]I have a quick question. When playing large games like for PS1, it takes time to download the file before launching. When I click Download instead, it shows it downloading, but then it wants to download again when trying to launch. Where do the downloads go and how do you keep the file so you don't have to download it again? 
See this info 
 Sweet. I missed that. Thanks a lot and brilliant work on the whole thing! 

I have one last question though. Currently when I launch a game through IAGM, what appears to be a piece of the word "Buffering" gets stuck on the play screen whenever the game is running. It does it to every game no matter which system and restarting Kodi, clearing cache or even restarting the whole PC doesn't fix it. I can always see the "ffer" of "Buffering". It's weird because it only does it in RetroPlayer, not in any other media within Kodi. 
That seems like it might be either a skin or Kodi issue.  I certainly can't recreate it, and there technically is no buffering to even be happening (the file is wholly available after launch).  Do you have a picture / log of this issue?
It's probably a pretty narrow use case, so totally understand if you don't want to make it an option, but it's cool to be able to set up a Picture-In-Picture mode like this:
Imagehttps://imgur.com/X2hlMvf
(2018-11-04, 18:41)garbear Wrote: [ -> ]Why not to keep it simple? Kodi core creates a directory profile://user_data/games/. Then,

Code:
profile://user_data/games/system/                             --> system directory
profile://user_data/games/cheats/                             --> cheat directory
profile://user_data/games/savefiles/core_name/ROM_name
profile://user_data/games/savestates/core_name/ROM_name
profile://user_data/games/info/                               --> core info files

@garbear Is there any possibility this will be implemented for Leia?
(2018-11-15, 08:06)Wintermute0110 Wrote: [ -> ]@garbear Is there any possibility this will be implemented for Leia? 
  
I have no access to dev hardware, so there's a possibility someone else will do it Smile Do Kodi's issues templates include a feature request one? That would get this some visibility among other developers.
(2018-11-15, 05:27)GriffeyJuni0r Wrote: [ -> ]It's probably a pretty narrow use case, so totally understand if you don't want to make it an option, but it's cool to be able to set up a Picture-In-Picture mode like this:
Imagehttps://imgur.com/X2hlMvf
 Well that is pretty specific, but it looks pretty cool.  The change would be relatively minor, so I'll incorporate an advanced setting for the next update
Hello friends, I write because I tested IAGL on Android 7.1 on a TV Box Android Beelink GT1 Ultimate configured to launch Retroarch externally.

I already knew that on Android there seems to be a problem, if RetroArch is not killed before launching a new game, then it always starts with the same game previously launched. I have observed the addon code and I have seen that now in IAGL a system command is sent to stop RetroArch.

But it does not work, at least for me. I had to add code to the main.py of resources/lib so that it stops RetroArch. I do not know if it will be correct, but the command that launches IAGL (/system/bin/am force-stop com.retroarch) does not work correctly for me. I have added two commands, I do not know which of them makes it work, I have not stopped to launch one and then the other, but now it works. This is, now IAGL kill RetroArch before launch next game. I just wanted to report on it.

I'm a fan of your work, ZachMorris. Thank you very much for this great addon.
(2018-11-16, 20:47)lunamoon Wrote: [ -> ]But it does not work, at least for me. I had to add code to the main.py of resources/lib so that it stops RetroArch. I do not know if it will be correct, but the command that launches IAGL (/system/bin/am force-stop com.retroarch) does not work correctly for me. I have added two commands, I do not know which of them makes it work, I have not stopped to launch one and then the other, but now it works. This is, now IAGL kill RetroArch before launch next game. I just wanted to report on it.
 I'm not sure I follow.  You're staying the current stop command doesn't stop Retroarch and you added a different one?  If thats the case, care to share what you added?