Login for more options
[Platform_iOS]StageVideo makes stage opaque to Stage3D
When using StageVideo (or even adding a listener for StageVideoAvailabilityEvent.STAGE_VIDEO_AVAILABILITY -- either one will cause this problem), display objects on the stage become opaque in front of the Stage3D layer.
Steps to Reproduce:
Add an event listener like this at any point in the program -- you can even remove it immediately and get the problem:
private function nothing(event:StageVideoAvailabilityEvent):void
Now put content on the stage3D layer, as well as the classic stage. (For instance, I add a simple shape:
var newCircle:Shape = new Shape();
You will also get this without the event listener, but when getting a StageVideo object. The problem persists after the StageVideo object has been cleaned up, to the best of my ability.
m_stageVideo = m_instance.stage.stageVideos; // this line makes subsequent stage3D not show up behind stage.
m_stageVideo.viewPort = new Rectangle(0, 0, Global.SCREEN_WIDTH, Global.SCREEN_HEIGHT);
The bounding box around this shape will be black, but it should be transparent. It works on the PC emulator but not the iPad.
Transparent pixels on the stage should show the Stage3D layer underneath it. (It works if you don't add the event listener above, or use StageVideo.)
Don't use StageVideo, or don't use the Stage, or don't use Stage3D.
My Hardware and Environment details:
Flash Builder 4.6
Air 3.3 (220.127.116.1160 Beta Build)
iPad 1 & 2
ActionScript Mobile Project
|Found In Build||18.104.22.16860(beta)|
|Fixed In Build|
5:00:26 AM GMT+00:00 Sep 21, 2015
Is this Adobe's way of dealing with critical bugs?! Just assign it as 'by design' and forget about it? I can't believe this hasn't been dealt with....as many others on this page state this is still an issue and the 'workarounds' don't work with Android devices , i.e. the context3d.present() does nothing (although Adobe state that's the fix and the excuse for placing this bug as 'as designed' . Neither do the hacky work-arounds of not disposing of the Netstream object (though this may work on iOS I haven't tried that yet as I'm building an android app)
Adobe - could you respond to the concerns on this bug please?
12:48:23 AM GMT+00:00 Nov 26, 2014
Mobile devices need StageVideo for smooth video playback and Stage3D for optimal game performance. This affects our app on both iOS and Android but is not an issue on desktop. For iOS there is a workaround (never detach or dispose NetStream) but unfortunately this does not work for Android. HIGH PRIORITY!
11:13:47 AM GMT+00:00 Sep 26, 2014
It's huge problem for us. Need to be fixed ASAP!
12:54:55 AM GMT+00:00 Jul 28, 2014
I can't belive this bug still don't fixed nowdays (AIR 14)!
4:01:58 PM GMT+00:00 Jul 17, 2014
Getting this fixed is HUGE for AIR to be worthwhile for MOBILE. Mobile devices need StageVideo for smooth video playback and Stage3D for optimal game performance. This affects our app on both iOS and Android but is not an issue on desktop. For iOS there is a feeble workaround (never detach or dispose NetStream) but unfortunately this does not work for Android. HIGH PRIORITY!
10:05:01 AM GMT+00:00 Apr 22, 2014
We need this fixed. This makes our app unusable.
10:23:06 AM GMT+00:00 Mar 14, 2014
Due this problem we had to refactor our application. After a week of searching and trying to figure out what the problem was, we had to use a not so nice solution to work with video and stage3d together. Would be a great winner if this is going to be fixed!
1:59:08 AM GMT+00:00 Mar 12, 2014
Solving this would be an excellent thing to have.
2:38:44 AM GMT+00:00 Mar 11, 2014
This problem still exist.
7:06:50 AM GMT+00:00 Feb 27, 2014
If you cannot use stage3d(Away3D) with stagevideo air becomes useless...
8:46:32 PM GMT+00:00 Feb 18, 2014
This is absurd, fix this NOW Adobe
1:58:45 AM GMT+00:00 Feb 13, 2014
This problem still occurs in iOS (iPhone 4S) and Android (Galaxy S3) with AIR 3.9.
Back to the flv video.
5:16:48 PM GMT+00:00 Feb 10, 2014
couldn't find a workaround
8:17:46 PM GMT+00:00 Dec 10, 2013
IS there a workaround for this? setting the stage color maunually?
5:17:00 AM GMT+00:00 Nov 15, 2013
We need an workaround: please Adobe!
5:20:13 PM GMT+00:00 Nov 14, 2013
Tried a number of workarounds (pausing instead of detaching netstreams, moving the video viewport off the screen, delaying creation of the context3d until after the video) and none of them have worked on iPads 2nd-4th gen. Which is quite a bummer, as stage video plays back so much better on these devices compared to software mode.
4:17:26 PM GMT+00:00 Nov 13, 2013
This bug is preventing the use of 2 of AIR's best features together!
8:21:08 AM GMT+00:00 Nov 12, 2013
This is affecting many Starling users. Please look for a way to improve this experience.
5:14:02 PM GMT+00:00 Nov 11, 2013
This put me in a very bad position, finding out deep indo production.
6:19:03 AM GMT+00:00 Nov 7, 2013
This bug makes it impossible to use StageVideo, Stage3D and Native DisplayList together in a mobile app.
Adobe: If you will not fix this, at least document or state somewhere that using all these features together on mobile is not supported.
7:01:25 AM GMT+00:00 Oct 30, 2013
This is going to be an ever increasing problem and needs fixing ASAP
3:59:04 PM GMT+00:00 Sep 30, 2013
I just encountered this bug. I'm working with StageVideo and I added a label to Starling's native overlay and it worked fine on the emualtor but the labels have black backgrounds on the Android device.
9:15:06 PM GMT+00:00 Jun 27, 2013
Good to see i'm not the only one with this problem.
Please fix it as soon as you can.
6:02:57 PM GMT+00:00 May 2, 2013
We're hitting this on the game we're developing. We very much need this fixed ASAP.
9:06:20 AM GMT+00:00 Apr 24, 2013
Please fix it. It's important
7:26:54 AM GMT+00:00 Apr 18, 2013
This bug makes it impossible to use Stage, Stage3d and StageVideo together
8:34:23 PM GMT+00:00 Apr 16, 2013
We're having the exact same problem in iOS. We've lost countless hours troubleshooting this problem before concluding it was caused because of StageVideo. Also, since our application uses a lot of video, we can't just stop using videos to avoid this Stage3D bug.
Stage3D and StageVideo are important AIR/Flash technologies, and shouldn't interfere with each other. This should be fixed ASAP. Please do not wait another year to fix this.
12:34:54 PM GMT+00:00 Apr 12, 2013
please fix, this is keeping our company from using air on an iphone app we made.
2:11:04 PM GMT+00:00 Mar 20, 2013
I have also come to this problem. It's absolutely ridiculous that this issue is not fix almost after the year of been reported.
Just to add a bit to description. It seems that the issue occurs when you use all 3 components: stagevideo, stage3d and displaylist. The issue occurs right after you access some of the stagevideo properties. Even setting the StageVideoAvailabilityEvent.STAGE_VIDEO_AVAILABILITY triggers it (though the handler does not have any code). Also, the issue occurs only when you do not successfully stream video (or dispose stream after playing).
8:39:26 AM GMT+00:00 Jan 31, 2013
Please fix this ... this is very important and not just a small issue ...
And if you cannot fix it please provide a good and well explained workaround.
11:06:50 AM GMT+00:00 Nov 21, 2012
Reported in the 3.3 BETA, yet two MAJOR releases since then without a fix. Pretty large problem if you ask me.
8:46:32 AM GMT+00:00 Oct 16, 2012
I couldn't understand how it cannot be resolved since 3.3...
9:32:22 AM GMT+00:00 Sep 24, 2012
Same bug on Android... Please fix this quick :) Thanx.
Flash Builder 4.7 Bêta, Air SDK 3.4.
Samsung Galaxy Tab 10.1, Android 3.2, Air 22.214.171.124.
8:30:01 AM GMT+00:00 Aug 29, 2012
We came across this issue, and we definitely had to come up with some creative work arounds. Can we please get this fixed ASAP?
Thou Art Jay
8:28:15 AM GMT+00:00 Aug 29, 2012
Definitely would be nice to have to be able to use StageVideo and Stage3D without this issue.
6:43:48 AM GMT+00:00 Aug 10, 2012
This is killing my product.
My clients need to display a 'playlist' that contains 3D Sprites and HD Video.
8:04:02 AM GMT+00:00 Aug 1, 2012
I need this fixed soon since the project is already underway. Right now i have a StageWebView playing the videos in JPlayer instead, which was a really hacky workaround that is not all that elegant. This problem has already increased my dev time by 4 weeks. I would like to avoid more setbacks
10:28:51 PM GMT+00:00 Jul 26, 2012
Essential to have both integrated into projects.
2:19:52 PM GMT+00:00 Jun 27, 2012
Stage3D over StageVideo is absolutely needed - especially to convince management to stick with Air. Need to build prototypes. The sooner the better.
3:50:42 PM GMT+00:00 Jun 19, 2012
Oh ... this totally gets my vote too - was wondering if Stage3D / StageVideo would happily co-exist for my project ...
10:50:54 AM GMT+00:00 May 30, 2012
We need to be able to use both stage video and stage 3D with the classic stage! Video makes a huge impact and for developing on smaller devices hardware acceleration is a must! Hoping this can be fixed right away!
10:41:02 AM GMT+00:00 May 30, 2012
This is super important!!!
10:40:53 AM GMT+00:00 May 30, 2012
This completely breaks any app that wants to use StageVideo and Stage3D. This bug needs to be addressed before Air 3.4.
5:47:50 PM GMT+00:00 May 25, 2012
Not having this capability is a deal breaker for me. The world of social video interaction is becoming hugely popular. Without the use of both stage 3d and stage video performance will continue to be an issue for rich experiences on IOS. The framework is unstoppable if you can allow these two technologies to work in harmony.
Thanks for your consideration :)
3:50:01 AM GMT+00:00 May 25, 2012
I confirm this bug, also on Android (bounding box is not black but stage video is showing through)!
10:28:45 PM GMT+00:00 May 24, 2012
I would sure like this fixed before we have a chance to run into it )
9:32:48 AM GMT+00:00 May 24, 2012
This is hot bug! We can't use Stage3D with the StageVideo in one application. But on Desktop PC this works. Only have iOS bugs (Android was not tested)