Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | None |
Language | Haskell2010 |
GtkVideo is a widget to show a MediaStream
.
It is commonly combined with MediaControls
to give the
user a way to control the playback.
Synopsis
- newtype Video = Video (ManagedPtr Video)
- class (GObject o, IsDescendantOf Video o) => IsVideo o
- toVideo :: (MonadIO m, IsVideo o) => o -> m Video
- noVideo :: Maybe 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 => Bool -> IO (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, IsFile a) => a -> IO (GValueConstruct o)
- getVideoFile :: (MonadIO m, IsVideo o) => o -> m (Maybe File)
- setVideoFile :: (MonadIO m, IsVideo o, IsFile a) => o -> a -> m ()
- constructVideoLoop :: IsVideo o => Bool -> IO (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, IsMediaStream a) => a -> IO (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 # | |
IsGValue Video Source # | Convert |
GObject Video Source # | |
Defined in GI.Gtk.Objects.Video gobjectType :: IO GType # | |
HasParentTypes Video Source # | |
Defined in GI.Gtk.Objects.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
Overloaded methods
getAutoplay
:: (HasCallStack, MonadIO m, IsVideo a) | |
=> a |
|
-> m Bool | Returns: |
Returns True
if videos have been set to loop via videoSetLoop
.
getFile
:: (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
:: (HasCallStack, MonadIO m, IsVideo a) | |
=> a |
|
-> m Bool | Returns: |
Returns True
if videos have been set to loop via videoSetLoop
.
getMediaStream
:: (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
:: (HasCallStack, MonadIO m) | |
=> m Video | Returns: a new |
Creates a new empty Video
.
newForFile
Creates a Video
to play back the given file
.
newForFilename
:: (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 #
:: (HasCallStack, MonadIO m, IsMediaStream a) | |
=> Maybe a |
|
-> m Video | Returns: a new |
Creates a Video
to play back the given stream
.
newForResource
:: (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
:: (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
:: (HasCallStack, MonadIO m, IsVideo a, IsFile b) | |
=> a |
|
-> Maybe b |
|
-> m () |
Makes self
play the given file
.
setFilename
:: (HasCallStack, MonadIO m, IsVideo a) | |
=> a |
|
-> Maybe Text |
|
-> m () |
Makes self
play the given filename
.
This is a utility function that calls videoSetFile
,
setLoop
:: (HasCallStack, MonadIO m, IsVideo a) | |
=> a |
|
-> Bool |
|
-> m () |
Sets whether new files loaded by self
should be set to loop.
setMediaStream
:: (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
:: (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 => Bool -> IO (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
set
video [ #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, IsFile a) => a -> IO (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
set
video [ #file:=
value ]
loop
If new media files should be set to loop.
constructVideoLoop :: IsVideo o => Bool -> IO (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
set
video [ #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, IsMediaStream a) => a -> IO (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
set
video [ #mediaStream:=
value ]