Skip to main content

Add chapters to video based on scene cuts

Project description

chaptinator

Add chapters on scene changes to videos (e.g. slide changes in presentations)

Install

chaptinator requires ffmpeg to be installed on your system and for it to be in PATH. Follow the instructions on https://ffmpeg.org/ and make sure the commands ffmpeg and ffprobe are available in your favorite shell (bash, zsh, Powershell, ...).

Then install this package via pip. For a global installation use

sudo pip install chaptinator

and for a user-local installation use

pip install --user chaptinator

Usage

chaptinator VIDEO [-t TITLE] [-a AUTHOR] [-c CHANGE_THRESH] [-s] [-r] [-v] [-o] [-d] [-m METADATA_FILE]

-t TITLE sets the title in the metadata (default: filename)

-a ARTIST sets the artist in the metadata

-c CHANGE "value between 0 and 1 to indicate a new scene; a low value reflects a low probability for the current frame to introduce a new scene, while a higher value means the current frame is more likely to be one" -- https://ffmpeg.org/ffmpeg-filters.html#select_002c-aselect

-s scales the tagged result video to a height 720 while keeping the aspect ratio

-r reduces the framerate to 5fps, which is optimal to save bandwidth when powerpoint slides are the sole video content. Lower values cause problems with some browser video players

-o activates the ffmpeg tune 'stillimage' that lowers the deblocking filter, optimizing for still images like slides

-v converts the audio to MP3 with VBR (Variable BitRate) and a quality setting of 8, which is optimal for speech with relatively long segments of silence. (Lame is compiled into the standard ffmpeg library while the Frauenhofer AAC, which supports VBR, is not)

-d downmixes both audio channels into a single mono audio channel

-m METADATA_FILE disables the cut detection and instead uses the provided metadata file. This file has to have the structure described in https://ffmpeg.org/ffmpeg-formats.html#Metadata-1

Example

# increase cut detection threshold to 0.4, scale the video and reduce framerate
chaptinator foo.mp4 -t "Video Title" -a "Author Name" -c 0.4 -s -r

# read cuts from metadata file
chaptinator foo.mp4 -m metadata.txt

Use Cases

chaptinator could be used to add chapters to presentation slides that were recorded in PowerPoint and exported as video.

But of course it works with any video file that has cuts in it, just adjust the -c parameter to your preference.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chaptinator-0.6.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

chaptinator-0.6-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file chaptinator-0.6.tar.gz.

File metadata

  • Download URL: chaptinator-0.6.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for chaptinator-0.6.tar.gz
Algorithm Hash digest
SHA256 198218b9098cf8019b72d55f117fa4f462fd75a0ab0b045079a0aa0d379f050e
MD5 ed80f95f1168bdf9a2eea1db0bb462ec
BLAKE2b-256 daecf610eb1609b646db7c4e68bd7318739b8876158a8397c24ab92dd494cc58

See more details on using hashes here.

File details

Details for the file chaptinator-0.6-py3-none-any.whl.

File metadata

  • Download URL: chaptinator-0.6-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for chaptinator-0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 48a3430c484628bd57012b22bbe0ff6ebd73f8dc29a4231e27eead94649d1fc0
MD5 aaedd0f0f5bf09d3b583aa125089241d
BLAKE2b-256 b6590c9be1ca1bca0083a2ee34b83a79bee241f31b3efc81b5b74d57ccea3b67

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page