Jump to content



Photo
- - - - -

PinUp Popper recording


  • Please log in to reply
8 replies to this topic

#1 IRgEEK

IRgEEK

    Hobbyist

  • Platinum Supporter
  • 37 posts

  • Flag: United States of America

  • Favorite Pinball: Too many to count

Posted 18 March 2024 - 08:22 PM

Hello all. Could use some help on using Pinup Popper and recording media.

 

Many of my VPX tables in Popper provided no media for playfield etc. or do not present the right tables when manually populating Popper media via Media Manager (e.g. Beat the Clock matches only the 60s version of the table). 

 

So, I tried the auto record feature with the PopperAutoRecord.exe GUI against my VPX tables and the results were lousy even though Popper setup fine and works in game for properly displaying playfield, backglass, fulldmd. 

 

The table images were incorrectly updated with the backglass image and not the table and the fullDMD zoomed way in and not like it actually displays when I run table.

 

Manually recording with a key assignment in Popper didn't seem to do anything once configured and the key pressed so I'd appreciate any input on how to properly record tables for Pinup Popper as I have followed the official instructions and just not working for me. Aso missing details as does initiating recording outside the GUI always record all output devices(?)

 

I'm totally OK with scripting/coding something to update media directly as opposed to using the current GUIs if that's a better approach. Just looking for others with more experience on recording Popper media artifacts in general.
 

I am incredibly grateful for NailBuster and others who use their time to provide such awesome frontends and tools to manage our VP collections. Just looking for any technical details so I can use more effectively.

 

Thank you kindly in advance for any tips/suggestions.



#2 fhjui

fhjui

    Enthusiast

  • Members
  • PipPipPip
  • 369 posts
  • Location:Germany

  • Flag: Germany

  • Favorite Pinball: especially EM tables

Posted 21 March 2024 - 08:54 PM

The recording part in Popper is hardly documented and not that easy to understand what happens during recording session.

Before using PopperAutoRecord, PopperAutoQA should be used first to check if the tables are working/loading fine. This prog. creates screenshots of Playfield, backglass within a jpeg-file in the subdir "\..PinUpSystem\testqa".
Generally there are two options for table recording in Popper, which I would explain further on.

  • using PopperAutorecord for autorecording of tables
  • the recording feature in PUP-menu for recording a single screen of a single table

The programs, scripts and batch files for video recording are located in the directory: “C:\vPinball\PinUPSystem\Recordings”.
The programs/batch files involved are :

  • recordstart.bat to start the recording, initiated by the popper prog.
  • RecordStop.bat to stop and do further process of the recording
  • Ffmpeg.exe, creates the actual video, conversion and, if necessary, can edit the video
  • PupCloseRecord.exe, ends the recording
  • PUPCloserOBS.exe, terminates OBS (if OBS used and the batchfile recordstop/-start was adjusted)
  • Playsound.exe, plays a sound file according to the individual steps. The sound files are located in the subdirectory “Sounds”.
  • PopperKeepfocus.exe ensures that the playfield has focus after starting the recording software, otherwise the table will stop running.

First way: table recording with PopperAutoRecord:

To record a video, PopperAutoRecord runs each table one after the other, as if you were starting them from the PUP menu. The PUP-launch script is also executed.

In order to distinguish this from a “normal” start, PopperAutoRecord sets the variable “RECMODE”==“1”. The emulator's launch script then runs through the commands that belong to the part if "[RECMODE]"=="1" (…)

batch file RecordStart.bat is executed. RecordStart is called with 9 parameters:
1=xpos, 2=ypos, 3=width, 4=height, 5=Pix, 6=filename, 7=screennum, 8='display#', 9=rotation, where parameter #7 is the number of which screen should be recorded (“3”=Playfield, “2”=Backglass, etc.)

  • PopperAutoRecord calls the batch file “recordstart.bat”
    The screen no. corresponds to the one defined in the pup pack for the PUP menu.
  • Any remaining files from earlier recordings will be deleted first.
  • Then the variables that affect the configuration of the vPin are read (Nvidia card present, audio device, etc.)
  • In the part if %7%==3 goto ffmpeg , the playfield should be recorded with ffmpeg.
  • The script then starts ffmpeg with the appropriate parameters
  • The script then creates a marker file to indicate which recording method was used. (recffmpeg.var).
    This is then queried in the Recordstop.bat script.

To make it easier to find errors in processing, this batch file creates a log file “recordstart.log”, which contains the individual commands that were run.

Hint: When recording, PopperAutorecord creates a marker file “recording.txt” to indicate that it is in recording mode.
To avoid problems if the program has crashed, or the program is forced to close, the "recording.txt" is deleted with every start of the rec. program.

batch file RecordStop.bat is executed
recordStop.bat is called with 4 parameters:
1=output full name with path, 2=#display # , 3= string "DISPLAY"<#>, 4=Rotation

  • PopperAutoRecord calls RecordStop.bat
  • Then variables are read again. There are “vtrim” for ffmpeg, in order to be able to cut off the beginning of recordings if necessary.
  • It is checked whether the marker for an ffmpeg recording is present and
  • During further processing, if the video has to be cut and to be recoded.
  • Then the video file with its appropriate table name is copied into the correct Popmedia directory
  • Finally, a cleanup takes place, deleting the recording.txt, closing PopperKeepFocus.

2nd way: Record table videos via the PUP menu:

The advantage of this recording option is that you can, for example, record the playfield when playing the game, which is not easy possible with the PopperAutoRecord.
Existing recordings will be overwritten.

To start and stop the recording, the hotkey which is defined in the controller setup of PopperSetup must be pressed.

 

The internal process of recording is almost the same as when recording with PopperAutorecord.

  • PUP sets the corresponding Display# depending on the screen to be recorded and calls RecordStart.bat
  • The same processing steps take place here as described in the previous point.

The only difference:
In contrast to recording with PopperAutoRecord, the duration of the recording time is not determined by the program, but only by the time specified in the “Record Length” variable.
If this time (here 30 seconds) is exceeded during this manual recording, ffmpeg ends the recording after that time. Means that the max. recording time is defined by that variable "Record Length".

After pressing the hotkey again, the script continues processing.

 

Now to your problem:

it seems that the assignment of the Display# in the PUP-pack configuration of the PinUpMenu isn't correct.

the PUP-player (PUP-menu) has its own PUP-pack named "PinUpMenu".

As shown above the script expects that the Playfield has ScreenNum=3, Backglass=2.

If that doesn't fit, for example the numbers are swapped, then playfield is recorded instead of BG and vice versa.

  • run PUPpackeditor and load the PinUpMenu-PUPpack.
  • Check that PF has ScreenNum #3, BackGlass #2, DMD #1
  • for test choose in PopperAutoRecord that only one screen and one table is recorded.

During recording log files "recordstart.log" and "recordstop.log" are created. Check these files to see if the content is correct.

For Playfield there must be a line in recordstart.log with if 3 = 3..

This means that the program has passed the correct parameter for the playfield (#3) and the playfield will be recorded.

 

Edit: corrected the part of handling the recording.txt


Edited by fhjui, 22 March 2024 - 06:17 PM.

My documentation for installing vpin software with PinUpsystem (Baller installer): https://mega.nz/fold...wAXZlOEMQGbdutQ

Files and PDF-docu in the subdir "Installation vPin-Software with Baller-Installer"


#3 IRgEEK

IRgEEK

    Hobbyist

  • Platinum Supporter
  • 37 posts

  • Flag: United States of America

  • Favorite Pinball: Too many to count

Posted 22 March 2024 - 01:57 AM

Thanks so much for the wonderfully detailed response! I'll give it another go. Thank you again!



#4 NailBuster

NailBuster

    Enthusiast

  • Members
  • PipPipPip
  • 300 posts

  • Flag: Canada

  • Favorite Pinball: YES

Posted 22 March 2024 - 03:43 PM

If a problem occurs, the program crashes, or the program is forced to close, this file will remain there and no more recordings will be made until this file has been deleted.

 

Very nice writeup on popper recording. 

 

One small item to note is that recording.txt is always-auto-deleted upon startup of Popper.  So if ffmpeg or other recording software crashes out just restarting PC will allow for any new Popper recordings to work afterwards.



#5 fhjui

fhjui

    Enthusiast

  • Members
  • PipPipPip
  • 369 posts
  • Location:Germany

  • Flag: Germany

  • Favorite Pinball: especially EM tables

Posted 22 March 2024 - 06:18 PM

 

If a problem occurs, the program crashes, or the program is forced to close, this file will remain there and no more recordings will be made until this file has been deleted.

 

Very nice writeup on popper recording. 

 

One small item to note is that recording.txt is always-auto-deleted upon startup of Popper.  So if ffmpeg or other recording software crashes out just restarting PC will allow for any new Popper recordings to work afterwards.

 

many Thanks, nailbuster for the hint.

I have corrected this part of the text.
 


My documentation for installing vpin software with PinUpsystem (Baller installer): https://mega.nz/fold...wAXZlOEMQGbdutQ

Files and PDF-docu in the subdir "Installation vPin-Software with Baller-Installer"


#6 eah7271

eah7271

    Neophyte

  • Members
  • Pip
  • 1 posts

  • Flag: ---------

  • Favorite Pinball: Terminator 2

Posted 14 June 2024 - 11:28 PM

I followed this detailed setup and also got everything to work now but is there a way to record the audio from the pup or rom?

#7 arcadewarrior13

arcadewarrior13

    Neophyte

  • Members
  • Pip
  • 1 posts

  • Flag: Australia

  • Favorite Pinball: doctor who

Posted 17 May 2025 - 01:11 AM

Everything records fine except it sometimes records the incorrect table.

 

Any remedies for this?



#8 fhjui

fhjui

    Enthusiast

  • Members
  • PipPipPip
  • 369 posts
  • Location:Germany

  • Flag: Germany

  • Favorite Pinball: especially EM tables

Posted 17 May 2025 - 07:15 AM

Everything records fine except it sometimes records the incorrect table.

 

Any remedies for this?

I'm astonished, how this can happen. That means that also the wrong table is started to be recorded.?

At first I would check the 2 batch files and their logs in the records directory

and the curlauch.bat in the launch dir.
 

ADDED:

which kind of recording ? recording using autorecord or recording with PUPmenu?


Edited by fhjui, 17 May 2025 - 07:45 AM.

My documentation for installing vpin software with PinUpsystem (Baller installer): https://mega.nz/fold...wAXZlOEMQGbdutQ

Files and PDF-docu in the subdir "Installation vPin-Software with Baller-Installer"


#9 Scirocco53

Scirocco53

    Hobbyist

  • Members
  • PipPip
  • 10 posts
  • Location:Upper North of Germany

  • Flag: Germany

  • Favorite Pinball: Terminator 2 Judgement Day

Posted 28 February 2026 - 01:20 AM

It's been some time since the last post of this topic and the explanation from "fhjui" was very valuable.
Since I had to rotate my playfield monitor physically in the cabinet (due to buttons and plunger) screen recording became odd.

 

Playfield is recorded 180° degrees rotated. Backglass, FullDMD and the others are in the correct rotation. When I change the recordstop.bat (if %4% == 180...) the playfield is recorded correctly and all the others are rotated.

 

So I looked for the program, ini, .pup or something like this where recordstop.bat is called so that I could change parameter %4 and set different rotation parameters for different screens.

Up to now withput success. Does anyone know where to change these parameters?

 

Any help would be appreciated.