| Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte | 
|---|---|
| License | LGPL-2.1 | 
| Maintainer | Iñaki García Etxebarria | 
| Safe Haskell | Safe-Inferred | 
| Language | Haskell2010 | 
GI.Gtk.Objects.Video
Description
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.
Synopsis
- newtype Video = Video (ManagedPtr Video)
- class (GObject o, IsDescendantOf Video o) => IsVideo o
- toVideo :: (MonadIO m, IsVideo o) => o -> m Video
- videoGetAutoplay :: (HasCallStack, MonadIO m, IsVideo a) => a -> m Bool
- videoGetFile :: (HasCallStack, MonadIO m, IsVideo a) => a -> m (Maybe File)
- videoGetLoop :: (HasCallStack, MonadIO m, IsVideo a) => a -> m Bool
- videoGetMediaStream :: (HasCallStack, MonadIO m, IsVideo a) => a -> m (Maybe MediaStream)
- videoNew :: (HasCallStack, MonadIO m) => m Video
- videoNewForFile :: (HasCallStack, MonadIO m, IsFile a) => Maybe a -> m Video
- videoNewForFilename :: (HasCallStack, MonadIO m) => Maybe [Char] -> m Video
- videoNewForMediaStream :: (HasCallStack, MonadIO m, IsMediaStream a) => Maybe a -> m Video
- videoNewForResource :: (HasCallStack, MonadIO m) => Maybe Text -> m Video
- videoSetAutoplay :: (HasCallStack, MonadIO m, IsVideo a) => a -> Bool -> m ()
- videoSetFile :: (HasCallStack, MonadIO m, IsVideo a, IsFile b) => a -> Maybe b -> m ()
- videoSetFilename :: (HasCallStack, MonadIO m, IsVideo a) => a -> Maybe Text -> m ()
- videoSetLoop :: (HasCallStack, MonadIO m, IsVideo a) => a -> Bool -> m ()
- videoSetMediaStream :: (HasCallStack, MonadIO m, IsVideo a, IsMediaStream b) => a -> Maybe b -> m ()
- videoSetResource :: (HasCallStack, MonadIO m, IsVideo a) => a -> Maybe Text -> m ()
- constructVideoAutoplay :: (IsVideo o, MonadIO m) => Bool -> m (GValueConstruct o)
- getVideoAutoplay :: (MonadIO m, IsVideo o) => o -> m Bool
- setVideoAutoplay :: (MonadIO m, IsVideo o) => o -> Bool -> m ()
- clearVideoFile :: (MonadIO m, IsVideo o) => o -> m ()
- constructVideoFile :: (IsVideo o, MonadIO m, IsFile a) => a -> m (GValueConstruct o)
- getVideoFile :: (MonadIO m, IsVideo o) => o -> m (Maybe File)
- setVideoFile :: (MonadIO m, IsVideo o, IsFile a) => o -> a -> m ()
- constructVideoLoop :: (IsVideo o, MonadIO m) => Bool -> m (GValueConstruct o)
- getVideoLoop :: (MonadIO m, IsVideo o) => o -> m Bool
- setVideoLoop :: (MonadIO m, IsVideo o) => o -> Bool -> m ()
- clearVideoMediaStream :: (MonadIO m, IsVideo o) => o -> m ()
- constructVideoMediaStream :: (IsVideo o, MonadIO m, IsMediaStream a) => a -> m (GValueConstruct o)
- getVideoMediaStream :: (MonadIO m, IsVideo o) => o -> m (Maybe MediaStream)
- setVideoMediaStream :: (MonadIO m, IsVideo o, IsMediaStream a) => o -> a -> m ()
Exported types
Memory-managed wrapper type.
Instances
| Eq Video Source # | |
| GObject Video Source # | |
| Defined in GI.Gtk.Objects.Video | |
| ManagedPtrNewtype Video Source # | |
| Defined in GI.Gtk.Objects.Video Methods toManagedPtr :: Video -> ManagedPtr Video | |
| TypedObject Video Source # | |
| Defined in GI.Gtk.Objects.Video | |
| HasParentTypes Video Source # | |
| Defined in GI.Gtk.Objects.Video | |
| IsGValue (Maybe Video) Source # | Convert  | 
| Defined in GI.Gtk.Objects.Video Methods gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe Video -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe Video) | |
| type ParentTypes Video Source # | |
| Defined in GI.Gtk.Objects.Video | |
class (GObject o, IsDescendantOf Video o) => IsVideo o Source #
Instances
| (GObject o, IsDescendantOf Video o) => IsVideo o Source # | |
| Defined in GI.Gtk.Objects.Video | |
Methods
Click to display all available methods, including inherited ones
Methods
actionSetEnabled, activate, activateAction, activateDefault, addController, addCssClass, addMnemonicLabel, addTickCallback, allocate, bindProperty, bindPropertyFull, childFocus, computeBounds, computeExpand, computePoint, computeTransform, contains, createPangoContext, createPangoLayout, dragCheckThreshold, errorBell, forceFloating, freezeNotify, getv, grabFocus, hasCssClass, hasDefault, hasFocus, hasVisibleFocus, hide, inDestruction, initTemplate, insertActionGroup, insertAfter, insertBefore, isAncestor, isDrawable, isFloating, isFocus, isSensitive, isVisible, keynavFailed, listMnemonicLabels, map, measure, mnemonicActivate, notify, notifyByPspec, observeChildren, observeControllers, pick, queueAllocate, queueDraw, queueResize, realize, ref, refSink, removeController, removeCssClass, removeMnemonicLabel, removeTickCallback, resetProperty, resetRelation, resetState, runDispose, shouldLayout, show, sizeAllocate, snapshotChild, stealData, stealQdata, thawNotify, translateCoordinates, triggerTooltipQuery, unmap, unparent, unrealize, unref, unsetStateFlags, updateProperty, updateRelation, updateState, watchClosure.
Getters
getAccessibleRole, getAllocatedBaseline, getAllocatedHeight, getAllocatedWidth, getAllocation, getAncestor, getAutoplay, getBuildableId, getCanFocus, getCanTarget, getChildVisible, getClipboard, getCssClasses, getCssName, getCursor, getData, getDirection, getDisplay, getFile, getFirstChild, getFocusChild, getFocusOnClick, getFocusable, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLastChild, getLayoutManager, getLoop, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getMediaStream, getName, getNative, getNextSibling, getOpacity, getOverflow, getPangoContext, getParent, getPreferredSize, getPrevSibling, getPrimaryClipboard, getProperty, getQdata, getRealized, getReceivesDefault, getRequestMode, getRoot, getScaleFactor, getSensitive, getSettings, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTooltipMarkup, getTooltipText, getValign, getVexpand, getVexpandSet, getVisible, getWidth.
Setters
setAutoplay, setCanFocus, setCanTarget, setChildVisible, setCssClasses, setCursor, setCursorFromName, setData, setDataFull, setDirection, setFile, setFilename, setFocusChild, setFocusOnClick, setFocusable, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLayoutManager, setLoop, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setMediaStream, setName, setOpacity, setOverflow, setParent, setProperty, setReceivesDefault, setResource, setSensitive, setSizeRequest, setStateFlags, setTooltipMarkup, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible.
getAutoplay
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a) | |
| => a | 
 | 
| -> m Bool | Returns:  | 
Returns True if videos have been set to loop via videoSetLoop.
getFile
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a) | |
| => a | 
 | 
| -> m (Maybe File) | Returns: The file played by  | 
Gets the file played by self or Nothing if not playing back
 a file.
getLoop
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a) | |
| => a | 
 | 
| -> m Bool | Returns:  | 
Returns True if videos have been set to loop via videoSetLoop.
getMediaStream
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a) | |
| => a | 
 | 
| -> m (Maybe MediaStream) | Returns: The media stream managed by  | 
Gets the media stream managed by self or Nothing if none.
new
Arguments
| :: (HasCallStack, MonadIO m) | |
| => m Video | Returns: a new  | 
Creates a new empty Video.
newForFile
Arguments
| :: (HasCallStack, MonadIO m, IsFile a) | |
| => Maybe a | 
 | 
| -> m Video | Returns: a new  | 
Creates a Video to play back the given file.
newForFilename
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Maybe [Char] | 
 | 
| -> m Video | Returns: a new  | 
Creates a Video to play back the given filename.
This is a utility function that calls videoNewForFile,
 See that function for details.
newForMediaStream
videoNewForMediaStream Source #
Arguments
| :: (HasCallStack, MonadIO m, IsMediaStream a) | |
| => Maybe a | 
 | 
| -> m Video | Returns: a new  | 
Creates a Video to play back the given stream.
newForResource
Arguments
| :: (HasCallStack, MonadIO m) | |
| => Maybe Text | 
 | 
| -> m Video | Returns: a new  | 
Creates a Video to play back the resource at the
 given resourcePath.
This is a utility function that calls videoNewForFile,
setAutoplay
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a) | |
| => a | 
 | 
| -> Bool | 
 | 
| -> m () | 
Sets whether self automatically starts playback when it becomes visible
 or when a new file gets loaded.
setFile
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a, IsFile b) | |
| => a | 
 | 
| -> Maybe b | 
 | 
| -> m () | 
Makes self play the given file.
setFilename
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a) | |
| => a | 
 | 
| -> Maybe Text | 
 | 
| -> m () | 
Makes self play the given filename.
This is a utility function that calls videoSetFile,
setLoop
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a) | |
| => a | 
 | 
| -> Bool | 
 | 
| -> m () | 
Sets whether new files loaded by self should be set to loop.
setMediaStream
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a, IsMediaStream b) | |
| => a | 
 | 
| -> Maybe b | 
 | 
| -> m () | 
Sets the media stream to be played back. self will take full control
 of managing the media stream. If you want to manage a media stream
 yourself, consider using a Image for display.
If you want to display a file, consider using videoSetFile
 instead.
setResource
Arguments
| :: (HasCallStack, MonadIO m, IsVideo a) | |
| => a | 
 | 
| -> Maybe Text | 
 | 
| -> m () | 
Makes self play the resource at the given resourcePath.
This is a utility function that calls videoSetFile,
Properties
autoplay
If the video should automatically begin playing.
constructVideoAutoplay :: (IsVideo o, MonadIO m) => Bool -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “autoplay” property. This is rarely needed directly, but it is used by new.
getVideoAutoplay :: (MonadIO m, IsVideo o) => o -> m Bool Source #
Get the value of the “autoplay” property.
 When overloading is enabled, this is equivalent to
get video #autoplay
setVideoAutoplay :: (MonadIO m, IsVideo o) => o -> Bool -> m () Source #
Set the value of the “autoplay” property.
 When overloading is enabled, this is equivalent to
setvideo [ #autoplay:=value ]
file
The file played by this video if the video is playing a file.
clearVideoFile :: (MonadIO m, IsVideo o) => o -> m () Source #
Set the value of the “file” property to Nothing.
 When overloading is enabled, this is equivalent to
clear #file
constructVideoFile :: (IsVideo o, MonadIO m, IsFile a) => a -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “file” property. This is rarely needed directly, but it is used by new.
getVideoFile :: (MonadIO m, IsVideo o) => o -> m (Maybe File) Source #
Get the value of the “file” property.
 When overloading is enabled, this is equivalent to
get video #file
setVideoFile :: (MonadIO m, IsVideo o, IsFile a) => o -> a -> m () Source #
Set the value of the “file” property.
 When overloading is enabled, this is equivalent to
setvideo [ #file:=value ]
loop
If new media files should be set to loop.
constructVideoLoop :: (IsVideo o, MonadIO m) => Bool -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “loop” property. This is rarely needed directly, but it is used by new.
getVideoLoop :: (MonadIO m, IsVideo o) => o -> m Bool Source #
Get the value of the “loop” property.
 When overloading is enabled, this is equivalent to
get video #loop
setVideoLoop :: (MonadIO m, IsVideo o) => o -> Bool -> m () Source #
Set the value of the “loop” property.
 When overloading is enabled, this is equivalent to
setvideo [ #loop:=value ]
mediaStream
The media-stream played
clearVideoMediaStream :: (MonadIO m, IsVideo o) => o -> m () Source #
Set the value of the “media-stream” property to Nothing.
 When overloading is enabled, this is equivalent to
clear #mediaStream
constructVideoMediaStream :: (IsVideo o, MonadIO m, IsMediaStream a) => a -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “media-stream” property. This is rarely needed directly, but it is used by new.
getVideoMediaStream :: (MonadIO m, IsVideo o) => o -> m (Maybe MediaStream) Source #
Get the value of the “media-stream” property.
 When overloading is enabled, this is equivalent to
get video #mediaStream
setVideoMediaStream :: (MonadIO m, IsVideo o, IsMediaStream a) => o -> a -> m () Source #
Set the value of the “media-stream” property.
 When overloading is enabled, this is equivalent to
setvideo [ #mediaStream:=value ]