Skip to main content

Add TikTok-style captions to videos

Project description

TikTok Captions

Add TikTok-style captions to your videos automatically using OpenAI's Whisper for transcription.

Preview

captions preview

Installation

pip install tiktokcaptions

Usage

from tiktokcaptions import add_captions_to_videofile

# whisper transcription (dict)
transcription = openai.audio.transcription.create(
    model="whisper-1",
    file=file,
    timestamp_granularities=["segment", "word"],
    response_format="verbose_json",
)
transcription = transcription.model_dump()

# Basic usage
add_captions_to_videofile("input.mp4", transcription=transcription, output_file="with_captions.mp4")

# With custom options
add_captions_to_videofile(
    "input.mp4",
    transcription=transcription,
    output_file="with_captions.mp4",

    # Font settings
    font="Montserrat-ExtraBold.ttf",  # or path to custom font
    font_size=50,
    font_color="white",

    # Stroke settings
    stroke_width=2,
    stroke_color="black",

    # Word highlighting
    highlight_current_word=True,
    highlight_color="#FF4500",
    highlight_padding=(10, 8),  # Horizontal and vertical padding around highlighted words in pixels
    highlight_radius=10,      # Border radius of the highlight box in pixels

    # Layout
    line_count=2,        # Maximum number of lines to show at once
    padding=50,          # Horizontal padding from video edges in pixels
    position="bottom",   # "top", "bottom", or "center"
    margin=200,          # Vertical margin from video edges in pixels (when using top/bottom position)

    # Shadow effects
    shadow_strength=1.0,
    shadow_blur=0.3,

    # Other
    verbose=False
)

Features

  • Automatic speech recognition using Whisper
  • Customizable caption styling
  • Support for multiple video formats
  • Easy to use API

Requirements

  • Python 3.7+
  • FFmpeg installed on your system

License

MIT License - see LICENSE file for details.

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

tiktokcaptions-0.1.2.tar.gz (240.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tiktokcaptions-0.1.2-py3-none-any.whl (239.4 kB view details)

Uploaded Python 3

File details

Details for the file tiktokcaptions-0.1.2.tar.gz.

File metadata

  • Download URL: tiktokcaptions-0.1.2.tar.gz
  • Upload date:
  • Size: 240.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for tiktokcaptions-0.1.2.tar.gz
Algorithm Hash digest
SHA256 12007ac3bead6d458f60487ff653d29c4893489144935b836809ddb0b1e7d5be
MD5 a95e85848a830f041d760f1e955c1469
BLAKE2b-256 89b1306fae399b1bf499b164d8d637ff29a69def06023008b1ace96efa57daa3

See more details on using hashes here.

File details

Details for the file tiktokcaptions-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: tiktokcaptions-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 239.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for tiktokcaptions-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 356d8fcb7077ea40083c04c96c242e6a417770fcde092c2ee815c3a1771d2d18
MD5 adee383963b6f21bb481d41f630a8967
BLAKE2b-256 0dfe0dbf41cdfcb6e66c08bd109364747a05cd1d110627e1ecbf62474f350973

See more details on using hashes here.

Supported by

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