PDA

View Full Version : FLVPlayback seek bar handle disapears after goin fullscreen



gregbown
August 21st, 2008, 09:28 PM
08/21/2008 01:25:09 PM

Reply | Quote | Top | Bottom

I have run into a seek bar handle issue with my player and I'm not sure if anyone could offer some advice.
In my first player in I loaded a custom skin that included all the controls. That all worked perfectly.
But now I am developing a much more elaborate player that requires assigning each of the controls individually like
video_player.playPauseButton = play_pause_btn; and so on. Each component is compiled as a swc and imported into Flex. This works perfectly for all the buttons. They all function perfectly in all states.
The issue is with the seek bar handle. It disappears when going fullscreen and never returns even after returning to normal screen.
Im not sure what this is a symptom of but I know it is a problem for other developers who have posted on various forums.
http://www.ultrashock.com/forums/actionscript/q-as3-flvplayback-and-caption-woes-107233.html
It does not seem to be a Flex issue because the posts appear to be Flash developers. It is even at the bottom of the Adobe livedocs here.
http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000580.html
I could go back to using a single skin for all the controls but that wont allow me to extend the functionality.

I can get it to stay visible by commenting out
ctrlData.disabled_mc = setupButtonSkinState(ctrl, ctrl, "disabledLinkageID", ctrlData.state_mc[NORMAL_STATE]);
approximately line 2050 in UIManager.as
Even though it fixes the disappearing handle it throws cannot access property or method of a null object reference error.
This leads me to believe it is a bug in UIManager.as
Any advice would be much appreciated.

I am also open to advice on placing an elapsed time textfield inside a skin if someone can tell me how to access it once it's loaded

Thank you
Greg

gregbown
August 22nd, 2008, 02:44 PM
Rob Day posted an answer to this question at Adobe's AS3 forum.
http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?threadid=1387437&catid=665&CFID=7183153&CFTOKEN=4ea086850fdd9510-E78D10F5-B08A-E2D7-823E8E0E0FCF38C2&jsessionid=96303fcea7dac95b92923f51295941160f33

rompelstilchen
June 29th, 2009, 11:53 AM
The link is dead, do you have any solution, I got exactly the same issue...

gabadilla
September 25th, 2009, 02:10 PM
I had a similar issue:
When I resized my video player (like going fullscreen), my seekBar component would "respect" its original width even though it was tracing a much wider size. This obviously looked broken with a seekBar that was so small on a player that was much larger. I saw some AS2 solutions, and I eventually found a solution that works for my situation in AS3.

"controlBar" is my container MC that holds all my different controls (seek bar, volume bar, fullscreen, social media stuff, time readouts, etc). "vp" is my flv component

First add it to stage, give it an initial width, position it if needed, associate with the flv component (vp)

var seekBarClip = new SeekBar();
controlBar.addChild(seekBarClip);
seekBarClip.width = 100;
vp.seekBar = seekBarClip;

Now let's say you just changed your video player size... I had to do the following to get the seekBar to respect the new width.

controlBar.removeChild(seekBarClip);
vp.seekBar = null;
controlBar.addChild(seekBarClip);
seekBarClip.width = 1000;
vp.seekBar = seekBarClip

Seems like you need to remove the original connection that the flv component (vp) has with the original seekbar. So I set it to null and remove the first seekBar from the stage. Then I immediately add a new seekbar back in, give it a new width, and re-associate it with the flv component.

In my situation, I have a video player that can toggle from any small size to fullscreen and the controls stretch proportionately across the bottom. This has been working for me and I'll post any other problems or solutions I encounter. If there's a better solution please share.