How-to guide: Recording Live Gameplay in RetroPie’s RetroArch Emulators Natively on the Raspberry Pi (and Twitch streaming)
-
@senkun cheers!
-
@LSolrac2 hi, some further questions (there are so many parts involved in a RetroPie system...)
Is your installation from Raspbian image, with RetroPie installed on top, or from a RetroPie image?
If you used a RetroPie image, do you have the lxde / Raspbian desktop?
In either case, which version of Raspbian Linux is installed (Wheezy or Jessie)?
Which version of Retroarch is installed on your system? This is shown at the bottom of the window when the Retroarch GUI menu is being accessed? My version is 1.3.4 on RetroPie 3.8. I notice in retropie's github that the retroarch framework was updated on 17th June, just after I last ran through the installation process . at a glance i can't tell from the source if anything has changed that could be causing the issue.
-
I'm currently undertaking a complete from-scratch install on my Pi 3 using all the latest versions of everything:
- Raspbian Jessie 27/5/2016 image
- Manually installed RetroPie 4 rc 1
- Manually compiled FFmpeg, using the 'all-in-one' script from my FFmpeg compilation guide
- No overclocking applied
Part way through the ffmpeg compilation at the moment, having installed RetroPie.
I have noticed that RetroArch is now version 1.3.6, released June 17th 2016 (my 3.8 RetroPie installation has 1.3.4, which was the released in May 2016), although there's nothing in the release notes to suggest a problem with ffmpeg recording.
I've checked RetroPie's RetroArch setup script, and this seems to be as it was previously, including the original
--disable-ffmpeg
parameter.I'l post an update later...
-
@RetroResolution
1a- Something messed up in my 3.8 install, so I updated to 4, so yes, I am running v4
1b - Nope there's no Recording option, FFmpeg is the recording driver though (instead of null)2a -Converted Opus>mp4 perfectly, and currently converting mkv>mp4 (quite slow)
2b - Any terminal, even ssh can summon almighty ffmpeg3a - Yes, in fact, the 3rd time I redid the whole thing, I used your ffmpeg-install.sh script, then the sed -i, removing the --disable-ffmpeg part of retroarch.sh, and then reinstalled from source, using retropie_setup.sh
3b - Whoops xD I was astonished by the quick reply so I'm replying all of 'em4a - As stated previously, it's a retropie image, v4-rc1 to be exact (still hyped for 4, but I think this should be incorporated into the final release cause it's pure awesome)
4b - I haven't installed it yet cause I wanted to have everything set before, besides I barely use the desktop, might use later when I make a portable case, but for now, I believe I won't be using it anytime soon
4c - I believe it's Jessie, I tried installing moonlight, which required me to work with the sources.list file, there, it says JessieSeeing your newest post, I hope these details can help your investigation c:
-
@LSolrac2 Hi,
Thanks for the information, sorry for the deluge of questions.
I've just completed my installation from scratch (as described in my last post) - luckily the recording feature does still work!It seems that in the 1.3.6 release of RetroArch the 'Recording' menu has been removed (I can't find any reference to this in the release notes or elsewhere), however it was pretty superfluous as nothing you change in there has any effect.
As you've noted above, the entry for 'driver' does now say 'ffmpeg', which is what really counts.
I just created a recording to the local sd card whilst playing Pitfall II in the VCS emulator, at all appears okay.
I'm going to undertake more checks and tests, then, assuming things are okay, I'll update the guide on my site!
[edit] I've just successfully recorded to external hard disk whilst running the PlayStation emulator, at 60fps - so everything looks fine.
Given the slew of changes recently I'm very glad to see it's working, to be honest...
[edit] btw the files created can't be played back correctly by omxplayer on the Pi, as the video is using planar 4:4:4; it's simple enough to transcode them to a compatible format (which also works for YouTube and Twitter) - there are examples on the FFmpeg compilation guide for doing this. (this is true also if you use Kodi Media Center). Without transcoding the vide is a complete migraine-inducing mess...
-
@RetroResolution
Can't wait >u< Hope everything goes smoothly! -
@LSolrac2 thanks!
It looks like everything's fine (I edited a couple of my earlier posts, above).Apart from the (ineffective) 'Recording' menu no longer being present in RetroArch 1.3.6, the recording is working well - I recorded direct to the SD Card from the VCS emulator, and to a usb hard drive using the PlayStation emulator at 60fps.
I'm updating the "Recording Live Gameplay" guide at the moment.
-
Okay, all seems well and I've updated the guide to reflect the RetroArch GUI changes in version 1.3.6, and also to show that I've successfully tested the process on RetroPie 3.7, 3.8.1, and version 4 rc-1 (on the latest image of Jessie available, from 27/5/2016)
Recording Live Gameplay in RetroPie’s RetroArch Emulators Natively on the Raspberry Pi
-
I completely forgot to mention; the --record option ended up crashing altogether.
-
@LSolrac2 can you post your
emulators.cfg
for whichever emulator you're trying to record from?If you're using a custom
config.cfg
to control the ffmpeg recording format, can you post this?Also, can you double-check the paths and that there are no case-sensitivity issues in directory or file names?
Have you checked in /tmp/ for any
runcommand.log
file? - this often reveals the cause of recording problems -
Nice! Now I can stream to Twitch sometime soon!
-
@RetroPieNerd that's still an aspect I haven't got sorted, but I do return to it on occasion - perhaps under retroarch 1.3.6 it'll start working (I suspect, though, that it's simply going to be a grind to determine the correct combination of config.cfg settings)
-
@RetroResolution
Sure thing: http://pastebin.com/k8xg99Fr
No Config.cfg as I haven't gotten there, yet.
and the runcommand.log is literally blank.cat /tmp/runcommand.log that is
-
@LSolrac2
[EDIT: I'm wrong. The spaces doesn't matter!]
You can't have spaces before and after the equal sign.So, the following line is invalid:
default = "lr-mgba"
You should use it:
default="lr-mgba"
-
@LSolrac2 thanks for the pastebin link; is this a collection of entries from more than one emulators.cfg file? A single emulators.cfg would have an entry for
default=..
Can you post your entire
emulators.cfg
for a single retroarch emulator?[Edit] sorry, didn't spot the
default
entry, I tend to leave mine at the end of the fileI haven't tried the gameboy advance emulators (at all, not just for recording), although I have used the following when recording: VCS, megadrive, 32X, SNES, PlayStation, fuse (zx spectrum), and a custom built Atari800, amongst others.
Any chance you could use any of these, so we can work from a 'known-good' baseline? Preferably, could you try the Atari VCS emulator, as it places relatively little demand on the system, and allows recording to the Pi's SD Card, without needing a custom config.cfg - basically taking everything back to bare-bones?
There is the possibility that something is amiss due to your system having been updated from 3.8 to 4 rc-1, but let's hope not...
-
@meleu good spot meleu - hopefully this is all it is (there's me burrowing down deep, missing the obvious!)
[Edit] regardless, I'll add this to the guide, as it's definitely likely to trip people up
-
@LSolrac2 I noticed that thethe recording filename in your
emulators.cfg
has an extension of.mp4
, whereas I always use.mkv
; I don't' know if this is an issue, but I transcode from .mkv to .mp4 after recording. -
@RetroResolution just for reference, from the guide, here's the
emulators.cfg
from my system for the VCS emulator, Stellalr-stella="/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-stella/stella_libretro.so --config /opt/retropie/configs/atari2600/retroarch.cfg %ROM%" lr-stella-record-hdd-noconfig="/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-stella/stella_libretro.so --record /media/pi/EXT_HDD/RPi_AVI/recording_VCS.mkv --config /opt/retropie/configs/atari2600/retroarch.cfg %ROM%" lr-stella-record-hdd="/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-stella/stella_libretro.so --record /media/pi/EXT_HDD/RPi_AVI/recording_VCS.mkv --recordconfig /home/pi/RetroPie/recording/config/config.cfg --config /opt/retropie/configs/atari2600/retroarch.cfg %ROM%" default="lr-stella-record-hdd" stella="stella -maxres 320x240 %ROM%"
-
@RetroResolution
That's the GBA emulators one.
And guess what OuO It works for PSX just fine, just noticed a file created when I started it up the emulator. -
@LSolrac2 excellent!
It's possible it's simply an error in your GBA emulators.cfg then - or perhaps it doesn't work with that emulator (I found that the PC Engine emulator would only record sound, not video, for example)
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.