OGGCUT(1)

πŸ’… oggCut β€” the manual, but make it make sense

okay so this is the manpage for oggCut(1), from the User Manuals section. Buckle up bestie, we're cutting ogg files today πŸŽ€


✨ NAME ✨

oggCut β€” extracts parts of an ogg file (​.ogv, ​.ogg and ​.oga)


🌸 SYNOPSIS 🌸

oggCut [options] inputfile outputfile

πŸ¦‹ DESCRIPTION πŸ¦‹

So basically oggCut takes inputfile and makes a brand new ogg file called outputfile that's just a little subpart of the original. Snipped, trimmed, iconic. βœ‚οΈβœ¨

It can cut video (theora) only files, audio (vorbis) only files, or files that have both video and audio streams in them. Versatile queen fr fr πŸ’–

You tell it where the cut starts and where it ends using the -s and -e options, and both of those have to be given in milliseconds. No seconds, no vibes-based guessing, milliseconds. ⏱️

Now here's the part where you have to pay attention, bestie. πŸ’€

A video stream is made of I‐frames (which are full pictures) and P‐frames (which are delta pictures pointing back at the leading I‐frame). The oggCut algorithm goes hunting for the first I‐frame. If a video file started on a p‐frame, the player literally could not interpret that picture, because the leading I‐frame that it's based on wouldn't be there. So oggCut starts the I‐frame search at the start time you gave with the -s option. Which means: expect a shorter video time than the calculated seconds for the new file. Yeah. The math said one thing, the keyframes said another. πŸ™ˆ

The good news? oggCut does not do any reencoding, so the output quality is completely the same as the input file. Zero quality loss, zero glow-down, we love to see it. πŸ‘‘

And for the girlies who are deep into the ogg container format: the file is cut on packet basis, not on page basis. Iykyk. 🧚

⚠️ PSA: there is another tool called oggCut floating around out there on the internet with a different synopis. That one was not written by the author of this tool that you are actually using right now. Don't get it twisted. πŸ’…

✨ OPTIONS ✨

  • -s β€” Cut start position in ms. If the input file is a video file, the cut area starts with the next keyframe found. Default: 0

Example: -s 5000

  • -l β€” Length of the cut area in ms. If -e is also given, the length is ignored. (Sorry -l, -e is the main character here.)

Example: -l 10000

  • -e β€” Cut end position in ms. If -l is also used, the end position is preferred. If the end position is set to -1, the end of the stream is assumed.

Default: -1

Example: -e 20000

  • -i β€” the input file flag, part of the input/output pair below 🫢
  • -o β€” Input file and output file set (alternative). These parameters can be used alternatively. They are overwritten by the arguments after the options. If there is one argument given, it is used as the input file (and overwrites a file given with -i). If there are two arguments, the input and output files from the -i and -o option values are overwritten.

πŸŽ€ EXAMPLE πŸŽ€

oggCut -s 1000 -e 21000 myVideo.ogv myOutput.ogv

Creates a new video called myOutput.ogv from the video myVideo.ogv starting after 1 second ending after 21 seconds. Slay. πŸ“


πŸ’œ AUTHOR πŸ’œ

Joern Seger <yorn at gmx dot net>


🌈 SEE ALSO 🌈

oggCat(1), oggJoin(1), oggSplit(1), oggTranscode(1), oggSlideshow(1), oggThumb(1), oggSilence(1)


and that's the whole page, bestie β€” this one lives in the Linux section, version/date stamped JAN 2010, and it signs off as OGGCUT(1). go forth and cut something cute βœ¨πŸ’–