do_seek


Description:

public bool do_seek (double rate, Format format, SeekFlags flags, SeekType start_type, uint64 start, SeekType stop_type, uint64 stop, out bool update)

Update the segment structure with the field values of a seek event (see Event.seek).

After calling this method, the segment field position and time will contain the requested new position in the segment. The new requested position in the segment depends on rate and start_type and stop_type.

For positive rate, the new position in the segment is the new this start field when it was updated with a start_type different from NONE. If no update was performed on this start position (#GST_SEEK_TYPE_NONE), start is ignored and this position is unmodified.

For negative rate, the new position in the segment is the new this stop field when it was updated with a stop_type different from NONE. If no stop was previously configured in the segment, the duration of the segment will be used to update the stop position. If no update was performed on this stop position (#GST_SEEK_TYPE_NONE), stop is ignored and this position is unmodified.

The applied rate of the segment will be set to 1.0 by default. If the caller can apply a rate change, it should update this rate and applied_rate after calling this function.

update will be set to true if a seek should be performed to the segment position field. This field can be false if, for example, only the rate has been changed but not the playback position.

Parameters:

this

a Segment structure.

rate

the rate of the segment.

format

the format of the segment.

flags

the segment flags for the segment

start_type

the seek method

start

the seek start value

stop_type

the seek method

stop

the seek stop value

update

boolean holding whether position was updated.

Returns:

true if the seek could be performed.