An open API service indexing awesome lists of open source software.

https://github.com/certik/python-theora


https://github.com/certik/python-theora

Last synced: 11 months ago
JSON representation

Awesome Lists containing this project

README

          

python-theora
-------------

Python wrappers for libtheora.

webpage: http://certik.github.com/python-theora

Installation
------------

Download libtheora-1.0 from: http://www.theora.org/downloads/, install into
$PREFIX and set PKG_CONFIG_PATH to point to $PREFIX/lib/pkgconfig.

E.g. assuming you'll install to ~/usr, do:

wget http://downloads.xiph.org/releases/theora/libtheora-1.0.tar.bz2
tar xjf libtheora-1.0.tar.bz2
cd libtheora-1.0
./configure --prefix=$HOME/usr
make
make install

and then cd to the python-theora directory and just do:

export PKG_CONFIG_PATH=~/usr/lib/pkgconfig
./setup.py install --home=~/usr

Documentation
-------------

To build the documentation, use:

$ ./setup.py build_ext --inplace
$ cd doc
$ make html

To upload to github, use:

$ cd _build/html
$ sphinx-to-github
Processing matches for: _sources
Processing matches for: _static
$ cd ../../..
$ git co -b gh-pages
$ cp -r doc/_build/html/* .
$ git co -a -m "docs updated"

Usage
-----

In [1]: import theora

In [2]: help(theora)

And read the help for the Theora class.

Development
-----------

Rule: every single method, property and class exposed to the user (e.g. the
"def" ones in Cython, not the "cdef" ones) *must* have a docstring and at least
one doctest showing the usage to the user. More thorough regression testing is
then done using regular tests in the tests directory. Of course all tests and
all doctests must pass all the time, see below how to run tests:

Download test video files:

$ tests/download_test_vidos.sh

Compile inplace:

$ ./setup.py build_ext --inplace

Run tests:

$ ./setup.py test

This runs all regular tests in the test directory and all doctests.