Git Product home page Git Product logo

lettier / movie-monad Goto Github PK

View Code? Open in Web Editor NEW
420.0 12.0 24.0 6.86 MB

:tv: A free and simple to use video player made with Haskell.

Home Page: https://lettier.github.io/movie-monad

License: BSD 3-Clause "New" or "Revised" License

Haskell 82.93% Makefile 3.52% Shell 4.29% C 0.26% C++ 0.12% CSS 8.88%
haskell haskell-gi gstreamer gtk gdk video-player multimedia-player gst video-playback vlc

movie-monad's Introduction

Movie Monad

Is Movie Monad the free video player I've been looking for?

Yes. ✔️

Movie Monad is a free and simple to use video player made with Haskell. Originally it was a proof of concept to add video playback to Gifcurry (another great app—check it out). Nowadays it's a lightweight yet mighty media player used all over the world 🌐 everyday.

Movie Monad is cross platform so you'll never have to watch without it. Stream videos from the web or play the files stored on your computer. Play, pause, seek, repeat, resize, expand, and turn it up—Movie Monad gets out of the way so you can watch the videos you love. 💓

So try out Movie Monad—it'll make your life simpler. 😎

What does Movie Monad look like? 👀

Movie Monad

What can I do with Movie Monad? 🤔

  • You can play video files from your hard drive 💻 or stream videos from the web. 🕸️
    • To play web videos, click the file open button, paste the URL into the text box, and click open.
    • Movie Monad can handle file://, https://, and http://.
  • You can play and pause. ⏯️
  • You can seek/scrub ⏪ ⏩ through the video. 📼
  • You can put the video on repeat. 🔁
  • You can slow down 🐌 or speed up 🐎 the video (great for lectures).
  • You can turn subtitles off or on and pick your language.
  • You can turn up ⬆️, turn down ⬇️, or mute 🔇 the volume. 🔉
  • You can expand the video to full screen.
  • You can quickly resize the video to standard sizes.
  • You can resize the video to a custom size by resizing the window.
    • Movie Monad will responsively adjust the video size to fill the window. 💥
  • You can play videos from the command line. 🆑
    • movie-monad ./path/to/video/file.webm
    • movie-monad http://www.domain.tld/path/to/video/file.webm

What are the keyboard controls? ⌨️

  • Mute/Unmute
    • m
    • AudioMute
  • Full Screen/Windowed
    • f
  • Show Controls
    • c
  • Toggle Repeat
    • r
  • Volume Up
    • ArrowUp
    • AudioRaiseVolume
  • Volume Down
    • ArrowDown
    • AudioLowerVolume
  • Seek Left
    • ArrowLeft
  • Seek Right
    • ArrowRight
  • Play/Pause
    • Space
    • AudioPlay

How do I get a copy of Movie Monad? 💾

Movie Monad works on Linux, Mac, and most likely Windows. Make sure you have GStreamer and GTK+ installed on your machine. To find the latest version of Movie Monad, head over to the releases page.

I use Linux. 🐧

If you use Linux then the easiest way to grab a copy of Movie Monad is by downloading the AppImage. After you download the AppImage, right click on it, select permissions, and check the box near execute. With that out of the way—you're all set—just double click on the AppImage and Movie Monad will pop up.

You can also download and install the AppImage using the handy AppImage install script (right click the link and select "Save link as..."). Download the script, right click on it, select permissions, check the box near execute, and double click on it. You should now see Movie Monad listed alongside your other installed programs.

I use Arch, Manjaro, Antergos, or pacman. 👻

You can install Movie Monad via pacman. Copy the following into your terminal.

cd "$HOME/Downloads"
sudo pacman -S git gstreamer gst-plugins-base-libs gst-plugins-base gst-plugins-good gst-plugins-bad gst-libav
git clone https://aur.archlinux.org/movie-monad.git
cd movie-monad
makepkg -sic
cd "$HOME/Downloads"
rm -rf movie-monad
cd
movie-monad

I use Fedora, SUSE, CentOS, Red Hat, Flatpak, Flathub, or GNOME Software. 🎩

You can install Movie Monad as a Flatpak via Flathub.

flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub com.lettier.movie-monad

You can also find it in GNOME Software. Just search for Movie Monad.

I use Ubuntu, Mint, Debian, Deepin, or Snap. 🌀

Movie Monad is available as a snap from Snapcraft. If you don't already have snap, go ahead and install it using the command sudo apt install snapd.

You can install the Movie Monad snap right from your browser or via the command line. For the command line route, paste the following into your terminal.

snap install movie-monad
sudo snap connect movie-monad:removable-media
movie-monad

I use Mac. 🍎

Mac users can download the Mac install script by holding down control, clicking the link, selecting "Save Link As...", selecting where Downloads, and clicking save. To run the script, hold down the command key and press the space bar. Now type terminal and hit enter. After the terminal comes up, copy and paste the following.

cd ~/Downloads
chmod +x movie-monad-mac-install-script.command
./movie-monad-mac-install-script.command

Once it's finished, a shortcut to Movie Monad will be on your desktop.

I'm a Haskell developer. 🖥️

If you develop Haskell programs then the easiest way to build Movie Monad is with Haskell Stack. Copy the following into your terminal.

cd "$HOME/Downloads"
git clone https://github.com/lettier/movie-monad.git
cd movie-monad
stack update
stack setup
stack install alex happy
stack install haskell-gi
stack install
stack exec -- movie-monad

What dependencies does Movie Monad use?

To run Movie Monad.

To build Movie Monad.

What is the license?

See LICENSE.

Who wrote Movie Monad?

(C) 2017 David Lettier
lettier.com

movie-monad's People

Contributors

lettier avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

movie-monad's Issues

AppImage doesn't seem to play video

Tried on a few different distributions including openSUSE LEAP 42.3 KDE, and the AppImage doesn't seem to play video. Which distributions did you test this on?

Time seek wraps around beginning and ending

It's awesome you included the feature I asked for, thanks! But to help improving your video player I want to report this issue

Given I'm playing a video
And time is at 0:05
When I press left arrow to go back in time
Then the time goes to the near-end of the video

Same behavior is shown when I go to forward near the end, I go back to the near-beginning

dependency

I installed movie-monad on archlinux and it has an additional dependency not checked by makepkg, the dependency is gobject-introspection-runtime (official arch repo).
It seems to be mandatory, as i couldn't run it without gobject-introspection-runtime

cannot satisfy dependencies

I'm stuck on to this step

$ stack install --dependencies-only


Error: While constructing the build plan, the following exceptions were encountered:

In the dependencies for gi-gdkx11-0.3.22.20:
    gi-gdk-3.0.14 must match >=0.3.22.20 && <0.3.23
    gi-gio-2.0.14 must match >=0.2.52.20 && <0.2.53
    gi-gobject-2.0.14 must match >=0.2.52.20 && <0.2.53
needed since gi-gdkx11-0.3.22.20 is a build target.

Plan construction failed.

Tried to do stack install gi-gdk gi-gio gi-gobject, but no difference.
Any ideas?

Configuration in haskell?

Thank you for this original work!

I was thinking, since this player is written in Haskell, which is very powerful and perfect fit for configuration, can we make the configuration in Haskell and make it VERY flexible? I haven't checked with the source code yet so I don't know how it can be done.

It could be something like xmonad. Key binding, video/audio decoding/filter, subtitle searching, or even theme/icon, could be configured in a Haskell file.

installation in window's

corruntly . i was looking for video player . so how to actually . install it on my home pc. i mean window ,.. please help im cofused

Flathub Flatpak does not play videos that use license restricted codecs in container formats such as MP4, AVI, and MOV.

Flatpak does not include, with the GNOME runtime, the gst-libav plugin needed to play license restricted audio/video codecs (usually used in containers such as MP4, AVI, and MOV).

flathub/org.libreoffice.LibreOffice#20 (comment)

The AppImage can play videos using such codecs only if the host system user has installed gst-libav and the codecs themselves. The AppImage does not distribute gst-libav or any codecs. The AppImage is capable of using what the host system has.

In comparison, the Flatpak can only use what is provided by the sand-boxed, runtime environment and cannot use what is present on the host system. Since gst-libav is not provided by the Flatpak GNOME runtime, the Movie Monad Flatpak cannot play most MP4, AVI, MOV, and MKV video files.

Until gst-libav is provided by the Flatpak GNOME runtime, Movie Monad will be limited in its playback capabilities. Users are recommended to use the provided AppImage or binaries.

The Flatpak Movie Monad can play videos that use such codecs as Theora, Vorbis, VP8, and VP9 (typically used in containers such as WebM and OGV).

For more information, see Audio/video formats: Licensing and patents.

👍

Doesn't support subtitles

I can't find ANYWHERE how to setup the subtitles on an archive, it just doesn't support, there's nothing i can do, but even though you write on the description that it DOES support

I tried dragging the srt file, i tried opening a menu or something by cliicking the right button, and nothing works, nothing

AUR package error

Arch Linux

==> Downloading movie-monad PKGBUILD from AUR...
x .SRCINFO
x PKGBUILD
movie-monad 0.0.2.0_0-1  (2017-12-19 09:46)
( Unsupported package: Potentially dangerous ! )
==> movie-monad dependencies:
 - gtk3 (already installed)
 - gstreamer (already installed)
 - gst-libav (already installed)
 - gst-plugins-base-libs (already installed)
 - gst-plugins-base (already installed)
 - gst-plugins-good (already installed)
 - gst-plugins-bad (already installed)
 - make (already installed) [makedepend]
 - wget (already installed) [makedepend]
 - gobject-introspection (already installed) [makedepend]
 - git (already installed) [makedepend]
 - gmp (already installed) [makedepend]
 - zlib (already installed) [makedepend]
 - ncurses (already installed) [makedepend]


==> Continue building movie-monad ? [Y/n]
==> -------------------------------------
==> 
==> Building and installing package
==> Making package: movie-monad 0.0.2.0_0-1 (vie dic 22 14:37:32 CET 2017)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Downloading movie-monad-0.0.2.0.tar.gz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  113k    0  113k    0     0   113k      0 --:--:-- --:--:-- --:--:--  113k
==> Validating source files with sha256sums...
    movie-monad-0.0.2.0.tar.gz ... Passed
==> Extracting sources...
  -> Extracting movie-monad-0.0.2.0.tar.gz with bsdtar
==> Removing existing $pkgdir/ directory...
==> Starting build()...
--2017-12-22 14:37:33--  https://raw.githubusercontent.com/lettier/movie-monad/44a705fc46e66dc9e585625e535b8c7d2473af15/makefile
Loaded CA certificate '/etc/ssl/certs/ca-certificates.crt'
Resolving raw.githubusercontent.com... 151.101.36.133
Connecting to raw.githubusercontent.com|151.101.36.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 476 [text/plain]
Saving to: ‘makefile’

makefile            100%[===================>]     476  --.-KB/s    in 0s      

2017-12-22 14:37:33 (8,83 MB/s) - ‘makefile’ saved [1226]

stack --allow-different-user setup && \
 stack --allow-different-user update && \
 stack --allow-different-user install cabal-install && \
 stack --allow-different-user install alex && \
 stack --allow-different-user install happy
stack will use a sandboxed GHC it installed
For more information on paths, see 'stack path' and 'stack exec env'
To use this GHC and packages outside of a project, consider using:
stack ghc, stack ghci, stack runghc, or stack exec
Updating package index Hackage (mirrored at https://s3.amazonaws.com/hackage.fpc                                                                                Selected mirror https://s3.amazonaws.com/hackage.fpcomplete.com/
Updating package index Hackage (mirrored at https://s3.amazonaws.com/hackage.fpc                                                                                Downloading timestamp
Updating package index Hackage (mirrored at https://s3.amazonaws.com/hackage.fpc                                                                                No updates to your package index were found
Updating package index Hackage (mirrored at https://s3.amazonaws.com/hackage.fpc                                                                                Update complete  
Copying from /home/juan/.stack/snapshots/x86_64-linux-nopie/lts-10.0/8.2.2/bin/cabal to /home/juan/.local/bin/cabal

Copied executables to /home/juan/.local/bin:
- cabal

Warning: Installation path /home/juan/.local/bin
         not found on the PATH environment variable.
Copying from /home/juan/.stack/snapshots/x86_64-linux-nopie/lts-10.0/8.2.2/bin/alex to /home/juan/.local/bin/alex

Copied executables to /home/juan/.local/bin:
- alex

Warning: Installation path /home/juan/.local/bin
         not found on the PATH environment variable.
Copying from /home/juan/.stack/snapshots/x86_64-linux-nopie/lts-10.0/8.2.2/bin/happy to /home/juan/.local/bin/happy

Copied executables to /home/juan/.local/bin:
- happy

Warning: Installation path /home/juan/.local/bin
         not found on the PATH environment variable.
env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal update
Downloading the latest package list from hackage.haskell.org
env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal clean && \
 env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal sandbox delete && \
 env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal sandbox init
cleaning...
Deleting the sandbox located at
/tmp/makepkg/movie-monad/src/movie-monad-0.0.2.0/.cabal-sandbox
Writing a default package environment file to
/tmp/makepkg/movie-monad/src/movie-monad-0.0.2.0/cabal.sandbox.config
Creating a new sandbox at
/tmp/makepkg/movie-monad/src/movie-monad-0.0.2.0/.cabal-sandbox
env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal sandbox init && \
 env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal --require-sandbox install --dependencies-only -j -w `stack --allow-different-user path --compiler-exe` && \
 env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal --require-sandbox configure --enable-relocatable -w `stack --allow-different-user path --compiler-exe` && \
 env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal --require-sandbox build -j && \
 env PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/opt/afdko/Tools/linux:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/juan/bin:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --local-bin`:`stack --allow-different-user path --compiler-bin` `stack --allow-different-user path --local-bin`/cabal --require-sandbox install --enable-relocatable -j -w `stack --allow-different-user path --compiler-exe`
Writing a default package environment file to
/tmp/makepkg/movie-monad/src/movie-monad-0.0.2.0/cabal.sandbox.config
Using an existing sandbox located at
/tmp/makepkg/movie-monad/src/movie-monad-0.0.2.0/.cabal-sandbox
Resolving dependencies...
In order, the following would be installed:
call-stack-0.1.0 (via: HUnit-1.6.0.0) (new package)
data-default-class-0.1.2.0 (via: data-default-0.7.1.1
data-default-instances-old-locale-0.0.1 data-default-instances-dlist-0.0.1
data-default-instances-containers-0.0.1) (new package)
dlist-0.8.0.3 (via: data-default-instances-dlist-0.0.1) (new package)
haskell-gi-overloading-1.0 (via: gi-gtk-3.0.18 gi-gdk-3.0.14
gi-gstvideo-1.0.14 gi-gdkpixbuf-2.0.14 gi-gstbase-1.0.15 gi-atk-2.0.14
gi-gio-2.0.14 gi-gst-1.0.14 gi-pango-1.0.15 gi-gobject-2.0.15 gi-cairo-1.0.14
gi-glib-2.0.15) (new package)
haskell-lexer-1.0.1 (via: pretty-show-1.6.15) (new package)
integer-logarithms-1.0.2 (via: scientific-0.3.5.2) (new package)
mtl-2.2.1 (via: haskell-gi-0.20.3 conduit-1.2.12.1 MissingH-1.4.0.1
resourcet-1.1.10 hslogger-1.2.10 regex-tdfa-1.2.2 exceptions-0.8.3
mmorph-1.1.0 parsec-3.1.11 regex-base-0.93.2) (new package)
old-locale-1.0.0.7 (via: MissingH-1.4.0.1 hslogger-1.2.10
data-default-instances-old-locale-0.0.1 old-time-1.1.0.3) (new package)
primitive-0.6.2.0 (via: conduit-extra-1.2.2 conduit-1.2.12.1
scientific-0.3.5.2) (new package)
safe-0.3.15 (via: haskell-gi-0.20.3) (new package)
stm-2.4.4.1 (via: conduit-extra-1.2.2 streaming-commons-0.1.18
typed-process-0.2.0.0 monad-control-1.0.2.2 exceptions-0.8.3
transformers-base-0.4.4 async-2.1.1.1) (new package)
text-1.2.2.2 (via: gi-gtk-3.0.18 gi-gdk-3.0.14 gi-gstvideo-1.0.14
gi-gdkpixbuf-2.0.14 gi-gstbase-1.0.15 gi-atk-2.0.14 gi-gio-2.0.14
gi-gst-1.0.14 gi-pango-1.0.15 gi-gobject-2.0.15 gi-cairo-1.0.14 gi-glib-2.0.15
haskell-gi-0.20.3 haskell-gi-0.20.3 xml-conduit-1.4.0.4 conduit-extra-1.2.2
streaming-commons-0.1.18 blaze-html-0.9.0.1 attoparsec-0.13.2.0
system-fileio-0.3.16.3 blaze-markup-0.8.0.0 scientific-0.3.5.2
blaze-builder-0.4.0.2 hashable-1.2.6.1 haskell-gi-base-0.20.4 parsec-3.1.11
system-filepath-0.4.13.4 xml-types-0.3.6) (new package)
time-1.6.0.1 (latest: 1.8.0.3) (via: MissingH-1.4.0.1 Cabal-2.0.1.1
hslogger-1.2.10 directory-1.3.1.5 system-fileio-0.3.16.3 random-1.1
unix-2.7.2.2) (new version)
transformers-compat-0.5.1.4 (via: conduit-1.2.12.1 resourcet-1.1.10
monad-control-1.0.2.2 exceptions-0.8.3 mmorph-1.1.0 transformers-base-0.4.4)
(new package)
unliftio-core-0.1.0.0 (via: conduit-extra-1.2.2 resourcet-1.1.10) (new
package)
zlib-0.6.1.2 (via: streaming-commons-0.1.18) (new package)
HUnit-1.6.0.0 (via: MissingH-1.4.0.1) (new package)
data-default-instances-containers-0.0.1 (via: data-default-0.7.1.1) (new
package)
data-default-instances-dlist-0.0.1 (via: data-default-0.7.1.1) (new package)
pretty-show-1.6.15 (via: haskell-gi-0.20.3 haskell-gi-0.20.3) (new package)
regex-base-0.93.2 (via: regex-compat-0.95.1 regex-tdfa-1.2.2
regex-posix-0.95.2) (new package)
old-time-1.1.0.3 (via: MissingH-1.4.0.1) (new package)
data-default-instances-old-locale-0.0.1 (via: data-default-0.7.1.1) (new
package)
async-2.1.1.1 (via: conduit-extra-1.2.2 streaming-commons-0.1.18
typed-process-0.2.0.0) (new package)
xml-types-0.3.6 (via: xml-conduit-1.4.0.4) (new package)
system-filepath-0.4.13.4 (via: system-fileio-0.3.16.3) (new package)
parsec-3.1.11 (via: MissingH-1.4.0.1 network-uri-2.6.1.0 regex-tdfa-1.2.2)
(new package)
haskell-gi-base-0.20.4 (latest: 0.20.8) (via: gi-gtk-3.0.18 gi-gdk-3.0.14
gi-gstvideo-1.0.14 gi-gdkpixbuf-2.0.14 gi-gstbase-1.0.15 gi-atk-2.0.14
gi-gio-2.0.14 gi-gst-1.0.14 gi-pango-1.0.15 gi-gobject-2.0.15 gi-cairo-1.0.14
gi-glib-2.0.15 haskell-gi-0.20.3 haskell-gi-0.20.3) (new package)
hashable-1.2.6.1 (via: scientific-0.3.5.2) (new package)
blaze-builder-0.4.0.2 (via: xml-conduit-1.4.0.4 conduit-extra-1.2.2
streaming-commons-0.1.18 blaze-html-0.9.0.1 blaze-markup-0.8.0.0) (new
package)
unix-2.7.2.2 (via: MissingH-1.4.0.1 Cabal-2.0.1.1 hslogger-1.2.10
streaming-commons-0.1.18 process-1.4.3.0 directory-1.3.1.5 network-2.6.3.2
system-fileio-0.3.16.3) (reinstall) (changes: time-1.8.0.2 removed)
random-1.1 (via: MissingH-1.4.0.1 streaming-commons-0.1.18) (new package)
transformers-base-0.4.4 (via: conduit-extra-1.2.2 conduit-1.2.12.1
resourcet-1.1.10 lifted-base-0.2.3.11 monad-control-1.0.2.2) (new package)
mmorph-1.1.0 (via: conduit-1.2.12.1 resourcet-1.1.10) (new package)
exceptions-0.8.3 (via: conduit-extra-1.2.2 conduit-1.2.12.1 resourcet-1.1.10)
(new package)
regex-posix-0.95.2 (via: regex-compat-0.95.1) (new package)
data-default-0.7.1.1 (via: xml-conduit-1.4.0.4) (new package)
regex-tdfa-1.2.2 (via: haskell-gi-0.20.3) (new package)
network-uri-2.6.1.0 (new package)
scientific-0.3.5.2 (via: attoparsec-0.13.2.0) (new package)
blaze-markup-0.8.0.0 (via: xml-conduit-1.4.0.4 blaze-html-0.9.0.1) (new
package)
system-fileio-0.3.16.3 (new package)
network-2.6.3.2 (via: conduit-extra-1.2.2 MissingH-1.4.0.1 hslogger-1.2.10
streaming-commons-0.1.18) (new package)
directory-1.3.1.5 (via: haskell-gi-0.20.3 haskell-gi-0.20.3
conduit-extra-1.2.2 MissingH-1.4.0.1 Cabal-2.0.1.1 hslogger-1.2.10
streaming-commons-0.1.18 process-1.4.3.0 xdg-basedir-0.2.2) (new version)
monad-control-1.0.2.2 (via: xml-conduit-1.4.0.4 conduit-extra-1.2.2
conduit-1.2.12.1 resourcet-1.1.10 lifted-base-0.2.3.11) (new package)
regex-compat-0.95.1 (via: MissingH-1.4.0.1) (new package)
attoparsec-0.13.2.0 (via: haskell-gi-0.20.3 xml-conduit-1.4.0.4
conduit-extra-1.2.2) (new package)
blaze-html-0.9.0.1 (via: xml-conduit-1.4.0.4) (new package)
xdg-basedir-0.2.2 (via: haskell-gi-0.20.3) (new package)
process-1.4.3.0 (latest: 1.6.2.0) (via: haskell-gi-0.20.3 conduit-extra-1.2.2
MissingH-1.4.0.1 Cabal-2.0.1.1 hslogger-1.2.10 streaming-commons-0.1.18
typed-process-0.2.0.0) (new version)
lifted-base-0.2.3.11 (via: conduit-1.2.12.1 resourcet-1.1.10) (new package)
typed-process-0.2.0.0 (via: conduit-extra-1.2.2) (new package)
streaming-commons-0.1.18 (via: conduit-extra-1.2.2) (new package)
hslogger-1.2.10 (via: MissingH-1.4.0.1) (new package)
Cabal-2.0.1.1 (via: gi-gtk-3.0.18 gi-gdk-3.0.14 gi-gstvideo-1.0.14
gi-gdkpixbuf-2.0.14 gi-gstbase-1.0.15 gi-atk-2.0.14 gi-gio-2.0.14
gi-gst-1.0.14 gi-pango-1.0.15 gi-gobject-2.0.15 gi-cairo-1.0.14 gi-glib-2.0.15
haskell-gi-0.20.3) (new version)
resourcet-1.1.10 (via: xml-conduit-1.4.0.4 conduit-extra-1.2.2
conduit-1.2.12.1) (new package)
MissingH-1.4.0.1 (new package)
conduit-1.2.12.1 (via: xml-conduit-1.4.0.4 conduit-extra-1.2.2) (new package)
conduit-extra-1.2.2 (via: xml-conduit-1.4.0.4) (new package)
xml-conduit-1.4.0.4 (latest: 1.7.0) (via: haskell-gi-0.20.3) (new package)
haskell-gi-0.20.3 (via: gi-gtk-3.0.18 gi-gtk-3.0.18 gi-gdk-3.0.14
gi-gdk-3.0.14 gi-gstvideo-1.0.14 gi-gstvideo-1.0.14 gi-gdkpixbuf-2.0.14
gi-gdkpixbuf-2.0.14 gi-gstbase-1.0.15 gi-gstbase-1.0.15 gi-atk-2.0.14
gi-atk-2.0.14 gi-gio-2.0.14 gi-gio-2.0.14 gi-gst-1.0.14 gi-gst-1.0.14
gi-pango-1.0.15 gi-pango-1.0.15 gi-gobject-2.0.15 gi-gobject-2.0.15
gi-cairo-1.0.14 gi-cairo-1.0.14 gi-glib-2.0.15 gi-glib-2.0.15) (new package)
gi-glib-2.0.15 (via: gi-gtk-3.0.18 gi-gdk-3.0.14 gi-gstvideo-1.0.14
gi-gdkpixbuf-2.0.14 gi-gstbase-1.0.15 gi-atk-2.0.14 gi-gio-2.0.14
gi-gst-1.0.14 gi-pango-1.0.15 gi-gobject-2.0.15) (new package)
gi-cairo-1.0.14 (via: gi-gtk-3.0.18 gi-gdk-3.0.14) (new package)
gi-gobject-2.0.15 (via: gi-gtk-3.0.18 gi-gdk-3.0.14 gi-gstvideo-1.0.14
gi-gdkpixbuf-2.0.14 gi-gstbase-1.0.15 gi-atk-2.0.14 gi-gio-2.0.14
gi-gst-1.0.14 gi-pango-1.0.15) (new package)
gi-pango-1.0.15 (via: gi-gtk-3.0.18 gi-gdk-3.0.14) (new package)
gi-gst-1.0.14 (via: gi-gstvideo-1.0.14 gi-gstbase-1.0.15) (new package)
gi-gio-2.0.14 (via: gi-gtk-3.0.18 gi-gdk-3.0.14 gi-gdkpixbuf-2.0.14) (new
package)
gi-atk-2.0.14 (via: gi-gtk-3.0.18) (new package)
gi-gstbase-1.0.15 (via: gi-gstvideo-1.0.14) (new package)
gi-gdkpixbuf-2.0.14 (via: gi-gtk-3.0.18 gi-gdk-3.0.14) (new package)
gi-gstvideo-1.0.14 (new package)
gi-gdk-3.0.14 (via: gi-gtk-3.0.18) (new package)
gi-gtk-3.0.18 (new package)
cabal: The following packages are likely to be broken by the reinstalls:
process-1.6.1.0
haskeline-0.7.4.0
ghc-8.2.2
Cabal-2.0.1.0
ghci-8.2.2
directory-1.3.0.2
hpc-0.6.0.3
ghc-boot-8.2.2
Use --force-reinstalls if you want to install anyway.
make: *** [makefile:45: cabal_install_relocatable_executable] Error 1
==> ERROR: A failure occurred in build().
    Aborting...
==> ERROR: Makepkg was unable to build movie-monad.
==> Restart building movie-monad ? [y/N]
==> ------------------------------------
==> %     

movie-monad doesn't find gst-plugins-bad

Despite having the plugins installed (version 1.16.2) i get the following error message, "gtksink" not found. No videos will show. Install the GStreamer 1.0 bad plugins version 1.8 or higher

Errors and won't play disk

When I try to play a DVD film disk I get " "gst-libav" not found. Not every file will play." I've installed everything I can think of, but aren't Flatpaks supposed to include everything necessary?

It won't allow me to select the disk, just shows me the sound file and the video file.

The Fedora Software application says "Stopped receiving updates", but that might just be Flathub being super fussy about the Flatpak Platform.

Keyboard shortcuts

Do any keyboard shortcuts exist?

If not, can we add any?
Maybe space to pause/play and something for audio volume and mute?

GLib-GIO-ERROR 'antialiasing' setting not found

(movie-monad:5927): GLib-GIO-ERROR **: 17:30:47.627: Settings schema 'org.gnome.settings-daemon.plugins.xsettings' does not contain a key named 'antialiasing'
fish: Job 1, './movie-monad-0.0.7.0-x86_64.Ap…' terminated by signal SIGTRAP (Trace or breakpoint trap)

DNxHR Support on Linux

There is no DNxHR Support.
Would be very nice if someone can implement this, FFMPEG v3 supports the new DNxHR and DNxHD formats.
So far I am only able to play them with ffplay, would be nice to have a GUI like movie-nomad.

Can't compile ghc in Ubuntu 20 LTS

Linking /tmp/stack-8e5b199576f853c6/network-2.6.3.2/.stack-work/dist/x86_64-linux-tinfo6/Cabal-1.24.2.0/setup/setup ...
/usr/bin/ld: cannot find -ltinfo
collect2: error: ld returned 1 exit status
gcc' failed in phase Linker'. (Exit code: 1)

.stack-work/install/x86_64-linux-tinfo6/lts-9.1/8.0.2/doc/haskell-gi-base-0.21.0 --haddockdir=/home/loderunner/movie-monad/.stack-work/install/x86_64-linux-tinfo6/lts-9.1/8.0.2/doc/haskell-gi-base-0.21.0 --dependency=base=base-4.9.1.0 --dependency=bytestring=bytestring-0.10.8.1 --dependency=containers=containers-0.5.7.1 --dependency=text=text-1.2.2.2-9UQZjEJZQFSGMffj1Z5g00
Process exited with code: ExitFailure 1
Logs have been written to: /home/loderunner/movie-monad/.stack-work/logs/haskell-gi-base-0.21.0.log

Configuring haskell-gi-base-0.21.0...
Cabal-simple_mPHDZzAJ_1.24.2.0_ghc-8.0.2: The pkg-config package 'gobject-2.0'
version >=2.32 is required but it could not be found.

stack exec -- movie-monad
Executable named movie-monad not found on path: ["/home/lxxxx/movie-monad/.stack-work/install/x86_64-linux-tinfo6/lts-9.1/8.0.2/bin","/home/lxxxx/.stack/snapshots/x86_64-linux-tinfo6/lts-9.1/8.0.2/bin","/home/lxxxx/.stack/compiler-tools/x86_64-linux-tinfo6/ghc-8.0.2/bin","/home/xxxx/.stack/programs/x86_64-linux/ghc-tinfo6-8.0.2/bin","/home/lxxxx/.local/bin","/usr/local/sbin","/usr/local/bin","/usr/sbin","/usr/bin","/sbin","/bin","/usr/games","/usr/local/games","/snap/bin"]

AppImage does not run out of the box

The AppImage does not run on an Ubuntu 14.04 system out of the box:

(movie-monad:4): Gtk-WARNING **: Failed to set property GtkButtonBox.layout-style to expand: Could not parse enum: `expand'
Could not create a GtkSink. Please install the bad plugins, version 1.8 or higher, for GStreamer 1.
movie-monad: Maybe.fromJust: Nothing
Parent pid 7340, child pid 7344

It would be nice if it would at least run, then show a GUI dialog instructing the user what to do. Alternatively, could attempt to bundle GStreamer and the required plugins inside the AppImage.

Reference:
https://travis-ci.org/AppImage/appimage.github.io/builds/294387373#L711-L713

macOS installation error

Getting an error about libffi.
I followed the steps in the README to install it in a MBP laptop.
After stack install, I get this error:
screen shot 2017-12-04 at 20 32 10

As you can see, brew says libffi is installed, but stack disagrees.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.