Skip to main content

Muxing archived media (and more!).

Project description

https://travis-ci.org/mayfieldrobotics/marm.svg https://coveralls.io/repos/mayfieldrobotics/marm/badge.svg?branch=master&service=github https://img.shields.io/pypi/v/marm.svg

Supports windowed/resumable transcoding of recorded media codec packets by:

  • Reading stored/archived media packets (e.g. pcap’d rtp)
  • Reconstructs media frames (e.g. depacketized encoded frame fragmented by network protocol)
  • Synchronizing frame streams (e.g. paired audio and video)
  • Muxing frame stream(s) to a container (e.g. mkv file) using libav*
  • Detecting stitching information used to seamlessly resume transcoding

deps

Install devel libav*, e.g.:

git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
./configure\
 --enable-gpl\
 --enable-version3\
 --enable-nonfree\
 --enable-gpl\
 --enable-libass\
 --enable-libfaac\
 --enable-libfdk-aac\
 --enable-libmp3lame\
 --enable-libopus\
 --enable-libtheora\
 --enable-libvorbis\
 --enable-libvpx\
 --enable-libx264
make
sudo make install

and libpcap, e.g.:

sudo apt-get install libpcap-dev

if you need them.

install

If you just want to use it:

pip install marm

but if you are developing then get it:

git clone git@github.com:mayfieldrobotics/marm.git ~/code/marm
cd ~/code/marm

create a venv:

mkvirtualenv marm
workon marm
pip install Cython
pip install -e .[test]

and test it:

py.test test/ --cov marm --cov-report term-missing --pep8

docs

todo

release

Tests pass:

py.test test/ --cov marm --cov-report term-missing --pep8

so update __version__ in marm/__init__.py. Commit and tag it:

git commit -am "release v{version}"
git tag -a v{version} -m "release v{version}"
git push --tags

and travis will publish it to pypi.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
marm-0.2.0.tar.gz (117.4 kB) Copy SHA256 hash SHA256 Source None Dec 10, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page