Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

jpiszcz

macrumors 6502
Original poster
Mar 28, 2010
398
74
Testing a random 4k video (at bottom [0]) on YouTube on a MacBook Pro 16" full-screen in Google Chrome on OSX:

In the below video, when I right click the video and check Stats for Nerds, I am seeing the Mac screen resolution (default out of the box) as 1729x1008:

On the MacBook Pro 16" Display:
Screen Shot 2019-12-14 at 5.47.32 PM.png


I ran this to check but this doesn't match what YouTube thinks it is running at:

$ system_profiler SPDisplaysDataType | grep Resolution
Resolution: 3072 x 1920 Retina <- MacBook Pro 16" display
Resolution: 2560 x 1600 <- Dell external monitor

When I play the same video on my external Dell 30" display (2560x1600) it looks sharper as the screen resolution is indeed 2560x1600. For others that have a MacBook Pro 16" what do you see for the Viewport? Why does YouTube say my screen resolution is 1792x1008 and is it up-scaling it?

Someone noted the following in [1]
So I did a little experimenting with this and I believe I understand what 'Viewport" means. "Viewport" is the current resolution being displayed. So based on your image the 1280x720 video is being up-scaled to 1080. the Current/ Optimal res is the actual resolution of the video. So you're watching a 4K video but at 720 and it's being upscaled to 1080. I might not be 100% right. I came to this idea by watching YouTube and YouTube TV on my PC, opening stats for nerds. I played each video at different resolutions and see what stats for nerd displays. Current/ Optimal Res always changed to the resolution I picked. So if I put it at 480, it would say 480. At 1080, it would say 1080 and so on and so forth. "Viewport was what the resolution the TV is displaying. So on my PC I'm watching a 2K video in a small window and the viewport res was at 854x480. I maximized the video to full screen and Viewport matched my displays resolution at 1920x1080. So your TV isn't disaying a true 4K image like it should. So it's either a TV issue, Chromcast Issue, or YouTube issue.

On a 30" Dell Monitor (looks nice)
Screen Shot 2019-12-14 at 5.45.47 PM.png


[0]
[1] https://support.google.com/chromecast/forum/AAAAt7PFQG40adv1UPOq-A/?hl=en-IN
 

Attachments

  • Screen Shot 2019-12-14 at 5.43.12 PM.png
    Screen Shot 2019-12-14 at 5.43.12 PM.png
    295.9 KB · Views: 235

casperes1996

macrumors 604
Jan 26, 2014
7,503
5,679
Horsens, Denmark
A viewport is not the same as a display resolution. Retina displays run scaled resolutions. it used to be scaled exactly 2:1, but Apple changed it so on some devices, like the 16", they scale things a bit smaller than that. If you go one step up on the scaling factor, you should get 2:1, which would give a viewport of 1536x960, which is exactly 2x2 pixels per pixel for the display. That is the viewport however; Amount of pixel real-estate to display UI in. It should not affect the actual video though, if the app is coded properly.
 
  • Like
Reactions: jerryk

casperes1996

macrumors 604
Jan 26, 2014
7,503
5,679
Horsens, Denmark
Got it - makes sense & thanks!

You're welcome. Note that a 2560x1440 video on a 2560x1440 panel will look sharper than the same video on a higher resolution panel (unless it's an exact integer scaling), since it'll have to interpolate data points in between, so whilst the MBPs display is higher resolution, there isn't the right amount of information in the video to fill the display. Even in 4k, it wouldn't be a perfect integer match for the display. It'd have more information to do interpolation with, but it'd still have to do, probably, cubic interpolation scaling. Unless of course you don't watch full screen. In editors like Final Cut, you can set the viewport to 100%, which will exactly pixel fit the whole video in the view. Once the content resolution gets above a certain point the results become indistinguishable, so for images the higher resolution the display the better is almost always true.
 

Paul Anderegg

macrumors member
Nov 6, 2019
39
5
A viewport is not the same as a display resolution. Retina displays run scaled resolutions. it used to be scaled exactly 2:1, but Apple changed it so on some devices, like the 16", they scale things a bit smaller than that. If you go one step up on the scaling factor, you should get 2:1, which would give a viewport of 1536x960, which is exactly 2x2 pixels per pixel for the display. That is the viewport however; Amount of pixel real-estate to display UI in. It should not affect the actual video though, if the app is coded properly.

Here is what nmy viewport on my 16" Macbook Pro looks like in Chrome...with Chrome zoom at 25% :)

So, the viewport numbers are the actual resolution of the video being displayed, basically our little TV set resolution? What's with the *2 after the viewport?
[automerge]1581339746[/automerge]
I just zoomed while viewing full screen with stats...the viewport numbers changed, the YouTube overlays changed size, but the actual video stream did not change at all, as if it is unaffected? TFW?

Paul
 

Attachments

  • Screen Shot 2020-02-10 at 4.54.37 AM.png
    Screen Shot 2020-02-10 at 4.54.37 AM.png
    91.2 KB · Views: 211
Last edited:

casperes1996

macrumors 604
Jan 26, 2014
7,503
5,679
Horsens, Denmark
So, the viewport numbers are the actual resolution of the video being displayed, basically our little TV set resolution? What's with the *2 after the viewport?

Sort of. It's the resolution of the video frame in SDPI. (Standard dots per inch). The video may render at a different resolution, but this is the SDPI resolution of the frame the video is in. It is not the resolution per se, but the resolution at SDPI. That's where the *2 comes in. Well, it isn't actually entirely *2 on the 16" by default, but we'll get back to that. Retina Displays aren't SDPI. They are HiDPI. That means that more pixels are used per "dot" than on SDPI. Thus, things look sharper instead of getting smaller with the increased actual resolution. So the viewport's frame, represented in SDPI dots, needs to be multiplied by two (standard Retina scaling) to be the actual resolution. - Internally, 2x is the standard retina scaling resolution, but it may not be the presented scaling. For the 15", the first few models had an exact scaling factor of 2x, so the 2880x1800 screen would present itself as (1440x900)*2. Later on they changed this. The resolution was still 2880x1800 on the actual display, but the presented resolution was ((1680x1050)*2)/1.66¯ if I don't misremember it. That's for the 15". The 16" also didn't maintain an @2x scaling factor, but also some floating point scale, though internally they all first render at 2x.
 

Paul Anderegg

macrumors member
Nov 6, 2019
39
5
I just want to know if I am on standard x2 middle retina selector on my 16", if I am seeing 1080p or 1440p actual lines of pixel rows. like able to count them on a video played back full screen, with a magnifying glass...I could always custom res full pixel for pixel, but then I couldn't see my mouse or text :)

Paul
 

casperes1996

macrumors 604
Jan 26, 2014
7,503
5,679
Horsens, Denmark
I just want to know if I am on standard x2 middle retina selector on my 16", if I am seeing 1080p or 1440p actual lines of pixel rows. like able to count them on a video played back full screen, with a magnifying glass...I could always custom res full pixel for pixel, but then I couldn't see my mouse or text :)

Paul

When you are full screen you will never be able to get 1080p or 1440p. Your display panel is 3072 x 1920. That is a hardware fact. No matter what you set the scaling factor too that will always be the actual number of columns and rows if you inspect the panel. Everything else is internal rendering resolution and scaling factors that are then adapted onto the pixels available on the display, i.e. the 3072 x 1920. 2x rendering thus puts you at
1536x960, but the panel, and what the video will ultimately scale to is still the 3072 x 1920. No matter what you set the scaling factor to, a video source should always render the same, since it should be retina aware and its internal resolution should print directly to the panel not go through a scaling step. The scaling factor should only affect the browser window, so the viewport information would change but the video rendering should not be affected and thus the displayed content should look the same. The rest of the frame around it would change in size. @2x also being the sharpest as it is integer scaling. Video and photos and such should not care.
 

Paul Anderegg

macrumors member
Nov 6, 2019
39
5
When I playback my 720 video files on my Mac, and select actual size view in QT, it presents them as a giant box, but in FCPX, 100% viewer, it's a tiny box...Mac scaling is confusing.
 

Paul Anderegg

macrumors member
Nov 6, 2019
39
5
If I change the zoom on Chrome, until the viewport matches the native disoplay full pixel resolution, I assum eI've changed it to 1:1? Chrome at 100% and Safari, bit full screen playing YoiTube, give different vieeport figures...I can't even force a match by zooming one or the other. I run 2:1 instead of default BTW.

Paul
 

casperes1996

macrumors 604
Jan 26, 2014
7,503
5,679
Horsens, Denmark
If I change the zoom on Chrome, until the viewport matches the native disoplay full pixel resolution, I assum eI've changed it to 1:1? Chrome at 100% and Safari, bit full screen playing YoiTube, give different vieeport figures...I can't even force a match by zooming one or the other. I run 2:1 instead of default BTW.

Regarding Safari and Chrome giving different answers at 100%, there's no set standard for what 100% website zoom is. The browser makers set that layout value themselves. - Whether it's 2:1 or 1:1 doesn't really make any difference either aside from size. Sharpness should be the same
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.