DOKK / manpages / debian 12 / tstools / esfilter.1.en
ESFILTER(1) General Commands Manual ESFILTER(1)

esfilterOutput a filtered or truncated version of an elementary stream

esfilter -copy | -filter | -strip [-err stdout] [-err stderr] [-verbose | -v] [-quiet | -q] [-host dest_ip[:port]] [-max max_frames | -m max_frames] [-freq keep_frequency] [-allref] [-tsout] [-pes | -ts] [-h264 | -avc | -h262] in_file | -stdin out_file | -stdout

Output a filtered or truncated version of an elementary stream. The input is either H.264 (MPEG-4/AVC) or H.262 (MPEG-2). The output is either an elementary stream, or an H.222 transport stream

If output is to an H.222 Transport Stream, then fixed values for the PMT PID (0x66) and video PID (0x68) are used.

in_file
is the input elementary stream (but see -stdin below).
out_file
is the output stream, either an equivalent elementary stream, or an H.222 Transport Stream (but see -stdout and -host below).

Copy the input data to the output file (mostly useful as a way of truncating data with -max)
Filter data from input to output, aiming to keep every keep_frequencyth frame (where keep_frequency is specified by -freq).
For H.264, output just the IDR and I pictures, for H.262, output just the I pictures, but see -allref below.

Write error messages to standard output (the default)
Write error messages to standard error (Unix traditional)
Input from standard input, instead of a file
, -verbose
Output extra information about packets
, -quiet
Only output error messages
dest_ip[:port]
Writes output (over TCP/IP) to the named host, instead of to a named file. If port is not specified, it defaults to 88. Implies -tsout.
max_frames, -m max_frames
Maximum number of frames to read (for -filter and -strip), or ES units/NAL units (for -copy).
keep_frequency
Specify the frequency of frames to try to keep with -filter. Defaults to 8.
With -strip, keep all reference pictures (H.264) or all I and P pictures (H.262)
Output data as Transport Stream PES packets (the default is as Elementary Stream)
, -ts
The input file is TS or PS, to be read via the PES->ES reading mechanisms. Not allowed with -stdin.

If input is from a file, then the program will look at the start of the file to determine if the stream is H.264 or H.262 data. This process may occasionally come to the wrong conclusion, in which case the user can override the choice using the following switches.

If input is from standard input (via -stdin), then it is not possible for the program to make its own decision on the input stream type. Instead, it defaults to H.262, and relies on the user indicating if this is wrong.

, -avc
Force the program to treat the input as MPEG-4/AVC.
Force the program to treat the input as MPEG-2.

esdots(1),

October 28, 2015 Debian