Solved ogst odroid n64 case
-
Après un peu de bricolage, voici ce que ça donne en image (désolé pour la qualité de la vidéo, je suis pas très fortiche...)
https://youtu.be/N_8o-SnqtP4Il faut que je fasse un peu de propre puis je vais essayer de faire un script d'installation simple pour partager ça.
-
Super ! Ça renforce grandement l'intérêt de ce boitier, qui est déjà le seul à ressembler à quelque chose sur XU4
-
tout simplement manifique vivement que tu puisse creer un script pour pouvoir installer sur mon odroid , en esperant que se sera facile a installer et qu il y aura tout les videos des systemes bien sur
-
@littlebalup said in ogst odroid n64 case:
/usr/local/share/ogst-logo-odroid/ROMS/
bon ben il faut faire l'install full d'ogst pour avoir les videos ;). Pour ceux qui veulent faire des tests directement sur RB, il faut dl https://oph.mdrjr.net/meveric/pool/main/o/ogst-logo-odroid/ogst-logo-odroid_20180208-1_all.deb et en extraire le rep ogst-logo-odroid qui contient toutes les vidéos des systèmes.
sinon c'est bien top, on suit de prêt pour l'intégration dans RB
-
c est bon j ai extrait les logo je dois les copier ou maintenant ???
-
@ViRuS-MaN ou tu veux c'est juste pour faire des tests.. pour l'instant le support n'est pas effectif, il faut faire à la mano avec les lignes de commande de @littlebalup
mais tu peux utiliser le rep/recalbox/share/system/
pour le gif d'intro et les reps de roms en créeant un rep video dans chaque systeme et y mettre la video logo.mp4ffmpeg -re -i /recalbox/share/roms/n64/video/logo.mp4 -c:v rawvideo -pix_fmt rgb565le -f fbdev /dev/fb1
je ne pense pas que les vidéos de
/recalbox/system/resources/splash
soient utilisables, il faut que je mes mette dans la résolution native de l'écran -
les ligne de commande il faut les mettre ou exactement car franchement je suis pas bon du tout sous linux et la je suis un peux perdu faudrais savoir quel fichier je dois editer et ou mettre la ligne pour jouer le logo
-
@ViRuS-MaN tu peux déjà faire un test en ligne de commande via ssh ensuite tu peux tenter d'éditer le fichier /etc/init.d/S02splash pour y placer les commandes de @littlebalup
-
bon j ai tester mais ca fonctionne pas j ai tester avec winscp et commande ssh ou putty mais pas moyen quand je lance sous winscp ca m ouvre une fenetre avec un long message d erreur
-
voila le message que j ai sous putty
ffmpeg -re -i /recalbox/share/roms/n64/video/logo.mp4 -c:v rawvideo -pix_fmt rgb565le -f fbdev /dev/fb1
ffmpeg version 3.2 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 4.9.4 (Buildroot 2016.11-00025-g5f691d1-dirty)
configuration: --enable-cross-compile --cross-prefix=/share/host/usr/bin/arm-buildroot-linux-gnueabihf- --sysroot=/share/host/usr/arm-buildroot-linux-gnueabihf/sysroot --host-cc='/share/host/usr/bin/ccache /usr/bin/gcc' --arch=arm --target-os=linux --disable-stripping --pkg-config=/share/host/usr/bin/pkg-config --enable-static --enable-shared --prefix=/usr --enable-avfilter --disable-version3 --enable-logging --enable-optimizations --disable-extra-warnings --enable-avdevice --enable-avcodec --enable-avformat --disable-x11grab --enable-network --disable-gray --enable-swscale-alpha --disable-small --enable-dct --enable-fft --enable-mdct --enable-rdft --disable-crystalhd --disable-dxva2 --enable-runtime-cpudetect --disable-hardcoded-tables --disable-memalign-hack --disable-mipsdsp --disable-mipsdspr2 --disable-msa --enable-hwaccels --disable-avisynth --disable-frei0r --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libcdio --disable-libdc1394 --disable-libgsm --disable-libilbc --disable-libnut --disable-libopenjpeg --disable-libschroedinger --disable-libvo-amrwbenc --disable-symver --disable-doc --enable-gpl --disable-nonfree --enable-ffmpeg --enable-ffplay --disable-ffserver --disable-avresample --disable-ffprobe --enable-postproc --enable-swscale --enable-indevs --enable-outdevs --enable-pthreads --enable-zlib --enable-bzlib --disable-libfdk-aac --disable-gnutls --disable-openssl --disable-libopenh264 --enable-libvorbis --enable-muxer=ogg --enable-encoder=libvorbis --enable-vaapi --disable-vdpau --disable-libopencv --enable-libopus --disable-libvpx --enable-libass --disable-libbluray --enable-librtmp --enable-libmp3lame --enable-libmodplug --disable-libspeex --enable-libtheora --disable-libwavpack --enable-libfreetype --enable-fontconfig --enable-libx264 --disable-libx265 --disable-yasm --disable-mmx --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-avx --disable-avx2 --enable-armv6 --enable-vfp --enable-neon --disable-altivec --enable-pic --cpu=cortex-a15
libavutil 55. 34.100 / 55. 34.100
libavcodec 57. 64.100 / 57. 64.100
libavformat 57. 56.100 / 57. 56.100
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2. 3.100
libpostproc 54. 1.100 / 54. 1.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/recalbox/share/roms/n64/video/logo.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf57.83.100
Duration: 00:01:48.20, start: 0.000000, bitrate: 87 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 320x240, 85 kb/s, 20 fps, 20 tbr, 10240 tbn, 40 tbc (default)
Metadata:
handler_name : VideoHandler
[swscaler @ 0x74130] No accelerated colorspace conversion found from yuv420p to rgb565le.
[fbdev @ 0x5aa30] Could not open framebuffer device '/dev/fb1': No such file or directory
Could not write header for output file #0 (incorrect codec parameters ?): No such file or directoryStream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> rawvideo (native))
Last message repeated 1 times -
@virus-man
L'initialisation de l'écran doit être faite à chaque démarrage/redémarrage de RC pour que l'écran soit reconnu par le système ( /dev/fb1 ).Ensuite tu peux lancer la commande ffmeg.
voir mon 2ème poste ci-dessus : https://forum.recalbox.com/post/116833
-
@virus-man said in ogst odroid n64 case:
[fbdev @ 0x5aa30] Could not open framebuffer device '/dev/fb1': No such file or directory
voila l'erreur, l’écran n'est pas configuré!
-
c est quoi la commande pour initialiser l ecran ???
tu aurais pas un fichier deja modifier que je pourrais mettre sur mon odroid pour qu a chaque fois j ai la possibilite de voir les animation sur l ecran tout en sachant que je n ai pas le logo recalbox que tu a fait et que j ai mis les animation dans le dossier roms /video comme dit mais que je n ai pas toutes les animation de tous les systemes car elle n etait pas tous dans l archive -
@virus-man
Les commandes d'initialisation sont sont dans l'ordre:[ `/sbin/lsmod | grep -c spi_s3c64xx` -ge 1 ] && rmmod spi_s3c64xx
modprobe spi_s3c64xx force32b=1
modprobe fbtft_device name=hktft9340 busnum=1 rotate=270
Sinon attends un peu. Je devrais pouvoir terminer le script d'installation ce soir.
-
ok je vais attendre un peu , sinon je voudrais savoir si tu va fournir ton logo recalbox avec et si tu a toutes les animation de tous les systeme emuler car moi dans l archive m en manque quelques une et je trouve pas sur le net
-
Le script d'installation est prêt. Voici comment procéder:
Avant toute chose, pensez a faire une sauvegarde de vos données.
Je l'ai testé dans tout les sens, sur la version stable et la version beta christmass. Mais juste au cas où...Note : J'ai tout fait pour que ce soit ultra simple (une seule ligne de commande est c'est fait). Cependant il est nécessaire d'être connecté à internet pour que les téléchargements se fassent. Plus bas je donne les liens de téléchargement de l'archive et du script d'installation pour les curieux qui veulent bidouiller.
L'installation va, entre autre, créer un fichier script
/recalbox/share/system/custom.sh
. Avant de commencer, assurez vous qu'il n'existe pas déjà (en principe non si vous ne l'avez pas créé vous même). Sinon il sera écrasé.-
ouvrer une session root via ssh : https://github.com/recalbox/recalbox-os/wiki/accès-root-sur-Terminal--(FR)
-
copiez dans le terminal et lancez la ligne de commandes suivante:
wget https://www.dropbox.com/s/jp85fh6j4lkoz8m/install.sh && chmod +x install.sh && ./install.sh
-
c'est tout
Alors maintenant, comment ça fonctionne? Quelques explications sans rentrer dans le dur :
- Au démarrage de la recalbox, le script de démarrage
/etc/init.d/S99custom
lance le script/recalbox/share/system/custom.sh
si il existe (C'est un script de démarrage natif inutilisé par défaut. Je me suis pas embêté à créer un autre script de démarrage...) qui lui va initialiser l'écran et charger l'image par défaut. - Quand on charge un jeu ou une appli, le lanceur (
emulatorlauncher.py
pour les intimes. Préalablement modifié par mon script d'install) va lui aussi lancercustom.sh
en passant comme paramètre le nom du système démarré pour que celui-ci affiche l'image/animation correspondante. - Le script
custom.sh
continu de tourner en fond pour surveiller si l'appli lancé tourne toujours (en fait il surveille le process python / emulatorlauncher). - Quand l'appli est quittée le script ré-affiche l'image par défaut.
Donc vous l’aurez compris, tout se passe dans
/recalbox/share/system/custom.sh
.Customisation:
- Toutes les images et animations sont stockés dans le répertoire
/recalbox/share/system/tft_logos
. - Par défaut vous retrouverez tout ce qu'il y a dans le package original d'OGST plus le logo par défaut et un logo Doom et Kodi que j'ai rajouté.
- Vous pouvez en rajouter, modifier, compléter, enlever... comme il vous chante mais il vous faudra éditer le fichier
/recalbox/share/system/custom.sh
en conséquence pour rajouter ou modifier les chemins vers les fichiers (veillez à conserver la structure de la fonction case). - Si tout par en sucette suite à une mauvaise manip, faite une sauvegarde de votre dossier
/recalbox/share/system/tft_logos
si vous avez modifié ou rajouté de éléments, puis relancer l'installation avec la commande ci-dessus. - Toutes les images et vidéos doivent être en 320 x 240 pixels. J'ai testé les mp4, jpg, png, gif. D'autres formats doivent fonctionner. Je vous laisse tester (tout ce que supporte ffmpeg doit passer en principe).
Et pour finir, voici les "sources" pour ceux qui veulent bidouiller: https://www.dropbox.com/sh/6ef219vlp2615rh/AADXF3mHeaJgEP12nFBNWqf_a?dl=0
Amusez-vous bien
P.S.: pour l'écran qui clignote au démarrage, c'est ici que ça se passe : https://forum.recalbox.com/post/117325
-
-
bon avant tout je voudrais te dire un grand bravo je viens d installer ton script et ca fonctionne nickel et sur l'ecran lcd ca donne d enfer , j adore , et je voudrais savoir s il y aurais pas moyen de faire tourner en boucle l animation au lieu d avoir un ecran noir a la fin de l animation ???
franchement installation tres rapide sur la version stable , mais je pense que des qu il y aura une mise a jour du systeme il faudra obligatoirement reinstaller le script... -
Merci.
L'écran laisse affichée la dernière image jouée. Si la vidéo se termine par un fondu enchainé noir, l'écran reste noir à la fin. Donc dans l'ideal il faudrait retravailler ces vidéos. (Tu peux comparer la vidéo NES et N64 par exemple). Je vais quand même voir a rajouter un paramettre de loop dans le script.
Et oui, après un mise à jour du système il faudra probablement refaire l'installation (re-patcher le launcher). -
"Je vais quand même voir a rajouter un paramettre de loop dans le script."
-stream_loop -1
"-stream_loop number (input) : Set number of times input stream shall be looped. Loop 0 means no loop, loop -1 means infinite loop."draw_logo () { dd if=/dev/zero of=/dev/fb1 2>/dev/null >/dev/null #clear before draw ffmpeg -hide_banner -re -stream_loop -1 -i $1/$2 -c:v rawvideo -pix_fmt rgb565le -f fbdev /d ev/fb1 2>/dev/null >/dev/null }
à tester
-
@ian57
Oui, c'est ce que j'ai en tête. En passant le paramètre de loop (0 ou -1) à la fonction. Paramètre configurable pour chaque système.