Skip to main content
Known Participant
April 27, 2015
Question

Adobe AIR : Issue with StageVideo FullScreen on MacBook w/ Retina

  • April 27, 2015
  • 3 replies
  • 2290 views

Has anyone run into an issue with StageVideo running in FullScreen mode on high-res monitors, such as a MacBook Pro with retina?

The issue I'm seeing is that the video runs fine if the application is windowed, but when it goes full screen, the video display is cropped to a quarter of the MacBook Pro screen size. The rest of the viewable area is black.

Things worth knowing:

  • Fullscreen works perfect on lower-res monitors
  • This only happens on a MacBook Pro in the ADL Preview  OR  when requestedDisplayResolution is set to TRUE in the Application Descriptor file.
  • If requestedDisplayResolution is set to FALSE, and your run the application (outside of ADL Preview), FullScreen works fine.
  • I'm setting the viewport with stageVideo.viewPort = new Rectangle( 0 , 0 , 1440  , 900 );

I haven't been able to find any information out there on this.

Any help is greatly appreciated.

-m

This topic has been closed for replies.

3 replies

mleuchAuthor
Known Participant
October 28, 2015

Wow time goes back quick - I meant to respond to this a while ago.

There's a ticket open if anyone stumbles upon this issue ... apparently it's been around since AIR 3.8.

Bug#3655955 - Fullscreen StageVideo on Retina MacbookPro Cutting Off All But 1/4 of the Screen

Participant
May 19, 2015

I'm having the exact same issue using Air 17. Did you ever find a solution?

mleuchAuthor
Known Participant
May 19, 2015

I never did. As far as I know, this is a bug and can not be fixed.

Unfortunately, no one from Adobe weighed in on this.

May 19, 2015

Just out of curiosity, can you trace out "flash.display.Screen.mainScreen.bounds" in both window mode and full screen, then report back the values it gives? I wonder if some methods AIR uses to determine screen size is seeing the true max resolution of the Retina display while in Full Screen instead of the reported width/height of 1440x900 (non-Retina 15" MB Pro and 13" MB Air screen resolution).

kheftel
Inspiring
April 27, 2015

According to the docs (StageVideo - Adobe ActionScript® 3 (AS3 ) API Reference):

The absolute position and size of the video surface in pixels.

The position of the video is relative to the upper left corner of the stage.

The valid range of the x and y properties of the viewPort Rectangle object are -8192 to 8191. Therefore, you can position the video completely or partially off the stage. You can also make the video larger than the stage if you make the width and height properties of the viewPort property larger than the stage.

It seems like you need to pass the full stage width and height to the stageView.viewPort call.  Currently you're hardcoding it to 1440 x 900, what is the actual dimensions of your screen?

mleuchAuthor
Known Participant
April 27, 2015

Good question!

I added values in in the example above to avoid posting too much code. I'm setting the width to stage.stageWidth and the height to stage.stageWidth * (videoRatio).

What's interesting is that, if I go fullscreen on a monitor attached to my MacBook Pro, that isn't retina, everything is fine. The video renders full screen without any issues.  If I drag the application to the retina MacBook Pro screen, and go fullscreen, only 720x450 is displayed.  Also worth mentioning that the video is cropped to 720x450, not resized.

Colin Holgate
Inspiring
April 27, 2015

Are you offsetting the rect by stage.stageHeight/2 - stage.stageWidth*videoRatio/2?