WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
Bug 30377
[GStreamer] Should emit {networkState,readyState,volume,time,size,rate,duration}Changed signals
https://bugs.webkit.org/show_bug.cgi?id=30377
Summary
[GStreamer] Should emit {networkState,readyState,volume,time,size,rate,durati...
Sebastian Dröge (slomo)
Reported
2009-10-14 22:40:01 PDT
Hi, the gstreamer media player should emit {networkState,readyState,volume,time,size,rate,duration}Changed signals as appropiate. networkState and readyState: could probably be implemented based on the GstBus handler: for state changed, buffering and error messages volumeChanged: Can be done from the notify::volume and notify::mute signals of playbin2 (note: called from the streaming thread usually) timeChanged: Not sure when this should be called rateChanged: From some NEWSEGMENT event handler in the video sink if the rate of the segment has changed. And of course after seeks sizeChanged: From the notify::caps signal of the video sink pad (note: called from the streaming thread usually) if the width, height or PAR has changed. durationChanged: When a GstMessage of type DURATION is received in the message handler
Attachments
emit volumeChanged and durationChanged upon notification from GStreamer.
(4.67 KB, patch)
2009-11-11 03:17 PST
,
Philippe Normand
no flags
Details
Formatted Diff
Diff
emit volumeChanged and durationChanged upon notification from GStreamer.
(4.99 KB, patch)
2009-12-01 00:44 PST
,
Philippe Normand
oliver
: review+
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Philippe Normand
Comment 1
2009-11-11 03:17:07 PST
Created
attachment 42946
[details]
emit volumeChanged and durationChanged upon notification from GStreamer.
Philippe Normand
Comment 2
2009-11-11 08:06:11 PST
(In reply to
comment #0
)
> Hi, > the gstreamer media player should emit > {networkState,readyState,volume,time,size,rate,duration}Changed signals as > appropiate. > > networkState and readyState: could probably be implemented based on the GstBus > handler: for state changed, buffering and error messages >
AFAICS these are already emitted during updateStates(), called by the bus message handler.
> volumeChanged: Can be done from the notify::volume and notify::mute signals of > playbin2 (note: called from the streaming thread usually) >
see attached patch ;)
> timeChanged: Not sure when this should be called >
It is called after seek and at EOS. Will check if some more is needed.
> rateChanged: From some NEWSEGMENT event handler in the video sink if the rate > of the segment has changed. And of course after seeks >
This is now emitted after succesful rate change (
bug 31047
). Do you think some more is needed?
> sizeChanged: From the notify::caps signal of the video sink pad (note: called > from the streaming thread usually) if the width, height or PAR has changed. >
Company has a patch for this ;)
> durationChanged: When a GstMessage of type DURATION is received in the message > handler
See attached patch
Philippe Normand
Comment 3
2009-11-13 06:50:18 PST
We should indeed emit timeupdate events everytime the playback position changes, not sure about the frequency though. See also
http://www.w3.org/TR/html5/video.html#event-timeupdate
Philippe Normand
Comment 4
2009-11-15 23:44:46 PST
(In reply to
comment #3
)
> We should indeed emit timeupdate events everytime the playback position > changes, not sure about the frequency though. See also >
http://www.w3.org/TR/html5/video.html#event-timeupdate
Scratch that, HTMLMediaElement takes care of that.
Adam Barth
Comment 5
2009-11-30 12:23:47 PST
Attachment 42946
[details]
did not pass style-queue: Failed to run "WebKitTools/Scripts/check-webkit-style" exit_code: 1 WebCore/platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:48: Code inside a namespace should not be indented. [whitespace/indent] [4] WebCore/platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:49: Code inside a namespace should not be indented. [whitespace/indent] [4] Done processing WebCore/platform/graphics/gtk/MediaPlayerPrivateGStreamer.h Done processing WebCore/platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp Total errors found: 2
Philippe Normand
Comment 6
2009-12-01 00:44:25 PST
Created
attachment 44060
[details]
emit volumeChanged and durationChanged upon notification from GStreamer.
WebKit Review Bot
Comment 7
2009-12-01 00:48:48 PST
style-queue ran check-webkit-style on
attachment 44060
[details]
without any errors.
Oliver Hunt
Comment 8
2009-12-11 14:11:01 PST
Comment on
attachment 44060
[details]
emit volumeChanged and durationChanged upon notification from GStreamer. r=me
Gustavo Noronha (kov)
Comment 9
2009-12-14 02:08:28 PST
Landed by Philippe as
r52085
.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug