5a4f9c5050
ClutterMedia was a rough cut at a simple media API; it needs some re-evaluation before 1.0 in order to keep it simple to use, and simple to implement. - ClutterMedia:position The position property accessors collide with the corresponding ClutterActor methods, which make it impossible to bind them in high-level languages: video_texture.set_position() video_texture.get_position() In order to resolve the collision, we have to go through the GObject properties API: video_texture.set('position', value) value = video_texture.get('position') A :position in seconds is also a GStreamer-ism, and should rather be converted to a :progress property, with a normalized value between 0 and 1. the current position in seconds would then simply be progress*duration. For non-seekable streams, 0.0 would always be returned. This makes it easier to use the progress inside animations, Timelines or ClutterPath instances. - ClutterMedia:volume should be renamed to :audio-volume and normalized as well, instead of being a floating point value between 0 and 100. - ClutterMedia:buffer-percent should just be :buffer-fill and normalized between 0.0 and 1.0