interface Efl.Player { [[Efl media player interface]] methods { @property playable { [[Whether or not the object data can be played.]] get { } values { play: bool; [[$true if the object have playable data, $false otherwise]] } } @property play { set { [[Set play/pause state of the media file. This functions sets the currently playing status of the video. Using this function to play or pause the video doesn't alter it's current position. ]] } get { [[Get play/pause state of the media file.]] } values { play: bool; [[$true if playing, $false otherwise.]] } } @property position { set { [[Set the position in the media file. This functions sets the current position of the media file to "sec", this only works on seekable streams. Setting the position doesn't change the playing state of the media file. ]] } get { [[Get the position in the media file. The position is returned as the number of seconds since the beginning of the media file. ]] } values { sec: double; [[The position (in seconds).]] } } @property progress { get { [[Get how much of the file has been played. This function gets the progress in playing the file, the return value is in the [0, 1] range. ]] } values { progress: double; [[The progress within the [0, 1] range.]] } } @property play_speed { [[Control the play speed of the media file. This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on. ]] set { } get { } values { speed: double; [[The play speed in the [0, infinity) range.]] } } @property volume { [[Control the audio volume. Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25. ]] set { } get { } values { volume: double; [[The volume level]] } } @property mute { [[This property controls the audio mute state.]] set { } get { } values { mute: bool; [[The mute state. $true or $false.]] } } @property length { [[Get the length of play for the media file.]] get { } values { length: double; [[The length of the stream in seconds.]] } } @property seekable { [[Get whether the media file is seekable.]] get { } values { seekable: bool; [[$true if seekable.]] } } } }