Video
Object Hierarchy:
Description:
[ CCode ( type_id = "gtk_video_get_type ()" ) ]
public class Video : Widget, Accessible, Buildable, ConstraintTarget
public class Video : Widget, Accessible, Buildable, ConstraintTarget
GtkVideo is a widget to show a MediaStream with media controls as provided by MediaControls.
If you just want to display a video without controls, you can treat it like any other paintable and for example put it into a Picture.
GtkVideo aims to cover use cases such as previews, embedded animations, etc. It supports autoplay, looping, and simple media controls. It does not have support for video overlays, multichannel audio, device selection, or input. If you are writing a full-fledged video player, you may want to use the Paintable API and a media framework such as Gstreamer directly.
Namespace: Gtk
Package: gtk4
Content:
Properties:
- public bool autoplay { get; set; }
If the video should automatically begin playing.
- public File file { get; set; }
The file played by this video if the video is playing a file.
- public bool loop { get; set; }
If new media files should be set to loop.
- public MediaStream media_stream { get; set; }
The media-stream played
Creation methods:
- public Video ()
Creates a new empty Video.
- public Video.for_file (File? file)
Creates a Video to play back the given
file
. - public Video.for_filename (string? filename)
Creates a Video to play back the given
filename
. - public Video.for_media_stream (MediaStream? stream)
Creates a Video to play back the given
stream
. - public Video.for_resource (string? resource_path)
Creates a Video to play back the resource at the given
resource_path
.
Methods:
- public bool get_autoplay ()
Returns true if videos have been set to loop via set_loop.
- public unowned File? get_file ()
Gets the file played by this or null if not playing back a file.
- public bool get_loop ()
Returns true if videos have been set to loop via set_loop.
- public unowned MediaStream? get_media_stream ()
Gets the media stream managed by this or null if none.
- public void set_autoplay (bool autoplay)
Sets whether this automatically starts playback when it becomes visible or when a new file gets loaded.
- public void set_file (File? file)
Makes this play the given
file
. - public void set_filename (string? filename)
Makes this play the given
filename
. - public void set_loop (bool loop)
Sets whether new files loaded by this should be set to loop.
- public void set_media_stream (MediaStream? stream)
Sets the media stream to be played back.
- public void set_resource (string? resource_path)
Makes this play the resource at the given
resource_path
.
Inherited Members:
All known members inherited from class Gtk.Widget
- action_set_enabled
- activate
- activate_action
- activate_action_variant
- activate_default
- add_binding
- add_binding_action
- add_binding_signal
- add_controller
- add_css_class
- add_mnemonic_label
- add_shortcut
- add_tick_callback
- allocate
- allocate_size
- bind_template_callback_full
- bind_template_child_full
- can_focus
- can_target
- child_focus
- compute_bounds
- compute_expand
- compute_expand_internal
- compute_point
- compute_transform
- contains
- create_pango_context
- create_pango_layout
- css_changed
- css_classes
- css_name
- cursor
- destroy
- direction_changed
- error_bell
- focus
- focus_on_click
- focusable
- get_accessible_role
- get_activate_signal
- get_allocated_baseline
- get_allocated_height
- get_allocated_width
- get_allocation
- get_ancestor
- get_can_focus
- get_can_target
- get_child_visible
- get_clipboard
- get_css_classes
- get_css_name
- get_cursor
- get_default_direction
- get_direction
- get_display
- get_first_child
- get_focus_child
- get_focus_on_click
- get_focusable
- get_font_map
- get_font_options
- get_frame_clock
- get_halign
- get_has_tooltip
- get_height
- get_hexpand
- get_hexpand_set
- get_last_child
- get_layout_manager
- get_layout_manager_type
- get_mapped
- get_margin_bottom
- get_margin_end
- get_margin_start
- get_margin_top
- get_name
- get_native
- get_next_sibling
- get_opacity
- get_overflow
- get_pango_context
- get_parent
- get_preferred_size
- get_prev_sibling
- get_primary_clipboard
- get_realized
- get_receives_default
- get_request_mode
- get_root
- get_scale_factor
- get_sensitive
- get_settings
- get_size
- get_size_request
- get_state_flags
- get_style_context
- get_template_child
- get_tooltip_markup
- get_tooltip_text
- get_valign
- get_vexpand
- get_vexpand_set
- get_visible
- get_width
- grab_focus
- halign
- has_css_class
- has_default
- has_focus
- has_tooltip
- has_visible_focus
- height_request
- hexpand
- hexpand_set
- hide
- in_destruction
- init_template
- insert_action_group
- insert_after
- insert_before
- install_action
- install_property_action
- is_ancestor
- is_drawable
- is_focus
- is_sensitive
- is_visible
- keynav_failed
- layout_manager
- list_mnemonic_labels
- map
- margin_bottom
- margin_end
- margin_start
- margin_top
- measure
- mnemonic_activate
- move_focus
- name
- observe_children
- observe_controllers
- opacity
- overflow
- parent
- pick
- query_action
- query_tooltip
- queue_allocate
- queue_draw
- queue_resize
- realize
- receives_default
- remove_controller
- remove_css_class
- remove_mnemonic_label
- remove_tick_callback
- root
- scale_factor
- sensitive
- set_accessible_role
- set_activate_signal
- set_activate_signal_from_name
- set_can_focus
- set_can_target
- set_child_visible
- set_css_classes
- set_css_name
- set_cursor
- set_cursor_from_name
- set_default_direction
- set_direction
- set_focus_child
- set_focus_on_click
- set_focusable
- set_font_map
- set_font_options
- set_halign
- set_has_tooltip
- set_hexpand
- set_hexpand_set
- set_layout_manager
- set_layout_manager_type
- set_margin_bottom
- set_margin_end
- set_margin_start
- set_margin_top
- set_name
- set_opacity
- set_overflow
- set_parent
- set_receives_default
- set_sensitive
- set_size_request
- set_state_flags
- set_template
- set_template_from_resource
- set_template_scope
- set_tooltip_markup
- set_tooltip_text
- set_valign
- set_vexpand
- set_vexpand_set
- set_visible
- should_layout
- show
- size_allocate
- snapshot
- snapshot_child
- state_flags_changed
- system_setting_changed
- tooltip_markup
- tooltip_text
- translate_coordinates
- trigger_tooltip_query
- unmap
- unparent
- unrealize
- unroot
- unset_state_flags
- valign
- vexpand
- vexpand_set
- visible
- width_request
All known members inherited from class GLib.Object
All known members inherited from interface Gtk.Accessible
All known members inherited from interface Gtk.Buildable