ESDOTS(1)
π ESDOTS(1) π
okay bestie, so this one lives in the General Commands Manual, section 1, and the star of the show is esdots β yes, that's the one you'd cite as esdots(1) if you're being all formal at a party. π let's get into it.
πΈ NAME πΈ
esdots β present the content of an ES as a sequence of characters
β¨ SYNOPSIS β¨
esdots [-err stdout] [-err stderr] [-verbose | -v]
[-max max_units | -m max_units] [-pes | -ts] [-hasheos] [-es]
[-gop] [-fr frame_rate] in_file | -stdin
π¦ DESCRIPTION π¦
okay so what this does is present the content of an H.264 (MPEG-4/AVC), H.262 (MPEG-2) or AVS elementary stream as a sequence of characters, where each character represents access units / MPEG-2 items / AVS items. it's giving "decode-adjacent but make it vibes". π
ngl this part matters: for H.264 it is access units and not frames that get represented, and for H.262 it is items and not pictures. the way that distinction lives rent free in my head, fr fr. π«Ά
π Files
in_fileβ is an H.222 Transport Stream file (but bestie, see-stdin) π
π Switches
-err stdoutβ write error messages to standard output (this is the default, so it's the main character unless you say otherwise)-err stderrβ write error messages to standard error (the Unix traditional way, old money behavior π)-stdinβ input from standard input, instead of a file-v,-verboseβ output extra information about packets (spill the tea about every packet β¨)-q,-quietβ only output error messages (silence is golden, no cap)-max max_units,-m max_unitsβ maximum number of entities to read-pes,-tsβ the input file is TS or PS, to be read via the PES->ES reading mechanisms-hasheosβ print a#on finding an EOS (end-of-stream) NAL unit rather than stopping (only applies to H.264, so don't come for it about anything else π)-esβ report ES units, rather than any 'higher' unit (not necessarily supported for all file types, so lowkey don't assume)-gopβ show the duration of each GOP (for MPEG-2 steams) OR the distance between random access points (H.264) β two for one, iconic π-frβ set the video frame rate (default =25fps)
π Stream type:
so here's the tea. 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.
for AVS data, the program will never guess correctly, so the user must specify the file type, using -avs. periodt. π
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. so if you're piping in something else, that's on you to say so. π«Ά
-h264,-avcβ force the program to treat the input as MPEG-4/AVC-h262β force the program to treat the input as MPEG-2-avsβ force the program to treat the input as AVS
π SEE ALSO π
and that's the whole thing bestie, you ate. π this page came from Debian and it's dated October 28, 2015 β so yeah, a little vintage, but we love her anyway. go read your streams, mwah πβ¨
π¦ where this page comes from
- debian bookworm: tstools 1.13~git20151030-6 Β· MPL-1.1
- debian trixie: tstools 1.13~git20151030-6 Β· MPL-1.1
- ubuntu jammy: tstools 1.13~git20151030-5 Β· MPL-1.1
- ubuntu noble: tstools 1.13~git20151030-6 Β· MPL-1.1
- ubuntu questing: tstools 1.13~git20151030-7
- ubuntu resolute: tstools 1.13~git20151030-7build1 Β· MPL-1.1
- ubuntu stonking: tstools 1.13~git20151030-8 Β· MPL-1.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms