Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    Solved ogst odroid n64 case

    Recalbox Général
    ogst odroid case
    33
    180
    60910
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ian57
      ian57 Staff last edited by

      @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

      "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

      1 Reply Last reply Reply Quote 0
      • ViRuS-MaN
        ViRuS-MaN last edited by

        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

        pi3 model B dans bartop PM88 + cles usb 64 Go + manette 8 Bitdo sfc30 pro
        Odroid XU4 + ODroid OGST Console Kit + disc dur 1 to et ma manette 8 Bitdo SFC30 Pro

        1 Reply Last reply Reply Quote 0
        • ViRuS-MaN
          ViRuS-MaN last edited by

          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

          pi3 model B dans bartop PM88 + cles usb 64 Go + manette 8 Bitdo sfc30 pro
          Odroid XU4 + ODroid OGST Console Kit + disc dur 1 to et ma manette 8 Bitdo SFC30 Pro

          littlebalup 1 Reply Last reply Reply Quote 0
          • littlebalup
            littlebalup @ViRuS-MaN last edited by

            @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

            1 Reply Last reply Reply Quote 1
            • ian57
              ian57 Staff last edited by

              @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é!

              "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

              1 Reply Last reply Reply Quote 0
              • ViRuS-MaN
                ViRuS-MaN last edited by

                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

                pi3 model B dans bartop PM88 + cles usb 64 Go + manette 8 Bitdo sfc30 pro
                Odroid XU4 + ODroid OGST Console Kit + disc dur 1 to et ma manette 8 Bitdo SFC30 Pro

                1 Reply Last reply Reply Quote 0
                • littlebalup
                  littlebalup last edited by littlebalup

                  @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.

                  1 Reply Last reply Reply Quote 1
                  • ViRuS-MaN
                    ViRuS-MaN last edited by

                    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

                    pi3 model B dans bartop PM88 + cles usb 64 Go + manette 8 Bitdo sfc30 pro
                    Odroid XU4 + ODroid OGST Console Kit + disc dur 1 to et ma manette 8 Bitdo SFC30 Pro

                    1 Reply Last reply Reply Quote 0
                    • littlebalup
                      littlebalup last edited by

                      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é.

                      1. ouvrer une session root via ssh : https://github.com/recalbox/recalbox-os/wiki/accès-root-sur-Terminal--(FR)

                      2. 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

                      3. 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 lancer custom.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

                      1 Reply Last reply Reply Quote 7
                      • ViRuS-MaN
                        ViRuS-MaN last edited by

                        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...

                        pi3 model B dans bartop PM88 + cles usb 64 Go + manette 8 Bitdo sfc30 pro
                        Odroid XU4 + ODroid OGST Console Kit + disc dur 1 to et ma manette 8 Bitdo SFC30 Pro

                        littlebalup 1 Reply Last reply Reply Quote 1
                        • littlebalup
                          littlebalup @ViRuS-MaN last edited by

                          @virus-man

                          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).

                          1 Reply Last reply Reply Quote 1
                          • ian57
                            ian57 Staff last edited by

                            "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

                            "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

                            littlebalup 2 Replies Last reply Reply Quote 0
                            • littlebalup
                              littlebalup @ian57 last edited by

                              @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.

                              1 Reply Last reply Reply Quote 1
                              • littlebalup
                                littlebalup @ian57 last edited by

                                @ian57

                                j'ai testé sur la version stable. ça fonctionne avec la pluspart des vidéos mais pas avec d'autres. Erreur Error while filtering: Operation not permitted
                                Il semble que c'est un bug ffmeg corrigé fin 2017 :
                                https://trac.ffmpeg.org/ticket/6139
                                http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=59ad504696958fbd9db7b478b4b7e0a2b436b7f2

                                Le build ffmpeg de la version stable actuelle est:
                                ffmpeg version 3.2 Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.9.4 (Buildroot 2016.11-00025-g5f691d1-dirty)

                                Donc je vais quand même partir là dessus en espérant que ffmpeg sera mise à jour dans les prochaines versions. (j'ai pas envie de faire une boucle for ou while dégueulasse... )

                                1 Reply Last reply Reply Quote 1
                                • ViRuS-MaN
                                  ViRuS-MaN last edited by

                                  moi sur odroid je suis en version stable pas essayer de beta , mais franchement c est que du bon ton script

                                  pi3 model B dans bartop PM88 + cles usb 64 Go + manette 8 Bitdo sfc30 pro
                                  Odroid XU4 + ODroid OGST Console Kit + disc dur 1 to et ma manette 8 Bitdo SFC30 Pro

                                  1 Reply Last reply Reply Quote 1
                                  • littlebalup
                                    littlebalup last edited by

                                    J'ai mis le script a jour pour avoir la possibilité de jouer en boucle. Mais comme dit ci-dessous ça ne fonctionne pas pour tout...
                                    Pour mettre à jour, relancez l'installation (ça écrasera tout). Ou téléchargez l'archive puis extrayez et remplacez manuellement le cusom.sh.

                                    1 Reply Last reply Reply Quote 2
                                    • ian57
                                      ian57 Staff last edited by ian57

                                      @littlebalup on peut tenter de b*mp ffmpeg sur recal , je vais voir ce que je peux faire sur la beta... mais j'ai pas trop te temps en ce moment.
                                      le ffmpeg semble est une partie de Buildroot et non de RB... du coup la maj de ffmpeg necessiterait un b*mp BR ce qui est vraiment un gros taf pour la team. On va plutot s'orienter vers l'intégration d'une version à jour de ffmpg dans RB

                                      "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

                                      1 Reply Last reply Reply Quote 0
                                      • littlebalup
                                        littlebalup last edited by littlebalup

                                        @ian57 said in ogst odroid n64 case:

                                        @littlebalup on peut tenter de b*mp ffmpeg sur recal , je vais voir ce que je peux faire sur la beta... mais j'ai pas trop te temps en ce moment.
                                        le ffmpeg semble est une partie de Buildroot et non de RB... du coup la maj de ffmpeg necessiterait un b*mp BR ce qui est vraiment un gros taf pour la team. On va plutot s'orienter vers l'intégration d'une version à jour de ffmpg dans RB

                                        Ok. En attendant j'ai fait un bricolage à la sauvage pour test en remplaçant le binaire avec celui-ci: https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-armhf-static.tar.xz
                                        Il est largement plus lourd que celui présent. Mais ça fonctionne bien.

                                        1 Reply Last reply Reply Quote 2
                                        • ian57
                                          ian57 Staff last edited by ian57

                                          @littlebalup effectivement c'est de la bidouille 😉 en attendant tu pourrais même le dl en même temps que tes scripts 🙂 et remplacer celui présent sur le système
                                          parce que là ya du taf pour le b*mp BR de RB pourle XU4... pour l'instant ya rien de fait 😄

                                          "UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." Dennis Ritchie

                                          1 Reply Last reply Reply Quote 0
                                          • littlebalup
                                            littlebalup last edited by

                                            @ian57

                                            C'est fait 😉
                                            Et temps qu'on est dans le bidouillage, @ViRuS-MaN m'a remonté un vilain bug. Reicast sort un black screen (mai il y a toujours le son) lorsque /dev/fb1 est présent. Comme si l'émulateur ne savait pas sur quel framebuffer il doit jouer...
                                            Bref, un renommage de /dev/fb1 en autre chose (/dev/fb_) et plus de soucis... va comprendre. La bidouille c'est l'art du contournement... 😛

                                            guyomemalik ian57 2 Replies Last reply Reply Quote 3
                                            • First post
                                              Last post

                                            Want to support us ?

                                            87
                                            Online

                                            99.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.1k
                                            Posts

                                            Copyright © 2021 recalbox.com