bite-your-idols / Gamestarter

:video_game: Retrogaming kodi add-on repository for LibreELEC
263 stars 47 forks source link

No sound after quit RetroArch #40

Closed Homeye closed 7 years ago

Homeye commented 7 years ago

My spec are: Raspberry Pi3 LibreELEC (Krypton) v7.90.009 ALPHA Latest Gamestarter Pi (Download script.gamestarter-v2.6-LE8alpha.zip for LibreELEC 8) and Internet Archive ROM Launcher

After i configured the addons, i was able to run Snes games form the Archive. There was no performance or sound issues. But, when i finish my game and hit "quit from retroarch". After that my RPi reboot back to Kodi but there's no sound. I need to reboot my RPi to get sound. I'm using the official A/V Composite Cable to connect it to my CRT tv.

Is there any way to config my machine to have sound after i quit RetroArch?

bite-your-idols commented 7 years ago

did you try using Gamestarter addon or advanced emulator launcher directly? is this issue happening everytime you use IARL or just the first time, after installation? can you paste here gamestarter.log output? (/storage/.kodi/userdata/addon_data/script.gamestarter/gamestarter.log)

when back in kodi with no sound try this via ssh: modprobe snd_bcm2835

Homeye commented 7 years ago

(first: sry for my english, it's not my native language) I'm using the Internet Archive ROM Launcher to download the roms and it's using the gamestarter addon the launch them. It happens every time. When i finish the game, i press the big XBOX Guide button on my xone controller. Retroarch menu opens up, i choose "quit retroarch". And after the reboot, there's no sound in Kodi till i reboot my rpi3. There's no gamestarter.log in that folder, only settings.xml. modprobe snd_bcm2835: sound is back. how can i solve that without type in every time? :)

bite-your-idols commented 7 years ago

it seems IARL is not weel configured or it is causing some launch issue. When launching gamestarter it stands still waiting for exiting retroarch, then it executes modprobe snd_bcm2835. Here, it seem that when launching IARL gamestarter is not running but only retroarch, so when exiting retroarch, gamestarter is not setting your audio back since it it not running.

Please check that your IARL config is correct, selecting gamestarter.start not retroarch binary when selecting its parameters.

Homeye commented 7 years ago

Where do i need to change this setting? Atm i'm using "My system type: openelecrpi(gamestarter addon" and i don't see any retroarch binary option. Edit: When i just start the gamestarter addon, not start any game and quit right after it's boot up, i have the same problem.

bite-your-idols commented 7 years ago

ok, if it is happening also with retroarch let's try to fix that. I think it could be due to composite audio exit, you need to take a look to kodi log and gamestarter log when launching gamestarter, then also when going back to kodi. I don't understand so well audio outputs in linux but you can try to force analog exit in your boot config: https://www.raspberrypi.org/documentation/configuration/config-txt.md

Homeye commented 7 years ago

I can't check the forcing analog sound option atm, but here's my gamestarter log:

::Gamestarter:: -> disable alsa... ::Gamestarter:: -> restart kodi...

And these are all my logs (what i found): logs.zip

Serg86 commented 7 years ago

I use LibreElec 8 and the corresponding Gamestarter version (LE8 2.7), I also had this problem when returning to Kodi, the jack audio didn't work.

modprobe snd_bcm2835 fixes it. I looked into the gamestarter.start script file and you do a rmmod snd_bcm2835 before launching Kodi, I commented out this line and it worked, when restarting Kodi, jack audio and HDMI both work. I don't remember having this problem on LibreElec 7.

Edit: I was looking for a way to enable both HDMI and analogue audio out, at the same time, since that is what I use in Kodi. I've been searching for a few hours now and did not find a solution, but I created a simple script which toggles between HDMI and Analogue out, I've created a Audio-Toggle.sh file in the "roms/ports" folder:

#!/bin/sh

TOGGLE=$(amixer cget numid=3 | grep values=2)

if [ "$TOGGLE" == "" ]; then
        amixer -q cset numid=3 2
else
        amixer -q cset numid=3 1
fi

Kodi does not seem affected by this at all.

If you know how to enable both at the same time, please let me know.

AndreaRigoni commented 7 years ago

Hi All .. I found a clue:

in file: /storage/.kodi/addons/script.gamestarter/resources/bin/gamestarter.start

I commented out this line:

Disable ALSA

echo '::Gamestarter:: -> disable alsa...' >> $LOG_FILE
rmmod snd_bcm2835

And now it works ..

cheers

bite-your-idols commented 7 years ago

fixed in latest v2.8 update