summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--multimedia/tstools/README17
-rw-r--r--multimedia/tstools/man/es2ts.1169
-rw-r--r--multimedia/tstools/man/esdots.1144
-rw-r--r--multimedia/tstools/man/esfilter.1189
-rw-r--r--multimedia/tstools/man/esmerge.1160
-rw-r--r--multimedia/tstools/man/esreport.1185
-rw-r--r--multimedia/tstools/man/esreverse.1147
-rw-r--r--multimedia/tstools/man/m2ts2ts.166
-rw-r--r--multimedia/tstools/man/pcapreport.179
-rw-r--r--multimedia/tstools/man/ps2ts.1303
-rw-r--r--multimedia/tstools/man/psdots.153
-rw-r--r--multimedia/tstools/man/psreport.169
-rw-r--r--multimedia/tstools/man/stream_type.1105
-rw-r--r--multimedia/tstools/man/ts2es.1109
-rw-r--r--multimedia/tstools/man/ts_packet_insert.177
-rw-r--r--multimedia/tstools/man/tsinfo.156
-rw-r--r--multimedia/tstools/man/tsplay.169
-rw-r--r--multimedia/tstools/man/tsreport.1212
-rw-r--r--multimedia/tstools/man/tsserve.1156
-rw-r--r--multimedia/tstools/slack-desc19
-rw-r--r--multimedia/tstools/tstools.SlackBuild96
-rw-r--r--multimedia/tstools/tstools.info10
22 files changed, 2490 insertions, 0 deletions
diff --git a/multimedia/tstools/README b/multimedia/tstools/README
new file mode 100644
index 0000000000..bbfee693d2
--- /dev/null
+++ b/multimedia/tstools/README
@@ -0,0 +1,17 @@
+TStools (Command line tools for working with MPEG data)
+
+TStools are relatively simple tools which concentrate on MPEG (H.264 and H.262)
+data packaged according to H.222 (i.e., TS or PS), with a particular interest in
+checking for conformance.
+
+Transport Stream (TS) is typically used for distribution of cable and satellite
+data. Program Stream (PS) is typically used to store data on DVDs.
+
+The tools are focussed on:
+
+ * Quick reporting of useful data (tsinfo, stream_type)
+ * Giving a quick overview of the entities in the stream (esdots, psdots)
+ * Reporting on TS packets (tsreport) or ES units/frames/fields (esreport)
+ * Simple manipulation of stream data (es2ts, esfilter, esreverse, esmerge,
+ ts2es)
+ * Streaming of data, possibly with introduced errors (tsplay)
diff --git a/multimedia/tstools/man/es2ts.1 b/multimedia/tstools/man/es2ts.1
new file mode 100644
index 0000000000..9fa229d9d2
--- /dev/null
+++ b/multimedia/tstools/man/es2ts.1
@@ -0,0 +1,169 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH ES2TS "1" "November 2008" "es2ts 1.11" "User Commands"
+.SH NAME
+es2ts \- convert ES to TS
+.SH SYNOPSIS
+.B es2ts
+[\fIswitches\fR] \fI<infile>\fR \fI<outfile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, es2ts built Nov 11 2008 17:15:46
+.IP
+Convert an elementary video stream to H.222 transport stream.
+Supports input streams conforming to MPEG\-2 (H.262), MPEG\-4/AVC
+(H.264) and AVS. Also supports MPEG\-1 input streams, insofar as MPEG\-2
+is backwards compatible with MPEG\-1.
+.IP
+Note that this program works by reading and packaging the elementary
+stream packages directly \- it does not parse them as H.262 or H.264
+data.
+.SS "Files:"
+.TP
+<infile>
+is a file containing the Elementary Stream data
+(but see \fB\-stdin\fR below)
+.TP
+<outfile>
+is an H.222 Transport Stream file
+(but see \fB\-stdout\fR and \fB\-host\fR below)
+.SS "Switches:"
+.TP
+\fB\-pid\fR <pid>
+<pid> is the video PID to use for the data.
+Use '\-pid 0x<pid>' to specify a hex value.
+Defaults to 0x68.
+.TP
+\fB\-pmt\fR <pid>
+<pid> is the PMT PID to use.
+Use '\-pmt 0x<pid>' to specify a hex value.
+Defaults to 0x66
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output summary information about each ES packet
+as it is read
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-stdout\fR
+Write output to <stdout>, instead of a named file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-host\fR <host>, \fB\-host\fR <host>:<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.
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of ES data units to read
+.SS "Stream type:"
+.IP
+When the TS data is being output, it is flagged to indicate whether
+it conforms to H.262, H.264 or AVS. It is important to get this right,
+as it will affect interpretation of the TS data.
+.IP
+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, H.262 or AVS. This
+process may occasionally come to the wrong conclusion, in which case
+the user can override the choice using the following switches.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.TP
+\fB\-avs\fR
+Force the program to treat the input as AVS.
+.IP
+TS tools version 1.11, es2ts built Nov 11 2008 17:15:46
+.IP
+Convert an elementary video stream to H.222 transport stream.
+Supports input streams conforming to MPEG\-2 (H.262), MPEG\-4/AVC
+(H.264) and AVS. Also supports MPEG\-1 input streams, insofar as MPEG\-2
+is backwards compatible with MPEG\-1.
+.IP
+Note that this program works by reading and packaging the elementary
+stream packages directly \- it does not parse them as H.262 or H.264
+data.
+.SS "Files:"
+.TP
+<infile>
+is a file containing the Elementary Stream data
+(but see \fB\-stdin\fR below)
+.TP
+<outfile>
+is an H.222 Transport Stream file
+(but see \fB\-stdout\fR and \fB\-host\fR below)
+.SS "Switches:"
+.TP
+\fB\-pid\fR <pid>
+<pid> is the video PID to use for the data.
+Use '\-pid 0x<pid>' to specify a hex value.
+Defaults to 0x68.
+.TP
+\fB\-pmt\fR <pid>
+<pid> is the PMT PID to use.
+Use '\-pmt 0x<pid>' to specify a hex value.
+Defaults to 0x66
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output summary information about each ES packet
+as it is read
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-stdout\fR
+Write output to <stdout>, instead of a named file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-host\fR <host>, \fB\-host\fR <host>:<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.
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of ES data units to read
+.SS "Stream type:"
+.IP
+When the TS data is being output, it is flagged to indicate whether
+it conforms to H.262, H.264 or AVS. It is important to get this right,
+as it will affect interpretation of the TS data.
+.IP
+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, H.262 or AVS. This
+process may occasionally come to the wrong conclusion, in which case
+the user can override the choice using the following switches.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.TP
+\fB\-avs\fR
+Force the program to treat the input as AVS.
+.SH "SEE ALSO"
+
+The full documentation for
+.B es2ts
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
diff --git a/multimedia/tstools/man/esdots.1 b/multimedia/tstools/man/esdots.1
new file mode 100644
index 0000000000..7d5518597a
--- /dev/null
+++ b/multimedia/tstools/man/esdots.1
@@ -0,0 +1,144 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH ESDOTS: "1" "November 2008" "esdots 1.11" "User Commands"
+.SH NAME
+esdots \- Analyze the video items contained in an elementary stream
+.SH SYNOPSIS
+.B esdots
+[\fIswitches\fR] \fI<infile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, esdots built Nov 11 2008 17:15:46
+.IP
+Present the content of an H.264 (MPEG\-4/AVC), H.262 (MPEG\-2) or AVS
+elementary stream as a sequence of characters, representing access
+units/MPEG\-2 items/AVS items.
+(Note that for H.264 it is access units and not frames that are
+represented, and for H.262 it is items and not pictures.)
+.SS "Files:"
+.TP
+<infile>
+is the Elementary Stream file (but see \fB\-stdin\fR below)
+.SS "Switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Preface the output with an explanation of the
+characters being used.
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of entities to read
+.TP
+\fB\-pes\fR, \fB\-ts\fR
+The input file is TS or PS, to be read via the
+PES\->ES reading mechanisms
+.TP
+\fB\-hasheos\fR
+Print a # on finding an EOS (end\-of\-stream) NAL unit
+rather than stopping (only applies to H.264)
+.TP
+\fB\-es\fR
+Report ES units, rather than any 'higher' unit
+(not necessarily suppported for all file types)
+.TP
+\fB\-gop\fR
+Show the duration of each GOP (for MPEG\-2 steams)
+OR the distance between random access points (H.264)
+.TP
+\fB\-fr\fR
+Set the video frame rate (default = 25 fps)
+.SS "Stream type:"
+.IP
+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.
+.IP
+For AVS data, the program will never guess correctly, so the user must
+specify the file type, using \fB\-avs\fR.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.TP
+\fB\-avs\fR
+Force the program to treat the input as AVS.
+.IP
+TS tools version 1.11, esdots built Nov 11 2008 17:15:46
+.IP
+Present the content of an H.264 (MPEG\-4/AVC), H.262 (MPEG\-2) or AVS
+elementary stream as a sequence of characters, representing access
+units/MPEG\-2 items/AVS items.
+.IP
+(Note that for H.264 it is access units and not frames that are
+represented, and for H.262 it is items and not pictures.)
+.SS "Files:"
+.TP
+<infile>
+is the Elementary Stream file (but see \fB\-stdin\fR below)
+.SS "Switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Preface the output with an explanation of the
+characters being used.
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of entities to read
+.TP
+\fB\-pes\fR, \fB\-ts\fR
+The input file is TS or PS, to be read via the
+PES\->ES reading mechanisms
+.TP
+\fB\-hasheos\fR
+Print a # on finding an EOS (end\-of\-stream) NAL unit
+rather than stopping (only applies to H.264)
+.TP
+\fB\-es\fR
+Report ES units, rather than any 'higher' unit
+(not necessarily suppported for all file types)
+.TP
+\fB\-gop\fR
+Show the duration of each GOP (for MPEG\-2 steams)
+OR the distance between random access points (H.264)
+.TP
+\fB\-fr\fR
+Set the video frame rate (default = 25 fps)
+.SS "Stream type:"
+.IP
+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.
+.IP
+For AVS data, the program will never guess correctly, so the user must
+specify the file type, using \fB\-avs\fR.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.TP
+\fB\-avs\fR
+Force the program to treat the input as AVS.
+.SH "SEE ALSO"
+The full documentation for
+.B esdots
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
diff --git a/multimedia/tstools/man/esfilter.1 b/multimedia/tstools/man/esfilter.1
new file mode 100644
index 0000000000..2909410f72
--- /dev/null
+++ b/multimedia/tstools/man/esfilter.1
@@ -0,0 +1,189 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH ESFILTER: "1" "November 2008" "esfilter 1.11" "User Commands"
+.SH NAME
+esfilter \- Output a filtered or truncated version of a ES
+.SH SYNOPSIS
+.B esfilter
+[\fIactions/switches\fR] \fI<infile>\fR \fI<outfile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, esfilter built Nov 11 2008 17:15:39
+.IP
+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
+.IP
+If output is to an H.222 Transport Stream, then fixed values for
+the PMT PID (0x66) and video PID (0x68) are used.
+.SS "Files:"
+.TP
+<infile>
+is the input elementary stream (but see \fB\-stdin\fR below).
+.IP
+<outfile> is the output stream, either an equivalent elementary
+.IP
+stream, or an H.222 Transport Stream (but see \fB\-stdout\fR
+and \fB\-host\fR below).
+.SS "Actions:"
+.TP
+\fB\-copy\fR
+Copy the input data to the output file
+(mostly useful as a way of truncating data with \fB\-max\fR)
+.TP
+\fB\-filter\fR
+Filter data from input to output, aiming to keep every
+<n>th frame (where <n> is specified by \fB\-freq\fR).
+.TP
+\fB\-strip\fR
+For H.264, output just the IDR and I pictures, for H.262,
+output just the I pictures, but see \fB\-allref\fR below.
+.SS "Switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output extra (debugging) messages
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-stdout\fR
+Write output to <stdout>, instead of a named file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-host\fR <host>, \fB\-host\fR <host>:<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 \fB\-tsout\fR.
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of frames to read (for \fB\-filter\fR
+and \fB\-strip\fR), or ES units/NAL units (for \fB\-copy\fR).
+.TP
+\fB\-freq\fR <n>
+Specify the frequency of frames to try to keep
+with \fB\-filter\fR. Defaults to 8.
+.TP
+\fB\-allref\fR
+With \fB\-strip\fR, keep all reference pictures (H.264)
+or all I and P pictures (H.262)
+.TP
+\fB\-tsout\fR
+Output data as Transport Stream PES packets
+(the default is as Elementary Stream)
+.TP
+\fB\-pes\fR, \fB\-ts\fR
+The input file is TS or PS, to be read via the
+PES\->ES reading mechanisms. Not allowed with \fB\-stdin\fR.
+.SS "Stream type:"
+.IP
+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.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.IP
+TS tools version 1.11, esfilter built Nov 11 2008 17:15:39
+.IP
+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
+.IP
+If output is to an H.222 Transport Stream, then fixed values for
+the PMT PID (0x66) and video PID (0x68) are used.
+.SS "Files:"
+.TP
+<infile>
+is the input elementary stream (but see \fB\-stdin\fR below).
+.IP
+<outfile> is the output stream, either an equivalent elementary
+.IP
+stream, or an H.222 Transport Stream (but see \fB\-stdout\fR
+and \fB\-host\fR below).
+.SS "Actions:"
+.TP
+\fB\-copy\fR
+Copy the input data to the output file
+(mostly useful as a way of truncating data with \fB\-max\fR)
+.TP
+\fB\-filter\fR
+Filter data from input to output, aiming to keep every
+<n>th frame (where <n> is specified by \fB\-freq\fR).
+.TP
+\fB\-strip\fR
+For H.264, output just the IDR and I pictures, for H.262,
+output just the I pictures, but see \fB\-allref\fR below.
+.SS "Switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output extra (debugging) messages
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-stdout\fR
+Write output to <stdout>, instead of a named file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-host\fR <host>, \fB\-host\fR <host>:<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 \fB\-tsout\fR.
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of frames to read (for \fB\-filter\fR
+and \fB\-strip\fR), or ES units/NAL units (for \fB\-copy\fR).
+.TP
+\fB\-freq\fR <n>
+Specify the frequency of frames to try to keep
+with \fB\-filter\fR. Defaults to 8.
+.TP
+\fB\-allref\fR
+With \fB\-strip\fR, keep all reference pictures (H.264)
+or all I and P pictures (H.262)
+.TP
+\fB\-tsout\fR
+Output data as Transport Stream PES packets
+(the default is as Elementary Stream)
+.TP
+\fB\-pes\fR, \fB\-ts\fR
+The input file is TS or PS, to be read via the
+PES\->ES reading mechanisms. Not allowed with \fB\-stdin\fR.
+.SS "Stream type:"
+.IP
+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.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.SH "SEE ALSO"
+The full documentation for
+.B esfilter
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
diff --git a/multimedia/tstools/man/esmerge.1 b/multimedia/tstools/man/esmerge.1
new file mode 100644
index 0000000000..6fa50cd029
--- /dev/null
+++ b/multimedia/tstools/man/esmerge.1
@@ -0,0 +1,160 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH ESMERGE "1" "November 2008" "esmerge 1.11" "User Commands"
+.SH NAME
+esmerge \- merge audio and video ES into a TS
+.SH DESCRIPTION
+.SS "Usage:"
+.IP
+esmerge [\fIswitches\fR] \fI<video\-file>\fR \fI<audio\-file>\fR \fI<output\-file>\fR
+.IP
+TS tools version 1.11, esmerge built Nov 11 2008 17:15:46
+.IP
+Merge the contents of two Elementary Stream (ES) files, one containing
+video data, and the other audio, to produce an output file containing
+Transport Stream (TS).
+.SS "Files:"
+.TP
+<video\-file>
+is the ES file containing video.
+.TP
+<audio\-file>
+is the ES file containing audio.
+.IP
+<output\-file> is the resultant TS file.
+.SS "Switches:"
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages.
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output information about each audio/video frame.
+.TP
+\fB\-x\fR
+Output diagnostic information.
+.TP
+\fB\-h264\fR
+The video stream is H.264 (the default)
+.TP
+\fB\-avs\fR
+The video stream is AVS
+.TP
+\fB\-vidrate\fR <hz>
+Video frame rate in Hz \- defaults to 25Hz.
+.TP
+\fB\-rate\fR <hz>
+Audio sample rate in Hertz \- defaults to 44100, i.e., 44.1KHz.
+.TP
+\fB\-cd\fR
+Equivalent to \fB\-rate\fR 44100 (CD rate), the default.
+.TP
+\fB\-dat\fR
+Equivalent to \fB\-rate\fR 48000 (DAT rate).
+.TP
+\fB\-adts\fR
+The audio stream is ADTS (the default)
+.TP
+\fB\-l2\fR
+The audio stream is MPEG layer 2 audio
+.TP
+\fB\-mp2adts\fR
+The audio stream is MPEG\-2 style ADTS regardless of ID bit
+.TP
+\fB\-mp4adts\fR
+The audio stream is MPEG\-4 style ADTS regardless of ID bit
+.TP
+\fB\-ac3\fR
+The audio stream is Dolby AC\-3 in ATSC
+.TP
+\fB\-patpmtfreq\fR <f>
+PAT and PMT will be inserted every <f> video frames.
+by default, f = 0 and PAT/PMT are inserted only at
+the start of the output stream.
+.PP
+Limitations
+===========
+For the moment, the video input must be H.264 or AVS, and the audio input
+ADTS, AC\-3 ATSC or MPEG layer 2. Also, the audio is assumed to have a
+constant number of samples per frame.
+.IP
+esmerge <video\-file> <audio\-file> <output\-file>
+.IP
+TS tools version 1.11, esmerge built Nov 11 2008 17:15:46
+.IP
+Merge the contents of two Elementary Stream (ES) files, one containing
+video data, and the other audio, to produce an output file containing
+Transport Stream (TS).
+.SS "Files:"
+.TP
+<video\-file>
+is the ES file containing video.
+.TP
+<audio\-file>
+is the ES file containing audio.
+.IP
+<output\-file> is the resultant TS file.
+.SS "Switches:"
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages.
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output information about each audio/video frame.
+.TP
+\fB\-x\fR
+Output diagnostic information.
+.TP
+\fB\-h264\fR
+The video stream is H.264 (the default)
+.TP
+\fB\-avs\fR
+The video stream is AVS
+.TP
+\fB\-vidrate\fR <hz>
+Video frame rate in Hz \- defaults to 25Hz.
+.TP
+\fB\-rate\fR <hz>
+Audio sample rate in Hertz \- defaults to 44100, i.e., 44.1KHz.
+.TP
+\fB\-cd\fR
+Equivalent to \fB\-rate\fR 44100 (CD rate), the default.
+.TP
+\fB\-dat\fR
+Equivalent to \fB\-rate\fR 48000 (DAT rate).
+.TP
+\fB\-adts\fR
+The audio stream is ADTS (the default)
+.TP
+\fB\-l2\fR
+The audio stream is MPEG layer 2 audio
+.TP
+\fB\-mp2adts\fR
+The audio stream is MPEG\-2 style ADTS regardless of ID bit
+.TP
+\fB\-mp4adts\fR
+The audio stream is MPEG\-4 style ADTS regardless of ID bit
+.TP
+\fB\-ac3\fR
+The audio stream is Dolby AC\-3 in ATSC
+.TP
+\fB\-patpmtfreq\fR <f>
+PAT and PMT will be inserted every <f> video frames.
+by default, f = 0 and PAT/PMT are inserted only at
+the start of the output stream.
+.PP
+Limitations
+===========
+For the moment, the video input must be H.264 or AVS, and the audio input
+ADTS, AC\-3 ATSC or MPEG layer 2. Also, the audio is assumed to have a
+constant number of samples per frame.
+.SH "SEE ALSO"
+The full documentation for
+.B esmerge
+is maintained as a Texinfo manual. If the
+.B info
+and
+.B esmerge
+programs are properly installed at your site, the command
+.IP
+.B info esmerge
+.PP
+should give you access to the complete manual.
diff --git a/multimedia/tstools/man/esreport.1 b/multimedia/tstools/man/esreport.1
new file mode 100644
index 0000000000..8f14ebcade
--- /dev/null
+++ b/multimedia/tstools/man/esreport.1
@@ -0,0 +1,185 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH ESREPORT: "1" "November 2008" "esreport 1.11" "User Commands"
+.SH NAME
+esreport \- Report the content of a video ES
+.SH SYNOPSIS
+.B esreport
+[\fIswitches\fR] \fI<infile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, esreport built Nov 11 2008 17:15:46
+.IP
+Report on the content of an elementary stream containing H.264
+(MPEG\-4/AVC), H.262 (MPEG\-2) or AVS video data.
+.SS "Files:"
+.TP
+<infile>
+is the Elementary Stream file (but see \fB\-stdin\fR below)
+.SS "What to report:"
+.IP
+The default is to report on H.262 items, AVS frames or H.264 NAL units.
+Other choices are:
+.TP
+\fB\-frames\fR
+Report by frames. The default for AVS.
+.TP
+\fB\-findfields\fR
+Report on any fields in the data. Ignored for AVS.
+.TP
+\fB\-afd\fR
+Report (just) on AFD changes in H.262. Ignored for the
+other types of file.
+.TP
+\fB\-es\fR
+Report on ES units.
+.IP
+Reporting on frames may be modified by:
+.TP
+\fB\-framesize\fR
+Report on the sizes of frames (mean, etc.).
+.TP
+\fB\-frametype\fR
+Report on the numbers of different type of frame.
+.IP
+(in fact, both of these imply \fB\-frame\fR).
+.SS "Other switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+For H.262 data, output information about the data
+in each MPEG\-2 item. For ES units, output information
+about the data in each ES unit. Ignored for H.264 data.
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output summary information (i.e., the number
+of entities in the file, statistics, etc.)
+.TP
+\fB\-x\fR
+Show details of each NAL unit as it is read.
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of NAL units/MPEG\-2 items/AVS frames/ES units
+to read. If \fB\-frames\fR, then the program will stop after
+that many frames. If reading 'frames', MPEG\-2 and AVS will
+also count sequence headers and sequence end.
+.TP
+\fB\-pes\fR, \fB\-ts\fR
+The input file is TS or PS, to be read via the
+PES\->ES reading mechanisms
+.TP
+\fB\-pesreport\fR
+Report on PES headers. Implies \fB\-pes\fR and \fB\-q\fR.
+.SS "Stream type:"
+.IP
+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, H.262 or AVS data. This
+process may occasionally come to the wrong conclusion, in which case
+the user can override the choice using the following switches.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.TP
+\fB\-avs\fR
+Force the program to treat the input as AVS.
+.IP
+TS tools version 1.11, esreport built Nov 11 2008 17:15:46
+.IP
+Report on the content of an elementary stream containing H.264
+(MPEG\-4/AVC), H.262 (MPEG\-2) or AVS video data.
+.SS "Files:"
+.TP
+<infile>
+is the Elementary Stream file (but see \fB\-stdin\fR below)
+.SS "What to report:"
+.IP
+The default is to report on H.262 items, AVS frames or H.264 NAL units.
+Other choices are:
+.TP
+\fB\-frames\fR
+Report by frames. The default for AVS.
+.TP
+\fB\-findfields\fR
+Report on any fields in the data. Ignored for AVS.
+.TP
+\fB\-afd\fR
+Report (just) on AFD changes in H.262. Ignored for the
+other types of file.
+.TP
+\fB\-es\fR
+Report on ES units.
+.IP
+Reporting on frames may be modified by:
+.TP
+\fB\-framesize\fR
+Report on the sizes of frames (mean, etc.).
+.TP
+\fB\-frametype\fR
+Report on the numbers of different type of frame.
+.IP
+(in fact, both of these imply \fB\-frame\fR).
+.SS "Other switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+For H.262 data, output information about the data
+in each MPEG\-2 item. For ES units, output information
+about the data in each ES unit. Ignored for H.264 data.
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output summary information (i.e., the number
+of entities in the file, statistics, etc.)
+.TP
+\fB\-x\fR
+Show details of each NAL unit as it is read.
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of NAL units/MPEG\-2 items/AVS frames/ES units
+to read. If \fB\-frames\fR, then the program will stop after
+that many frames. If reading 'frames', MPEG\-2 and AVS will
+also count sequence headers and sequence end.
+.TP
+\fB\-pes\fR, \fB\-ts\fR
+The input file is TS or PS, to be read via the
+PES\->ES reading mechanisms
+.TP
+\fB\-pesreport\fR
+Report on PES headers. Implies \fB\-pes\fR and \fB\-q\fR.
+.SS "Stream type:"
+.IP
+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, H.262 or AVS data. This
+process may occasionally come to the wrong conclusion, in which case
+the user can override the choice using the following switches.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.TP
+\fB\-avs\fR
+Force the program to treat the input as AVS.
+.SH "SEE ALSO"
+The full documentation for
+.B esreport
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/esreverse.1 b/multimedia/tstools/man/esreverse.1
new file mode 100644
index 0000000000..ac5e3b7a15
--- /dev/null
+++ b/multimedia/tstools/man/esreverse.1
@@ -0,0 +1,147 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH ESREVERSE: "1" "November 2008" "esreverse 1.11" "User Commands"
+.SH NAME
+esreverse \- reverse an es stream
+.SH SYNOPSIS
+.B esreverse
+[\fIswitches\fR] \fI<infile>\fR \fI<outfile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, esreverse built Nov 11 2008 17:15:47
+.IP
+Output a reversed stream derived from the input H.264 (MPEG\-4/AVC)
+or H.262 (MPEG\-2) elementary stream.
+.IP
+If output is to an H.222 Transport Stream, then fixed values for
+the PMT PID (0x66) and video PID (0x68) are used.
+.SS "Files:"
+.TP
+<infile>
+is the input elementary stream.
+.IP
+<outfile> is the output stream, either an equivalent elementary
+.IP
+stream, or an H.222 Transport Stream (but see \fB\-stdout\fR
+and \fB\-host\fR below).
+.SS "Switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output additional (debugging) messages
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-stdout\fR
+Write output to <stdout>, instead of a named file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-host\fR <host>, \fB\-host\fR <host>:<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 \fB\-tsout\fR.
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of frames to read
+.TP
+\fB\-freq\fR <n>
+Specify the frequency of frames to try to keep
+when reversing. Defaults to 8.
+.TP
+\fB\-tsout\fR
+Output H.222 Transport Stream
+.TP
+\fB\-pes\fR, \fB\-ts\fR
+The input file is TS or PS, to be read via the
+PES\->ES reading mechanisms
+.TP
+\fB\-server\fR
+Also output as normal forward video as reversal
+data is being collected. Implies \fB\-pes\fR and \fB\-tsout\fR.
+.TP
+\fB\-x\fR
+Temporary extra debugging information
+.SS "Stream type:"
+.IP
+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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.IP
+TS tools version 1.11, esreverse built Nov 11 2008 17:15:47
+.IP
+Output a reversed stream derived from the input H.264 (MPEG\-4/AVC)
+or H.262 (MPEG\-2) elementary stream.
+.IP
+If output is to an H.222 Transport Stream, then fixed values for
+the PMT PID (0x66) and video PID (0x68) are used.
+.SS "Files:"
+.TP
+<infile>
+is the input elementary stream.
+.IP
+<outfile> is the output stream, either an equivalent elementary
+.IP
+stream, or an H.222 Transport Stream (but see \fB\-stdout\fR
+and \fB\-host\fR below).
+.SS "Switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output additional (debugging) messages
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-stdout\fR
+Write output to <stdout>, instead of a named file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-host\fR <host>, \fB\-host\fR <host>:<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 \fB\-tsout\fR.
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of frames to read
+.TP
+\fB\-freq\fR <n>
+Specify the frequency of frames to try to keep
+when reversing. Defaults to 8.
+.TP
+\fB\-tsout\fR
+Output H.222 Transport Stream
+.TP
+\fB\-pes\fR, \fB\-ts\fR
+The input file is TS or PS, to be read via the
+PES\->ES reading mechanisms
+.TP
+\fB\-server\fR
+Also output as normal forward video as reversal
+data is being collected. Implies \fB\-pes\fR and \fB\-tsout\fR.
+.TP
+\fB\-x\fR
+Temporary extra debugging information
+.SS "Stream type:"
+.IP
+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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.SH "SEE ALSO"
+The full documentation for
+.B esreverse
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/m2ts2ts.1 b/multimedia/tstools/man/m2ts2ts.1
new file mode 100644
index 0000000000..835ce40f14
--- /dev/null
+++ b/multimedia/tstools/man/m2ts2ts.1
@@ -0,0 +1,66 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH M2TS2TS: "1" "November 2008" "m2ts2ts 1.11" "User Commands"
+.SH NAME
+m2ts2ts \- Convert m2ts to TS
+.SH SYNOPSIS
+.B m2ts2ts
+[\fIswitches\fR] \fI<infile>\fR \fI<outfile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, m2ts2ts built Nov 11 2008 17:15:50
+.SS "Files:"
+.TP
+<infile>
+is a BDAV MPEG\-2 Transport Stream file (M2TS)
+(but see \fB\-stdin\fR)
+.IP
+<outfile> is an H.222 Transport Stream file (but see \fB\-stdout\fR)
+.SS "General Switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input instead of a file
+.TP
+\fB\-stdout\fR
+Output to standard output instead of a file
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output informational/diagnostic messages
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-buffer\fR <n>, \fB\-b\fR <n>
+Number of TS packets to buffer for reordering
+Defaults to 4.
+.IP
+TS tools version 1.11, m2ts2ts built Nov 11 2008 17:15:50
+.SS "Files:"
+.TP
+<infile>
+is a BDAV MPEG\-2 Transport Stream file (M2TS)
+(but see \fB\-stdin\fR)
+.IP
+<outfile> is an H.222 Transport Stream file (but see \fB\-stdout\fR)
+.SS "General Switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input instead of a file
+.TP
+\fB\-stdout\fR
+Output to standard output instead of a file
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output informational/diagnostic messages
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-buffer\fR <n>, \fB\-b\fR <n>
+Number of TS packets to buffer for reordering
+Defaults to 4.
+.SH "SEE ALSO"
+The full documentation for
+.B m2ts2ts
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
diff --git a/multimedia/tstools/man/pcapreport.1 b/multimedia/tstools/man/pcapreport.1
new file mode 100644
index 0000000000..e1131063db
--- /dev/null
+++ b/multimedia/tstools/man/pcapreport.1
@@ -0,0 +1,79 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH PCAPREPORT: "1" "November 2008" "pcapreport 1.11" "User Commands"
+.SH NAME
+pcapreport \- Report on network captures
+.SH SYNOPSIS
+.B pcapreport
+[\fIswitches\fR] \fI<infile>\fR [\fIswitches\fR]
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, pcap built Nov 11 2008 17:15:51
+.IP
+Report on a pcap capture file.
+.TP
+\fB\-o\fR <output file>
+Dump selected UDP payloads to the named output file.
+.TP
+\fB\-d\fR <dest ip>:<port>
+Select data with the given destination IP and port.
+.TP
+\fB\-\-dump\-data\fR | \fB\-D\fR
+Dump any data in the input file to stdout.
+.TP
+\fB\-\-extra\-dump\fR | \fB\-e\fR
+Dump only data which isn't being sent to the \fB\-o\fR file.
+.TP
+\fB\-\-times\fR | \fB\-t\fR
+Report on PCR vs PCAP timing for the destination specified in \fB\-d\fR.
+.TP
+\fB\-\-verbose\fR | \fB\-v\fR
+Output metadata about every packet.
+.TP
+\fB\-\-skew\-discontinuity\-threshold\fR <number>
+Gives the skew discontinuity threshold in 90kHz units.
+.IP
+Specifying 0.0.0.0 for destination IP or 0 for destination port will capture all
+hosts and ports respectively.
+.IP
+Network packet and TS packet numbers start at 0.
+.IP
+Positive skew means that we received too low a PCR for this timestamp.
+.IP
+TS tools version 1.11, pcap built Nov 11 2008 17:15:51
+.IP
+Report on a pcap capture file.
+.TP
+\fB\-o\fR <output file>
+Dump selected UDP payloads to the named output file.
+.TP
+\fB\-d\fR <dest ip>:<port>
+Select data with the given destination IP and port.
+.TP
+\fB\-\-dump\-data\fR | \fB\-D\fR
+Dump any data in the input file to stdout.
+.TP
+\fB\-\-extra\-dump\fR | \fB\-e\fR
+Dump only data which isn't being sent to the \fB\-o\fR file.
+.TP
+\fB\-\-times\fR | \fB\-t\fR
+Report on PCR vs PCAP timing for the destination specified in \fB\-d\fR.
+.TP
+\fB\-\-verbose\fR | \fB\-v\fR
+Output metadata about every packet.
+.TP
+\fB\-\-skew\-discontinuity\-threshold\fR <number>
+Gives the skew discontinuity threshold in 90kHz units.
+.IP
+Specifying 0.0.0.0 for destination IP or 0 for destination port will capture all
+hosts and ports respectively.
+.IP
+Network packet and TS packet numbers start at 0.
+.IP
+Positive skew means that we received too low a PCR for this timestamp.
+.SH "SEE ALSO"
+The full documentation for
+.B pcapreport
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/ps2ts.1 b/multimedia/tstools/man/ps2ts.1
new file mode 100644
index 0000000000..783e082e58
--- /dev/null
+++ b/multimedia/tstools/man/ps2ts.1
@@ -0,0 +1,303 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH PS2TS "1" "November 2008" "ps2ts 1.11" "User Commands"
+.SH NAME
+ps2ts \- Convert an H.222 program stream to H.222 transport stream
+.SH SYNOPSIS
+.B ps2ts
+[\fIswitches\fR] \fI<infile>\fR \fI<outfile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, ps2ts built Nov 11 2008 17:15:47
+.IP
+Convert an H.222 program stream to H.222 transport stream.
+.IP
+This program does not make use of any Program Stream Map packets
+in the data (mainly because I have yet to see data with any). This
+means that the program has to determine the stream type of the data
+based on the first few ES units.
+.IP
+This program does not output more than one video and one audio
+stream. If the program stream data contains more than one of each,
+the first will be used, and the others ignored (with a message
+indicating this).
+.IP
+It is assumed that the video stream will contain DTS values in its
+PES packets at reasonable intervals, which can be used as PCR values
+in the transport stream, and thus the video stream's PID can be used
+as the PCR PID in the transport stream.
+.SS "Files:"
+.TP
+<infile>
+is a file containing the program stream data
+(but see \fB\-stdin\fR below)
+.TP
+<outfile>
+is an transport stream file
+(but see \fB\-stdout\fR and \fB\-host\fR below)
+.SS "Input switches:"
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-dvd\fR
+The PS data is from a DVD. This is the default.
+This switch has no effect on MPEG\-1 PS data.
+.TP
+\fB\-notdvd\fR, \fB\-nodvd\fR
+The PS data is not from a DVD.
+The DVD specification stores AC\-3 (Dolby), DTS and
+other audio in a specialised manner in private_stream_1.
+.TP
+\fB\-vstream\fR <n>
+Take video from video stream <n> (0..7).
+The default is the first video stream found.
+.TP
+\fB\-astream\fR <n>
+Take audio from audio stream <n> (0..31).
+The default is the first audio stream found
+(this includes private_stream_1 on non\-DVD streams).
+.TP
+\fB\-ac3stream\fR <n>
+Take audio from AC3 substream <n> (0..7), from
+private_stream_1. This implies \fB\-dvd\fR.
+(If audio is being taken from a substream, the user
+is assumed to have determined which one is wanted,
+e.g., using psreport)
+.SS "Output switches:"
+.TP
+\fB\-stdout\fR
+Write output to <stdout>, instead of a named file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-host\fR <host>, \fB\-host\fR <host>:<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.
+.TP
+\fB\-vpid\fR <pid>
+<pid> is the video PID to use for the data.
+Use '\-vpid 0x<pid>' to specify a hex value.
+Defaults to 0x68.
+.TP
+\fB\-apid\fR <pid>
+<pid> is the audio PID to use for the data.
+Use '\-apid 0x<pid>' to specify a hex value.
+Defaults to 0x67.
+.TP
+\fB\-noaudio\fR
+Don't output the audio data
+.TP
+\fB\-pmt\fR <pid>
+<pid> is the PMT PID to use.
+Use '\-pmt 0x<pid>' to specify a hex value.
+Defaults to 0x66
+.TP
+\fB\-prepeat\fR <n>
+Output the program data (PAT/PMT) after every <n>
+PS packs. Defaults to 100.
+.TP
+\fB\-pad\fR <n>
+Pad the start with <n> filler TS packets, to allow
+a TS reader to synchronize with the datastream.
+Defaults to 8.
+.SS "General switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Print a 'v' for each video packet and an 'a' for
+each audio packet, as it is read
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of PS packs to read
+.SS "Stream type:"
+.IP
+When the TS data is being output, it is flagged to indicate whether
+it conforms to H.262, H.264, etc. It is important to get this right, as
+it will affect interpretation of the TS data.
+.IP
+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.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.TP
+\fB\-mp42\fR
+Force the program to treat the input as MPEG\-4/Part 2.
+.TP
+\fB\-vtype\fR <type>
+Force the program to treat the input as video of
+stream type <type> (e.g., 0x42 means AVS video). It is
+up to the user to specify a valid <type>.
+.IP
+If the audio stream being output is Dolby (AC\-3), then the stream type
+used to output it differs for DVB (European) and ATSC (USA) data. It
+may be specified as follows:
+.TP
+\fB\-dolby\fR dvb
+Use stream type 0x06 (the default)
+.TP
+\fB\-dolby\fR atsc
+Use stream type 0x81
+.IP
+TS tools version 1.11, ps2ts built Nov 11 2008 17:15:47
+.IP
+Convert an H.222 program stream to H.222 transport stream.
+.IP
+This program does not make use of any Program Stream Map packets
+in the data (mainly because I have yet to see data with any). This
+means that the program has to determine the stream type of the data
+based on the first few ES units.
+.IP
+This program does not output more than one video and one audio
+stream. If the program stream data contains more than one of each,
+the first will be used, and the others ignored (with a message
+indicating this).
+.IP
+It is assumed that the video stream will contain DTS values in its
+PES packets at reasonable intervals, which can be used as PCR values
+in the transport stream, and thus the video stream's PID can be used
+as the PCR PID in the transport stream.
+.SS "Files:"
+.TP
+<infile>
+is a file containing the program stream data
+(but see \fB\-stdin\fR below)
+.TP
+<outfile>
+is an transport stream file
+(but see \fB\-stdout\fR and \fB\-host\fR below)
+.SS "Input switches:"
+.TP
+\fB\-stdin\fR
+Take input from <stdin>, instead of a named file
+.TP
+\fB\-dvd\fR
+The PS data is from a DVD. This is the default.
+This switch has no effect on MPEG\-1 PS data.
+.TP
+\fB\-notdvd\fR, \fB\-nodvd\fR
+The PS data is not from a DVD.
+The DVD specification stores AC\-3 (Dolby), DTS and
+other audio in a specialised manner in private_stream_1.
+.TP
+\fB\-vstream\fR <n>
+Take video from video stream <n> (0..7).
+The default is the first video stream found.
+.TP
+\fB\-astream\fR <n>
+Take audio from audio stream <n> (0..31).
+The default is the first audio stream found
+(this includes private_stream_1 on non\-DVD streams).
+.TP
+\fB\-ac3stream\fR <n>
+Take audio from AC3 substream <n> (0..7), from
+private_stream_1. This implies \fB\-dvd\fR.
+(If audio is being taken from a substream, the user
+is assumed to have determined which one is wanted,
+e.g., using psreport)
+.SS "Output switches:"
+.TP
+\fB\-stdout\fR
+Write output to <stdout>, instead of a named file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-host\fR <host>, \fB\-host\fR <host>:<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.
+.TP
+\fB\-vpid\fR <pid>
+<pid> is the video PID to use for the data.
+Use '\-vpid 0x<pid>' to specify a hex value.
+Defaults to 0x68.
+.TP
+\fB\-apid\fR <pid>
+<pid> is the audio PID to use for the data.
+Use '\-apid 0x<pid>' to specify a hex value.
+Defaults to 0x67.
+.TP
+\fB\-noaudio\fR
+Don't output the audio data
+.TP
+\fB\-pmt\fR <pid>
+<pid> is the PMT PID to use.
+Use '\-pmt 0x<pid>' to specify a hex value.
+Defaults to 0x66
+.TP
+\fB\-prepeat\fR <n>
+Output the program data (PAT/PMT) after every <n>
+PS packs. Defaults to 100.
+.TP
+\fB\-pad\fR <n>
+Pad the start with <n> filler TS packets, to allow
+a TS reader to synchronize with the datastream.
+Defaults to 8.
+.SS "General switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Print a 'v' for each video packet and an 'a' for
+each audio packet, as it is read
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of PS packs to read
+.SS "Stream type:"
+.IP
+When the TS data is being output, it is flagged to indicate whether
+it conforms to H.262, H.264, etc. It is important to get this right, as
+it will affect interpretation of the TS data.
+.IP
+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.
+.IP
+If input is from standard input (via \fB\-stdin\fR), 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.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.TP
+\fB\-mp42\fR
+Force the program to treat the input as MPEG\-4/Part 2.
+.TP
+\fB\-vtype\fR <type>
+Force the program to treat the input as video of
+stream type <type> (e.g., 0x42 means AVS video). It is
+up to the user to specify a valid <type>.
+.IP
+If the audio stream being output is Dolby (AC\-3), then the stream type
+used to output it differs for DVB (European) and ATSC (USA) data. It
+may be specified as follows:
+.TP
+\fB\-dolby\fR dvb
+Use stream type 0x06 (the default)
+.TP
+\fB\-dolby\fR atsc
+Use stream type 0x81
+.SH "SEE ALSO"
+The full documentation for
+.B ps2ts
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/psdots.1 b/multimedia/tstools/man/psdots.1
new file mode 100644
index 0000000000..fbc308cea7
--- /dev/null
+++ b/multimedia/tstools/man/psdots.1
@@ -0,0 +1,53 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH PSDOTS: "1" "November 2008" "psdots 1.11" "User Commands"
+.SH NAME
+psdots \- Present the packets of a Program Stream
+.SH SYNOPSIS
+.B psdots
+[\fIswitches\fR] \fI<infile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, psdots built Nov 11 2008 17:15:48
+.IP
+Present the content of a Program Stream file as a sequence of
+characters, representing the packets.
+.SS "Files:"
+.TP
+<infile>
+is an H.222 Program Stream file (but see \fB\-stdin\fR)
+.SS "Switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input, instead of a file
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output a description of the characters used
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of PS packets to read
+.IP
+TS tools version 1.11, psdots built Nov 11 2008 17:15:48
+.IP
+Present the content of a Program Stream file as a sequence of
+characters, representing the packets.
+.SS "Files:"
+.TP
+<infile>
+is an H.222 Program Stream file (but see \fB\-stdin\fR)
+.SS "Switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input, instead of a file
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output a description of the characters used
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of PS packets to read
+.SH "SEE ALSO"
+The full documentation for
+.B psdots
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/psreport.1 b/multimedia/tstools/man/psreport.1
new file mode 100644
index 0000000000..ebe7f1e733
--- /dev/null
+++ b/multimedia/tstools/man/psreport.1
@@ -0,0 +1,69 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH PSREPORT "1" "November 2008" "psreport 1.11" "User Commands"
+.SH NAME
+psreport: \- report on the packets in a Program Stream
+.SH SYNOPSIS
+.B psreport
+[\fIswitches\fR] \fI<infile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, psreport built Nov 11 2008 17:15:47
+.IP
+Report on the packets in a Program Stream.
+.SS "Files:"
+.TP
+<infile>
+is an H.222 Program Stream file (but see \fB\-stdin\fR)
+.SS "Switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input, instead of a file
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output packet data as well.
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of PS packets to read
+.TP
+\fB\-dvd\fR
+The PS data is from a DVD. This is the default.
+This switch has no effect on MPEG\-1 PS data.
+.TP
+\fB\-notdvd\fR, \fB\-nodvd\fR
+The PS data is not from a DVD.
+The DVD specification stores AC\-3 (Dolby), DTS and
+other audio in a specialised manner in private_stream_1.
+.IP
+TS tools version 1.11, psreport built Nov 11 2008 17:15:47
+.IP
+Report on the packets in a Program Stream.
+.SS "Files:"
+.TP
+<infile>
+is an H.222 Program Stream file (but see \fB\-stdin\fR)
+.SS "Switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input, instead of a file
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output packet data as well.
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of PS packets to read
+.TP
+\fB\-dvd\fR
+The PS data is from a DVD. This is the default.
+This switch has no effect on MPEG\-1 PS data.
+.TP
+\fB\-notdvd\fR, \fB\-nodvd\fR
+The PS data is not from a DVD.
+The DVD specification stores AC\-3 (Dolby), DTS and
+other audio in a specialised manner in private_stream_1.
+.SH "SEE ALSO"
+The full documentation for
+.B psreport
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/stream_type.1 b/multimedia/tstools/man/stream_type.1
new file mode 100644
index 0000000000..bbf37d9f74
--- /dev/null
+++ b/multimedia/tstools/man/stream_type.1
@@ -0,0 +1,105 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH STREAM_TYPE "1" "November 2008" "stream_type 1.11" "User Commands"
+.SH NAME
+stream_type \- attempt to determine if an input stream is TS, PS, or ES
+.SH SYNOPSIS
+.B stream_type
+[\fIswitches\fR] \fI<infile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, stream_type built Nov 11 2008 17:15:48
+.IP
+Attempt to determine if an input stream is Transport Stream,
+Program Stream, or Elementary Stream, and if the latter, if it
+is H.262 or H.264 (i.e., MPEG\-2 or MPEG\-4/AVC respectively).
+The mechanisms used are fairly crude, assuming that:
+\- data is byte aligned
+\- for TS, the first byte in the file will be the start of a NAL unit,
+.IP
+and PAT/PMT packets will be findable
+.IP
+\- for PS, the first packet starts immediately at the start of the
+.IP
+file, and is a pack header
+.IP
+\- if the first 1000 packets could be H.262 *or* H.264, then the data
+.IP
+is assumed to be H.264 (the program doesn't try to determine
+sensible sequences of H.262/H.264 packets, so this is a reasonable
+way of guessing)
+.IP
+It is quite possible that data which is not relevant will be
+misidentified
+.IP
+The program exit value is:
+* 10 if it detects Transport Stream,
+* 11 if it detects Program Stream,
+* 12 if it detects Elementary Stream containing H.262 (MPEG\-2),
+* 14 if it detects Elementary Stream containing H.264 (MPEG\-4/AVC),
+* 5 if it looks like it might be PES,
+* 9 if it really cannot decide, or
+* 0 if some error occurred
+.SS "Files:"
+.TP
+<infile>
+is the file to analyse
+.SS "Switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output more detailed information about how it is
+making its decision
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.IP
+TS tools version 1.11, stream_type built Nov 11 2008 17:15:48
+.IP
+Attempt to determine if an input stream is Transport Stream,
+Program Stream, or Elementary Stream, and if the latter, if it
+is H.262 or H.264 (i.e., MPEG\-2 or MPEG\-4/AVC respectively).
+The mechanisms used are fairly crude, assuming that:
+\- data is byte aligned
+\- for TS, the first byte in the file will be the start of a NAL unit,
+.IP
+and PAT/PMT packets will be findable
+.IP
+\- for PS, the first packet starts immediately at the start of the
+.IP
+file, and is a pack header
+.IP
+\- if the first 1000 packets could be H.262 *or* H.264, then the data
+.IP
+is assumed to be H.264 (the program doesn't try to determine
+sensible sequences of H.262/H.264 packets, so this is a reasonable
+way of guessing)
+.IP
+It is quite possible that data which is not relevant will be
+misidentified
+.IP
+The program exit value is:
+* 10 if it detects Transport Stream,
+* 11 if it detects Program Stream,
+* 12 if it detects Elementary Stream containing H.262 (MPEG\-2),
+* 14 if it detects Elementary Stream containing H.264 (MPEG\-4/AVC),
+* 5 if it looks like it might be PES,
+* 9 if it really cannot decide, or
+* 0 if some error occurred
+.SS "Files:"
+.TP
+<infile>
+is the file to analyse
+.SS "Switches:"
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output more detailed information about how it is
+making its decision
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.SH "SEE ALSO"
+The full documentation for
+.B stream_type
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/ts2es.1 b/multimedia/tstools/man/ts2es.1
new file mode 100644
index 0000000000..2f7b58cc5d
--- /dev/null
+++ b/multimedia/tstools/man/ts2es.1
@@ -0,0 +1,109 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH TS2ES "1" "November 2008" "ts2es 1.11" "User Commands"
+.SH NAME
+ts2es \- extract a single (elementary) stream from a TS (or PS)
+.SH SYNOPSIS
+.B ts2es
+[\fIswitches\fR] \fI<infile>\fR \fI<outfile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, ts2es built Nov 11 2008 17:15:45
+.IP
+Extract a single (elementary) program stream from a Transport Stream
+(or Program Stream).
+.SS "Files:"
+.TP
+<infile>
+is an H.222 Transport Stream file (but see \fB\-stdin\fR and \fB\-pes\fR)
+.IP
+<outfile> is a single elementary stream file (but see \fB\-stdout\fR)
+.SS "Which stream to extract:"
+.TP
+\fB\-pid\fR <pid>
+Output data for the stream with the given
+<pid>. Use \fB\-pid\fR 0x<pid> to specify a hex value
+.TP
+\fB\-video\fR
+Output data for the (first) video stream
+named in the (first) PMT. This is the default.
+.TP
+\fB\-audio\fR
+Output data for the (first) audio stream
+named in the (first) PMT
+.SS "General switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input, instead of a file
+.TP
+\fB\-stdout\fR
+Output to standard output, instead of a file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output informational/diagnostic messages
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of TS packets to read
+.TP
+\fB\-pes\fR, \fB\-ps\fR
+Use the PES interface to read ES units from
+the input file. This allows PS data to be read
+(there is no point in using this for TS data).
+Does not support \fB\-pid\fR, \fB\-stdin\fR or \fB\-stdout\fR.
+.IP
+TS tools version 1.11, ts2es built Nov 11 2008 17:15:45
+.IP
+Extract a single (elementary) program stream from a Transport Stream
+(or Program Stream).
+.SS "Files:"
+.TP
+<infile>
+is an H.222 Transport Stream file (but see \fB\-stdin\fR and \fB\-pes\fR)
+.IP
+<outfile> is a single elementary stream file (but see \fB\-stdout\fR)
+.SS "Which stream to extract:"
+.TP
+\fB\-pid\fR <pid>
+Output data for the stream with the given
+<pid>. Use \fB\-pid\fR 0x<pid> to specify a hex value
+.TP
+\fB\-video\fR
+Output data for the (first) video stream
+named in the (first) PMT. This is the default.
+.TP
+\fB\-audio\fR
+Output data for the (first) audio stream
+named in the (first) PMT
+.SS "General switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input, instead of a file
+.TP
+\fB\-stdout\fR
+Output to standard output, instead of a file
+Forces \fB\-quiet\fR.
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output informational/diagnostic messages
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Only output error messages
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of TS packets to read
+.TP
+\fB\-pes\fR, \fB\-ps\fR
+Use the PES interface to read ES units from
+the input file. This allows PS data to be read
+(there is no point in using this for TS data).
+Does not support \fB\-pid\fR, \fB\-stdin\fR or \fB\-stdout\fR.
+.SH "SEE ALSO"
+The full documentation for
+.B ts2es
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/ts_packet_insert.1 b/multimedia/tstools/man/ts_packet_insert.1
new file mode 100644
index 0000000000..eb0ff1909d
--- /dev/null
+++ b/multimedia/tstools/man/ts_packet_insert.1
@@ -0,0 +1,77 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH TS_PACKET_INSERT "1" "November 2008" "ts_packet_insert 1.11" "User Commands"
+.SH NAME
+ts_packet_insert \- insert packets into a Transport Stream
+.SH DESCRIPTION
+.SS "Usage:"
+.IP
+ts_packet_insert [\fIswitches\fR] \fI<infile>\fR [\fIswitches\fR]
+.IP
+Insert TS packets into a Transport Stream at a positions
+specified by the user.
+.SS "Input:"
+.TP
+<infile>
+A H.222.0 TS stream.
+.SS "Switches:"
+.TP
+\fB\-p\fR [positions]
+This a a colon (':') delimited string of numbers
+between 0 and 1, representing how far through to put
+each ts packet. E.g. \fB\-p\fR 0.1:0.4:0.7:0.9 will insert
+4 packets at 10%, 40%, 70% and 90% through the file.
+.TP
+\fB\-pid\fR [pid]
+The inserted packets will have the pid specfied.
+.TP
+\fB\-s\fR [string]
+The inserted packets will contain [string] as it's
+payload.
+.TP
+\fB\-o\fR [output file] The new TS file will be written out to the file
+specified. (defaults to out.ts)
+.TP
+\fB\-h\fR (\fB\-\-help\fR)
+This message.
+.SS "Example:"
+.IP
+ts_packet_insert \fB\-p\fR 0.3:0.6 \fB\-o\fR out.ts \fB\-pid\fR 89 \fB\-s\fR "AD=start" in.ts
+.IP
+ts_packet_insert [switches] <infile> [switches]
+.IP
+Insert TS packets into a Transport Stream at a positions
+specified by the user.
+.SS "Input:"
+.TP
+<infile>
+A H.222.0 TS stream.
+.SS "Switches:"
+.TP
+\fB\-p\fR [positions]
+This a a colon (':') delimited string of numbers
+between 0 and 1, representing how far through to put
+each ts packet. E.g. \fB\-p\fR 0.1:0.4:0.7:0.9 will insert
+4 packets at 10%, 40%, 70% and 90% through the file.
+.TP
+\fB\-pid\fR [pid]
+The inserted packets will have the pid specfied.
+.TP
+\fB\-s\fR [string]
+The inserted packets will contain [string] as it's
+payload.
+.TP
+\fB\-o\fR [output file] The new TS file will be written out to the file
+specified. (defaults to out.ts)
+.TP
+\fB\-h\fR (\fB\-\-help\fR)
+This message.
+.SS "Example:"
+.IP
+ts_packet_insert \fB\-p\fR 0.3:0.6 \fB\-o\fR out.ts \fB\-pid\fR 89 \fB\-s\fR "AD=start" in.ts
+.SH "SEE ALSO"
+The full documentation for
+.B ts_packet_insert
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/tsinfo.1 b/multimedia/tstools/man/tsinfo.1
new file mode 100644
index 0000000000..5e6bdf94b7
--- /dev/null
+++ b/multimedia/tstools/man/tsinfo.1
@@ -0,0 +1,56 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH TSINFO: "1" "November 2008" "tsinfo 1.11" "User Commands"
+.SH NAME
+tsinfo \- report on the streams in a Transport Stream
+.SH SYNOPSIS
+.B tsinfo
+[\fIswitches\fR] \fI<infile>\fR
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, tsinfo built Nov 11 2008 17:15:48
+.IP
+Report on the program streams in a Transport Stream.
+.SS "Files:"
+.TP
+<infile>
+is an H.222 Transport Stream file (but see \fB\-stdin\fR)
+.SS "Switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input, instead of a file
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output extra information about packets
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Number of TS packets to scan. Defaults to 1000.
+.TP
+\fB\-repeat\fR <n>
+Look for <n> PMT packets, and report on each
+.IP
+TS tools version 1.11, tsinfo built Nov 11 2008 17:15:48
+.IP
+Report on the program streams in a Transport Stream.
+.SS "Files:"
+.TP
+<infile>
+is an H.222 Transport Stream file (but see \fB\-stdin\fR)
+.SS "Switches:"
+.TP
+\fB\-stdin\fR
+Input from standard input, instead of a file
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output extra information about packets
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Number of TS packets to scan. Defaults to 1000.
+.TP
+\fB\-repeat\fR <n>
+Look for <n> PMT packets, and report on each
+.SH "SEE ALSO"
+The full documentation for
+.B tsinfo
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
diff --git a/multimedia/tstools/man/tsplay.1 b/multimedia/tstools/man/tsplay.1
new file mode 100644
index 0000000000..fd658aecde
--- /dev/null
+++ b/multimedia/tstools/man/tsplay.1
@@ -0,0 +1,69 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH TSPLAY "1" "November 2008" "tsplay 1.11" "User Commands"
+.SH NAME
+tsplay \- play the given TS or PS file 'at' the nominated host, or to an output file
+.SH DESCRIPTION
+Play the given file (containing Transport Stream or Program Stream data) 'at' the nominated host, or to an output file.
+The output is always Transport Stream.
+With no switches, tsplay will give a brief summary of its basic usage.
+Otherwise:
+.TP
+\fB\-help\fR detail[s]
+Show an expanded version of the help you get if you
+run tsplay with no arguments
+.TP
+\fB\-help\fR ts
+Show help specific to playing TS data
+.TP
+\fB\-help\fR ps
+Show help specific to playing PS data
+.TP
+\fB\-help\fR tuning
+Show help about how to tune the program's operation
+.TP
+\fB\-help\fR test[ing]
+Show help on switches that can be useful in testing
+the target application (the video player)
+.HP
+\fB\-help\fR debug[ging] Show help on debugging this application.
+.TP
+\fB\-help\fR
+Show this message
+.TP
+\fB\-help\fR all
+Show all available help (equivalent to each of the
+above specific helps, in order)
+.PP
+Otherwise:
+.TP
+\fB\-help\fR detail[s]
+Show an expanded version of the help you get if you
+run tsplay with no arguments
+.TP
+\fB\-help\fR ts
+Show help specific to playing TS data
+.TP
+\fB\-help\fR ps
+Show help specific to playing PS data
+.TP
+\fB\-help\fR tuning
+Show help about how to tune the program's operation
+.TP
+\fB\-help\fR test[ing]
+Show help on switches that can be useful in testing
+the target application (the video player)
+.HP
+\fB\-help\fR debug[ging] Show help on debugging this application.
+.TP
+\fB\-help\fR
+Show this message
+.TP
+\fB\-help\fR all
+Show all available help (equivalent to each of the
+above specific helps, in order)
+.SH "SEE ALSO"
+The full documentation for
+.B tsplay
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
diff --git a/multimedia/tstools/man/tsreport.1 b/multimedia/tstools/man/tsreport.1
new file mode 100644
index 0000000000..7a00e371a4
--- /dev/null
+++ b/multimedia/tstools/man/tsreport.1
@@ -0,0 +1,212 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH TSREPORT "1" "November 2008" "tsreport 1.11" "User Commands"
+.SH NAME
+tsreport \- report on a Transport Stream
+.SH SYNOPSIS
+.B tsreport
+[\fIswitches\fR] \fI<infile>\fR [\fIswitches\fR]
+.SH DESCRIPTION
+.IP
+TS tools version 1.11, tsreport built Nov 11 2008 17:15:48
+.IP
+Report on one of the following for the given Transport Stream:
+.IP
+* The number of TS packets.
+* PCR and PTS/DTS differences (\fB\-buffering\fR).
+* The packets of a single PID (\fB\-justpid\fR).
+.IP
+When conflicting switches are specified, the last takes effect.
+.SS "Input:"
+.TP
+<infile>
+Read data from the named H.222 Transport Stream file
+.TP
+\fB\-stdin\fR
+Read data from standard input
+.SS "Normal operation:"
+.IP
+By default, normal operation just reports the number of TS packets.
+.TP
+\fB\-timing\fR, \fB\-t\fR Report timing information based on the PCRs
+.TP
+\fB\-data\fR Show TS packet/payload data as bytes
+.TP
+\fB\-verbose\fR, \fB\-v\fR Also output (fairly detailed) information on each TS packet
+.TP
+\fB\-quiet\fR, \fB\-q\fR Only output summary information (this is the default)
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n> Maximum number of TS packets to read
+.SS "Buffering information:"
+.TP
+\fB\-buffering\fR, \fB\-b\fR
+Report on the differences between PCR and PTS, and
+between PCR and DTS. This is relevant to the size of
+buffers needed in the decoder.
+.TP
+\fB\-o\fR <file>
+Output CSV data for \fB\-buffering\fR to the named file.
+.TP
+\fB\-32\fR
+Truncate 33 bit values in the CSV output to 32 bits
+(losing the top bit).
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output PCR/PTS/DTS information as it is found (in a
+format similar to that used for \fB\-o\fR)
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Output less information (notably, not the PMT)
+.TP
+\fB\-cnt\fR <pid>,
+Check values of continuity_counter in the specified PID.
+Writes all the values of the counter to a file called
+\&'continuity_counter.txt'. Turns buffering on (\fB\-b\fR).
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of TS packets to read
+.SS "Single PID:"
+.TP
+\fB\-justpid\fR <pid>
+Just show data (file offset, index, adaptation field
+and payload) for TS packets with the given PID.
+PID 0 is allowed (i.e., the PAT).
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Is ignored
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Is ignored
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of TS packets of that PID to read
+.PP
+Experimental control of timestamp formats (this doesn't affect the output
+to the CVS file, produced with \fB\-o\fR):
+.TP
+\fB\-tfmt\fR <thing>
+Specify format of time differences.
+.TP
+\fB\-tafmt\fR <thing>
+Specify format of absolute times.
+.IP
+<thing> is (currently, but may change) one of:
+.TP
+90
+Default \fB\-\-\fR show as 90KHz timestamps (suffix 't' on
+the values: e.g., 4362599t).
+.TP
+27
+Show as 27MHz timestamps (similar, e.g., 25151:000t).
+.TP
+32
+Show as 90KHz timestamps, but only the low 32 bits.
+.TP
+ms
+Show as milliseconds.
+.TP
+hms
+Show as hours/minutes/seconds (H:MM:SS.ssss, the H
+can be more than one digit if necessary)
+.IP
+TS tools version 1.11, tsreport built Nov 11 2008 17:15:48
+.IP
+Report on one of the following for the given Transport Stream:
+.IP
+* The number of TS packets.
+* PCR and PTS/DTS differences (\fB\-buffering\fR).
+* The packets of a single PID (\fB\-justpid\fR).
+.IP
+When conflicting switches are specified, the last takes effect.
+.SS "Input:"
+.TP
+<infile>
+Read data from the named H.222 Transport Stream file
+.TP
+\fB\-stdin\fR
+Read data from standard input
+.SS "Normal operation:"
+.IP
+By default, normal operation just reports the number of TS packets.
+\fB\-timing\fR, \fB\-t\fR Report timing information based on the PCRs.
+\fB\-data\fR Show TS packet/payload data as bytes
+\fB\-verbose\fR, \fB\-v\fR Also output (fairly detailed) information on each TS packet.
+\fB\-quiet\fR, \fB\-q\fR Only output summary information (this is the default)
+\fB\-max\fR <n>, \fB\-m\fR <n> Maximum number of TS packets to read
+.SS "Buffering information:"
+.TP
+\fB\-buffering\fR, \fB\-b\fR
+Report on the differences between PCR and PTS, and
+between PCR and DTS. This is relevant to the size of
+buffers needed in the decoder.
+.TP
+\fB\-o\fR <file>
+Output CSV data for \fB\-buffering\fR to the named file.
+.TP
+\fB\-32\fR
+Truncate 33 bit values in the CSV output to 32 bits
+(losing the top bit).
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output PCR/PTS/DTS information as it is found (in a
+format similar to that used for \fB\-o\fR)
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Output less information (notably, not the PMT)
+.TP
+\fB\-cnt\fR <pid>,
+Check values of continuity_counter in the specified PID.
+Writes all the values of the counter to a file called
+\&'continuity_counter.txt'. Turns buffering on (\fB\-b\fR).
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of TS packets to read
+.SS "Single PID:"
+.TP
+\fB\-justpid\fR <pid>
+Just show data (file offset, index, adaptation field
+and payload) for TS packets with the given PID.
+PID 0 is allowed (i.e., the PAT).
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Is ignored
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Is ignored
+.TP
+\fB\-max\fR <n>, \fB\-m\fR <n>
+Maximum number of TS packets of that PID to read
+.PP
+Experimental control of timestamp formats (this doesn't affect the output
+to the CVS file, produced with \fB\-o\fR):
+.TP
+\fB\-tfmt\fR <thing>
+Specify format of time differences.
+.TP
+\fB\-tafmt\fR <thing>
+Specify format of absolute times.
+.IP
+<thing> is (currently, but may change) one of:
+.TP
+90
+Default \fB\-\-\fR show as 90KHz timestamps (suffix 't' on
+the values: e.g., 4362599t).
+.TP
+27
+Show as 27MHz timestamps (similar, e.g., 25151:000t).
+.TP
+32
+Show as 90KHz timestamps, but only the low 32 bits.
+.TP
+ms
+Show as milliseconds.
+.TP
+hms
+Show as hours/minutes/seconds (H:MM:SS.ssss, the H
+can be more than one digit if necessary)
+.SH "SEE ALSO"
+The full documentation for
+.B tsreport
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
+
diff --git a/multimedia/tstools/man/tsserve.1 b/multimedia/tstools/man/tsserve.1
new file mode 100644
index 0000000000..11bc0febfb
--- /dev/null
+++ b/multimedia/tstools/man/tsserve.1
@@ -0,0 +1,156 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
+.TH TSSERVE "1" "November 2008" "tsserve 1.11 "User Commands"
+.SH NAME
+tsserve \- act as a server which plays the given transport or program stream
+.SH DESCRIPTION
+.SS "Usage:"
+.IP
+tsserve \fI<infile>\fR
+tsserve \fI<infile>\fR \fB\-port\fR <n>
+tsserve [\fIswitches\fR] \fI<infile>\fR [\fIswitches\fR]
+.IP
+TS tools version 1.11, tsserve built Nov 11 2008 17:15:49
+.IP
+Act as a server which plays the given file (containing Transport
+Stream or Program Stream data). The output is always Transport
+Stream.
+.SS "Input:"
+.TP
+<infile>
+An H.222.0 TS or PS file to serve to the client.
+This will be treated as file 0 (see below).
+.TP
+\fB\-0\fR <file0> .. \fB\-9\fR <file9>
+Specify files 0 through 9, selectable with command
+characters 0 through 9. The lowest numbered file
+will be the default for display.
+.SS "General Switches:"
+.TP
+\fB\-details\fR
+Print out more detailed help information,
+including some less common options.
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Suppress informational and warning messages.
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output additional diagnostic messages
+.TP
+\fB\-port\fR <n>
+Listen for a client on port <n> (default 88)
+.TP
+\fB\-noaudio\fR
+Ignore any audio data
+.TP
+\fB\-pad\fR <n>
+Pad the start of the output with <n> filler TS
+packets, to allow the client to synchronize with
+the datastream. Defaults to 8.
+.TP
+\fB\-noseqhdr\fR
+Do not output sequence headers for fast forward/reverse
+data. Only relevant to H.262 data.
+.PP
+Program Stream Switches:
+.TP
+\fB\-prepeat\fR <n>
+Output the program data (PAT/PMT) after every <n>
+PS packs. Defaults to 100.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.IP
+Both of these affect the stream type of the output data.
+.IP
+If the audio stream being output is Dolby (AC\-3), then the stream type
+used to output it differs for DVB (European) and ATSC (USA) data. It
+may be specified as follows:
+.TP
+\fB\-dolby\fR dvb
+Use stream type 0x06 (the default)
+.TP
+\fB\-dolby\fR atsc
+Use stream type 0x81
+.IP
+For information on using the program in other modes, see \fB\-details\fR.
+.IP
+tsserve <infile>
+tsserve <infile> \fB\-port\fR <n>
+tsserve [switches] <infile> [switches]
+.IP
+TS tools version 1.11, tsserve built Nov 11 2008 17:15:49
+.IP
+Act as a server which plays the given file (containing Transport
+Stream or Program Stream data). The output is always Transport
+Stream.
+.SS "Input:"
+.TP
+<infile>
+An H.222.0 TS or PS file to serve to the client.
+This will be treated as file 0 (see below).
+.TP
+\fB\-0\fR <file0> .. \fB\-9\fR <file9>
+Specify files 0 through 9, selectable with command
+characters 0 through 9. The lowest numbered file
+will be the default for display.
+.SS "General Switches:"
+.TP
+\fB\-details\fR
+Print out more detailed help information,
+including some less common options.
+.TP
+\fB\-quiet\fR, \fB\-q\fR
+Suppress informational and warning messages.
+.TP
+\fB\-verbose\fR, \fB\-v\fR
+Output additional diagnostic messages
+.TP
+\fB\-port\fR <n>
+Listen for a client on port <n> (default 88)
+.TP
+\fB\-noaudio\fR
+Ignore any audio data
+.TP
+\fB\-pad\fR <n>
+Pad the start of the output with <n> filler TS
+packets, to allow the client to synchronize with
+the datastream. Defaults to 8.
+.TP
+\fB\-noseqhdr\fR
+Do not output sequence headers for fast forward/reverse
+data. Only relevant to H.262 data.
+.PP
+Program Stream Switches:
+.TP
+\fB\-prepeat\fR <n>
+Output the program data (PAT/PMT) after every <n>
+PS packs. Defaults to 100.
+.TP
+\fB\-h264\fR, \fB\-avc\fR
+Force the program to treat the input as MPEG\-4/AVC.
+.TP
+\fB\-h262\fR
+Force the program to treat the input as MPEG\-2.
+.IP
+Both of these affect the stream type of the output data.
+.IP
+If the audio stream being output is Dolby (AC\-3), then the stream type
+used to output it differs for DVB (European) and ATSC (USA) data. It
+may be specified as follows:
+.TP
+\fB\-dolby\fR dvb
+Use stream type 0x06 (the default)
+.TP
+\fB\-dolby\fR atsc
+Use stream type 0x81
+.IP
+For information on using the program in other modes, see \fB\-details\fR.
+.SH "SEE ALSO"
+The full documentation for
+.B tsserve
+is maintained as a Texinfo manual.
+Please check http://tstools.berlios.de for more information.
+
diff --git a/multimedia/tstools/slack-desc b/multimedia/tstools/slack-desc
new file mode 100644
index 0000000000..37fdf3962c
--- /dev/null
+++ b/multimedia/tstools/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+tstools: TStools (Command line tools for working with MPEG data)
+tstools:
+tstools: TStools are relatively simple tools which concentrate on MPEG (H.264
+tstools: and H.262) data packaged according to H.222 (i.e., TS or PS), with a
+tstools: particular interest in checking for conformance.
+tstools: Transport Stream (TS) is typically used for distribution of cable and
+tstools: satellite data. Program Stream (PS) is typically used to store data
+tstools: on DVDs.
+tstools:
+tstools: Homepage: https://code.google.com/p/tstools/
+tstools:
diff --git a/multimedia/tstools/tstools.SlackBuild b/multimedia/tstools/tstools.SlackBuild
new file mode 100644
index 0000000000..5ef6da4d7b
--- /dev/null
+++ b/multimedia/tstools/tstools.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/sh
+
+# Slackware build script for tstools
+
+# Copyright 2014 Mario Preksavec, Zagreb, HR
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PRGNAM=tstools
+VERSION=${VERSION:-20141101}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+make
+
+# Install binaries
+mkdir -p $PKG/usr
+cp -a bin $PKG/usr
+
+# Install libraries
+cp -a lib $PKG/usr/lib${LIBDIRSUFFIX}
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# Install manuals
+mkdir -p $PKG/usr/man/man1
+for i in $CWD/man/* ; do gzip -9c $i > $PKG/usr/man/man1/$( basename $i ).gz ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a docs/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/tstools/tstools.info b/multimedia/tstools/tstools.info
new file mode 100644
index 0000000000..6d42c4b5e0
--- /dev/null
+++ b/multimedia/tstools/tstools.info
@@ -0,0 +1,10 @@
+PRGNAM="tstools"
+VERSION="20141101"
+HOMEPAGE="https://code.google.com/p/tstools/"
+DOWNLOAD="http://mirror.slackware.hr/sources/tstools/tstools-20141101.tar.bz2"
+MD5SUM="9f4dafa2008ee98222e9922ebfa60460"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Mario Preksavec"
+EMAIL="mario at slackware dot hr"