Video

Functions
Video

## Functions
EOAPI void | elm_obj_video_audio_level_set (double volume)
| Set the audio level of an Elm_Video object. More...
EOAPI double | elm_obj_video_audio_level_get (void)
| Get the audio level of the current video. More...
EOAPI void | elm_obj_video_remember_position_set (Eina_Bool remember)
| Set whether the object can remember the last played position. More...
EOAPI Eina_Bool | elm_obj_video_remember_position_get (void)
| Set whether the object can remember the last played position. More...
EOAPI void | elm_obj_video_play_position_set (double position)
| Set the current position (in seconds) to be played in the Elm_Video object. More...
EOAPI double | elm_obj_video_play_position_get (void)
| Get the current position (in seconds) being played in the Elm_Video object. More...
EOAPI void | elm_obj_video_audio_mute_set (Eina_Bool mute)
| Change the mute state of the Elm_Video object. More...
EOAPI Eina_Bool | elm_obj_video_audio_mute_get (void)
| Get whether audio is muted. More...
EOAPI Eina_Bool | elm_obj_video_is_playing_get (void)
| Is the video actually playing. More...
EOAPI double | elm_obj_video_play_length_get (void)
| Get the total playing time (in seconds) of the Elm_Video object. More...
EOAPI Evas_Object * | elm_obj_video_emotion_get (void)
| Get the underlying Emotion object. More...
EOAPI Eina_Bool | elm_obj_video_is_seekable_get (void)
| Is it possible to seek inside the video. More...
EOAPI const char * | elm_obj_video_title_get (void)
| Get the title (for instance DVD title) from this emotion object. More...
EOAPI void | elm_obj_video_play (void)
| Start playing a video.
EOAPI void | elm_obj_video_pause (void)
| Pause a video.
EOAPI void | elm_obj_video_stop (void)
| Stop a video.
void | elm_video_audio_level_set (Elm_Video *obj, double volume)
| Set the audio level of an Elm_Video object. More...
double | elm_video_audio_level_get (const Elm_Video *obj)
| Get the audio level of the current video. More...
void | elm_video_remember_position_set (Elm_Video *obj, Eina_Bool remember)
| Set whether the object can remember the last played position. More...
Eina_Bool | elm_video_remember_position_get (const Elm_Video *obj)
| Set whether the object can remember the last played position. More...
void | elm_video_play_position_set (Elm_Video *obj, double position)
| Set the current position (in seconds) to be played in the Elm_Video object. More...
double | elm_video_play_position_get (const Elm_Video *obj)
| Get the current position (in seconds) being played in the Elm_Video object. More...
void | elm_video_audio_mute_set (Elm_Video *obj, Eina_Bool mute)
| Change the mute state of the Elm_Video object. More...
Eina_Bool | elm_video_audio_mute_get (const Elm_Video *obj)
| Get whether audio is muted. More...
Eina_Bool | elm_video_is_playing_get (const Elm_Video *obj)
| Is the video actually playing. More...
double | elm_video_play_length_get (const Elm_Video *obj)
| Get the total playing time (in seconds) of the Elm_Video object. More...
Evas_Object * | elm_video_emotion_get (const Elm_Video *obj)
| Get the underlying Emotion object. More...
Eina_Bool | elm_video_is_seekable_get (const Elm_Video *obj)
| Is it possible to seek inside the video. More...
const char * | elm_video_title_get (const Elm_Video *obj)
| Get the title (for instance DVD title) from this emotion object. More...
void | elm_video_play (Elm_Video *obj)
| Start playing a video.
void | elm_video_pause (Elm_Video *obj)
| Pause a video.
void | elm_video_stop (Elm_Video *obj)
| Stop a video.
Evas_Object * | elm_player_add (Evas_Object *parent)
| Add a new Elm_Player object to the given parent Elementary (container) object. More...
Evas_Object * | elm_video_add (Evas_Object *parent)
| Add a new Elm_Video object to the given parent Elementary (container) object. More...
Eina_Bool | elm_video_file_set (Eo *obj, const char *filename)
| Define the file or URI that will be the video source. More...
void | elm_video_file_get (Eo *obj, const char **filename)
| Get the file or URI that is used as the video source. More...

## Detailed Description

Elementary comes with two object that help design application that need to display video.

The first one, Elm_Video, display a video by using Emotion. It embeds the video inside an Edje object, so you can do some animation depending on the video state change. It also implements a resource management policy to remove this burden from the application.

The second one, Elm_Player is a video player that need to be linked with an Elm_Video. It take care of updating its content according to Emotion event and provide a way to theme itself. It also automatically raises the priority of the linked Elm_Video so it will use the video decoder, if available. It also activates the "remember" function on the linked Elm_Video object.

Both widgets inherit from the Layout one, so that all the functions acting on it also work for video objects.

This widget emits the following signals, besides the ones sent from Layout:

- `"focused"` : When the video has received focus. (since 1.8)
- `"unfocused"` : When the video has lost focus. (since 1.8)

The player widget emits the following signals, besides the ones sent from Layout:

- `"forward,clicked"` - the user clicked the forward button.
- `"info,clicked"` - the user clicked the info button.
- `"next,clicked"` - the user clicked the next button.
- `"pause,clicked"` - the user clicked the pause button.
- `"play,clicked"` - the user clicked the play button.
- `"prev,clicked"` - the user clicked the prev button.
- `"rewind,clicked"` - the user clicked the rewind button.
- `"stop,clicked"` - the user clicked the stop button.

Default content parts of the player widget that you can use for are:

- "video" - A video of the player

## Function Documentation

## ◆ elm_obj_video_audio_level_get()

EOAPI double elm_obj_video_audio_level_get | ( | void |  | ) |

Get the audio level of the current video.

Returns
  The audio level.

Referenced by elm_video_audio_level_get().

## ◆ elm_obj_video_audio_level_set()

EOAPI void elm_obj_video_audio_level_set | ( | double | volume | ) |

Set the audio level of an Elm_Video object.

Parameters

  [in] | volume | The audio level.

Referenced by elm_video_audio_level_set().

## ◆ elm_obj_video_audio_mute_get()

EOAPI Eina_Bool elm_obj_video_audio_mute_get | ( | void |  | ) |

Get whether audio is muted.

Returns
  The mute state.

Referenced by elm_video_audio_mute_get().

## ◆ elm_obj_video_audio_mute_set()

EOAPI void elm_obj_video_audio_mute_set | ( | Eina_Bool | mute | ) |

Change the mute state of the Elm_Video object.

Parameters

  [in] | mute | The mute state.

Referenced by elm_video_audio_mute_set().

## ◆ elm_obj_video_emotion_get()

EOAPI Evas_Object* elm_obj_video_emotion_get | ( | void |  | ) |

Get the underlying Emotion object.

Returns
  the underlying Emotion object.

Referenced by elm_video_emotion_get().

## ◆ elm_obj_video_is_playing_get()

EOAPI Eina_Bool elm_obj_video_is_playing_get | ( | void |  | ) |

Is the video actually playing.

You should consider watching event on the object instead of polling the object state.

Referenced by elm_video_is_playing_get().

## ◆ elm_obj_video_is_seekable_get()

EOAPI Eina_Bool elm_obj_video_is_seekable_get | ( | void |  | ) |

Is it possible to seek inside the video.

Returns
  true if is possible to seek inside the video.

Referenced by elm_video_is_seekable_get().

## ◆ elm_obj_video_play_length_get()

EOAPI double elm_obj_video_play_length_get | ( | void |  | ) |

Get the total playing time (in seconds) of the Elm_Video object.

Returns
  The total duration (in seconds) of the media file.

Referenced by elm_video_play_length_get().

## ◆ elm_obj_video_play_position_get()

EOAPI double elm_obj_video_play_position_get | ( | void |  | ) |

Get the current position (in seconds) being played in the Elm_Video object.

Returns
  The time (in seconds) since the beginning of the media file.

Referenced by elm_video_play_position_get().

## ◆ elm_obj_video_play_position_set()

EOAPI void elm_obj_video_play_position_set | ( | double | position | ) |

Set the current position (in seconds) to be played in the Elm_Video object.

Parameters

  [in] | position | The time (in seconds) since the beginning of the media file.

Referenced by elm_video_play_position_set().

## ◆ elm_obj_video_remember_position_get()

EOAPI Eina_Bool elm_obj_video_remember_position_get | ( | void |  | ) |

Set whether the object can remember the last played position.

Note
  This API only serves as indication. System support is required.

Returns
  The value.

Referenced by elm_video_remember_position_get().

## ◆ elm_obj_video_remember_position_set()

EOAPI void elm_obj_video_remember_position_set | ( | Eina_Bool | remember | ) |

Set whether the object can remember the last played position.

Note
  This API only serves as indication. System support is required.

Parameters

  [in] | remember | The value.

Referenced by elm_video_remember_position_set().

## ◆ elm_obj_video_title_get()

EOAPI const char* elm_obj_video_title_get | ( | void |  | ) |

Get the title (for instance DVD title) from this emotion object.

This function is only useful when playing a DVD.

Note
  Don't change or free the string returned by this function.

Returns
  A string containing the title.

Referenced by elm_video_title_get().

## ◆ elm_player_add()

Evas_Object* elm_player_add | ( | Evas_Object * | parent | ) |

Add a new Elm_Player object to the given parent Elementary (container) object.

Parameters

  parent | The parent object

Returns
  a new player widget handle or `NULL`, on errors.

This function inserts a new player widget on the canvas.

See also
  elm_object_part_content_set()

## ◆ elm_video_add()

Evas_Object* elm_video_add | ( | Evas_Object * | parent | ) |

Add a new Elm_Video object to the given parent Elementary (container) object.

Parameters

  parent | The parent object

Returns
  a new video widget handle or `NULL`, on errors.

This function inserts a new video widget on the canvas.

See also
  elm_video_file_set()

References elm_layout_signal_emit().

## ◆ elm_video_audio_level_get()

double elm_video_audio_level_get | ( | const Elm_Video * | obj | ) |

Get the audio level of the current video.

Returns
  The audio level.

References elm_obj_video_audio_level_get().

## ◆ elm_video_audio_level_set()

void elm_video_audio_level_set | ( | Elm_Video * | obj,
|  | double | volume
| ) |  |

Set the audio level of an Elm_Video object.

Parameters

  [in] | volume | The audio level.

References elm_obj_video_audio_level_set().

## ◆ elm_video_audio_mute_get()

Eina_Bool elm_video_audio_mute_get | ( | const Elm_Video * | obj | ) |

Get whether audio is muted.

Returns
  The mute state.

References elm_obj_video_audio_mute_get().

## ◆ elm_video_audio_mute_set()

void elm_video_audio_mute_set | ( | Elm_Video * | obj,
|  | Eina_Bool | mute
| ) |  |

Change the mute state of the Elm_Video object.

Parameters

  [in] | mute | The mute state.

References elm_obj_video_audio_mute_set().

## ◆ elm_video_emotion_get()

Evas_Object* elm_video_emotion_get | ( | const Elm_Video * | obj | ) |

Get the underlying Emotion object.

Returns
  the underlying Emotion object.

References elm_obj_video_emotion_get().

## ◆ elm_video_file_get()

void elm_video_file_get | ( | Eo * | obj,
|  | const char ** | filename
| ) |  |

Get the file or URI that is used as the video source.

Parameters

  filename | The file or URI.

Since
  1.14

## ◆ elm_video_file_set()

Eina_Bool elm_video_file_set | ( | Eo * | obj,
|  | const char * | filename
| ) |  |

Define the file or URI that will be the video source.

Returns
  `EINA_TRUE` on success, `EINA_FALSE` otherwise

This function will explicitly define a file or URI as a source for the video of the Elm_Video object.

See also
  elm_video_add()
  elm_player_add()

Parameters

  [in] | filename | The file or URI to target. Local files can be specified using file:// or by using full file paths. URI could be remote source of video, like http:// or local source like WebCam (v4l2://). (You can use Emotion API to request and list the available Webcam on your system).

## ◆ elm_video_is_playing_get()

Eina_Bool elm_video_is_playing_get | ( | const Elm_Video * | obj | ) |

Is the video actually playing.

You should consider watching event on the object instead of polling the object state.

References elm_obj_video_is_playing_get().

## ◆ elm_video_is_seekable_get()

Eina_Bool elm_video_is_seekable_get | ( | const Elm_Video * | obj | ) |

Is it possible to seek inside the video.

Returns
  true if is possible to seek inside the video.

References elm_obj_video_is_seekable_get().

## ◆ elm_video_play_length_get()

double elm_video_play_length_get | ( | const Elm_Video * | obj | ) |

Get the total playing time (in seconds) of the Elm_Video object.

Returns
  The total duration (in seconds) of the media file.

References elm_obj_video_play_length_get().

## ◆ elm_video_play_position_get()

double elm_video_play_position_get | ( | const Elm_Video * | obj | ) |

Get the current position (in seconds) being played in the Elm_Video object.

Returns
  The time (in seconds) since the beginning of the media file.

References elm_obj_video_play_position_get().

## ◆ elm_video_play_position_set()

void elm_video_play_position_set | ( | Elm_Video * | obj,
|  | double | position
| ) |  |

Set the current position (in seconds) to be played in the Elm_Video object.

Parameters

  [in] | position | The time (in seconds) since the beginning of the media file.

References elm_obj_video_play_position_set().

## ◆ elm_video_remember_position_get()

Eina_Bool elm_video_remember_position_get | ( | const Elm_Video * | obj | ) |

Set whether the object can remember the last played position.

Note
  This API only serves as indication. System support is required.

Returns
  The value.

References elm_obj_video_remember_position_get().

## ◆ elm_video_remember_position_set()

void elm_video_remember_position_set | ( | Elm_Video * | obj,
|  | Eina_Bool | remember
| ) |  |

Set whether the object can remember the last played position.

Note
  This API only serves as indication. System support is required.

Parameters

  [in] | remember | The value.

References elm_obj_video_remember_position_set().

## ◆ elm_video_title_get()

const char* elm_video_title_get | ( | const Elm_Video * | obj | ) |

Get the title (for instance DVD title) from this emotion object.

This function is only useful when playing a DVD.

Note
  Don't change or free the string returned by this function.

Returns
  A string containing the title.

References elm_obj_video_title_get().