supernginx / flowplayer-core

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

http progressive bwcheck (HD/SD): inconsistent behaviour onResume #279

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
1. Is bwcheck meant to work with progressive download at all?

If not, this must be clearly stated somewhere.

If yes, the behaviour is inconsistent - note that I am ONLY looking at the 
HD/SD switching, no dynamic, and with flowplayer.bwcheck-3.2.6-dev.swf:

When clicking the HD button while playing the clip starts from the beginning.

When clicking the HD button while pausing the clip resumes - does it really 
resume with "the other" clip?

Demo:

http://flowplayer.blacktrash.org/test/bwcheck-progressive.html

Please see also:

http://flowplayer.org/forum/8/64162#post-64456

where I claim that the restart is NOT a bug, and parallel buffering not 
possible, but the behaviour onPause seems to prove me wrong.

Original issue reported on code.google.com by blacktrashproduct on 23 May 2011 at 5:11

GoogleCodeExporter commented 8 years ago
See also issue280

Original comment by blacktrashproduct on 24 May 2011 at 8:27

GoogleCodeExporter commented 8 years ago
Please try this, we've broken up the feature into a new plugin which is likely 
will be doing the selections, bwcheckwill just do detections and dynamic stream 
switching. 

http://code.google.com/p/flowplayer-plugins/source/browse/#svn%2Fflash%2Fbitrate
select

Its calling a switchStream api method so maybe something needs to change within 
that. It will reload with the new file. 

Original comment by electrot...@gmail.com on 24 May 2011 at 1:22

GoogleCodeExporter commented 8 years ago
For lack of time I do not speak actionscript yet. So atm I can't compile 
myself. Perhaps in my next life ;-)

So I just believe you that it does what it should. And the splitting into 2 
plugins is certainly a very good thing.

Original comment by blacktrashproduct on 24 May 2011 at 1:50

GoogleCodeExporter commented 8 years ago
ill try and get a build for you to try out ;)

Original comment by electrot...@gmail.com on 24 May 2011 at 2:06

GoogleCodeExporter commented 8 years ago
http://dl.dropbox.com/u/3394987/flowplayer.bitrateselect-3.2.8.zip here you go. 

Original comment by electrot...@gmail.com on 24 May 2011 at 2:16

GoogleCodeExporter commented 8 years ago
Thanks! But it's probably incompatible with flowplayer-3.2.7, Flash debugger 
complains:

ReferenceError: Error #1069: Property onSwitch not found on 
org.flowplayer.model.Playlist and there is no default value.
    at org.flowplayer.bitrateselect::BitrateSelectProvider/onLoad()
    at org.flowplayer.view::PluginRegistry/setPlayerToPlugin()
    at org.flowplayer.view::PluginRegistry/setPlayerToPlugins()
    at org.flowplayer.view::PluginRegistry/onLoad()
    at org.flowplayer.view::Launcher/initPhase3()
    at org.flowplayer.view::Launcher/callAndHandleError()
    at org.flowplayer.view::Launcher/pluginLoadListener()
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at org.flowplayer.view::PluginLoader/incrementLoadedCountAndFireEventIfNeeded()
    at org.flowplayer.view::PluginLoader/loaded()

Original comment by blacktrashproduct on 24 May 2011 at 2:29

GoogleCodeExporter commented 8 years ago
you need these also

http://dl.dropbox.com/u/3394987/flowplayer.rtmp-3.2.3.zip
http://dl.dropbox.com/u/3394987/flowplayer.swf.zip

Original comment by electrot...@gmail.com on 24 May 2011 at 2:49

GoogleCodeExporter commented 8 years ago
Not the rtmp plugin, because this is about progressive download. rtmp works 
fine, already with bwcheck dev version.

And, I'm afraid, although the log says the stream switches, in fact it does not.

I have updated the demo with 2 isDefault settings, you can see the difference 
already in the buffering speed if not in the visual quality:
http://flowplayer.blacktrash.org/test/bwcheck-progressive.html

And issue280 (no restart when clicking hd button while pausing) also prevails.

Original comment by blacktrashproduct on 24 May 2011 at 3:36

GoogleCodeExporter commented 8 years ago
And, as you like to collect different bugs into one ;-) :

The "HD is off" splash announcement at start of playback of an isDefault SD is 
still missing for the new bitrateselect plugin.

See:
http://code.google.com/p/flowplayer-core/issues/detail?id=218#c38

Original comment by blacktrashproduct on 24 May 2011 at 4:40

GoogleCodeExporter commented 8 years ago
Thanks mate, yes i know where to track this one cheers. Are you able to try 
with rtmp and / or pseudostreaming ? Its pretty freshly built so may need 
ironing out still ! :)

Original comment by electrot...@gmail.com on 24 May 2011 at 7:19

GoogleCodeExporter commented 8 years ago
http://dl.dropbox.com/u/3394987/flowplayer.zip

please try this version of flowplayer. it seems there was in fact an internal 
change so the result was exactly what it was doing, reloading the stream, its 
been changed now to reset correctly. 

Original comment by electrot...@gmail.com on 24 May 2011 at 7:45

GoogleCodeExporter commented 8 years ago
Nope, sorry. Still exactly the same behaviour. And, yes, I did empty the 
browser caches before testing.

Demo with updated flowplayer.swf is still there.

Original comment by blacktrashproduct on 24 May 2011 at 10:23

GoogleCodeExporter commented 8 years ago
Please use the network console you will see you are downloading the different 
file, it is working for me. 

Original comment by electrot...@gmail.com on 25 May 2011 at 4:31

GoogleCodeExporter commented 8 years ago
As I already said in
http://code.google.com/p/flowplayer-core/issues/detail?id=279#c8
the console lies ;-)
I trust my eyes, that's why I added the SD isDefault to the demo for visual 
comparison. Will add a screenshot for the non-believers. You can see that both 
players are on HD and the first is much sharper. Both are at their isDefault 
clips.
Also, again as I said, just watch the buffering speed.

Original comment by blacktrashproduct on 25 May 2011 at 7:11

Attachments:

GoogleCodeExporter commented 8 years ago
Please try this, version ive added fixes to display notifications for both sd 
and hd mode. The controls icon does not toggle correctly on startup, so use the 
dock icon for now. 

http://dl.dropbox.com/u/3394987/flowplayer.bitrateselect-3.2.8.zip

Original comment by electrot...@gmail.com on 26 May 2011 at 9:04

GoogleCodeExporter commented 8 years ago
any luck with it ?

Original comment by electrot...@gmail.com on 27 May 2011 at 8:00

GoogleCodeExporter commented 8 years ago
Yeah! The main problem is solved: stream switch - or restart in this case - 
happens. Also the doc icon behaves well on start, at least for http 
progressive. With http progressive I also do not seem to have a problem with 
the control icon.

Not yet solved:

1) No stream switch when playback is paused or at end of clip (switch when 
"replay" is visible). Note: I cannot test with latest flowplayer-src.js because 
it throws a reference error.

Will create a "latest dev" demo at some point.

2) No splash announcement when SD isDefault on start.

Original comment by blacktrashproduct on 28 May 2011 at 9:22

GoogleCodeExporter commented 8 years ago
Here we have latest dev demos for this:

https://github.com/flowplayer/site/blob/anssi/content/demos/standalone/plugins/s
treaming/extensions/hdtoggle.html
https://github.com/flowplayer/site/blob/anssi/content/demos/standalone/plugins/s
treaming/extensions/dock.html

With this i don't get issue 2: i have the splash also when SD is the default.

Original comment by anssip@gmail.com on 29 May 2011 at 8:26

GoogleCodeExporter commented 8 years ago
We need to add external methods for selecting bitrates. These can be used from 
HTML/JS based bitrate selection. These also justify the name of this plugin 
"bitrateselect" now when we don't have the Flash bitrate menu UI yet.

We can use the same setBitrate(br:Number) method signature that we now have in 
bwcheck. (this method should be removed from bwcheck).

Original comment by anssip@gmail.com on 29 May 2011 at 8:39

GoogleCodeExporter commented 8 years ago
http://flowplayer.blacktrash.org/dev/bitrateselect-hdtoggle.html

Very latest dev distro.

No splash _at start_ (HD is OFF) when SD isDefault.

Original comment by blacktrashproduct on 29 May 2011 at 10:03

GoogleCodeExporter commented 8 years ago
http://dl.dropbox.com/u/3394987/flowplayer.bitrateselect-3.2.8.zip

Please try this update. 

Original comment by electrot...@gmail.com on 30 May 2011 at 9:46

GoogleCodeExporter commented 8 years ago
And the javascript selection plugin ive ported from bwcheck also

http://code.google.com/p/flowplayer-plugins/source/browse/#svn%2Fflash%2Fbitrate
select%2Ftrunk%2Fsrc%2Fjavascript

Original comment by electrot...@gmail.com on 30 May 2011 at 9:52

GoogleCodeExporter commented 8 years ago
Righto, flowplayer.bitrateselect-3.2.8 displays HD is OFF at start!

Will be looking into the js bitrate selection when I find time.

Original comment by blacktrashproduct on 31 May 2011 at 12:34

GoogleCodeExporter commented 8 years ago
please confirm this is all good and ill close this. 

Original comment by electrot...@gmail.com on 16 Jun 2011 at 11:15

GoogleCodeExporter commented 8 years ago
onResume is still not working with progressive download.

Play video. Pause. Switch bitrate. Resume. The video should _restart_ in the 
new bitrate (progressive download), but it doesn't. This demo uses the latest 
from http://flowplayer-releases.s3.amazonaws.com/info/dist.html:

http://flowplayer.blacktrash.org/dev/bwcheck-progressive.html

Original comment by blacktrashproduct on 17 Jun 2011 at 12:01

GoogleCodeExporter commented 8 years ago
hi the behaviour is consistant across both rtmp and http. It seems dynamic 
stream switching cannot run when in a paused state, so when resuming the stream 
before switching it works in both cases.

http://dl.dropbox.com/u/3394987/flowplayer.bitrateselect-3.2.8.zip

Original comment by electrot...@gmail.com on 20 Jun 2011 at 11:05

GoogleCodeExporter commented 8 years ago
http://flowplayer.blacktrash.org/dev/issue279.html

rtmp:
It switches at the next keyframe after resuming just fine. But clicking the the 
HD button also immediately resumes play. The latter was different in a previous 
version *devel* version of *bwcheck* that I am using in production. Clicking on 
the HD button did not resume, but after resuming the switch happened, as usual, 
at the next keyframe. You can check this here: 
http://www.blacktrash.org/underdogma

http progressive:
Clicking HD button during pause restarts the player, but does not switch the 
bitrate, while the HD notification is switched: you are informed of HD but are 
actually at SD and vice versa.

Original comment by blacktrashproduct on 20 Jun 2011 at 12:38

GoogleCodeExporter commented 8 years ago
There is actually a regression in rtmp: after switching bitrate seeking is 
broken. Try it out in the rtmp example:
http://flowplayer.blacktrash.org/dev/issue279.html

Can we get the rtmp behaviour back, like at:
http://www.blacktrash.org/underdogma

Original comment by blacktrashproduct on 20 Jun 2011 at 12:43

GoogleCodeExporter commented 8 years ago
I am able to successfully toggle both when paused and also seek after 
switching. What seems to be the issue. 

Original comment by electrot...@gmail.com on 28 Jun 2011 at 4:41

GoogleCodeExporter commented 8 years ago
For rtmp toggle, and then try to seek or just look at the controlbar: the 
scrubber is completely at the end.

For http:
What you currently see is flowplayer.bitrateselect-3.2.8.swf, which seems to 
work ok; the flowplayer.bitrateselect.swf from 
http://flowplayer-releases.s3.amazonaws.com/info/dist.html (latest.zip) does 
not.

For both:
Change of behaviour: when toggling while the player is paused, the player 
starts to play - I think the old behaviour (player stays paused) makes more 
sense.

Original comment by blacktrashproduct on 28 Jun 2011 at 5:51

GoogleCodeExporter commented 8 years ago
ok so you don't want it to switch when paused  now ? I added this feature in 
because it was requested. How about disabling the button when paused ? 

ill have another look. 

Original comment by electrot...@gmail.com on 29 Jun 2011 at 3:54

GoogleCodeExporter commented 8 years ago
please try this version of bitrateselect

http://dl.dropbox.com/u/3394987/flowplayer.bitrateselect-3.2.8.zip

I can successfully seek after a toggle still. 

Original comment by electrot...@gmail.com on 29 Jun 2011 at 4:06

GoogleCodeExporter commented 8 years ago
I do want to switch when the player is paused, of course. But I want the player 
to stay paused, not starting to play when I toggle.

And seeking _after_ a switch in rtmp is broken with that new version too:
http://flowplayer.blacktrash.org/dev/issue279.html
The time display and scrollbar positions get completely confused.

As I wrote, the dev version of bwcheck works perfectly fine on my production 
pages with rtmp. Behaviour and functionality exactly as expected:
http://www.blacktrash.org/underdogma/

Original comment by blacktrashproduct on 29 Jun 2011 at 4:32

GoogleCodeExporter commented 8 years ago
Here's a screenshot, note that the current time is higher than the video's 
duration.

Original comment by blacktrashproduct on 29 Jun 2011 at 4:43

Attachments:

GoogleCodeExporter commented 8 years ago
Quickest way to reproduce: start playing, toggle to SD, scroll, toggle to HD 
again, scroll again - chaos ;-)

Original comment by blacktrashproduct on 29 Jun 2011 at 5:24

GoogleCodeExporter commented 8 years ago
rtmp is still broken in Build time: July 05 2011 12:23 PM GMT

And I still think autostarting when toggling bitrate during pause is a 
surprising behaviour.

http://flowplayer.blacktrash.org/dev/issue279.html

Original comment by blacktrashproduct on 6 Jul 2011 at 10:21

GoogleCodeExporter commented 8 years ago
I'm running the progressive download with bwcheck... it seems I need to use 
this bitrateselect plugin to get this to work properly.

Any chance of getting an example configuration with this for me to get that 
going? I'd be happy to write up how I did my setup and post it back on the 
Flowplayer forums once I get it going if that helps?

Original comment by guybedf...@gmail.com on 8 Jul 2011 at 11:38

GoogleCodeExporter commented 8 years ago
rtmp still broken with Build time: July 08 2011 01:19 PM GMT

Original comment by blacktrashproduct on 8 Jul 2011 at 3:52

GoogleCodeExporter commented 8 years ago
As for http with Build time: July 08 2011 01:19 PM GMT:

It's back to the old buggy behaviour on pause: switching bitrate has no effect.

Original comment by blacktrashproduct on 8 Jul 2011 at 3:55

GoogleCodeExporter commented 8 years ago
So we are on the same page please try this

http://dl.dropbox.com/u/3394987/flowplayer.bitrateselect-3.2.8.zip

I can toggle when paused with http and rtmp. It will resume the stream before 
switching which is required to change the stream in flash or stop it first but 
I think resume is better. To prevent bloating things out and bogging down 
things, this is the best solution. Logics is if you have manually made a 
selection to switch a stream, its like pressing play. 

@guy you can chain both plugins together using urlResolvers: 
['bitrateselect','bwcheck'] if you like to do bandwidth detection with the hd 
feature. 

Original comment by electrot...@gmail.com on 8 Jul 2011 at 4:25

GoogleCodeExporter commented 8 years ago
For what do we have a latest build then? How do we know that latest changes 
e.g. in flowplayer.swf will not again change something? Anyway, I have updated 
the demo
http://flowplayer.blacktrash.org/dev/issue279.html
to use temporarily your 3.2.8 version, and rtmp is broken, see attachment.

The pause logic is debatable: I have a play button and a HD button, so I expect 
the play button to, well, play, and the HD button to, well, switch HD/SD. Least 
surprise.

Original comment by blacktrashproduct on 8 Jul 2011 at 5:40

Attachments:

GoogleCodeExporter commented 8 years ago
OK I had a look on vimeo hd, they reload the video and stay in a paused state 
while keep buffering. I will bloat out the code and make it do this however 
dynamic stream switching is still not possible when paused, will try and call a 
reset command and see how that works, and stay in a paused state. 

I still do not understand what you mean by broken, whenever you say broken, are 
you able to explain why ? The rtmp is switching ok. are you able to add logs 
for this perhaps org.flowplayer.net.*

Original comment by electrot...@gmail.com on 9 Jul 2011 at 12:05

GoogleCodeExporter commented 8 years ago
OK im finding a discrepancy in how flash handles dynamic stream switching, they 
now provide the same method for http streams which is confusing the player.  
theres going to be alot of code and mucking around required to switch and stay 
in a paused state without confusing the player at the same time. 

Original comment by electrot...@gmail.com on 9 Jul 2011 at 1:01

GoogleCodeExporter commented 8 years ago
I dont know what the gremlins were with dyn switching in a paused state, it 
successfully changes during and after being paused. The http i'm still dealing 
with. 

Original comment by electrot...@gmail.com on 9 Jul 2011 at 1:11

GoogleCodeExporter commented 8 years ago
rtmp is all good there was never a problem aparantly. working on a solution for 
http now. 

Original comment by electrot...@gmail.com on 9 Jul 2011 at 2:02

GoogleCodeExporter commented 8 years ago
http://dl.dropbox.com/u/3394987/flowplayer.bitrateselect-3.2.8.zip
http://dl.dropbox.com/u/3394987/flowplayer-3.2.7.zip
http://dl.dropbox.com/u/3394987/flowplayer.commercial-3.2.7.zip

Please try a combination of these. 

http will switch when paused and stay in a paused state and keep buffering, 
rtmp will dynamically switch in a paused state, transition in a paused state, 
and update the video when hitting play again, so rtmp was never a problem. 

I think the problem was that switching capability was not added to the pauses 
tate control in the player initially so wasnt calling the switch properly, but 
then also needed to tell it to pause on startup if the player is paused. 

Original comment by electrot...@gmail.com on 9 Jul 2011 at 3:15

GoogleCodeExporter commented 8 years ago
And bwcheck if needed 
http://dl.dropbox.com/u/3394987/flowplayer.bwcheck-3.2.7.zip

Original comment by electrot...@gmail.com on 9 Jul 2011 at 3:16

GoogleCodeExporter commented 8 years ago

Original comment by electrot...@gmail.com on 9 Jul 2011 at 4:18

GoogleCodeExporter commented 8 years ago
Have you tried the rtmp demo?
Have you looked at the screen shot?
I wrote broken, because rtmp bitrateselect imho is broken in general:
When switching during playback the scrubber jumps to the beginning, the current 
time goes to a nonsensical value, the play again button appears, while the 
video continues to play.

The same result with the versions you gave me. Demo again updated.

I'm giving up now, as I don't know which versions of which releases I am 
supposed to check, and you don't seem to check the demos I'm setting up anyway. 
Sorry.

Original comment by blacktrashproduct on 9 Jul 2011 at 10:43

GoogleCodeExporter commented 8 years ago
don't use the releases use the ones im giving you to try if possible. Ive sent 
an update to the flowplayer required to work with http in paused mode. im not 
experiencing what you are with your rtmp demos sorry, ill check again if you 
can get that latest one up. im testing your streams locally and its all fine. 

just in case you need the controls also 
http://dl.dropbox.com/u/3394987/flowplayer.controls-3.2.5.zip

Original comment by electrot...@gmail.com on 9 Jul 2011 at 11:20