---
name: "oggz-chop"
section: "1"
platform: "linux"
package: "liboggz"
version: "1.1.3-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/oggz-chop"
---

# oggz-chop(1)

Extract the part of an Ogg file between given start and/or end times.

## NAME

oggz-chop — Extract the part of an Ogg file between given start and/or end times.

## SYNOPSIS

**oggz-chop** \[-o **filename**  \| --output **filename** \]  \[-s **start\_time**  \| --start **start\_time** \]  \[-e **end\_time**  \| --end **end\_time** \]  \[-k  \| --no-skeleton \] filename

**oggz-chop** \[-h  \| --help \]  \[-v  \| --version \]

## Description

**oggz-chop** chops a section of an Ogg file.  It correctly interprets the granulepos timestamps of Ogg CELT, CMML, Dirac, FLAC, Kate, Opus, PCM, Speex, Theora, Vorbis and VP8 bitstreams. Run **[oggz-known-codecs(1)](/oggz-known-codecs/1.md)** for a full list of codecs known by the installed version of oggz.

The output file contains copies of the headers of the input file, and  all the codec data required to correctly decode the content between the  start and end times specified on the commandline. For codecs with data  dependencies like video keyframes, the keyframe prior to the starting  time will be included in the output.

Note that **oggz-chop** operates by copying pages of   Ogg data; it does not strip partial packets from the first or last  data page included in the output. It does however ensure to set the  end of stream flag on the last page of each logical bitstream.

Skeleton handling: By default, the output will contain a Skeleton track  specifying the start of the chop as presentation time.

## Options

**oggz-chop** accepts the following options:

### Output options

- \-o **filename**, --output **filename**

  Write output to the specified  **filename** instead of printing it to  standard output.

- \-s **start\_time**, --start **start\_time**

  Specify the start time of the chopped section to output.

- \-e **end\_time**, --end **end\_time**

  Specify the end time of the chopped section to output.

- \-k , --no-skeleton

  Do NOT include a Skeleton bitstream in the output.

- \-h, --help

  Display usage information and exit.

- \-v, --version

  Output version information and exit.

## EXAMPLES

Extract the first minute of file.ogx:

`oggz chop -e 1:00 file.ogx`

Extract from the second to the fifth minute of file.ogx:

`oggz chop -s 2:00 -e 5:00 -o output.ogx file.ogx`

Extract, specifying SMPTE-25 frame offsets:

`oggz chop -s smpte-25:00:02:03::12 -e smpte-25:00:05:02::04 -o output.ogv file.ogv`

## Server configuration

The following configuration for Apache httpd will enable oggz-chop. As with  most Apache directives, this may of course be restricted to particular  Directories or Locations:

ScriptAlias /oggz-chop /usr/bin/oggz-chop

Action application/ogg /oggz-chop

### HTTP/1.1 Cacheability

oggz-chop generates Last-Modified HTTP headers, and  responds correctly to If-Modified-Since conditional GET requests.

## AUTHOR

Conrad Parker        February 25, 2008;

## COPYRIGHT

Copyright © 2008 Annodex Association

## SEE ALSO

**[oggz-validate(1)](/oggz-validate/1.md)**,  **[oggz-merge(1)](/oggz-merge/1.md)**,  **[oggz-dump(1)](/oggz-dump/1.md)**,  **hogg(1)**
