A Haskell FFI binding to xine-lib
Haskell Shell C
Switch branches/tags
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Xine
cbits
git_hooks
util
.gitignore
COPYING
NEWS
README.md
Setup.lhs
Xine.hs
load
xine.cabal

README.md

About

A Haskell FFI binding to xine-lib, a multimedia playback engine.

Getting

  • git clone git://github.com/joachifm/hxine.git

Dependencies

Building

Using cabal-install, do

cd hxine
cabal install

Usage

To play an audio file, simply do:

> import qualified Xine
> main = do
>     h <- Xine.open
>     sid <- Xine.openStream h "track.ogg"
>     Xine.play h sid

Note that Xine defaults to auto-detecting audio and video drivers.

To configure xine before using it, for example to play video files (note, this doesn't work), use openWith and supply a XineConf value:

> import qualified Xine
> main = do
>     h <- Xine.openWith defaultConf { visualType = X11 }
>     sid <- Xine.openStream h "video.ogm"
>     Xine.play h sid

See the API documentation (produced by cabal haddock) for more information.

If you wish to implement your own higher-level interface to xine-lib, you may use the low-level FFI binding by

> import Xine.Foreign

Resources

Bugs and deficiencies

  • The binding doesn't yet support video playback.

Author

Joachim Fasting <joachim.fasting@gmail.com>

Licence

LGPL version 2.1 (see COPYING in the source distribution)