• Christophe Massiot's avatar
    Major overhaul to support a new input/output format: directories with · 7aa24e77
    Christophe Massiot authored
    round-robin recording of chunks with seemless transition.
    
     * util.c: New set of clock functions to access the real time clock;
     * util.c: Split OpenFile and OpenAuxFile into several helper functions;
     * util.c: New function LookupAuxFile to find a position in an aux file;
     * util.c: New set of functions for directory input/output;
     * util.h: Fix a bug in the RTP header size calculation;
     * offsets.c: Moved functionality to multicat (util.c); offsets is still
       supported with the same scope, but is deprecated;
     * ingests.c: Reflect util.c API changes;
     * multicat.c: Modular input/output init functions;
     * multicat.c: Use poll() so that signals and duration option (-d) be taken
       into account even in the absence of an input stream;
     * multicat.c: New functions for directory output;
     * multicat.c: New options -k (initial seek into file or dir, possibly
       negative for 'NOW - value'), -r (round-robin chunk size of directory
       input/output) and -f (output packets as fast as possible without
       sleeping).
    
    Typical usage for record:
    $ mkdir test
    $ multicat @239.255.255.255:5004 test &
    
    For playout with one-minute timeshift:
    $ multicat -k -$((27000000*60)) test 239.255.255.254:5004
    
    Please note that expiration is not performed by multicat.
    7aa24e77
multicat.c 24.7 KB