google-code-export / flowplayer-core

Automatically exported from code.google.com/p/flowplayer-core
2 stars 0 forks source link

pseudostreaming: hitting pause during clip load makes player play audio only #615

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. empty browser cache
2. go to http://flowplayer.org/plugins/streaming/pseudostreaming.html
3. load player and immediately click pause during clip load
4. resume

What is the expected output? What do you see instead?
Expected:
Either clip loads and pauses (http) or clicking pause has no effect (rtmp).
Instead:
No video after resuming of playback, only audio.

See also:
http://flowplayer.org/forum/2/102208

Original issue reported on code.google.com by blacktrashproduct on 4 Aug 2012 at 1:56

GoogleCodeExporter commented 9 years ago
cannot replicate here. begins playback. 

Original comment by electrot...@gmail.com on 4 Aug 2012 at 4:40

GoogleCodeExporter commented 9 years ago
You have to make absolutely sure that the browser cache is empty, and then be 
_very_ quick - hit pause _before_ the video starts buffering, and then you get 
what you see in the attached image: playback starts, but only audio, no video.

Original comment by blacktrashproduct on 5 Aug 2012 at 12:11

Attachments:

GoogleCodeExporter commented 9 years ago
Still cannot replicate Im afraid. It sounds like it would also be happening if 
you enable auto buffering and them resume., so test that perhaps. 

Original comment by dani...@electroteque.org on 6 Aug 2012 at 3:50

GoogleCodeExporter commented 9 years ago
You are probably just not quick enough on the trigger ;-) There's also no 
autoBuffering involved in the linked demo on the plugin page.

I can repro both in Flash 11.3 and 10.3.

Needless to say, it does not happen in 3.2.7 :-(

Original comment by blacktrashproduct on 6 Aug 2012 at 6:17

GoogleCodeExporter commented 9 years ago
I cannot replicate it, clicking pause milli seconds after playback is not 
normal , who could ever do that :O Im saying auto buffering would be 
replicating the issue for you please try it, its pausing millisecond after 
playback ..

Original comment by electrot...@gmail.com on 7 Aug 2012 at 2:41

GoogleCodeExporter commented 9 years ago
As already linked: http://flowplayer.org/forum/2/102208 - I did not invent the 
issue ;-)

Original comment by blacktrashproduct on 7 Aug 2012 at 8:26

GoogleCodeExporter commented 9 years ago
Still cannot replicate, I don't think it's worth chasing up personally. perhaps 
it may need some kind of return when metadata hasn't been set yet and someone 
is trying to pause the video within a 1 second window. Not normal usage. 
Pausing does happen within 100ms of playback with auto buffering which is why I 
asked to test this and see if you get the issue. 

Original comment by electrot...@gmail.com on 7 Aug 2012 at 12:48

GoogleCodeExporter commented 9 years ago
trying with speedlimit, im on a 100MB cable connection which is likely not 
helpful ;)

Original comment by electrot...@gmail.com on 7 Aug 2012 at 3:03

GoogleCodeExporter commented 9 years ago
trying with speedlimit, im on a 100MB cable connection which is likely not 
helpful ;)

Original comment by electrot...@gmail.com on 7 Aug 2012 at 3:03

GoogleCodeExporter commented 9 years ago
I got it i had to slow my connection down enough. if we force the player into 
paused state, once it gets metadata its likely messing with the player states 
and will not trigger the start event which tells the screen to display .. I 
wonder if this is the case with other things ? 

Original comment by electrot...@gmail.com on 7 Aug 2012 at 3:07

GoogleCodeExporter commented 9 years ago
That's why I did not lower the priority immediately: because the start of 
playback often "feels" brittle compared to 3.2.7, like mute visibly enabled for 
quite some time (again possibly more noticeable over slower connections).

It seems confined to pseudostreaming though, I cannot reproduce with other 
protocols. For instance in http the player pauses _before_ the first frame 
(naked screen with FP branding), but then can resume properly.

Original comment by blacktrashproduct on 7 Aug 2012 at 4:00

GoogleCodeExporter commented 9 years ago
I'm replicating this on rtmp also ;) I reduced my bandwidth to 48k in speed 
limit ;) This is before metadata has been sent and it will notably update the 
time once metadata has been received. This change if needed might have to 
happen on the core rather than individual providers preventing the pause method 
from working until its receieved the right status ? 

Original comment by electrot...@gmail.com on 7 Aug 2012 at 6:04

GoogleCodeExporter commented 9 years ago
I think I know where to do this, the state is waiting state, the entire pause 
method can be ignored during a waiting state I think and problem solved. would 
need testing after though. 

Original comment by electrot...@gmail.com on 7 Aug 2012 at 6:13

GoogleCodeExporter commented 9 years ago
Requires a change in the core sadly. There is a flag to prevent the event Begin 
being dispatched in pause mode, which i'm not sure why yet when a stream has 
started therefore the screen will not display. If this part is removed , even 
though it pauses, it will display the video properly. I am noticing onBegin is 
being dispatched after each seek also is this correct ?

Original comment by electrot...@gmail.com on 8 Aug 2012 at 6:56

GoogleCodeExporter commented 9 years ago
https://dl.dropbox.com/u/3394987/flowplayer.commercial-3.2.13.zip

This is post release aghh. Please do some testing when you have time, it now 
allows dispatching of begin if paused before the stream has actually started. 
It's quite involved to try and prevent the play button from toggling and may 
break things .. 

Original comment by electrot...@gmail.com on 8 Aug 2012 at 7:12

GoogleCodeExporter commented 9 years ago
Let me know in that version if this fixes this issue. 

Original comment by electrot...@gmail.com on 13 Aug 2012 at 2:18