ODroid XU4 and RetroPie
-
Finally got around to picking up my XU4. Is it safe to assume that performance is still an issue with retropie on the board? Is there any other threads with progress being made or is it for the most part only for those that have the knowledge to tinker to make the improvements required to make it worth using for "regular" user?
-
has this thread become dead? I have installed retropie on my XU4 and am starting to tinker with it. I know that there has been a statement made about there not being "active" development per se, but I have a couple questions:
- Boot Splash Screens -> The option is not there in retropie-setup script? Is there a way to install or work with this manually?
- Video Snaps -> They play awesome, but am I missing something as there is no audio for them?
Is there any suggestions on finding active threads for this other than this one? I will do a search, but am very curious.
-
@amorinor did you ever find anything on this? I have no sound either in ES menus or video snaps running 4.2.20 and 4.2.22.
-
@fnkngrv I found this. Maybe look into this but use appropriate steps for the Odroid-XU4?
http://www.bluemind.org/gamodroid-c0-odroid-based-portable-retrogamingjit: username over at the Odroid forums and the maker of the "Gameodroid-C0"
Use Meveric's minimal Debian Jessie image for XU4 (instead of the Odroid C0 image linked under "Linux distrib and File system organization" in the GameOdroid-C0 linked above) https://forum.odroid.com/viewtopic.php?f=96&t=17542
-
You can see here that his video previews work with sound but he's encoded them in "320×240@30 fps in h.264". Perhaps try encoding a sample video with Handbrake, for example, to see if the sound works?
-
I found our saving grace for Odroid XU4 Retropie development.
Search on Facebook for ORA Odroid Retrogaming Arenahttps://www.facebook.com/groups/OdroidRetrogamingArena
They've gotten sound working in game/ES, Splashscreen support via MPlayer, etc.
-
@sashby well their disclaimer is a relief provided they follow it:
WARNING: This isn't a group created for rom sharing or the likes. There are plenty of other places for that. We ask that you attempt to refrain from turning the group into a ROM fleamarket of sorts. Also as well this is not a place to sell anything unless you have a personally owned board or setup that you are just going to part with and you plan on making what you put into it. This isn't a sales group.
-
@herb_fargus: What advantages has compiling RetroPie against DRM/KMS + GBM? - Please see below the post from memeka from 11th October on odroids forum.
According to memeka DRM/KMS + GBM is fixing the sound and speed issues!
-
@krujak23 *shrugs don't have an odroid anymore so beats me.
-
@herb_fargus said in ODroid XU4 and RetroPie:
@sashby well their disclaimer is a relief provided they follow it:
WARNING: This isn't a group created for rom sharing or the likes. There are plenty of other places for that. We ask that you attempt to refrain from turning the group into a ROM fleamarket of sorts. Also as well this is not a place to sell anything unless you have a personally owned board or setup that you are just going to part with and you plan on making what you put into it. This isn't a sales group.
This is my group that I created to help push development of different frontends for the Odroid product line. Rest assured unless for some reason I manage to get removed from the group somehow (highly unlikely with how I have set up Admins) we will be sticking to my disclaimer. I have already removed a couple posts that could be possibly construed as breaking my rules. Thankfully it has only been a couple posts pointing to videos, but those videos have annotations in the video description that would break the rules. I won't be policing for comments on videos, etc however if I can easily identify it without a ton of work they will be removed. My goal is for the community to grow as a whole and those types of posts only lead most times to drama.
-
So after a ton of work for me being someone that isn't very versed with Linux compilation and coding I was able to at least get to what I believe is a stable running ES build with audio. I can't vouch for whether it will work for those that have been tinkering and making a bunch of system changes already, but from a fresh build of 4.3.2 using the official Odroid ubuntu-16.04-minimal-odroid-xu3-20170727 image you should be able to have this working pretty quickly.
Here are the basic steps that got me going. Note that every time I tried something and failed I went back to rewriting my base 4.3.2 image to my card to avoid any garbage files/configs being left as orphans by doing uninstalls, etc. I tried a few audio frontend suites however the only one that seems to be working as close to out of the box as possible is indeed PulseAudio.
------------------------------------- DISCLAIMER-----------------------------------------------------
There may be a "better" way to accomplish this task so do so at your own risk. I have seen no issues from it after dozens of reboots and starting/ending emulation however your mileage may vary. ALWAYS BACKUP YOUR IMAGE BEFORE INSTALLING OR MODIFYING SYSTEM FILES.-
After you have followed the initial steps on the XU4 RetroPie install Wiki and then installed RetroPie (I used the MAKEFLAGS="-j1" flag) get your RPi installation where you want to. I installed all the emulators that I wanted to use/test, updated the locale, and then a couple themes you will need to be sure that you can connect via SSH to the terminal and also with winSCP. You will also need Notepad++ if you don't have it. You will also need to be sure that you place at least 1 system into your build with a video snap to test.
-
I installed PulseAudio control with sudo apt-get install pavucontrol via putty. It took roughly 12 minutes. Once it is done, reboot.
-
In order for PA to properly lay down the required files you will need to go into one of your game system's menus. Drill down to that system (EXAMPLE: PC Engine). You will notice that you don't have any audio in the snap. Reboot.
-
Once you are back to the main ES systems screen connect again to your build with putty and go to /etc/pulse/ and backup both the default.pa files and the daemon.conf file by using sudo cp /etc/pulse/default.pa /etc/pulse/default.pa.bak and sudo cp /etc/pulse/daemon.conf /etc/pulse/daemon.conf.bak.
-
Now that you have these files backed up I used winSCP to drill to the directory /etc/pulse/ directory, right click default.pa and select to edit with Notepad++. You will need to go to what should be line 55 and tack on tsched=0 to the end like you see in the snip below:
after doing this change close out Notepad++ and Save upon exit when prompted otherwise you can just close the file by clicking on the red x to the right of the filename for the open file tab. Reboot. -
Go back to winSCP once the build is back to the ES systems screen and open daemon.conf by right click, open with Notepad++. Here you will scroll all the way to the bottom to lines 81 and 82. Here you will uncomment by removing the ; character and then changing the values from 4 to 5 on line 81 and then 25 to 2 on line 82 so that it resembles the snip below:
. Close and Save the file. Reboot. -
Once you get back into ES you should be able to drill into the system you have a game in and the video snap should now have audio along with it. Launch the game and the audio should work as anticipated. If it does not then check your changes because you most likely missed something.
What these changes are doing is from my understanding the following:
tsched=0 - this has to do with how the kernel manages your hardware , in this case your sound card. Some sound cards need real time sqeuencing and apparently the built-in Odroid soudncard does not return accurate timing information.
fragment settings in daemon.conf - DEFAULT FRAGMENT SETTINGS
Some hardware drivers require the hardware playback buffer to be subdivided into several fragments. It is possible to change these buffer metrics for machines with high scheduling latencies. Not all possible values that may be configured here are available in all hardware. The driver will find the nearest setting supported. Modern drivers that support timer-based scheduling ignore these options.
default-fragments= The default number of fragments. Defaults to 4.
default-fragment-size-msec=The duration of a single fragment. Defaults to 25ms (i.e. the total buffer is thus 100ms long).Best of luck and may the odds be ever in your favor!
-
-
What does RetroPie use on the XU4 as the default video player for the video snaps? I am trying to figure out how to add bgm. I am running htop and not seeing any processes that are standing out to help me.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.