Blur Busters Forums

Who you gonna call? The Blur Busters! For Everything Better Than 60Hz™ Skip to content

Re: How to make a 480fps @ 480Hz video!? [Success!]

Discussion about 120fps HFR as well as future Ultra HFR (240fps, 480fps and 1000fps) playing back in real time on high refresh rate displays. Bleeding edge experimentation.

Re: How to make a 480 Hz video!?

Postby yhlee » 24 Apr 2018, 18:13

Hi Chief,

I'd by no mean harm the UFO copyright of course!

I do get puzzled by the fact that ffmpeg+MPC-HC cannot produce the 480Hz output as what I see on your webpage.

(I assume it is JS + html5? I am not at all familiar with web-page programming.)

Are you suggesting that the jsfiddler example will provide a 480 Hz frame rate?
yhlee
 
Posts: 9
Joined: 24 Apr 2018, 09:54

Re: How to make a 480 Hz video!?

Postby Chief Blur Buster » 24 Apr 2018, 18:39

yhlee wrote:I do get puzzled by the fact that ffmpeg+MPC-HC cannot produce the 480Hz output as what I see on your webpage.

Are you using low-resolution graphics? 1080p480fps will not be possible on most GPUs. Try 480p480fps or lower resolution. It is a big firehose of data.

An 8K60fps decoder will technically do 1080p960fps at the same bitrate, but there are also other overheads, so add at least a 75% safety margin, so an 8K60fps decoder will be able to be trusted at 480p960fps -- they were never designed for such frame rates at real time, but it can be made to work if you are using certain kinds of players that will framepace the output frames accordingly.

Sometimes graphics drivers fight against us (e.g. poorly framepaced decoders) but a lot of framepacing is done by the video player itself, or the player can actually de-jitter the framepacing (buffering and synchronizing to refresh cycles).

Players don't always know the refresh rate of the display. They play framepacing their frames to the video file's internal time, not necessarily synchronized to refresh rate. That's why 60fps videos sometimes have 1 stutter every few seconds, because the display was 59.94Hz or 60.035 Hz or whatever.

You need a microsecond-accurate player, not a millisecond-accurate player. A single millisecond will frame-roundoff too much. 480Hz means each refresh cycle is only 2 millisecond! So if a player is a fraction of a millisecond late (even 100 microseconds), it could roundoff to the next refresh cycle, especially if it's presented extremely close to the refresh-cycle boundaries. So to more likely grid-fit the playback frames to their specific refresh cycles, you need either (A) a player that intentionally syncs to refresh rate, or (B) a microsecond accurate player that will framepace impeccably accurately.

Test different players, like SMPlayer, Chrome player, Windows Media Player, VLC, etc, until you hit a player that plays smoother. It makes a massive difference, some of my .mp4 files stutter a lot more than others in other players.

yhlee wrote:(I assume it is JS + html5? I am not at all familiar with web-page programming.)

Yes.

yhlee wrote:Are you suggesting that the jsfiddler example will provide a 480 Hz frame rate?

Yes. It will rotate 1 image per refresh cycle, so it will speed up rotations on higher Hz displays.
It rotates the 4 images 480 times on my 480Hz display.
If you need a custom modification of this jsfiddle, please email mark@blurbusters.com
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter!
To support Blur Busters: Official List of Best Gaming Monitors | G-SYNC | FreeSync | Ultrawide
User avatar
Chief Blur Buster
Site Admin
 
Posts: 5003
Joined: 05 Dec 2013, 15:44

Re: How to make a 480 Hz video!?

Postby lexlazootin » 25 Apr 2018, 03:53

I know it's not really what you wanted but i thought it would be fun to make some 480fps gameplay.

Image

I used a demo from my WR run of HL so it's 480fps realtime playback. I can't view this at realtime because MPV keeps capping me at my 240hz and VLC just poops itself everytime but you should give MPV a try.

http://www.mediafire.com/file/5wfhp9rgm ... fps265.mp4
User avatar
lexlazootin
 
Posts: 1248
Joined: 16 Dec 2014, 02:57

Re: How to make a 480fps @ 480Hz video!? [Success!]

Postby Chief Blur Buster » 25 Apr 2018, 07:46

That's fantastic, probably a world's first attempt of an UltraHFR gameplay recording!

The 480Hz mode is 960x540 but 640x480 is fine -- scaling quality is bad at that, though

Your video gives me an opportunity to test multiple video players. I am going to try each one of them and figure out which video players will push those frames 480 times a second precisely to their correct refresh cycles without stutter. I have some tactics to do that including the http://www.vsynctester.com Pink-Cyan flicker technique, to more easily detect framedrops...I'd have to run some custom command lines to insert overlay graphics on every frame like that, though.

- Windows Media Player (black -- can't play anything)
- SMPlayer (works, but "Your system is too SLOW to play this!" -- huh, I'm an i7-7740X (5GHz) with a 1080Ti Extreme)
- VLCPlayer (plays at full speed in bursts, freezes randomly for a few seconds before resuming)

I think I need to convert this to H.264 (another opportunity to see if a video converter can preserve 480 frames per second information!). because H.264 is much easier-playing for most GPUs and most players even if the file size is sometimes much bigger. Technically I should have the bandwidth but players were never designed to spray framerate out of the wazoo like this, so we're in semi-uncharted territory.

I don't think *any* video player writer has access to a 480Hz display, but it might be time to submit some Bugzilla/Github issue reports.

How long did it take you to create the 480fps video? Were you able to avoid using the "screenshot-every-frame" technique?

We need easier workflows to make UltraHFR gameplay videos than what Hypermatrix did in partnership with me for this 120fps video which involved RAID and screenshotting every frame realtime.

But now I have a Samsung 960 Pro M.2 SSD so I should be able to realtime record 480fps at 960x540.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter!
To support Blur Busters: Official List of Best Gaming Monitors | G-SYNC | FreeSync | Ultrawide
User avatar
Chief Blur Buster
Site Admin
 
Posts: 5003
Joined: 05 Dec 2013, 15:44

Re: How to make a 480fps @ 480Hz video!? [Success!]

Postby yhlee » 25 Apr 2018, 08:22

I've tried it as well. This video can be played at 480 Hz using my setup with MPC-HC player.

Thanks to you, I noticed that the cause of my 8-image-loop video cannot be played at above 400 Hz is the resolution-setting (it was made in 1280p but played on 960p).

Now I generate the image at anything equal or below 960p, it can run at 480 Hz.

But still, there is a frame-drop every few seconds! Now I am trying to solve this annoying frame-drop.
yhlee
 
Posts: 9
Joined: 24 Apr 2018, 09:54

Re: How to make a 480fps @ 480Hz video!? [Success!]

Postby RealNC » 25 Apr 2018, 08:29

yhlee wrote:But still, there is a frame-drop every few seconds! Now I am trying to solve this annoying frame-drop.

If you're using mpv, try "--video-sync=display-resample".
TwitterSteamGitHubStack Overflow

The views and opinions expressed in my posts are my own and do not necessarily reflect the official policy or position of Blur Busters.
User avatar
RealNC
 
Posts: 2016
Joined: 24 Dec 2013, 18:32

Re: How to make a 480fps @ 480Hz video!? [Success!]

Postby yhlee » 25 Apr 2018, 08:46

Wow, MPV does the thing! I haven't even use the command yet!

Thanks to you all! lexlazootin, RealNC and Chief!

Quick summary for generating a 480Hz video from 8 images of my working case:

OS: Windows 10 Enterprise

Hardware: Intel Xeon E3-1230 V2 @3.3 GHz, 8 GB RAM, EVGA GTX 970, Ziswork 480 Hz monitor (display port).

Generating video from 8 images (1.png through 8.png) via ffmpeg (with default codec, H264, 960x540p):

ffmpeg -loop 1 -r 240 -start_number 1 -i "%01d.png" -t 10 -an out.mp4

Playback with MPV.

PS. Only when the video ends will there be a drop-frame, and it works pretty well during playback.

Performance in other media software, for your reference:
-Windows media player------can't play
-VLC----------------------------drop frame every half second
-MPc_HC x64------------------drop frame every few seconds
-MPV----------------------------drop frame only at the end
Last edited by yhlee on 25 Apr 2018, 09:49, edited 3 times in total.
yhlee
 
Posts: 9
Joined: 24 Apr 2018, 09:54

Re: How to make a 480fps @ 480Hz video!? [Success!]

Postby Chief Blur Buster » 25 Apr 2018, 09:47

We're pioneers here.

It will be a few years before 1080p 480Hz arrives, and recording Crysis at such frame rates. I can get over 200fps in Crysis with somewhat reduced details at full HD.

The low resolution of 540p 480Hz -- plus the ugly scaling -- limits the visible benefits but it certainly is the smoothest gameplay video I have ever seen.

Winner winner chicken dinner goes to MPV!
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter!
To support Blur Busters: Official List of Best Gaming Monitors | G-SYNC | FreeSync | Ultrawide
User avatar
Chief Blur Buster
Site Admin
 
Posts: 5003
Joined: 05 Dec 2013, 15:44

Re: How to make a 480fps @ 480Hz video!? [Success!]

Postby RealNC » 25 Apr 2018, 10:11

One more thing: mpv has seamless looping. If you're using stand-alone mpv, just press L (must be capital L, so press shift+l). If you're using SMPlayer as the front-end, select "Play->A-B section->Repeat".

It should then loop the video indefinitely without frame dropping at the start/end junction. In theory, this means you can have a video with only 8 frames in it. Of course that makes it impossible to press L while it's playing, so you should use the "--loop" option instead (mpv --loop myvideo.mp4 for example).
TwitterSteamGitHubStack Overflow

The views and opinions expressed in my posts are my own and do not necessarily reflect the official policy or position of Blur Busters.
User avatar
RealNC
 
Posts: 2016
Joined: 24 Dec 2013, 18:32

Re: How to make a 480fps @ 480Hz video!? [Success!]

Postby lexlazootin » 25 Apr 2018, 11:39

im a dumby, i couldn't play it back because i had G-Sync and V-Sync on, now it works at 480fps on MPV just fine.

I used the startmovie command that exports bmp files, i know how to stitch them up so it's not a problem. Yalter has a plugin that you can export directly into x264 with the setting you want, it works via ffmpeg but he made it only for Linux and hes not the type of person that will make something for windows if he doesn't have to :lol:

I made another in the correct resolution and on x264, it's probably a lot easier to decode.

http://www.mediafire.com/file/c3jhjmu54 ... fps264.mp4
https://i.imgur.com/xe02ywo.png
Last edited by lexlazootin on 25 Apr 2018, 22:56, edited 1 time in total.
User avatar
lexlazootin
 
Posts: 1248
Joined: 16 Dec 2014, 02:57

PreviousNext

Return to High Frame Rate Video (HFR)

Who is online

Users browsing this forum: No registered users and 2 guests