Metadata-Version: 2.0
Name: hls2dash
Version: 0.2.1
Summary: Command line tools for HLS to MPEG DASH repackaging
Home-page: https://github.com/Eyevinn/hls-to-dash
Author: Jonas Birme
Author-email: jonas.birme@eyevinn.se
License: MIT
Platform: UNKNOWN
Requires-Dist: ffprobe (>=0.5)
Requires-Dist: m3u8 (>=0.2.10)
Requires-Dist: pycurl

Description
===========

This is an open source video streaming packager and toolkit to rewrap
live HLS streams to live MPEG DASH streams.

Features
--------

-  Generate single period MPEG DASH for live based on an HLS live stream
-  Generate multi period MPEG DASH for live based on an HLS live stream
   with SCTE35 splicing
-  Rewrap MPEG2 TS segment to fragmented MP4

Usage
=====

Install
-------

Installation from Python package index:

::

     pip install hls2dash

Installation from source:

::

     python setup.py install

Running
-------

Generate Single period MPEG DASH:

::

     hls-to-dash http://example.com/master.m3u8 > stream.mpd

Generate Multi period MPEG DASH:

::

     hls-to-dash http://example.com/master.m3u8 --multi > stream.mpd

Rewrap MPEG2 TS segment to fragmented MP4

::

     ts-to-fmp4 master2500_19274.ts 2500_19274.dash

or when TS segment is on a remote server

::

     ts-to-fmp4 http://example.com/master2500_19274.ts 2500_19274.dash

Help
====

hls-to-dash
-----------

::

    usage: hls-to-dash [-h] [--multi] [--ctx CTX] [--ctxdir CTXDIR] [--debug]
                       PLAYLIST

    Generate single and multi period MPEG DASH manifest from a live HLS source.
    Writes MPEG DASH manifest to stdout.

    Currently assumes that HLS variant is named as 'master[PROFILE].m3u8'
      master2500.m3u8, master1500.m3u8
    and that the segments are named as 'master[PROFILE]_[SEGNO].ts'
      master2500_34202.ts, master1500_34202.ts

    positional arguments:
      PLAYLIST         Path to HLS playlist file. Can be a URI or local file.

    optional arguments:
      -h, --help       show this help message and exit
      --multi          Generate multi period MPEG DASH on EXT-X-CUE markers in HLS
      --ctx CTX        Name of DASH session file
      --ctxdir CTXDIR  Where to store DASH session file. Defaults to /tmp/
      --debug          Write debug info to stderr

ts-to-fmp4
----------

::

    usage: ts-to-fmp4 [-h] [--outdir OUTDIR] [--debug] TSFILE OUTPUT

    Rewrap a MPEG2 TS segment to a fragmented MP4

    positional arguments:
      TSFILE           Path to TS file. Can be a URI or local file.
      OUTPUT           Output file name

    optional arguments:
      -h, --help       show this help message and exit
      --outdir OUTDIR  Directory where the fragmented MP4 will be stored. Default is current directory
      --debug          Write debug info to stderr



