Jump to content

All my products and services are free. All my costs are met by donations I receive from my users. If you enjoy using any of my products, please donate to support me. Thank you for your support. Tom Speirs

Patreon

Capture Videos to PinballX Media - Table, Backglass, and DMD


Recommended Posts

Future pinball is not supported since the recorder settings are different

For visual pinball, the enabled tag is missing so run Pinballx Settings and disable the visual pinball system. Close it and the re-run Settings and enable VP system and that should fix it the problem

Link to comment
Share on other sites

Future pinball is not supported since the recorder settings are different

For visual pinball, the enabled tag is missing so run Pinballx Settings and disable the visual pinball system. Close it and the re-run Settings and enable VP system and that should fix it the problem

yes it was missing!!

thanks joe!

Link to comment
Share on other sites

I was trying to get this to work for FP, but kind of gave up on it.

However I WAS able to get OBS (on its own, nothing else, no FFMPEG,etc) to capture my Future Pinball playfield, backglass, and DMD screens to 3 different MP4 files all at the same time on my pinball cabinet's SSD. This also works excellent for Pinball Arcade. Haven't tried others yet. I'm using the newest version on the OBS webpage.

My computer and cabinet setup: i5 2500K, 8 GB ddr3 ram, 250 GB SSD, NVidia GTX 960, Sound Blaster Audigy 2 sound card, 42 " TV for playfield, 27 " monitor for backglass, 19 " monitor for DMD / extended backglass, Windows 10. My Future Pinball runs at full screen using BAM. I'm recording the screens at 1920x1080, 1920x1080, and 1280x1024, all at 60fps

-I ran 3 different instances of OBS from 3 different directories. You need to add -multi -portable to the end of each OBS shortcut target field ( c:\OBS2\OBS.exe -multi -portable )

-I configured each instance of OBS to "Monitor Capture" a screen (1, 2 or 3) and save to a different file (PF.mp4, BG.mp4, DMD.mp4). This is set to "save to a file only", no streaming. Also, "Monitor Capture" works really well with windows 8, or windows 10, but is terrible on Windows 7 according to the OBS website.

-1 or 2 of the screens are able to use the NVidia encoder to ease the cpu burden instead of the default x264. (you need a GTX 6xx, 7xx, or 9xx series GPU) I would get problems if I used all 3 with the NVidia encoder.

-I set the "record" hotkey as CTRL+ALT+T, and the "stop record" hotkey as CTRL+ALT+S on each instance of OBS. This way, "record" will start to record all 3 of my OBS instances at the same time, and "stop" will stop them at the same time.

-I make sure every .exe involved with OBS or FP is unblocked and ran as Administrator. I only run FP, and FutureDMD... not Pinball X when capturing.

-you may have to play with quality encoding and bitrate settings for you particular system

-I can't seem to choose "no audio" for the videos, but you can choose a non-used audio source. I choose my TV's hdmi audio, as it is not the default audio device and has no sound going to it. I do have the playfield screen record the game audio though so it will playback in Pinball X for all 3 videos.

When I'm ready to capture, I just have to open all 3 OBS instances, then open FutureDMD and FP (via BAM) and play a table. After my table is loaded, I just hit my "record" hotkey to capture all 3 screens and then stop them when I'm done. Now I have my three MP4 files (PF.mp4, BG.mp4, DMD.mp4) and they are all synced up nicely. Sometimes I find when I start recording that FP gets stutter, and the only way to resolve this is to reboot the computer and it starts working fine again.

I have 2 issues though.

Pinball X plays the video files fine, but for some reason it will NOT repeat the files that OBS creates. If I use another program (like ripbot) to simply convert the OBS created MP4's to the exact same kind of mp4, then Pinball X will repeat the videos. How do I fix this?

Also, the playfield videos need to be rotated for Pinball X. For Future Pinball I can just rotate the playfield in the video settings before recording, but I can't do this for Pinball Arcade. Any way to do this within OBS? Or is there an easy way to do this with another program?

Any help would be great!

UPDATE: I was using the standard windows version, but I noticed that the Multi-Platform version (which is a total re-write and look of OBS) seems to have the rotate feature built in. Will try it out and check back!

  • Like 1
Link to comment
Share on other sites

*thumbs up

Good stuff! When I switched from Win 7 to Win 10, OBS quit working in my script. I haven't gotten around to fixing it yet.

Still, you can take a look at my script at the ffmpeg command I use to transcode and rotate the playfield video output from OBS for use in PBX.

Sent from my iPad using Tapatalk

  • Like 1
Link to comment
Share on other sites

I'm actually figuring out now how to get my method to work in the new OBS Multiplatform version, with nvidia encoder, and also using the custom ffmpeg x264 support in OBS MP. The ffmpeg x264 seems to get better quality with less bit rate, but I haven't gotten 3 different instances running the same yet. I can load 3 separate instances / locations of OBS and change their settings, but they don't save their different settings after I close them all. The -multi -portable commands aren't working for me. It was nice to be able to just click 3 icons and be ready to go. Will have to see if I can get it working that way, but I can still record the 3 screens at the same time to 3 files like before.

Other than that I like the MP version much better so far, and you can do the rotation. Also I have to see if it will make files that Pinball X will repeat.

I also was trying your script, etc on for the first time on Windows 10, so I guess it wasn't just me not getting it to work.... :(

UPDATE: I just created a blank obs_portable_mode.txt file to each OBS MP directory and that got the three separate instances working now for the MP version.

Link to comment
Share on other sites

Alright.... so now I'm a happy camper. I got all 3 instances of OBS MP recording all 3 screens (1920x1080,1920x1080,1280x1024) of Future Pinball at 60 fps using the nVidia H264 encoder to 3 different MP4 files and in perfect sync. Using custom FFMPEG x264, I would get mixed results. x264 is higher quality, but at 60fps it couldn't always keep up. Having one screen x264 and the other 2 NVidia worked well, but NVidia on all 3 worked the best. (It would crash on me on the older OBS)

Bottom line is with NVidia encoder you will get lesser quality unless you go with a higher bitrate, but you can always use another program (ripbot) to convert the files to a smaller x264 file afterwards.

Also, I recorded the game sound in the playfield. With OBS MP you can "disable" all your sound devices within the program if you want. It will not "record" any audio, but you will still have a blank audio stream. Doesn't affect Pinball X at all.

Also, the videos now repeat in Pinball X as they should... and I can have OBS MP rotate the videos as needed for Pinball Arcade and Pinball X.

So now its a simple as click 3 icons, load FP / BAM and Future DMD and the table I want. Then record and stop when I want. Now I have 3 mp4 files. All I have to do is name them, and plop them in their respective Pinball X folders.

Its not completely automated, but it works easy and everytime for me now. Keep in mind I am running a gtx 960 on an i5 2500K and an SSD on Windows 10.

I tried it on Pinball Arcade and on PBFX 2 and it works great. I just gotta find the right combination of quality vs bitrate.

UPDATE: I now have all 3 screens recording at high quality x264 using OBS MP's standard mode x264, instead of NVidia or custom ffdshow. The files sizes are bigger than most people would use, but these are all 60fps. I can always use ripbots' batch conversion feature to make them smaller down the line. SLAMT1LT's FP tables with the extra backglass/colour DMDs and videos,etc looks amazing in Pinball X now, because all the animation from the DMD,PF and backglass match up.

  • Like 1
Link to comment
Share on other sites

Yes, that's why I like to capture all screens simultaneously. It's a nice effect in attract mode when all the videos play in sync for those tables that have a good light show.

But these are just preview videos, you can reduce the size by going to 30 fps and backing off on some of the quality settings.

Thanks for the tip. I'll revisit this at some point and update my script so that this may be automated.

Sent from my iPad using Tapatalk

Link to comment
Share on other sites

I thought 30 fps would be good enough as well, but when I compared it to 60fps on some tables, it was sooo noticable to me. I guess i'm spoiled... I'm not worried about the size of the files, as space isn't an issue for me, and Pinball X plays all 3 videos very nicely. On a dual core computer I can see there being some problems, which is why I put one of my quad core cpu's in the cabinet.

Link to comment
Share on other sites

PBX recorder update:


Here is the existing PBX Recorder 1.2 installs. (I re-compiled the 32bit version): https://drive.google.com/open?id=0B2XD_HKVvzV1S19UOWJPb2k2WWc





- New recording mode added: "Record complete media set for new tables only" If any media is found, the table is skipped. Only tables with no media are recorded. This might eliminate the need for the drag and drop feature, since this leaves your existing Pinballx Media set unchanged, i.e if you do not have DMD images for some existing tables, PBX Recorder will not try to create them

- Drag and drop .vpt/.vpx file onto PBXrecorder to record only one table (Table must be exist in the PinballX xml files)

- New option to record video in .mp4 or existing .f4v. Now checks for existing .f4v or .mp4 or any file.

- New option to save Media filenames based on description name or table name

- Speed up the scanning of tables for people with larger libraries

- Improve DMD recording success by forcing dvd dimensions to an even pixel value

- Bug fix: Enable recordings for VP xml systems missing the enabled xml tag

(The Beta requires the PBX Recorder 1.2 install files, do download the beta exe or ahk script and place it in the PBX Recorder folder)


Some screenshots of the changes

pbxr1.3.png

  • Like 1
Link to comment
Share on other sites

Thanks for this excellent utility.

Using your PBXrecorder 1.3beta15, what is the criteria you use to determine if a given XML (Other System) is Visual Pinball or not?

I have my VP9 and VPX tables together in the Visual Pinball tables folder.

Visual Pinball 9 is in the primary system Visual Pinball.XML using Vpinball.exe.

Visual Pinball 10 is an "Other System" called "VPX" with an associated .exe of VpinballX.exe.

Only the primary Visual Pinball.XML is processed and VPX.XML is skipped.

-Ron

PBXrecorder.ini

PBXrecorder.log.txt

Link to comment
Share on other sites

I was trying to get this to work for FP, but kind of gave up on it.

However I WAS able to get OBS (on its own, nothing else, no FFMPEG,etc) to capture my Future Pinball playfield, backglass, and DMD screens to 3 different MP4 files all at the same time on my pinball cabinet's SSD. This also works excellent for Pinball Arcade. Haven't tried others yet. I'm using the newest version on the OBS webpage.

My computer and cabinet setup: i5 2500K, 8 GB ddr3 ram, 250 GB SSD, NVidia GTX 960, Sound Blaster Audigy 2 sound card, 42 " TV for playfield, 27 " monitor for backglass, 19 " monitor for DMD / extended backglass, Windows 10. My Future Pinball runs at full screen using BAM. I'm recording the screens at 1920x1080, 1920x1080, and 1280x1024, all at 60fps

-I ran 3 different instances of OBS from 3 different directories. You need to add -multi -portable to the end of each OBS shortcut target field ( c:\OBS2\OBS.exe -multi -portable )

-I configured each instance of OBS to "Monitor Capture" a screen (1, 2 or 3) and save to a different file (PF.mp4, BG.mp4, DMD.mp4). This is set to "save to a file only", no streaming. Also, "Monitor Capture" works really well with windows 8, or windows 10, but is terrible on Windows 7 according to the OBS website.

-1 or 2 of the screens are able to use the NVidia encoder to ease the cpu burden instead of the default x264. (you need a GTX 6xx, 7xx, or 9xx series GPU) I would get problems if I used all 3 with the NVidia encoder.

-I set the "record" hotkey as CTRL+ALT+T, and the "stop record" hotkey as CTRL+ALT+S on each instance of OBS. This way, "record" will start to record all 3 of my OBS instances at the same time, and "stop" will stop them at the same time.

-I make sure every .exe involved with OBS or FP is unblocked and ran as Administrator. I only run FP, and FutureDMD... not Pinball X when capturing.

-you may have to play with quality encoding and bitrate settings for you particular system

-I can't seem to choose "no audio" for the videos, but you can choose a non-used audio source. I choose my TV's hdmi audio, as it is not the default audio device and has no sound going to it. I do have the playfield screen record the game audio though so it will playback in Pinball X for all 3 videos.

When I'm ready to capture, I just have to open all 3 OBS instances, then open FutureDMD and FP (via BAM) and play a table. After my table is loaded, I just hit my "record" hotkey to capture all 3 screens and then stop them when I'm done. Now I have my three MP4 files (PF.mp4, BG.mp4, DMD.mp4) and they are all synced up nicely. Sometimes I find when I start recording that FP gets stutter, and the only way to resolve this is to reboot the computer and it starts working fine again.

I have 2 issues though.

Pinball X plays the video files fine, but for some reason it will NOT repeat the files that OBS creates. If I use another program (like ripbot) to simply convert the OBS created MP4's to the exact same kind of mp4, then Pinball X will repeat the videos. How do I fix this?

Also, the playfield videos need to be rotated for Pinball X. For Future Pinball I can just rotate the playfield in the video settings before recording, but I can't do this for Pinball Arcade. Any way to do this within OBS? Or is there an easy way to do this with another program?

Any help would be great!

UPDATE: I was using the standard windows version, but I noticed that the Multi-Platform version (which is a total re-write and look of OBS) seems to have the rotate feature built in. Will try it out and check back!

Thanks for this. I'm still working on getting OBS to capture FP in Windows 10. Had everything working well enough in Win 7. My FP config was already setup for 'monitor capture'. I've tried setting the executable to run as admin and with Windows 7 compatibility. Can you share your profile and xconfig files for your playfield capture?

Also, have you gotten around to testing OBS Multi-platform?

Link to comment
Share on other sites

Yes, I only use OBS Multi-platform now.

My previous responses in this Topic (#230, 231) were all about me using it to record all 3 of my screens at the same time. (I referred to it as OBS MP). Give them a read, as there were a couple of hiccups to get it started, but now its all good. I also used a 4th separate installation of OBS MP for Pinball Arcade in order to record its playfield in portrait mode and rotate it correctly for PBX.

I also noticed that OBS MP has the ability to not just rotate but also flip horizontal and vertically. Wouldn't it be nice to somehow be able to use that in a way for your PB2K cabinet for your holographic DMD. If maybe there is a way to have OBS MP through a command line launch and automatically take a portion of your dmd screen (or a specific program / window that is off screen) and arrange it the way you want and display it in full screen on your DMD screen.

I'll try to get the files up if I can.... not at the cab right now.

Link to comment
Share on other sites

Also...any luck in getting Pinball Arcade to work with the camera mod with DSR x4? I use 2160x4400 in the PA config, but the camera mod will not work correctly no matter what I do. There is no type of scaling in Windows (DPI, or nvidia control panel) or anywhere else, and my desktop is in 3840x2160. The camera mod runs, and the game seems to run at that resolution (2160x4400), but it won't cut off the top of the screen and re-arrange the DMD correctly on my 3rd screen.

Link to comment
Share on other sites

I no longer have OBS, i just have OBS MP, and it doesn't seem to use the same files for config,etc....

Here's a link to my OBS MP in an RAR file. You can give that a try.

https://drive.google.com/file/d/0ByrC7r1mI15DMllmMWQxVjJWRkk/view?usp=sharing

This is just the folder for my playfield configured OBS MP. It's set to record 60 fps 1920x1080, rotated 180 degrees.

(Alt +) to record, (Alt -) to stop recording.

Hopefully it will help!

Link to comment
Share on other sites

Thanks. As far as I can tell from your description I was running OBS the same way you were. Those files might tell me what else is different that I am not doing.

I discovered a solution using ffmpeg for capturing and streaming the DMD using the localhost network loop. I flip the stream on playback on my third screen. I use this where a game does not support flipping, such as Pinball FX2. I can even change the DMD color. I published the scripts elsewhere on this forum.

I do use DSR with TPA, but I don't use the camera mod. I'm not invested in TPA at this point, so I haven't worked on trying to incorporate it in my cab yet.

Link to comment
Share on other sites

I no longer have OBS, i just have OBS MP, and it doesn't seem to use the same files for config,etc....

Here's a link to my OBS MP in an RAR file. You can give that a try.

https://drive.google.com/file/d/0ByrC7r1mI15DMllmMWQxVjJWRkk/view?usp=sharing

This is just the folder for my playfield configured OBS MP. It's set to record 60 fps 1920x1080, rotated 180 degrees.

(Alt +) to record, (Alt -) to stop recording.

Hopefully it will help!

Thanks! I'm hoping I can get FP capturing working again.

Link to comment
Share on other sites

TPA does look real good in a cab with the camera mod... its the only thing I can't run with DSR because of that. (TPA does run fine in DSR without the mod though)

Even if I don't run it in DSR, my setup will get messed for backglass and dmd videos through Pinball X if I have to change the resolution back and forth when launching TPA.

Future Pinball still runs via DSR and looks great.... though compared to my 55 inch UHD, DSR just doesn't compare to real 3840x2160. One day my cab will have an UHD screen for the playfield!

Link to comment
Share on other sites

Yah, I was doing the same as you having Windows, PBX, and everything running in 4K, and it works great.... its just TPA mucks things up forcing a resolution change either by needing to be in portrait mode, or running at a lower resolution if I want to use the camera mod.

It wouldn't be so bad if I didn't have stuff on the dmd screen for EVERYTHING (PC games, FX2, TPA, MAME), and its been real tricky getting it all to work nicely. Lots of custom DMD videos/pics for each system, but it looks good in the end.

Link to comment
Share on other sites

  • 2 weeks later...

I love the recorder and just downloaded the pinxcheck utility, I am having many issues with my setup and this sit, for some reason, I cannot access the ftp. I don't know why, I had done it before but I want the sounds for scrolling and the pinballx logo seems to have dissappeared. I am recording on the pinball pc as we speak. I love it but my screenres keeps changing what it likes, yesterday, 2 was the BG, today it showed up on the DMD so I set it to 4 and it is back on 2, it's goofy. I want sounds for scrolling and the pinballx logo in the dmd but it went away automatically. I will post this soon, I just don't know why I can't get to the ftp. Vic

Link to comment
Share on other sites

  • 4 weeks later...

Thanks, TerryRed. I can confirm that OBS Studio 0.13.2 captures FP+BAM in Windows 10, so I am back in business. My script was only using OBS to capture the playfield and FFMPEG gdigrab for the other screens. Output videos were not quite synchronized. I'll see if I can just use OBS Studio for all screens and see if that's better.

I'm not sure why you are doing multiple installations of OBS Studio. Can't you just run multiple instances from a single installation and designate the profiles that you want to use to capture different screens?

Notes: OBS Studio added a lossless capture option as preset, but it appears to be just dumping uncompressed audio and video streams to an avi container. Even though I have an SSD, it's just a little much. I'm getting a lot of dropped frames. If you go deeper into the settings, it is still possible to setup a lossless compressed video capture via x264.

Audio capture would then be lossy, but can still be done with HQ. I don't use audio in my previews anyway, so I simply disable the audio capture source.

The advanced settings have an option for full color range which is good since in my experience partial color ranges seem to produce washed out reds/oranges. The LAV filters can handle full color range output where other codecs may not support it.    

I use DSR and downscale the playfield resolution. Right now, I have set up the capture at the increased resolution and scale down the output to 1920x1080. Still looks good. Capturing at 30 fps. I still have a transcode step where I rotate the output for display in PinballX and do some modest compression to get the file size down to around 10Mb.

I'll work on updating the script this weekend. I've got a backlog of FP preview videos to create.

 

  • Like 1
Link to comment
Share on other sites

Good to see it working for you!

I used multiple installations / instances because I think I was having issues with the profiles not quite allowing the screen rotation to work properly everytime, etc.... I can't remember for sure, but this method works everytime without issue. No need to change anything this way once setup for each screen / layout.  I do find that sometimes you will just get a still picture instead of a video capture in FP playfield..... just close EVERYTHING (OBS, FP,  FDMD, etc) and re-opening them should take care of that.... and you need to wait a few seconds after the table first appears to record sometimes as well.

 

For full colour range video and gameplay, make sure you have full colour range set for your screen resolution AND for your video output for each screen. Its a separate setting in the NVidia control Panel.  DVI connected screens (my 19 inch screen), may not give you the option for Full Range on your resolution section, but you can still change it in the video.  Also make sure your TV / monitors are set correctly as well in their setup options (HDMI black level) as well.     God, colour range can be a pain...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...