Page 1 of 1

Capture @60.09 fps?

Posted: Fri Mar 17, 2023 8:27 pm
by deeder

Hiya!

Does anyone know of a way to record video out of the Mister at 60.09 fps? I have VRR turned on, and it works flawlessly on my TV, but the recording is locked to 60.0. I haven't found any solutions poking around on the internet, so I thought I'd see if anyone here has messed around with this. My target is 1280x720 @ non-standard frame rates, 60.09 at the moment. It looks like some newer capture cards support VRR, but only for pass-through. Losing the frame every once in a while isn't the end of the world, but I thought I'd at least check.

Thanks~

Edit: This little project is becoming a rabbit hole. It looks like this will be based on the device modes available on the capture card. FFMPEG appears to be the way to go for both querying device modes and for capturing raw unaltered footage (as opposed to OBS, for example)

According to this page:
https://www.rickmakes.com/using-a-cheap ... indows-10/

Query all devices
ffmpeg -list_devices true -f dshow -i dummy

Get the capabilities of a device
ffmpeg -f dshow -list_options true -i video="USB Video (or name of device that pops up)"

For mine (HD60 Pro), it clearly shows an FPS range from 1 to 60, or 1 to 60.00002. So, if I want to record at 60.098814 FPS, I need a capture device that can run FPS above that number and doesn't error out when trying to put the device into that state. The commands that would need to work, would be:

Display:
/ffmpeg/bin/ffplay -f dshow -video_size 1280x720 -framerate 60.098814 -vcodec rawvideo -pixel_format bgr24 -rtbufsize 100M -i video="Game Capture HD60 Pro":audio="Game Capture HD60 Pro Audio"

(replacing Game Capture HD60 Pro with the video device from the query)
(replacing Game Capture HD60 Pro Audio with the audio device from the query)

Capture:
/ffmpeg/bin/ffmpeg -f dshow -video_size 1280x720 -framerate 60.098814 -vcodec rawvideo -pixel_format bgr24 -rtbufsize 100M -i video="Game Capture HD60 Pro":audio="Game Capture HD60 Pro Audio" -c:v libx264 -preset veryslow -qp 0 output.mkv

(replacing Game Capture HD60 Pro with the video device from the query)
(replacing Game Capture HD60 Pro Audio with the audio device from the query)

Edit 2: The rabbit hole continues. It turns out framerate is the least of my concerns. My intent was to back-calculate NES YC values using a custom color palette (yes, tint detection would be tricky). BUT, the capture card seems to apply some sort of post-processing to the HDMI signal, so I can't seem to get an accurate capture at all in the first place. (Who would amp a digital signal to another digital signal?!? but hey, I don't make the cards, who knows). There seems to be no way to set the card to "unmodified". So I am now looking for a card that can handle non-standard framerates and can give me unmodified clean hdmi pixel values.