Recalbox 7.0 Reloaded (Sortie Jack)
-
Si ça peut aider...
Quand je met jack dans l'interface web de recalbox et que je sauvegarde
Avant
Après
Jack est écrasé en defaut output
audio.device=Default output
Reboot
Le son fonctionne
audio.device=Default output
Reboot
Plus de son et le recalbox.conf est toujours le même
audio.device=Default output -
Toujours identique. dès le reboot on a Default ouput comme valeur, alors qu'il a été changé juste avant.
-
ok, merci des retours ça doit être un bug ES... toute la partie gestion du son a été réécrite pour permettre la détection des cartes sons sur l'ensemble des matériels... mais il ya un effet de bord
-
Bon quelques tests :
Reboot : plus de son
lancement de la commande
/etc/init.d/S31emulationstation stop
modification du fichier de configuration
lancement de la commande
/etc/init.d/S31emulationstation start
et voilà le retour/etc/init.d/S31emulationstation start
[2020/10/03 19:28:50.346] (ERROR) : Cannot find audio device jack
[2020/10/03 19:28:50.390] (ERROR) : [MQTT] Sending messageConnexion to tcp://127.0.0.1:1883 from recalbox-emulationstation failed (send) !
[2020/10/03 19:28:50.390] (ERROR) : [MQTT] Sending messageConnexion to tcp://127.0.0.1:1883 from recalbox-emulationstation failed (send) !
[2020/10/03 19:28:52.162] (ERROR) : Core vice_xcbm5x0 cannot be added to emulator libretro
[2020/10/03 19:28:55.373] (ERROR) : Can´t watch Path! Path does not exist. Path: gamelist.xml
[2020/10/03 19:28:55.374] (ERROR) : Can´t watch Path! Path does not exist. Path: gamelist.xml
[2020/10/03 19:28:50.346] (ERROR) : Cannot find audio device jack
-bash: syntax error near unexpected token `('[2020/10/03 19:28:50.390] (ERROR) : [MQTT] Sending messageConnexion to tcp://127.0.0.1:1883 from recalbox-emulationstation failed (send) !
-bash: syntax error near unexpected token `('
[2020/10/03 19:28:50.390] (ERROR) : [MQTT] Sending messageConnexion to tcp://127.0.0.1:1883 from recalbox-emulationstation failed (send) !
-bash: syntax error near unexpected token `('
[2020/10/03 19:28:52.162] (ERROR) : Core vice_xcbm5x0 cannot be added to emulator libretro
-bash: syntax error near unexpected token
(' th: gamelist.xml:28:55.373] (ERROR) : Can´t watch Path! Path does not exist. Pat -bash: syntax error near unexpected token
('
th: gamelist.xml:28:55.374] (ERROR) : Can´t watch Path! Path does not exist. Pat
-bash: syntax error near unexpected token `('Le paramétre est bien entendu repassé à Default output suite à cela.
-
Les logs
[4.58] Wifi option disabled [ 6.17] [ 4.58] Wifi option disabled es [ 6.32] Will not start S13fbcp : system.fbcp.enabled is set to 0 [ 6.36] Running MIGRATIONS... [ 6.81] modprobe: module usbhid not found in modules.dep [ 6.98] starting new log [ 6.99] converting dos to unix carriage return characters [ 7.04] setting hostname to RECALBOX [ 7.05] setting audio volume to 90 [ 7.07] setting keyboard layout to en [ 7.08] ---- recalbox-config.sh ---- [ 7.10] setting audio volume : 90 [ 7.08] cannot open file en [ 7.75] setting timezone to Europe/Paris [ 7.06] Simple mixer control 'PCM',0 [ 7.06] Capabilities: pvolume pvolume-joined pswitch pswitch-joined [ 7.06] Playback channels: Mono [ 7.06] Limits: Playback -10239 - 400 [ 7.06] Mono: Playback -662 [90%] [-6.62dB] [on] [ 7.77] Setting volume for numid=3 [ 7.79] Setting volume for numid=2 [ 7.80] Setting volume for numid=1 [ 7.81] Setting volume for numid=5 [ 7.06] amixer: Control default element write error: Operation not permitted [ 7.06] [ 7.82] Setting volume for numid=4 [ 7.84] Force unmute on HDMI [ 7.06] amixer: Control default element write error: Operation not permitted [ 7.06] [ 7.86] Force unmute on HDMI [ 7.87] Restoring audio configuration [ 7.88] setting audio to Default output [ 7.90] ---- recalbox-config.sh ---- [ 7.93] Unknown audio format : Default [ 15.95] starting xarcade2jstick [ 16.31] xarcade2jstick : no official stick found, looking for keyboard encoder now ... [ 27.08] starting emulationstation with lang = en_US [ 27.15] emulationstation-starter started [ 27.16] started emulationstation (pid=1057) [ 27.19] S32mini TFT : Reading system.secondminitft.enabled => 0 [ 27.22] S32miniTFT not enabled [ 27.25] ---- recalbox-config.sh ---- [ 28.41] Starting S92switch [ 28.42] script /recalbox/scripts/powerswitch.sh [ STARTED ] [ 28.52] Starting S94manager [ 28.53] ... Starting manager v2 [ 264.51] ---- recalbox-config.sh ---- [ 264.78] enabled overclock mode : rpi3-turbo [ 272.26] Stopping S94manager [ 272.40] Stopping S92switch [ 272.41] script /recalbox/scripts/powerswitch.sh already stopped ! [ 272.44] emulationstation exited code 0 [ 272.45] emulationstation-starter ended [ 272.70] S32mini TFT : Reading system.secondminitft.enabled => 0 [ 272.72] S32miniTFT not enabled [ 272.83] Stopping Emulationstation [ 273.05] Stopping S13fbcp [ 273.14] recalbox.conf saved to /boot partition
La partie audio est bizarre dans le script de config
if [ "$command" == "audio" ];then # this code is specific to the rpi # don't set it on other boards # find a more generic way would be nice rm /recalbox/share/system/.asoundrc 2>/dev/null if [[ "${arch}" =~ "rpi" && "auto hdmi jack" =~ "${mode}" ]] then # this is specific to the rpi cmdVal="0" if [ "$mode" == "hdmi" ];then cmdVal="2" elif [ "$mode" == "jack" ];then cmdVal="1" fi recallog "setting audio output mode : $mode" amixer cset numid=3 $cmdVal || exit 1 elif echo "$mode" | grep -qE "^[[0-9]:[0-9]]" then cardId=`echo $mode | sed "s+^[\([0-9]\)\:\([0-9]\)].*+\1+g"` deviceId=`echo $mode | sed "s+^[\([0-9]\)\:\([0-9]\)].*+\2+g"` recallog "setting audio output mode : '$mode' => $cardId $deviceId" if [[ "${arch}" == "odroidxu4" && "${cardId}${deviceId}" == "00" ]] then # this is specific to the xu4 # bypass the creation of the .asoundrc file for the default 0,0 device as the asound.conf is just enough recallog "bypass the creation of .asoundrc file" exit 0 fi cat > /recalbox/share/system/.asoundrc << EOF pcm.!default { type hw card ${cardId} device ${deviceId} } ctl.!default { type hw card ${cardId} } EOF exit $? else recallog -e "Unknown audio format : $mode" exit 1 fi exit 0 fi
-
peut tu me dire quelle modif tu as faite , j'ai le même problème ? merci
-
/recalbox/scripts/recalbox-config.sh audio
cela fonctionne bien après
Je regarde pour faire un workaround en lançant la commande avec emulationstation -
@Laban Merci de ta réponse hyper rapide !
Malheureusement je saisie pas tout a fait .
C'est pas du ssh ?
c'est une commande à faire en local ?
de mon coté j'avais l'habitude de triturer le fichier config.txt , à priori c'est pas la ?
si tu peux m'aiguiller un chouilla plus je m'en sortirai Merci ! -
@Laban said in Recalbox 7.0 Reloaded (Sortie Jack):
/recalbox/scripts/recalbox-config.sh audio
cela fonctionne bien après
Je regarde pour faire un workaround en lançant la commande avec emulationstationtu as modifié quoi ?
-
@acris dans config.txt sans succes ..
hdmi_safe=1
hdmi_force_edid_audio=1
hdmi_drive=2sinon , si mon raisonement est bon, j'ai compris qu'il fallait lancer un script mais je vois pas comment ..
pouvez vous me donnez la manip pour avoir la main sur l'os éventuellement ? -
ya pas de solution pour la sortie jack pour le moment, la team dev travaille sur le problème
merci de patienter , la team est en déplacement à Paris. -
Je suis en train de tester, mais mon workaround semble fonctionner en attendant un correctif des dev. Dès que j'ai fini mes tests, je vous donne la procédure
-
On va donc attendre que la team règle le problème alors, merci
-
Perso cela fonctionne, j'ai cependant du modifier le lanceur d'emulation station
Voici ce que j'ai fait :
J'ai me suis connecté en sftp sur recalbox (logiciel winscp / login root / mdp recalboxroot)
Je me suis posé dans le répertoire /etc/init.d et j'ai copié sur mon PC le fichier S32emulationstation que j'ai modifié comme cela#!/bin/sh # # systemsetting="recalbox_settings" PIDFILE=/var/run/emulationstation.pid ESBIN=/usr/bin/emulationstation-starter scr_msg() { printf "\r%20s%10s" "${1}" " " > /dev/tty0 # with spaces at the begining for screen not displaying the left ; and spaces on right to erase old msg } case "$1" in start) enabled="`$systemsetting -command load -key system.es.atstartup`" videoMode="`$systemsetting -command load -key system.es.videomode`" if [ "$enabled" != "0" ];then # get output video size fbdevHeight=$(cut -d, -f2 /sys/class/graphics/fb0/virtual_size) # In case the logo has been removed, let's put it back again if [ "${fbdevHeight}" -le 320 ] ; then fbv2 -f -i /recalbox/system/resources/splash/240p/logo-version.png else fbv2 -f -i /recalbox/system/resources/splash/logo-version.png fi echo $videoMode | grep -qE "(CEA|DMT) [0-9]{1,2} (HDMI|DVI)" [ $? = "0" ] && tvservice -e "$videoMode" settings_lang="`$systemsetting -command load -key system.language`" recallog "starting emulationstation with lang = $settings_lang" if grep -q rpi4 /recalbox/recalbox.arch; then HOME=/recalbox/share/system LANG="${settings_lang}.UTF-8" SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libEGL.so SDL_NOMOUSE=1 start-stop-daemon -S -q -m -p /var/run/emulationstation.pid --exec "$ESBIN" & else HOME=/recalbox/share/system LANG="${settings_lang}.UTF-8" SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libGLESv2.so SDL_NOMOUSE=1 start-stop-daemon -S -q -m -p /var/run/emulationstation.pid --exec "$ESBIN" & fi fi /recalbox/scripts/recalbox-config.sh audio ;; stop) recallog "Stopping Emulationstation" start-stop-daemon -K -q -p "${PIDFILE}" clear > /dev/tty0 (echo;echo;echo;echo;echo) > /dev/tty0 scr_msg "Please DO NOT power off Recalbox, PLEASE WAIT !!!" ;; restart|reload) "$0" stop if [ -f "${PIDFILE}" ] ; then ESPID=`cat /var/run/emulationstation.pid 2>/dev/null` while `"$0" status > /dev/null` ; do sleep 0.1 done fi "$0" start ;; status) ESPID=`cat ${PIDFILE} 2>/dev/null` if [ -f "${PIDFILE}" ] && `ps | grep -qE "^[[:space:]]*${ESPID}"` ; then echo "Emulationstation is running (pid `cat /var/run/emulationstation.pid`)" exit 0 else echo "Emulationstation is stopped" exit 1 fi ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 esac exit $?
J'ai ensuite mis ce fichier dans le réperttoire /recalbox/share/system
Je me suis ensuite connect à recalbox avec putty avec le meme compte que winscp
la partition étant protégé en écriture, il faut lancer la commande
mount -o remount,rw /
ensuite on lance la copie
cp -f /recalbox/share/system/S31emulationstation /etc/init.d/
et on remet les droits
chmod 755 /etc/init.d/S31emulationstation
Hop pour ma part cela a parfaitement fonctionner.
-
Erreur dans le précédent message, que je ne peux bizarrement plus éditer
Le fichier est S31emulationstation
Cela donne donc :mount -o remount,rw / cp -f /recalbox/share/system/S31emulationstation /etc/init.d/ chmod 755 /etc/init.d/S31emulationstation
-
@Laban
j ai corrigé ton sujet pour S32emulationstation. -
@acris said in Recalbox 7.0 Reloaded (Sortie Jack):
@Laban
j ai corrigé ton sujet pour S32emulationstation.Le fichier est S31emulationstation
-
J'ai fait la modif, toujours pas de son pour moi ....
-
@gm03 said in Recalbox 7.0 Reloaded (Sortie Jack):
J'ai fait la modif, toujours pas de son pour moi ....
Essaie de lancer la commande
/recalbox/scripts/recalbox-config.sh audio
pour voir en te connectant et donne le résultat. Indiques aussi la plateforme. Je suis sur un raspberry pi 3b+
-
@Laban said in Recalbox 7.0 Reloaded (Sortie Jack):
/recalbox/scripts/recalbox-config.sh audio
numid=3,iface=MIXER,name='PCM Playback Route'
; type=INTEGER,access=rw------,values=1,min=0,max=2,step=0
: values=0PI2 pour moi ...