RetroPlayer branch of Kodi

  Thread Rating:
  • 3 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
garbear Offline
Team-Kodi Developer
Posts: 804
Joined: Dec 2010
Reputation: 44
Location: gangsta's paradise
Post: #1
If you came here for support, do this one thing.
POST A DEBUG LOG

RetroPlayer is a new player core for Kodi Entertainment Center. It is similar to the video player and audio visualizer, but it plays games instead of movies and music.





Design and Components
  • RetroPlayer: Player core that plays games on the virtual file system (VFS) using game add-ons. Despite its name, it can play all types of games, not just retro ones. It borrows many ideas from the video player. Games can be paused, fast-forwarded, and rewound in realtime (watch little Mario run backwards!). Instead of bookmarks, save states are created and allow for quick browsing of the game's play history. 3D support (for N64, etc) is being worked on.
  • Game Add-ons: Standalone games, emulators and game streamers. Just-In-Time Installation[tm] lets you hit enter on a game with no emulators installed. Kodi then offers a list of compatible emulators, downloads the selected one and uses it to launch the game. From day one, RetroPlayer has been compatible with the libretro ecosystem. Game streamers could support streaming protocols like Limelight.
  • Peripheral Add-ons: A way to interface DIY hardware with Kodi. Don't have a driver for your DIY controller or media reader? Implement a few functions and it can be used in Kodi.
  • Joystick input: Various joystick APIs (DirectX, XInput, SDL, etc.) provide access to raw hardware events, like button presses and axis positions. The joystick input system maps these to physical elements, such as the X button, left trigger or right analog stick. Gesture recognition (adapted from touch input) allows holding, double-pressing, analog stick rotation and (someday) accelerometer gestures. If someone helps with a controller configuration utility, this is possible:

    [Image: ConfigurationGUI_zps10704b12-600x336.png]

Future Components
  • Media readers: Plugging a cartridge into Retrode-like devices can display game metadata and automatically launch the game. Removing a cartridge from the media reader can take a save-state so that the next time the game is inserted, gameplay begins from where it left off. Games can be cached indefinitely, so there is no need to insert the cartridge a second time (although it's probably quicker than browsing the library for the cached game). Game filenames (obviously) aren't available, so game metadata is extracted from the ROM itself using PyRomInfo.
  • Game library: Games offer new ways of interacting with media libraries: box art, game trailers, gameplay videos, system intros, save states, and more. Games don't have to be on your computer; plugins can provide games that can be scanned into the library. Free clones of virtually every popular game can be streamed (and cached) directly from public domain ROM sites. If binary add-ons could provide games, then Steam libraries on the network could be scanned into the game library.
  • Network play: The details for this need to be worked out. Netplay for emulators can be trivially implemented by extending the Game API over a tcp transport. One computer hosts the emulator and transfers video, audio and input. Two frontends (Kodi instances) connect, one over the DLL interface and one over the network. Connecting to peers could be done through the "Play using..." button.
  • Shaders: Let's start brainstorming what we want and how this could work. A CRT shader would be cool.

Fork from https://github.com/garbear/xbmc and start coding!

Cheers =)
Garrett
(This post was last modified: 2015-01-20 12:42 by da-anda.)
find quote
garbear Offline
Team-Kodi Developer
Posts: 804
Joined: Dec 2010
Reputation: 44
Location: gangsta's paradise
Post: #2
I updated the scope of the project. What do you guys think?
find quote
natethomas Offline
Team Kodi Community Manager
Posts: 4,062
Joined: Apr 2008
Reputation: 68
Location: Kansas
Post: #3
I might suggest also listing shaders for future components. Making shaders mostly platform agnostic is probably quite a ways off, but I think the ability to emulate the look of a CRT screen might ultimately be a big positive for a lot of people.

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.

[Image: badge.gif]
find quote
garbear Offline
Team-Kodi Developer
Posts: 804
Joined: Dec 2010
Reputation: 44
Location: gangsta's paradise
Post: #4
Added shaders to the list
find quote
Scourge Offline
Junior Member
Posts: 14
Joined: Jun 2014
Reputation: 0
Post: #5
Very nice, garbear. Wish I could be of some use Smile
find quote
Heretic9 Offline
Junior Member
Posts: 27
Joined: Apr 2008
Reputation: 0
Post: #6
This kind of shader would be awesome:

https://www.youtube.com/watch?v=rLNfzZ-KMdI
find quote
teeedubb Offline
Donor
Posts: 2,797
Joined: Mar 2010
Reputation: 63
Location: Down Under
Post: #7
Hey garbear, i love reading your posts and I follow your work with great anticipation - I'm really looking forward to seeing this merged. I've asked this question about a year ago so I hope you don't mind me asking again - what do you think the chances are of this being included in the next release of kodi? Smile
find quote
da-anda Offline
Team-Kodi Member
Posts: 3,463
Joined: Jun 2009
Reputation: 41
Location: germany
Post: #8
I don't see it in the next release, simply because we aimed for much shorter release cycles - let's see how this works out. Also next release must not introduce skin changes IIRC
find quote
Megatron Offline
Junior Member
Posts: 30
Joined: Dec 2012
Reputation: 0
Post: #9
(2015-01-21 11:19)da-anda Wrote:  I don't see it in the next release, simply because we aimed for much shorter release cycles - let's see how this works out. Also next release must not introduce skin changes IIRC

How much shorter are the release cycles anyway?...every 6-8 months? When can we expect the next release to be?
(This post was last modified: 2015-01-21 13:19 by Megatron.)
find quote
macrho Offline
Senior Member
Posts: 209
Joined: Dec 2010
Reputation: 0
Post: #10
your efforts are the single most exciting development for me
hopefully we see the fruits of your labor soon, heck, i'd say release a kodi version just with this amazing feature
find quote